
시스템이 APT 공격의 피해를 입은 것처럼 보이게 하는 도구 모음
중요: 테스트를 개발할 계획이 없다면, 단순히 ZIP 다운로드나 리포지토리를 클론하지 마십시오. 암호화된 아카이브에 일반 텍스트 샘플 및 도구가 포함되지 않은 패키지 버전이 들어 있는 릴리스의 패키지를 사용하십시오.
APT 시뮬레이터는 시스템이 손상된 것처럼 보이게 만드는 도구 및 출력 파일 세트를 사용하는 Windows 배치 스크립트입니다. 다른 적대자 시뮬레이션 도구와 달리, APT 시뮬레이터는 애플리케이션을 가능한 한 간단하게 만들기 위해 설계되었습니다. 웹 서버, 데이터베이스 또는 일련의 가상 머신에 에이전트를 실행할 필요가 없습니다. 준비된 아카이브를 다운로드하고, 추출한 다음, 포함된 배치 파일을 관리자 권한으로 실행하기만 하면 됩니다. APT 시뮬레이터를 실행하는 데는 1분 미만이 소요됩니다.
고객이 POC에서 당사 스캐너를 테스트하고, 당사 스캐너가 테스트 시스템에 설치한 프로그램에 대해 보고하지 않았다는 불만을 보냈습니다. 그들은 Nmap을 설치하고, 다운로드 폴더에 PsExec.exe를 넣고, 사용자 바탕 화면에 EICAR 테스트 바이러스를 배치했습니다. 이때가 실제 위협을 보다 적절한 방식으로 시뮬레이션하는 도구를 구축하기로 결정한 순간이었습니다.
이 도구의 초점은 악성 코드가 아닌 적대자 활동을 시뮬레이션하는 것입니다. 적대자 및 악성 코드 활동을 시뮬레이션하는 고급 도구는 고급 솔루션 섹션을 참조하십시오.

배치 스크립트는 런타임에 암호화된 7z 아카이브에서 도구와 셸을 추출합니다. "ZIP으로 다운로드" 버튼을 사용하여 마스터 리포지토리를 다운로드하지 마십시오. 대신 릴리스 섹션의 공식 릴리스를 사용하십시오.
APT 시뮬레이터에는 "AVExcluder"라는 모듈이 포함되어 있으며, 이 모듈은 사용 중인 %APTDIR%을 일반적인 AV 솔루션에서 AV 제외 항목으로 등록하려고 시도합니다. 시중의 모든 AV 소프트웨어 제품에 접근할 수 없으므로, 오류를 보고하거나 풀 리퀘스트로 새로운 제외 항목을 추가해 주십시오.
버전 0.4부터 테스트 세트를 확장하는 것은 매우 쉽습니다. 테스트 세트 카테고리 폴더 중 하나에 단일 .bat 파일을 추가하기만 하면 됩니다.
예를 들어, "privesc.exe"라는 도구를 사용하는 "권한 상승"에 대한 간단한 테스트 케이스를 작성하려면 리포지토리를 클론하고 다음을 수행하십시오:
toolset 폴더에 도구를 추가합니다.privesc-1.bat를 작성하여 ./test-sets/privilege-escalation 폴더에 추가합니다.build_pack.bat를 실행합니다.스크립트에 도구, 웹 셸, 보조 파일 또는 출력 파일이 포함된 경우, 해당 파일을 ./toolset 또는 ./workfiles 폴더에 배치하십시오. 빌드 스크립트 build_pack.bat를 실행하면 암호화된 아카이브 enc-toolset.7z 및 enc-files.7z에 포함됩니다.
"%ZIP%" e -p%PASS% %TOOLARCH% -aoa -o%APTDIR% toolset\tool.exe > NUL
"%ZIP%" e -p%PASS% %FILEARCH% -aoa -o%APTDIR% workfile\tool-output.txt > NUL
다음 표는 다양한 테스트 케이스와 예상 탐지 결과를 보여줍니다.
이제 보안 모니터링 솔루션(SIEM, EDR 등)에서 다음 키워드에 대한 이벤트를 찾을 수 있어야 합니다.
MSSE-1337-servermsagent_fedac123postex_ssh_fedac123334485 (Get System 활동에서 사용됨)참고: 명명된 파이프 모니터링이 없습니까? Sysmon + 이 구성 및 이 Sigma 규칙을 사용하여 시작할 수 있습니다.
b6a1458f396 (여러 이벤트: 새 서비스 등록 및 프로세스 생성)참고: 이벤트가 없습니까? 이 Sigma 규칙을 사용하여 시작할 수 있습니다.
http://10.0.2.15/pixel.gifhttps://operaa.net:443/jquery-3.2.2.min.jshttps://23.108.57.148:443/jquery-3.2.2.full.js아직 테스트 케이스 없음
버전 0.8.0부터 APT 시뮬레이터는 @juju4가 제공하는 배치 모드를 지원하며, 이를 통해 예를 들어 Ansible을 통해 스크립트 방식으로 실행할 수 있습니다.
APTSimulator.bat -b
이 리포지토리에는 시스템의 무결성과 안정성을 해칠 수 있는 도구와 실행 파일이 포함되어 있습니다. 비생산적인 테스트 또는 데모 시스템에서만 사용하십시오. 시작하기 전에 스냅샷을 생성하십시오. 그렇지 않으면 모든 수정 사항을 수동으로 제거해야 하며, 이는 지루한 작업입니다.

CALDERA 자동화 적대자 에뮬레이션 시스템 https://github.com/mitre/caldera
Infection Monkey - 자동화된 침투 테스트 도구 https://github.com/guardicore/monkey
Flightsim - 악성 네트워크 트래픽을 생성하고 제어를 평가하는 유틸리티 https://github.com/alphasoc/flightsim
Twitter에서 @cyb3rops를 팔로우하고 연락하십시오.
| 테스트 케이스 | AV | NIDS | EDR | SM | CA |
|---|
| 로컬 파일 수집 | X | ||||
| C2 연결 | (X) | X | X | X | |
| DNS 캐시 1 (캐시 주입) | (X) | X | X | X | |
| 악성 사용자 에이전트 (멀웨어, RAT) | X | X | X | ||
| Ncat 백 연결 (드롭 및 실행) | X | X | X | X | |
| WMI 백도어 C2 | X | X | X | ||
| LSASS 덤프 (Procdump 사용) | X | X | X | ||
| Mimikatz 1 (드롭 및 실행) | X | X | X | X | |
| WCE 1 (이벤트 로그 항목) | X | X | X | ||
| 게스트 계정 관리자 활성화 | X | X | X | ||
| 가짜 시스템 파일 (드롭 및 실행) | X | X | X | ||
| Hosts 파일 (AV/윈도우 업데이트 차단) | (X) | X | X | ||
| 난독화된 JS 드로퍼 | (X) | X | X | X | X |
| 난독화 (JPG 확장자의 RAR) | (X) | ||||
| Nbtscan 탐색 (스캔 및 출력) | X | X | (X) | X | |
| 정찰 활동 (일반적인 명령어) | X | X | X | ||
| PsExec (드롭 및 실행) | X | X | X | ||
| 원격 실행 도구 (드롭) | (X) | X | |||
| At 작업 | X | X | X | ||
| RUN 키 항목 생성 | X | X | X | ||
| 예약된 작업 생성 | X | X | X | ||
| StickyKey 백도어 | X | X | |||
| UserInitMprLogonScript 지속성 | (X) | X | X | ||
| 웹 셸 | X | (X) | X | ||
| WMI 백도어 | X | X |