Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
halogen — 악성 문서로부터 YARA 규칙을 자동으로 생성합니다. | Kitploit
도구/GitHubGitHub/target/halogen
Static AnalysisForensicsMalware AnalysisThreat IntelligenceIncident ResponseArchived
GitHubtarget/halogen

halogen

악성 문서로부터 YARA 규칙을 자동으로 생성합니다.

저장소 보기
211304년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Halogen


Halogen은 악성 문서에 포함된 이미지 파일을 기반으로 Yara 규칙을 자동으로 생성하는 도구입니다. 이는 사이버 보안 전문가가 악성 위협에 대한 탐지 규칙을 작성하고, 대응자가 자신이 다루고 있는 특정 위협을 식별하는 데 도움을 줄 수 있습니다. 현재 Halogen은 JPG 및 PNG 파일을 기반으로 규칙을 생성할 수 있습니다.


Halogen 워크스루

Halogen 도움말

root@kitploit:~
python3 halogen.py -h
usage: halogen.py [-h] [-f FILE] [-d DIR] [-n NAME] [--png-idat] [--jpg-sos] [--jpg-sof2sos] [--jpg-jump] [-c CONTAINER] [--clam] [--rprefix RPREFIX]

Halogen: 오피스 문서에 포함된 이미지를 기반으로 Yara 규칙을 자동 생성합니다.

선택적 인자:
  -h, --help            이 도움말 메시지를 표시하고 종료합니다.
  -f FILE, --file FILE  분석할 파일
  -d DIR, --directory DIR
                        이미지 파일을 검색할 디렉터리.
  -n NAME, --rule-name NAME
                        규칙 파일의 사용자 지정 이름 지정
  --png-idat            PNG 매칭 시 PNG 파일 헤더 대신 IDAT 청크에서 시작합니다.
  --jpg-sos             JPG 매칭 시 헤더를 건너뛰고 스캔 시작 마커(Start of Scan)를 찾아 그 위치부터 매칭합니다.
  --jpg-sof2sos         JPG 매칭 시 헤더를 건너뛰고 SOF(Start of Frame)부터 SOS(Start of Scan)까지 매칭한 후, SOS 내 데이터의 45바이트를 추가로 매칭합니다.
  --jpg-jump            JPG 매칭 시 헤더를 건너뛰고 SOF와 SOS를 식별한 후, 실제 이미지 데이터를 읽어 반복되는 바이트를 찾아 해당 바이트를 건너뛰고 45바이트의 원시 이미지 데이터를 생성합니다.
  -c CONTAINER, --container CONTAINER
                        ClamAV 컨테이너 유형을 지정합니다. 기본값은 CL_TYPE_MSOLE2, CL_TYPE_OOXML_WORD, CL_TYPE_OOXML_XL, CL_TYPE_OOXML_PPT입니다.
  --clam                Yara 규칙 대신 Clam 규칙을 생성합니다.
  --rprefix RPREFIX     ClamAV 규칙 접두사를 지정합니다.


테스트

테스트를 위해 이미지가 포함된 몇 개의 테스트 문서 파일을 준비했습니다. python3 halogen/halogen.py -d tests/ > /tmp/halogen_test.yara를 실행하면 tests/ 디렉터리 내 파일에서 발견된 모든 이미지가 포함된 테스트 Yara 파일이 생성됩니다. 그 후 yara -d /tmp/halogen_test.yara tests/를 실행하여 어떤 이미지가 어떤 파일과 일치하는지 확인할 수 있습니다.

참고 사항

  1. JPG 매칭에는 두 가지 패턴을 사용합니다. 하나는 일반적인 JPG 파일 헤더보다 덜 엄격하며, 일부 악성 파일이 이 패턴과 일치하는 것을 확인했기 때문에 사용합니다. Halogen이 두 패턴을 모두 찾으면 기본적으로 더 엄격한 매칭을 출력합니다. 일반적으로 두 패턴의 매칭 내용은 동일하므로 탐지 누락은 거의 발생하지 않습니다.
  2. PNG 파일의 경우 기본적으로 파일 헤더에서 시작하거나 --png-idat 옵션을 사용하여 PNG 파일 내 IDAT 청크에서 시작할 수 있습니다. IDAT 청크 매칭 시 반환되는 바이트 수도 줄였습니다.
  3. 위와 유사하게 --jpg-sos 플래그를 사용하여 JPG 매칭을 스캔 시작 마커(Start of Scan)에서 시작할 수 있습니다.
  4. JPG 파일의 SOS 섹션 특성 때문에 --jpg-sof2sos 플래그를 추가로 제공합니다. 이 플래그는 SOF(Start of Frame) 마커에서 SOS를 찾을 때까지 읽은 후 추가로 45바이트를 더 읽습니다. 이는 기본 --jpg-sos 플래그에서 오탐지(false positive)가 발생할 때 유용합니다.
  5. 오탐지를 줄이기 위해 --jpg-jump 플래그를 추가했습니다. 이 플래그는 압축된 이미지 데이터를 읽고, 반복되는 이미지 바이트가 발견되면 Yara 출력에 16진수 점프(hex jump)를 생성합니다. 이를 통해 파일의 SOF 및 SOS와 이미지 내 더 고유한 데이터 일부를 매칭할 수 있습니다.

기여하기

풀 리퀘스트는 Python3로 제출해 주시고, 발견한 버그는 이슈로 등록해 주시기 바랍니다.

도구 다운로드