Netwrix 1Secure는 데이터와 아이덴티티 전반에 걸쳐 통합된 가시성을 제공합니다 - 14일간 무료로 전체 액세스가 가능합니다.무료 평가판 시작

리소스 센터블로그

불안전하고 취약한 열린 포트가 심각한 보안 위험을 초래하는 방법

불안전하고 취약한 열린 포트가 심각한 보안 위험을 초래하는 방법

Jan 21, 2025

침입자가 어떤 조직에 침입하려고 할 때, 그들은 출입구가 될 ‘틈’을 찾습니다. 열린 포트는 해커나 위협 행위자가 디지털 네트워크에 접근하기 위해 찾는 ‘틈’ 중 하나입니다. 이 열린 포트는 방화벽, 서버 또는 어떤 네트워크에 연결된 컴퓨팅 장치에 있을 수 있습니다. 잠금이 해제된 문 하나가 사용자의 프라이버시를 위협하고 물리적인 건물에 대한 접근을 허용할 수 있듯이, 열린 포트 하나는 해커가 시스템을 침해하는 진입 지점이 되어 그들의 악의적인 의도에 노출되게 만들 수 있습니다.

아래에서는 가장 취약한 포트와 이를 방어하기 위한 핵심 보안 전략을 공유합니다.

열려 있는 포트의 취약점 개요

네트워크 내에서 열려 있는 포트는 취약점입니다. 이는 허가되지 않은 사용자가 방화벽이나 기타 보안 조치를 우회해 네트워크에 침입할 수 있는 잠재적 진입 지점을 제공합니다. 일단 내부에 들어오면, 원하는 공격을 감행하거나 정찰을 수행하여 조직에 대해 더 알아보고 이를 악용하는 방법을 파악할 수 있습니다. 열려 있는 포트는 막대한 보안 위험 을 초래하므로 보안 관리에서 최우선적으로 다뤄야 합니다.

열려 있는 포트를 보호해야 하는 중요성

공격에 대한 취약성을 줄이려면 공격 표면(attack surface)을 줄여야 합니다. 이는 시스템에서 열려 있는 포트의 수를 줄임으로써 가능합니다. 예를 들어, 외부 Remote Desktop Protocol (RDP, port 3389) 연결을 허용하면 정당한 사용자가 사내가 아닌 위치에서도 기업 네트워크에 접속할 수 있습니다. 그럼에도 불구하고 위협 행위자에게는, RDP 포트가 열려 있는 대상을 찾아 적극적으로 악용할 수 있는 기회를 제공합니다.

포트(Ports)는 무엇인가요?

정의와 목적

포트는 특정 서비스와 애플리케이션에 대한 네트워크 트래픽을 수용하는 가상 출입구로 볼 수 있습니다. 각 포트는 서로 구분하기 위해 고유한 번호로 식별됩니다. 이러한 포트는 지정된 관리자가 관리할 수 있으며, 관리자는 특정 유형의 트래픽을 허용하거나 차단하기 위해 포트를 열거나 닫을 수 있습니다. 예를 들어 웹 트래픽은 80번과 443번 포트에 의존합니다. 외부 사용자용 웹 애플리케이션을 호스팅하는 서버가 있다면, 해당 사용자들이 접근할 수 있도록 이 포트들을 열어야 합니다. 사용하지 않는 모든 포트는 닫아야 합니다.

포트의 종류: TCP와 UDP

포트 번호와 함께 가장 흔히 사용되는 전송 프로토콜은 전송 제어 프로토콜(Transmission Control Protocol, TCP)과 사용자 데이터그램 프로토콜(User Datagram Protocol, UDP)입니다. 소프트웨어와 서비스는 TCP 또는 UDP를 사용하도록 설계되며, 지정된 포트 번호가 할당됩니다.

  • TCP 는 재전송과 오류 복구 기능이 내장된 연결 지향형 프로토콜입니다. TCP는 보통 더 신뢰할 수 있는 프로토콜입니다.
  • UDP  는 연결 없는 프로토콜로, 메시지 오류를 복구하거나 수정하지 않습니다. 흔히 best effort(최선의 노력) 프로토콜로 알려져 있습니다.

포트의 상태

TCP 및 UDP 포트는 필요에 따라 다음 세 가지 상태 중 하나에 있습니다:

  • 열림 — 포트가 연결 요청에 응답합니다.
  • 닫힘 — 포트에 연결할 수 없으며, 실행 중인 해당 서비스가 없음을 의미합니다.
  • 필터링됨 — 방화벽이 트래픽을 모니터링하고 특정 포트 연결 요청을 차단합니다.

열려 있는 포트와 관련된 보안 위험

위협 행위자는 열린 포트를 사용해 공격을 수행하고 취약점을 악용합니다. 아래에서는 악의적인 공격자가 활용하는 몇 가지 일반적인 익스플로잇과 공격을 공유한 다음, 열린 포트의 취약점을 통해 발생한 두 가지 유명한 공격을 자세히 설명하겠습니다.

일반적인 익스플로잇 및 공격

  • 열려 있는 RDP 연결 은 서버에 액세스하거나 랜섬웨어 페이로드를 전달하기 위해 자격 증명 스터핑(credential-stuffing) 공격을 시작하는 데 악용될 수 있습니다.
  • 서비스 거부(DoS) 공격 은 여러 대의 기기에서 특정 서비스의 작동을 방해하기 위해 많은 연결 요청을 보냅니다. 대표적인 예로 웹 서버의 웹 포트를 대상으로 공격해 대역폭과 리소스를 소모하게 함으로써, 정당한 사용자가 해당 서비스에 접속하지 못하게 만드는 경우를 들 수 있습니다.
  • 웹 서비스 포트 는 애플리케이션 자체의 취약점을 악용하기 위해 SQL 인젝션 및 크로스 사이트 요청 위조와 같은 공격을 시작하는 진입 지점으로 흔히 사용됩니다.
  • 중간자(man-in-the-middle) 공격 은 널리 알려진 포트에서 암호화되지 않은 데이터 트래픽을 가로채 민감 정보를 수집하는 데 사용할 수 있습니다. 예를 들어, 데이터 트래픽을 우회(re-routing)해 이메일 트래픽을 가로채는 경우가 있습니다.

사례 연구: WannaCry, RDP Pipe Plumbing

가장 유명한 공격 중 하나는 WannaCry Ransomware attack 2017년에 시작된 공격입니다. 이 공격은 전 세계적으로 수행되었으며, 150개 국가에 걸쳐 30만 대가 넘는 컴퓨터에 영향을 미쳤습니다. 공격은 445 포트의 SMB 프로토콜에 존재하는 취약점을 악용했습니다. 공격자가 조직에 침투한 후 파일을 암호화하고 몸값(랜섬) 지급을 요구했습니다.

RDP Pipe Plumbing은 Remote Desktop Protocol 에서 Windows 명명 파이프(Windows-named pipes)를 악용하는 취약점입니다. 공격자는 정당한 파이프와 동일한 이름의 가짜 파이프 서버 인스턴스를 생성하기 위해 RDP 3389 포트를 노립니다. 그런 다음 이러한 위조 파이프를 사용해 RDP 클라이언트와 서버 간의 통신을 가로챕니다. 이 중간자(Man-in-the-middle) 공격을 통해 클립보드 내용과 파일 전송을 포함한 민감한 데이터에 대한 무단 액세스가 가능해집니다.

취약한 포트와 그 위험

아래는 열린 포트의 취약점 목록입니다. 어떤 항목이 악용에 가장 취약한지 알아보려면 계속 읽어보세요.

포트 21 취약점 (FTP)

파일 전송 프로토콜(File Transfer Protocol, FTP)은 포트 21이 할당되어 있습니다. FTP는 사용자가 서버와의 통신에서 암호화되지 않은 전송 방식으로 파일을 주고받을 수 있게 해줍니다. FTP는 오래되었고 보안상 취약하다고 간주되므로, 특히 민감한 데이터를 포함한 파일 전송에 대해서는 어떤 경우에도 사용하지 말아야 합니다. FTP는 다음 방법 중 하나로 쉽게 악용될 수 있습니다:

  • 비밀번호 무차별 대입 공격
  • 익명 인증(사용자 이름과 비밀번호에 “anonymous”를 입력하여 FTP 포트에 로그인하는 것이 가능합니다)
  • 교차 사이트 스크립팅
  • 디렉터리 트래버설 공격
  • 중간자 공격(Man-in-the-middle)

22번 포트 취약점(SSH)

22번 포트는 Secure Shell 연결에 일반적으로 사용됩니다. 연결이 암호화되기 때문에 Telnet보다 선호됩니다. 원격 관리를 위해 자주 사용되는 22번 포트는 안전한 원격 액세스를 보장하는 TCP 포트입니다. 보안이 강화되어 있음에도 불구하고 여전히 몇 가지 기본적인 취약점이 존재합니다:

  • 유출된 SSH 키. SSH 키가 제대로 보호되지 않으면 공격자가 해당 키에 접근해 필요한 비밀번호 없이도 무단으로 진입할 수 있습니다.
  • 자격 증명 무차별 대입(Brute-forcing)。열려 있는 SSH 포트는 쉽게 식별되므로 공격자가 사용자 이름과 비밀번호 조합을 추측할 수 있습니다.

포트 23 취약점(Telnet)

Telnet은 포트 23을 사용하는 TCP 프로토콜입니다. 스위치, 라우터, 서버 같은 명령줄 인터페이스를 사용하는 원격 장치에 연결합니다. FTP와 마찬가지로 Telnet은 암호화되지 않아 오래되었으며 보안상 취약하다고 간주됩니다. Telnet은 SSH로 대체되었습니다. 그중 일반적인 취약점으로는 다음이 있습니다:

  • 자격 증명 무차별 대입 공격. 공격자는 열린 포트의 취약점을 악용해 노출된 서비스에 대해 반복적인 로그인 시도를 수행하며, 자격 증명을 추측해 무단 액세스를 얻고자 합니다.
  • 스푸핑 및 자격 증명 가로채기(스니핑). 열린 포트는 공격자에게 서비스를 노출할 수 있으며, 공격자는 이를 악용해 데이터 전송 중에 합법적인 주체인 것처럼 위장함으로써 자격 증명을 가로채고 훔칠 수 있습니다.

포트 25 취약점(SMTP)

포트 25는 이메일을 송수신하기 위해 Simple Mail Transfer Protocol (SMTP)에서 사용합니다. SMTP는 사이버 보안이 중요한 우려 사항이 아니던 시기에 개발되었기 때문에, 제3자 보안 솔루션이 없어도 쉽게 악용될 수 있습니다. 적절한 구성과 보호가 없으면 이 TCP 포트는 다음과 같은 위협에 취약합니다:

  • 스푸핑. 공격자는 이메일 헤더를 위조해 메시지가 신뢰할 수 있는 출처에서 온 것처럼 보이게 만들 수 있습니다.
  • 스팸 발송. 보호되지 않은 SMTP 서버는 악의적으로 악용되어 대량의 원치 않는 이메일을 전송하는 데 사용될 수 있으며, 이로 인해 시스템이 마비되거나 멀웨어가 확산되는 경우가 많습니다.
  • 중간자 공격(Man-in-the-middle), 특히 이메일 자체가 평문(암호화되지 않은 형태)으로 전송되는 경우에 더욱 그렇습니다.

포트 53 취약점

포트 53은 Domain Name System (DNS)에 사용되며, facebook.com 또는 linkedin.com 같은 사람이 읽을 수 있는 도메인 이름을 IP 주소로 변환합니다. DNS는 인터넷 트래픽에 필수이며, 질의와 전송에 각각 UDP와 TCP를 사용하여 동작합니다. 이 포트는 특히 Distributed Denial of Service (DDoS) 공격에 취약한데, 공격자가 대량의 요청으로 DNS 서버를 압도해 서비스가 중단될 수 있습니다.

  • DDoS 공격. 이는 공격자가 대량의 패킷を 서버로 보내 서비스 중단을 유발하려고 시도하는 흔한 공격입니다. 이러한 공격 기법에는 몇 가지 유형이 있는데, dDoS(distributed denial of service)와 DNS 증폭 공격이 있습니다.

포트 137 및 139(NetBIOS over TCP)와 445(SMB) 취약점

포트 137 및 139(NetBIOS over TCP)와 445(SMB)는 Windows 환경에서 파일 공유 및 네트워크 통신과 흔히 연결됩니다. 하지만 이 포트들은 여러 보안 위협에 취약한 것으로도 알려져 있습니다:

  • EternalBlue 익스플로잇。이 공격은 오래된 버전의 Microsoft 컴퓨터에 존재하는 SMBv1 취약점을 악용합니다。2017년에 전 세계 규모で 발생한 WannaCry 랜섬웨어 공격 이후 널리 알려지게 되었습니다.
  • NTLM 해시 캡처. 공격자는 NTLM 해시를 가로채 캡처한 다음 이를 사용해 합법적인 사용자로 인증받을 수 있습니다.
  • SMB 로그인 자격 증명 무차별 대입(Brute-Forcing). 공격자는 올바른 자격 증명을 찾을 때까지 다양한 사용자 이름과 비밀번호 조합을 체계적으로 대입해 액세스 권한을 얻으려 시도할 수 있습니다.

포트 80, 443, 8080, 8443의 취약점(HTTP 및 HTTPS)

웹 페이지를 방문한 사람은 누구나 웹 브라우저에서 HTTP 또는 HTTPS 프로토콜을 사용했습니다. 앞서 언급했듯이 웹 포트는 쿠키, 토큰, 데이터 등을 탈취하기 위한 다양한 유형의 공격을 포함해 많은 공격에서 공격자들이 흔히 노리는 대상입니다.

  • 교차 사이트 스크립팅. 공격자는 웹 페이지와 애플리케이션에 악성 스크립트를 삽입해 쿠키, 토큰 또는 데이터를 탈취합니다.
  • SQL 인젝션. 공격자는 입력 필드에 악성 SQL 코드를 삽입해 데이터베이스를 조작합니다.
  • 사이트 간 요청 위조. 공격자는 사용자의 웹 브라우저와 웹 애플리케이션 간의 신뢰를 악용해, 사용자가 자신의 지식이나 동의 없이 웹사이트에서 작업을 수행하도록 속입니다.
  • DDoS 공격

포트 1433, 1434, 3306 취약점(데이터베이스에서 사용)

이는 SQL Server와 MySQL의 기본 포트입니다. 이 포트들은 다음을 포함해 다양한 악의적 행위를 수행하는 데 사용됩니다:

  • 악성코드 배포. 공격자는 열린 포트를 사용해 네트워크에 침투하고, 시스템을 손상시키거나 데이터를 탈취하거나 인프라를 파괴할 수 있는 악성 소프트웨어를 배포합니다.
  • DDoS 시나리오. 오픈 포트의 취약점이 악용되어 분산 서비스 거부(Distributed Denial of Service, DDoS) 공격에서 대량 트래픽으로 서비스를 압도함으로써 시스템을 사용 불가능하게 만듭니다.
  • 악용 가능한 기본 구성을 가진 보호되지 않은 데이터베이스 찾기. 열린 포트는 약한 설정 또는 기본 설정이 적용된 데이터베이스를 노출할 수 있으며, 공격자가 이를 효율적으로 악용해 무단 액세스를 얻고 민감한 정보를 조작하거나 탈취하도록 합니다.

포트 3389 취약점(원격 데스크톱)

  • 원격 데스크톱 프로토콜(Remote Desktop Protocol) 취약점은 RDP를 무차별 대입(Brute force) 공격과 중간자(Man-in-the-middle) 공격에 노출시킵니다.

• BlueKeep 취약점(CVE-2019-0708)은 Windows 7 및 Windows Server 2008 같은 이전 Microsoft 운영 체제에서 발견되는 RDP 취약점입니다. BlueKeep은 사용자 개입 없이도 조직 전반에 악성코드를 확산하는 데 악용될 수 있습니다.

열려 있는 포트를 안전하게 보호하는 단계

암호화된 포트를 사용하고, 암호화되지 않은 포트는 피하세요

IP 기반 환경에서 사용되는 대부분의 일반 서비스는 이제 기존의 평문(원래) 프로토콜에 대한 암호화 버전을 갖추고 있습니다. 정보가 전선을 통해 전송되는 동안 데이터가 유출되지 않도록 암호화 버전으로 전환하는 것이 좋은 방법입니다.

정기적인 패치 및 업데이트

패치는 시스템과 방화벽을 최신 상태로 유지하는 데 도움이 됩니다. 공급업체는 정기적으로 패치를 배포해 사이버 범죄자가 시스템과 데이터에 대한 전체 액세스를 획득하는 데 악용할 수 있는 자사 제품의 취약점과 결함을 수정합니다.

포트 스캐닝 도구

또한 포트를 정기적으로 스캔하고 확인해야 합니다. 이를 수행하는 주요 방법은 세 가지입니다:

  • 명령줄 도구. 직접 포트를 스캔하고 확인할 시간이 있다면, 명령줄 도구를 사용해 열려 있는 포트를 찾아 스캔하십시오. 예로는 Netstat과 Network Mapper가 있으며, Windows와 Linux를 포함한 다양한 운영 체제에 설치할 수 있습니다.
  • 포트 스캐너. 더 빠른 결과를 원한다면 포트 스캐너를 사용하는 방법을 고려해 보십시오. 컴퓨터 프로그램이 포트가 열려 있는지, 닫혀 있는지, 또는 필터링되어 있는지 확인합니다. 과정은 간단합니다. 스캐너가 특정 포트에 연결하기 위한 네트워크 요청을 전송하고 응답을 캡처합니다.
  • 취약점 스캐닝 도구. 취약점 스캐닝 도구는 서버, 데스크톱, 네트워크 장치와 같은 IT 자산을 식별하고 목록화하여 보안 약점을 탐지하는 자동화 애플리케이션입니다. 이 도구는 잘못된 설정이나 결함 있는 프로그래밍으로 인해 발생하는 알려진 취약점을 스캔합니다. 이러한 스캔 결과는 조직의 위험 수준에 대한 유용한 통찰을 제공하며, 효과적인 완화(대응) 전략을 권장하는 데 활용할 수 있습니다.

서비스 구성 변경 사항 모니터링

서버, 방화벽, 스위치, 라우터 및 기타 네트워크 장치에 대해 이루어지는 모든 구성 변경 사항을 최신 상태로 파악하는 것은 중요합니다. 이러한 변경은 취약점을 유발할 수 있기 때문입니다. 이러한 수정은 실수로 또는 의도적으로 발생할 수 있습니다. Netwrix Change Tracker를 사용하면 무단 변경 및 기타 의심스러운 활동을 추적하여 시스템을 강화할 수 있습니다. 특히 다음과 같은 기능을 제공합니다:

  • 구성 변경에 대한 실행 가능한 알림
  • 모든 변경 사항을 자동으로 기록, 분석, 검증 및 확인
  • 실시간 변경 모니터링
  • 지속적인 애플리케이션 취약점 모니터링

침입 탐지 및 방지 시스템(IDP 및 IPS) 사용

IDS는 네트워크 트래픽을 모니터링하여 의심스러운 활동 또는 알려진 위협의 징후를 탐지하는 반면, IPS는 한 단계 더 나아가 탐지된 위협을 차단합니다. 둘 다 SQL 인젝션, DDoS 공격 및 기타 사이버 위협을 포함해 열려 있는 포트를 대상으로 하는 일반적인 익스플로잇을 예방할 수 있습니다.

SSH 키 구현

SSH 키는 무차별 대입 공격, 피싱, 그리고 인간의 실수에 더 취약하지 않습니다. 이러한 암호화된 키는 사용자가 비밀번호를 기억하고 입력할 필요가 없게 해 주므로, 열린 포트를 통해 무단 액세스가 발생할 가능성을 줄여줍니다. SSH 키에는 두 가지 유형이 있습니다:

  • 사용자를 식별하고 액세스 권한을 부여하는 개인 키(또는 신원 키)
  • 누가 시스템에 액세스할 수 있는지 결정하는 공개 키(또는 인증 키)

침투 테스트 및 취약점 평가 수행

침투 테스트와 취약점 평가는 각기 다른 방식이지만, IT 인프라에서 취약점을 식별하는 데 사용해야 합니다. 침투 테스트(펜 테스트)는 보안 전문가가 컴퓨터 시스템이나 네트워크에 대한 사이버 공격을 시뮬레이션하여 취약점을 찾아내고 악용하기 위해 수행합니다. 이는 공격이 실제로 어떻게 네트워크에 침투할 수 있는지를 보여줍니다. 반면 취약점 평가는 알려진 취약점을 식별하고 우선순위를 매기는 자동화된 스캔입니다. 함께 수행하면 포트 취약점에 대한 종합적인 요약을 제공할 수 있습니다.

포트 보안 모범 사례

  • 외부 공격 표면을 평가합니다. 공격자가 악용할 수 있는 공개(오픈) 포트를 식별하고 보안 조치함으로써 네트워크가 외부 위협에 노출된 정도를 정기적으로 평가해야 합니다. 모든 오픈 포트가 반드시 필요한지 확인하세요. 더 이상 사용되지 않는(Deprecated) 애플리케이션 또는 서비스와 관련된 포트는 즉시 닫으십시오.
  • 새롭게 부상하는 위험에 대한 지속적 모니터링. 지속적이고 광범위한 모니터링 을 구현하여 오픈 포트와 관련된 신규 취약점 및 위협을 탐지하십시오. 필요 시 적시에 대응하고 완화 조치를 수행하세요.
  • 오픈 포트의 성능을 평가합니다. 모든 오픈 포트의 보안 및 기능을 정기적으로 검토하고 평가하세요. 오픈 포트가 지정된 내부 대상에 적절히 매핑되어 있는지, 그리고 적용 가능한 모든 리소스에 최소 권한이 적용되도록 하십시오.
  • 일관된 패치 일정을 준수합니다. 정기적인 패치는 큰 보안 효과로 이어질 수 있습니다. 보안과 관련된 모든 패치는 배포(릴리스) 즉시 적용되도록 하십시오.
  • 잘못 구성되었고, 패치되지 않았으며, 취약한 서비스입니다. 패치되지 않았거나 잘못 구성된 시스템은 침해된 시스템으로 이어질 수 있습니다. 모든 구성이 모범 보안 사례를 따르도록 확인하세요. 구성 변경이 발생하면 네트워크 지원 담당자에게 알릴 수 있도록 모니터링 시스템을 구현하십시오.

결론

열린 포트는 양날의 검과 같습니다. 한편으로는 웹 페이지, 애플리케이션, 서비스가 동작할 수 있도록 비즈니스 운영에 필수적입니다. 다른 한편으로는 위협 행위자가 침투해 네트워크를 악용할 수 있는 기회를 제공합니다. 따라서 열린 포트를 관리하고 모니터링하는 일은 네트워크 보안에서 매우 중요한 요소이며 아무리 강조해도 지나치지 않습니다. 조직에는 모든 열린 포트를 보안하기 위한 절차와 모든 시스템 및 소프트웨어를 정기적으로 업데이트하도록 보장하는 정책이 있어야 합니다. Telnet 및 FTP와 같은 안전하지 않은 포트는 더 이상 사용하지 말고, 최신 보안 기술을 활용하는 현대적인 솔루션으로 교체해야 합니다. 정기적인 점검을 수행하여 모든 열린 포트가 반드시 필요한지 확인하고, 구성이 모범 사례를 준수하는지 확인하세요. 기술이 발전함에 따라 포트 요구 사항도 함께 바뀐다는 점을 기억하십시오. 적절한 전략과 집중을 통해 열린 포트는 비즈니스를 더 큰 위험에 노출시키는 취약점이 아니라, 정상적으로 작동하는 자산으로 유지될 수 있습니다.

네트워크 보안 가이드를 받으세요

네트워크를 보호하고 침해를 예방하며 변화하는 사이버 위협에 선제적으로 대응할 수 있도록 돕는 전문가 가이드

자세히 알아보기

FAQ

공유하기

더 알아보기

저자 소개

Dirk schrader

Dirk Schrader

보안 연구 부문 VP

Dirk Schrader는 Netwrix의 레지던트 CISO(EMEA)이며 보안 연구 부문 VP입니다. CISSP (ISC²) 및 CISM (ISACA) 자격증을 보유한 IT 보안 분야 25년 경력의 베테랑으로, 사이버 위협에 대응하는 현대적 접근 방식으로서 사이버 복원력을 발전시키기 위해 노력하고 있습니다. Dirk는 커리어 초기에 기술 및 지원 역할에서 시작해, 이후 대규모 다국적 기업과 소규모 스타트업 모두에서 영업, 마케팅, 제품 관리 직무로 자리를 옮기며 전 세계의 사이버보안 프로젝트에 참여해 왔습니다. 그는 사이버 복원력을 달성하기 위해 변화 관리와 취약점 관리의 필요성을 다룬 수많은 글을 게재해 왔습니다.