열린 포트를 해킹하여 명령줄에 액세스할 수 있나요?

열린 포트를 해킹하여 명령줄에 액세스할 수 있나요?

Linux 시스템의 임의 포트(7890)에서 사용자 지정 애플리케이션을 실행한다고 가정해 보겠습니다.

이것은 Go 언어 웹 서버입니다. HTTP를 통해 애플리케이션을 실행합니다. HTTPS가 없습니다. sudo 권한이 없는 "일반" 전용 사용자로 실행됩니다. 이 포트에 대한 방화벽 규칙은 "모든 사람(전 세계)"이 포트에 액세스하도록 허용합니다.

모든 SSH 액세스는 안전하며 방화벽 규칙은 알려진 IP 집합의 액세스만 허용합니다. SSH 액세스는 키 기반 액세스만 허용하도록 구성됩니다.

이 정보는 다음 질문에 답하기에 충분합니까?

  • 공격자가 노출된 이 포트를 통해 명령줄에 액세스할 수 있습니까?
  • 이전 질문에 "예, 만약..."이라고 대답할 수 있다면, 애플리케이션이 박스에 접근하는 데 악용되지 않도록 알아야 할 가장 중요한 사항은 무엇입니까?

알려진 다른 보안 취약점이 없다고 가정합니다.

물론 저는 보안 전문가는 아닙니다. 이 정보가 정보에 입각한 진술을 하는 데 충분하기를 바랍니다. 관련 질문이 셀 수 없이 많아 '절대적인' 예/아니오라고 답할 수는 없지만 대략적인 아이디어만으로도 아이디어를 얻을 수 있을 것 같습니다.

감사해요.

답변1

공격자가 노출된 이 포트를 통해 명령줄에 액세스할 수 있습니까?

귀하의 애플리케이션이 취약하다면 그렇습니다.

애플리케이션이 박스에 접근하는 데 악용되는 것을 방지하기 위해 주의해야 할 가장 중요한 사항은 무엇입니까?

이것은 매우 어려운 질문입니다.

  • 가다매우 안전한 언어이므로 표면적으로는 애플리케이션 로직에 문제가 있는 경우에만 애플리케이션이 해킹될 수 있습니다.
  • 추가 보안 계층을 추가하려면 1) 시스템 기능을 사용할 수 있습니다.한계데몬이 할 수 있는 작업 2) SeLinux/Apparmor 정책 작성 3) chroot/virtualized에서 데몬 실행환경docker4) 다른 경량 사용자 공간 컨테이너/하이퍼바이저에서 실행합니다.

관련 정보