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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
hexcymatix — 바이너리 파일에서 반복되는 바이트 시퀀스를 시각화하여 숨겨진 구조를 드러내며, 사전 정의된 시그니처 없이 리버스 엔지니어링 및 패턴 발견을 지원합니다. | Kitploit
도구/GitHubGitHub/xoreaxeaxeax/hexcymatix
Static AnalysisReverse EngineeringBinary Analysis
GitHubxoreaxeaxeax/hexcymatix

hexcymatix

바이너리 파일에서 반복되는 바이트 시퀀스를 시각화하여 숨겨진 구조를 드러내며, 사전 정의된 시그니처 없이 리버스 엔지니어링 및 패턴 발견을 지원합니다.

저장소 보기
1315일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

hexcymatix

errlook.exe

hexcymatix는 반복되는 바이트 패턴에서 구조적 정보를 추출하는 바이너리 리버스 엔지니어링 도구로 대략적으로 구상된 탐색적 연구 프로젝트입니다.

이 아이디어는 실제 사용 가능한 도구로 구현되지는 않았지만, 일상적인 데이터에 내재된 놀라운 자기 대칭성을 보여주는 흥미로운 표현들을 여전히 만들어냅니다.

개요

리버스 엔지니어링을 하다 보면 어떤 데이터(테이블, 압축된 blob, 프로토콜 페이로드)의 예시 하나를 갖고 있으면서도, 이를 설명하는 규칙이나 파서를 아직 작성할 수 없는 상태에서 파일의 다른 곳에서 유사한 데이터를 찾고 싶을 때가 있습니다. 명세 없이 유사성을 원하는 것입니다.

hexcymatix는 반복되는 바이트 문자열이 그 구조가 무엇인지 알 수 없더라도 구조나 관계를 암시한다고 가정합니다. 반복을 시각화함으로써, 정확히 무엇을 찾고 있는지 모르는 상태에서도 관련 데이터를 드러낼 수 있습니다.

예를 들어, 아래의 팡세(Pensées) 구절에는 여러 자기 반복 시퀀스(' incapable of ', ' which he ', 'ing either ')가 있습니다. hexcymatix는 파일을 두 줄로 펼쳐 놓고 8바이트 이상의 반복 바이트 시퀀스를 모두 연결합니다:

Pascal Pensees

이렇게 나타난 연결은 데이터에 숨겨진 구조와 관계를 암시합니다.

이 과정을 일상적인 바이너리 파일에 반복 적용하면 예상치 못한 자기 유사성, 연결, 구조가 자동으로 드러나기 시작합니다. 예를 들어, 다음은 표준 Windows 설치에 포함된 오류 조회 실행 파일입니다:

errlook.exe

이 과정에서 가장 중요한 부분은 조각 연결 사이에 호(arc)를 추가하여 출력을 멋지게 보이게 하는 것입니다:

errlook.exe

원래 목적과는 완전히 동떨어진 채, 데이터의 다양한 표현 방식을 실험해 볼 수 있습니다. 예를 들어, 동일한 파일과 연결을 원의 둘레를 따라 렌더링하면 다음과 같이 나타납니다:

errlook.exe

사용법

root@kitploit:~
python hexcymatix.py [options] file [file ...]

플래그

예시

root@kitploit:~
# Circular visualization of an executable
python hexcymatix.py --circular guidgen.exe

# Linear visualization, top 500 fragments only
python hexcymatix.py --linear --top 500 guidgen.exe

# Batch, 4K output
python hexcymatix.py --circular --resolution 4k *.exe

출력

실행 파일

cmd.exe

cmd.exe 원형

cmd.exe 원형

calc.exe

calc.exe 선형

calc.exe 원형

explorer.exe

explorer.exe 선형

explorer.exe 원형

글꼴

Arial TTF

arial.ttf 선형

arial.ttf 원형

Comic Sans TTF

comic.ttf 선형

comic.ttf 원형

Courier New TTF

cour.ttf 선형

cour.ttf 원형

라이브러리

kernel32.dll

kernel32.dll 선형

kernel32.dll 원형

spwizres.dll

spwizres.dll 선형

spwizres.dll 원형

user32.dll

user32.dll 선형

user32.dll 원형

이미지

Windows 95 기본 배경화면 ("Clouds")

Clouds.bmp 선형

Clouds.bmp 원형

Windows XP 기본 배경화면 ("Bliss")

bliss.jpg 선형

bliss.jpg 원형

일반 텍스트

Windows XP EULA

eula.txt 선형

eula.txt 원형

파스칼의 팡세

pg18269.txt 선형

pg18269.txt 원형

오디오

Windows XP 시작음

xpstartu.wav 선형

xpstartu.wav 원형

Windows XP WMA (베토벤 9번 교향곡, 설치 시 포함)

beethov9.wma 선형

beethov9.wma 원형

의존성

root@kitploit:~
pip install pycairo numpy pillow

pycairo는 네이티브 cairo 라이브러리를 대상으로 빌드되므로 cairo가 먼저 설치되어 있어야 합니다 — macOS에서는 brew install cairo pkg-config, Debian/Ubuntu에서는 apt install libcairo2-dev pkg-config.

활용 및 향후 계획

이 도구는 리버스 엔지니어링 보조 도구로 개발되었습니다: 어떤 데이터(구조체, 압축된 blob, 프로토콜 페이로드)의 알려진 예시 하나가 주어지면, 추가적인 RE 없이 파일에서 해당 데이터의 다른 인스턴스를 찾는 것입니다. 알려진 예시와 많은 반복 하위 시퀀스를 공유하는 영역들이 추가 조사할 가치가 있는 후보로 군집화될 것이라는 기대였습니다.

결국 아이디어가 근거가 빈약하고 사용 사례가 좁다고 판단되어, 이 기법은 유용한 연구에 필요한 매끄러운 플러그인 수준으로는 개발되지 못했습니다. 이 작업이 허공으로 사라지지 않도록 여기에 공유하며, 혹시 누군가 이를 바탕으로 더 발전시킬 수 있기를 바랍니다.

AI 고지

이 프로젝트는 원래 C#으로 직접 작성되었습니다. 이후 LLM을 사용하여 Python으로 포팅되었으며, 감독이나 검토는 거의 이루어지지 않았습니다.

저자

hexcymatix는 Christopher Domas(@xoreaxeaxeax)의 연구 프로젝트입니다.

errlook.exe

도구 다운로드
플래그설명
--circular원형 레이아웃: 바이트 오프셋이 링 위의 각도에 매핑됩니다 (기본값)
--linear평행 막대 레이아웃: 교차하는 사각형(quad)으로 연결된 두 개의 가로 막대
--top N [N ...]렌더링 전에 가장 긴 N개 조각만 유지합니다. 여러 값을 전달하면 각 기준값마다 이미지 하나씩 렌더링합니다
--no-arcs호(arc)를 건너뛰고 현(chord)만 그립니다 (훨씬 빠르고 시각적 노이즈가 적음)
--resolution RES출력 해상도를 WxH 또는 사전 설정으로 지정: 480p, 720p, 1080p, 1440p, 4k, uwfhd (2560x1080), suwfhd (3840x1080) (기본값: 1080p)
--ultra--resolution 4000x4000의 줄임말
--circle-fill F원이 사용하는 캔버스 지름의 비율 (기본값: 0.25, 초광각 사전 설정에서는 0.50)
--jpg각 PNG와 함께 80% 품질의 JPEG도 작성합니다
--output-dir DIR출력 파일 디렉터리 (기본값: output)