Communitygithub.com

radare2

radare2 CLI를 위한 바이너리 분석 스킬입니다. GUI에 의존하지 않고 명령줄을 통해 정찰, 분석, 탐색, 내보내기 및 경량 수정을 수행합니다.

radare2란 무엇인가요?

이 스킬은 `radare2` 오픈소스 리버스 엔지니어링 프레임워크의 CLI 도구를 전문적으로 다루며, PE, ELF, Mach-O, APK, WASM 등 다양한 바이너리 형식을 정밀하게 분석할 수 있도록 설계되었습니다. `rabin2`, `rasm2`, `radiff2`, `rahash2`, `rax2` 같은 보조 도구를 포함한 전체 생태계를 지원하며, 빠른 정찰(문자열, 임포트, 익스포트), 심층 분석(함수 디스어셈블, 크로스 레퍼런스), 바이너리 패치, 스크립팅(`r2pipe` 등) 등 실제 분석 워크플로우에 필요한 모든 작업을 다룹니다. 이 스킬의 핵심 원칙은 최소 충분 명령을 우선하고, 먼저 정찰한 후 심층 분석하며, 수정에는 신중을 기하고, 가장 중요한 것은 임포트 테이블 검사(`rabin2 -i`)를 **필수 관문(gate)**으로 삼아 해당 증거(Evidence)가 기록되지 않으면 다음 단계로 넘어갈 수 없다는 점입니다. 또한 `scripts/recon.ps1` 스크립트를 통해 1차 정찰을 자동화하고, `references/cheatsheet.md`를 즉시 참조하여 명령어를 빠르게 떠올릴 수 있도록 설계되어 있습니다. 사용자는 이 스킬을 통해 어떤 플랫폼(Windows, Linux, macOS)에서든 일관된 분석 절차를 따를 수 있으며, IDA 같은 다른 도구와 명확하게 라우팅되어 혼란을 방지합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/radare2

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

radare2은(는) 무엇을 하나요?

radare2 CLI를 위한 바이너리 분석 스킬입니다. GUI에 의존하지 않고 명령줄을 통해 정찰, 분석, 탐색, 내보내기 및 경량 수정을 수행하는 데 중점을 둡니다.

필수 조치(읽은 후 즉시 실행)

  1. NOW: ../field-journal/precedent-reverse.md를 읽으십시오. — 이 스킬의 작업이 승인된 일반 작업인지 확인합니다.
  2. NOW: 현재 작업이 이 스킬의 적용 범위에 해당하는지 확인합니다.
  3. NEXT: ../tool-index.md를 읽고 도구 가용성과 실제 경로를 확인합니다.
  4. NEXT: 도구가 없으면 bootstrap을 호출하고 경로를 추측하지 마십시오.
  5. ACT: "워크플로" 첫 단계로 진입하여 실행하고, 확인 상태에 멈추지 마십시오.

적용 범위

사용자가 다음과 같은 의도를 가질 때 이 스킬을 우선적으로 사용해야 합니다:

  • r2 / radare2를 사용하여 exe, dll, so, elf, apk, dex, wasm 등의 파일을 분석해야 하는 경우
  • rabin2, rasm2, radiff2, rahash2, rax2 사용법을 묻는 경우
  • 명령줄 디스어셈블, 함수 확인, 문자열 확인, 임포트/익스포트 확인, 크로스 레퍼런스 조회, 패치 작업이 필요한 경우
  • radare2 배치 명령, -c 자동화 명령 또는 r2pipe 스크립트를 작성해야 하는 경우

사용자가 명시적으로 GUI 리버스 엔지니어링, Hex-Rays 스타일의 의사 코드, 또는 IDA 워크플로를 요구한다면 ida-reverse를 우선 고려하십시오. 웹 JS 리버스 엔지니어링의 경우 reverse-engineering을 우선 고려하십시오.

환경 확인 우선

r2가 사용 가능하다고 가정하지 마십시오. 먼저 확인하십시오:

r2 -v
rabin2 -v

설치되지 않은 경우, 일반적인 설치 위치를 확인하거나 설치를 안내하십시오.

Windows에서 일반적인 실행 파일:

  • radare2.exe
  • rabin2.exe
  • rasm2.exe
  • radiff2.exe
  • rahash2.exe
  • rax2.exe
  • r2pm.exe

내장 리소스

이 스킬에는 두 가지 리소스가 포함되어 있습니다. 매번 임시로 명령어를 구성하지 말고 우선 재사용하십시오.

scripts/recon.ps1

표준 정찰 스크립트로, 1차 개요 분석에 적합합니다. 다음을 출력합니다:

  • 기본 정보
  • 섹션
  • 임포트
  • 익스포트
  • 문자열
  • 선택적 r2 -A 자동 분석 요약

호출 방법:

powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "C:\path\to\sample.exe"

r2 자동 분석을 포함하려면:

powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "C:\path\to\sample.exe" -RunAnalysis

references/cheatsheet.md

더 많은 명령어 세부 사항, 일반 시나리오 템플릿이 필요하거나 문법을 빠르게 기억해야 할 때, 기억에 의존하여 추측하지 말고 이 치트시트를 읽으십시오.

알려진 현상

Windows에서 .sdb 누락 경고가 간헐적으로 발생

일부 PE 파일에서 rabin2 정찰 시 다음과 유사한 경고가 나타날 수 있습니다:

ERROR: Cannot find ...\share\format\dll\*.sdb

주요 출력이 여전히 정상적으로 반환된다면, 일반적으로 기본 정찰 결론에 영향을 미치지 않으므로 계속 분석하면 됩니다. 이러한 부수적인 경고 때문에 분석 실패로 바로 판단하지 마십시오.

기본 원칙

1. 먼저 정찰한 후 심층 분석

처음부터 전체 자동 분석을 수행하지 마십시오. 먼저 가벼운 명령어로 파일 형식, 아키텍처, 진입점, 문자열, 임포트 테이블을 확인한 후 aaa, aaaa 또는 대상 분석을 수행할지 결정하십시오.

2. 최소 충분 명령어 우선

radare2 명령어가 매우 많으므로, 사용자는 일반적으로 최단 경로만 필요로 합니다:

  • 파일 정보 보기: rabin2 -I
  • 문자열 보기: rabin2 -z
  • 임포트/익스포트 보기: rabin2 -i / rabin2 -E
  • 대화형 분석: r2 <file> 후 부분 명령 실행

3. 수정 시 신중 유지

사용자가 바이너리 패치를 요청하는 경우:

  • 기본적으로 읽기 전용으로 먼저 엽니다: r2 <file>
  • 명시적으로 수정이 필요한 경우에만 쓰기 모드 사용: r2 -w <file> 또는 세션 내에서 oo+
  • 수정 전에 위험성을 알리고 의도치 않은 원본 파일 덮어쓰기를 방지합니다.

일반 워크플로

워크플로 1: 빠른 정찰

바이너리 파일을 처음 받았을 때 적합합니다.

하드 게이트(MUST — 충족되지 않으면 워크플로 2 및 이후 단계 진입 금지)

PE/ELF/Mach-O 등 임포트 테이블이 있는 바이너리의 경우, 함수 수준 분석이나 동적 단계에 진입하기 전에 MUST 임포트 테이블 검사를 완료하고 Evidence로 기록해야 합니다:

  1. rabin2 -i <sample>(또는 recon.ps1 출력의 imports 섹션)을 실행합니다. DLL/SYS의 경우 추가로 rabin2 -E를 실행하고 E-exports로 기록합니다.
  2. 전체/분류된 임포트 테이블 결과를 Evidence에 기록합니다(권장 ID: E-imports 또는 E-triage-imports). 최소한 다음을 포함해야 합니다:
    • 재현 명령어(repro_command)
    • 주요 임포트 분류 요약: 네트워크 / 파일 / 암호화 / 프로세스 인젝션 / 레지스트리 / 기타 의심스러운 API
    • 임포트 테이블이 비어 있거나, 파싱에 실패하거나, 도구에서 오류가 발생한 경우: MUST 실패 현상과 원본 출력을 Evidence로 기록하고, 조용히 건너뛰지 마십시오.
    • 임포트 테이블이 "너무 깨끗한" 경우(기본 DLL만 있음): MUST 동적 로딩 의심을 명시하고, SHOULD 동적 API 캡처로 전환합니다.
  3. .NET 등 전통적인 IAT가 없는 경우: MUST 동등한 앵커 포인트(dnSpy/IL/메타데이터 요약)를 통해 동일한 Evidence 시맨틱 슬롯에 기록하고, 빈 상태로 넘어가는 것을 금지합니다.
  4. 패킹된 샘플의 IAT 복구: x86은 ImportREC(또는 동등), x64는 Scylla(또는 동등)를 사용합니다. 복구 실패 시 MUST E-iat-repair-fail을 기록한 후 동적 API 중단점으로 전환합니다. 정적 IAT에서 무한히 고집하는 것을 금지합니다. (reverse-engineering/references/re-agent-workflow.md §1.2 참조)
  5. 사용자가 명시적으로 "임포트 테이블 검사 재수행 / 임포트 테이블 재확인 / IAT 재수행"을 요청하는 경우: MUST 지목된 단계 자체를 재수행합니다(차단 시 먼저 가능성 문턱 확인: 전제 조건 설명 + 확인 요청; 강제 시 quality=unreadable 표시). 관련 없는 단계로 대체하여 완료를 가장하는 것을 금지합니다.

임포트 테이블(또는 합법적인 동등 앵커 포인트/IAT 실패 우회) Evidence가 기록되기 전까지: MUST NOT "기본 정찰 완료"라고 주장하고, MUST NOT 워크플로 2+의 심층 분석 결론에 진입합니다.

내장 스크립트를 직접 실행하는 것을 우선 권장:

powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "sample.exe"

수동 최소 명령어만 필요한 경우:

rabin2 -I sample.exe
rabin2 -z sample.exe
rabin2 -i sample.exe
rabin2 -E sample.exe

관심 지점:

  • 파일 형식, 비트 수, 아키텍처, 플랫폼
  • 진입점 주소
  • 의심스러운 문자열: URL, 경로, 오류 메시지, 레지스트리, 명령줄 인자
  • 임포트 함수: 네트워크, 파일, 암호화, 프로세스 인젝션, 레지스트리 작업(MUST Evidence 기록, 위 하드 게이트 참조)

워크플로 2: 대화형 함수 분석

r2 sample.exe

진입 후 일반적으로 사용:

aaa          # 일반 자동 분석
afl          # 함수 목록
iz           # 문자열 목록
iS           # 섹션 목록
is           # 심볼 목록
s entry0     # 진입점으로 이동
pdf          # 현재 함수 디스어셈블
VV           # 시각적 모드 진입(터미널이 적합한 경우)
q            # 종료

설명:

  • 기본적으로 aaa를 우선 사용하고, 처음부터 더 무거운 aaaa를 사용하지 마십시오.
  • 샘플이 크거나 분석이 느린 경우, 진입점 근처만 분석하고 수동으로 확장할 수 있습니다.

워크플로 3: main / 핵심 로직 찾기

afl~main
afl~sym.
iz~http
iz~error
axt <addr>

접근 방식:

  • 먼저 main, 진입점, 문자열 참조로 시작합니다.
  • axt를 사용하여 특정 문자열이나 주소를 참조하는 위치를 찾습니다.
  • 참조 지점을 찾은 후 s <addr>, pdf를 수행합니다.

워크플로 4: 16진수 및 메모리 보기

px 64        # 현재 주소부터 64바이트 16진수
pd 20        # 20개 명령어 디스어셈블
psz          # 현재 주소의 문자열 읽기
pxa          # 더 친화적인 16진수 뷰

워크플로 5: 바이너리 패치

사용자가 명시적으로 파일 수정을 요청한 경우에만 사용:

r2 -w sample.exe

진입 후 예시:

s 0x401000
wa nop
wa jmp 0x401050
wq

일반적인 쓰기 작업:

  • wa <asm>: 어셈블리 쓰기
  • wx <hex>: 원시 바이트 쓰기
  • wq: 쓰고 종료

수정 전에 원본 파일을 백업하는 것이 좋습니다. 사용자가 백업을 언급하지 않았다면, 최소한 한 번 경고합니다.

워크플로 6: 비대화형 자동화

일회성 출력 결과에 적합:

r2 -A -q -c "afl;iz;ii;q" sample.exe

일반적인 인자:

  • -A: 시작 시 자동 분석
  • -q: 조용한 모드
  • -c: 명령어 문자열 실행

명령어가 많다면, 유지보수하기 어려운 매우 긴 문자열을 넣지 말고 읽기 쉬운 순서로 정리하는 것이 좋습니다.

내장 정찰 스크립트를 먼저 기반으로 사용하고, 그런 다음 맞춤 명령어를 추가할지 결정하는 것이 더 권장됩니다.

일반적인 하위 도구

rabin2

정적 정보 추출에 적합:

rabin2 -I sample.exe   # 기본 정보
rabin2 -S sample.exe   # 섹션
rabin2 -s sample.exe   # 심볼
rabin2 -i sample.exe   # 임포트
rabin2 -E sample.exe   # 익스포트
rabin2 -z sample.exe   # 문자열
rabin2 -zz sample.exe  # 더 자세한 문자열

rasm2

빠른 어셈블리/디스어셈블리에 적합:

rasm2 -d "9090"
rasm2 -a x86 -b 64 "xor eax, eax"

radiff2

두 바이너리 비교에 적합:

radiff2 old.exe new.exe
radiff2 -C old.exe new.exe

rahash2

해시 계산에 적합:

rahash2 -a md5 sample.exe
rahash2 -a sha256 sample.exe

rax2

진수 및 인코딩 변환에 적합:

rax2 0x401000
rax2 4198400
rax2 -s hello

권장 분석 순서

알 수 없는 샘플을 만났을 때, 다음 순서를 따르십시오:

  1. rabin2 -I로 형식, 아키텍처, 진입점 확인
  2. rabin2 -z로 문자열 확인
  3. rabin2 -i로 임포트 함수 확인 — MUST + Evidence(하드 게이트, 워크플로 1 참조)
  4. 대화형 분석이 필요하다면, 그때 r2 진입(단계 3의 Evidence가 기록된 경우에만)
  5. 먼저 aaa, 그 다음 afl / iz / pdf
  6. 문자열 참조, 임포트 호출, 진입점 흐름을 통해 점진적으로 핵심 함수를 찾습니다.

이 순서의 장점은 노이즈가 적고 방향 감각을 빨리 확립할 수 있다는 점입니다. 단계 3은 선택적 최적화가 아니라 심층 분석 진입 전 하드 게이트입니다.

Windows 주의 사항

  • 경로에 공백이 있는 경우, 명령어에 올바르게 따옴표를 추가해야 합니다.
  • 현재 터미널에서 r2를 찾을 수 없다면 PATH가 방금 업데이트된 것일 수 있으므로 새 터미널을 열고 다시 시도하십시오.
  • 일부 샘플은 관리자 권한으로 읽어야 하지만, 기본적으로 사용자가 명시적으로 필요로 하지 않는 한 권한을 적극적으로 상승시키지 마십시오.
  • 의심스러운 샘플에 대해 동적 디버깅을 수행하기 전에 먼저 사용자 의도를 확인하여 오작동을 방지하십시오.

출력 스타일

사용자가 단순히 명령어만 원하는 것이 아니라 실제 파일 분석을 요청하는 경우:

  • 먼저 정찰 결과 요약을 제공합니다.
  • 그런 다음 주요 증거(문자열, 임포트, 함수, 주소)를 나열합니다.
  • 마지막으로 다음 단계 제안이나 심층 분석을 계속 진행합니다.

명령어만 나열하고 왜 이렇게 하는지 설명하지 마십시오.

일반적인 요청 예시

예시 1: exe 분석

사용자: "이 exe가 뭘 하는지 radare2로 봐줘"

처리 방법:

  1. 먼저 rabin2 -I/-z/-i 사용
  2. r2 진입 필요 여부 판단
  3. aaa, afl, pdf로 진입점 및 주요 문자열 참조 심층 분석

예시 2: 문자열이 호출된 위치 찾기

사용자: "이 오류 문자열이 어떤 함수에서 트리거됐어?"

처리 방법:

  1. iz~키워드로 문자열 주소 찾기
  2. axt <addr>로 참조 찾기
  3. 참조 지점으로 이동 s <addr> 후 pdf

예시 3: 분기 변경

사용자: "이 jne를 je로 바꿔줘"

처리 방법:

  1. 먼저 대상 주소 확인
  2. 쓰기 모드로 진입할 것임을 명시적으로 알림
  3. wa je <target> 또는 직접 wx 사용
  4. 수정 후 다시 디스어셈블하여 확인

피해야 할 사항

  • radare2를 aaa 명령어 하나만 있는 도구로 취급하지 마십시오.
  • 위험성을 설명하지 않고 쓰기 모드로 사용자 파일을 열지 마십시오.
  • 기본 정찰을 수행하기 전에 결론을 내리지 마십시오.
  • 임포트 테이블 검사(rabin2 -i / recon imports)를 건너뛰는 것을 금지합니다. Evidence에 기록되지 않으면 다음 단계로 넘어갈 수 없습니다. 사용자가 임포트 테이블 재수행을 요청했는데 다른 단계를 수행하여 대체하는 것을 금지합니다.
  • IAT 복구 실패 후 정적으로 고집하는 것을 금지합니다. E-iat-repair-fail을 기록한 후 동적으로 전환합니다. 64비트 샘플에 ImportREC만 사용하는 것을 금지합니다.
  • 웹 JS 리버스 엔지니어링을 이 스킬로 잘못 유도하지 마십시오. 그것은 reverse-engineering의 범위입니다.

참고 자료

  • 명령어 치트시트: references/cheatsheet.md
  • 표준 정찰 스크립트: scripts/recon.ps1

radare2-skills 생태계

radare2-skills 프로젝트(radareorg/radare2-skills)는 더 완전한 생태계 도구와 워크플로를 제공합니다:

  • r2xsql: SQL로 바이너리 임포트 테이블 / 문자열 / 함수 조회
  • r2mcp / r2http: MCP 도구 및 HTTP 상태화 명령 채널
  • radius2: 심볼릭 실행, 심볼릭 동적 분석
  • r2pm: 플러그인 관리, 확장
  • decompiler plugins: radare2 플러그인 메커니즘

사용 전략:

  • 사용자가 r2xsql, r2mcp, r2http, radius2, r2pm, rabin2, rasm2, radiff2, rahash2, rax2를 언급하면, 본 스킬(radare2/SKILL.md)로 우선 라우팅합니다.
  • 이러한 도구는 단지 생태계 가속기일 뿐이며, 우회할 수 없습니다: 권한 게이트, tool-index 검증, Evidence 임포트, 쓰기 모드 확인.
  • 최소 재현 명령어 예시 제공:
    • r2xsql -s <file> -q "SELECT ..."
    • curl.exe -sS --data-binary 'aaa' http://127.0.0.1:9393/cmd
    • radius2 -p <binary> ...
    • r2pm -ci <plugin>

본 스킬은 기존 하드 게이트와 증거 체인 무결성을 유지하며, 어떤 권한이나 Evidence 단계도 건너뛰는 것을 허용하지 않습니다.


라우팅 컨텍스트

상위 진입점: skills/SKILL.md(총괄), routing.md 상위 대안: ida-reverse/(디컴파일/의사 코드가 필요할 때 IDA로 업그레이드) 하위 출력점:

  • 동적 분석 필요 → reverse-engineering/tools-dynamic.md(Frida/GDB)
  • 심층 디컴파일 필요 → ida-reverse/
  • PAT에서 흥미로운 문자열을 발견한 후 크로스 레퍼런스 필요 → ida-reverse/(IDA의 xref가 더 강력함)

동급 관련 모듈: ida-reverse/(상호 보완: r2 정찰은 빠르고, IDA 디컴파일은 깊음)

온디맨드 부트스트랩(On-Demand Bootstrap)

본 스킬의 진입 스크립트는 통합 부트스트랩 시스템에 연결되어 있습니다. radare2가 없을 때 바로 오류를 내지 않고 자동으로 설치를 시도합니다.

자동화 기능 경계

도구자동 설치 가능설치 방식설명
r2✓GitHub Release ZIP (w64)%USERPROFILE%\Tools\radare2\에 자동 다운로드 및 압축 풀기
rabin2✓위와 동일(radare2 배포판에 포함)—
rasm2✓위와 동일—
radiff2✓위와 동일—
rahash2✓위와 동일—
rax2✓위와 동일—

부트스트랩 트리거 지점

  • scripts/recon.ps1: rabin2 또는 r2가 없으면 자동으로 bootstrap-reverse.ps1 호출

부트스트랩 실패 시

자동 설치가 실패하면(네트워크 문제, GitHub API 속도 제한 등), 스크립트는 명확한 오류와 함께 수동 설치 링크를 출력합니다.

수동 설치: https://github.com/radareorg/radare2/releases 에서 radare2-*-w64.zip을 다운로드하고, %USERPROFILE%\Tools\radare2\에 압축을 푼 후 bin\ 디렉토리가 PATH에 있는지 확인합니다.

작업 완료 자체 점검(완료를 주장하기 전에 MUST 통과)

  • 워크플로의 각 단계를 (읽기만 한 것이 아니라) 실제로 실행했습니까?
  • 임포트 테이블 검사를 실행하고 Evidence(E-imports / E-triage-imports 또는 .NET 동등 항목)에 기록했습니까? DLL/SYS의 경우 E-exports가 포함되었습니까?
  • IAT 복구 실패 시 E-iat-repair-fail을 기록하고 동적으로 전환했습니까? 재수행 요청이 동일한 단계로 되돌아갔습니까?
  • tool-index를 기반으로 실제 도구 경로를 사용했습니까?
  • 재현 가능한 증거(명령어/스크립트/스크린샷/보고서)를 생성했습니까?
  • RULES에서 요구하는 Checklist 항목을 완료하고 기록했습니까?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

관련 스킬