Communitygithub.com

DQmyth/js-reverse-ops

프로덕션 등급 JavaScript 리버스 엔지니어링 스킬: 증거 기반 워크플로, 샌드박스 하니스, 19개의 검증된 플레이북, 136개의 스크립트, 공개 벤치마크

js-reverse-ops란 무엇인가요?

이 스킬은 JavaScript 리버스 엔지니어링을 위한 구조화된 증거 기반 워크플로를 제공합니다. 로컬 브라우저 환경에서 JS를 실행할 때 가장 흔한 샌드박스 실수를 방지하기 위한 10가지 레시피 카드, 오진 패턴 분석, 도구 체인 부트스트래핑을 포함한 참조 문서를 갖추고 있습니다. 핵심 워크플로는 Locate, Runtime, Recover, Replay 단계로 구성되며, 19개의 검증된 플레이북과 136개의 스크립트로 사인자 복구, 런타임 트레이싱, 환경 재구축, 리플레이 등 다양한 역공학 작업을 지원합니다. Claude Code, Cursor, Codex 등 주요 AI 에이전트 플랫폼에서 활용할 수 있으며, 공개 릴리스 전 자체 검사를 통해 개인 정보나 사이트별 데이터가 유출되지 않도록 보호합니다.

지원 대상~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add DQmyth/js-reverse-ops

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

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

문서

JS Reverse Ops

이 스킬을 임시 디버깅 세션이 아닌 구조화된 리버스 엔지니어링 워크플로로 사용하세요.

시작하기

  1. NOW: 요청을 분류합니다(서명 복구, 오프라인 난독화 해제, 런타임 트레이싱, 환경 재구축 등). 해당 작업 유형에 참조된 파일만 로드합니다.
  2. NOW: 로컬 브라우저 JS 실행 작업이 포함된 경우 먼저 references/env-rebuild-recipes.md를 읽으십시오. (네이티브 마스킹 클래스, 클래스 태그 프로브, 호스트 빌트인 없음, 실제 타이머, 인라인 프록시, 교정 오라클 등 10가지 레시피 카드가 가장 비용이 많이 드는 샌드박스 실수를 방지합니다.)
  3. NOW: 종속성이나 도구 체인이 의심스러우면 프로브를 작성하기 전에 references/toolchain-bootstrap.md를 따르십시오.
  4. NEXT: 재구축된 흐름이 "거의 작동"하는 경우(유효한 첫 번째 토큰, 이후 실패, 200-오답, 설명되지 않는 키 차이) 프로빙을 중단하고 references/misdiagnosis-patterns.md를 읽으십시오.
  5. ACT: 핵심 워크플로의 일치하는 단계로 진입하여 실행하십시오. 확인에 멈추지 마십시오.

범위

이 공개 릴리스에는 다음이 포함됩니다.

  • Locate, Runtime, Recover, Replay를 위한 단계 기반 라우팅
  • 추출, 런타임 캡처 정규화, 리플레이 스캐폴딩, 아티팩트 생성을 위한 재사용 가능한 스크립트
  • 브라우저 기반 JavaScript 리버스 엔지니어링을 위한 일반 참조, 규칙 및 템플릿

이 공개 릴리스에는 의도적으로 다음이 제외됩니다.

  • 비공개 또는 사이트별 사례 라이브러리
  • 캡처된 테스트 픽스처 및 검증 코퍼스
  • 명명된 사이트와 연결된 구체적인 벤치마크 대상, 자격 증명 및 리플레이 노트

핵심 워크플로

가장 작은 신뢰할 수 있는 컨텍스트에서 시작하십시오.

  • 알 수 없는 대상: node scripts/js_reverse_ops.js <target-url-or-file> [--json] 실행
  • 기존 노트, 후크 로그 또는 실패 요약: node scripts/map_case_to_pattern.js <notes.md> 실행 후 scripts/js_reverse_ops.js에 --notes <notes.md> 전달
  • 실행 가능한 플레이북 실행: node scripts/run_playbook.js <target> --notes <notes.md> --out runs/current 실행하여 런북, 경로 계획, 부트스트랩 클레임/출처/위험/리플레이 아티팩트 및 후크 스캐폴드 생성
  • 다음 운영자 명령: 실행 디렉토리가 존재하지만 런타임, 리플레이 또는 준비 상태 차단기로 인해 다음 단계가 불명확한 경우 node scripts/recommend_next_action.js runs/current --json 실행
  • 로컬 JS 또는 HTML 대상: scripts/triage_js.sh <path> 실행 후 대상 제품군과 일치하는 가장 작은 추출기 실행
  • 브라우저 기반 대상: 런타임 증거를 수집하기 전에 브라우저와 브리지 상태 확인
  • 안티 분석 증상: 후크 또는 브라우저 전략을 변경하기 전에 node scripts/select_anti_detection_profile.js --symptoms "<symptoms>" 실행; 프로필 선택은 관찰 전략만 변경하며 여전히 런타임/리플레이 검증이 필요함
  • 공개 품질 검사: 라우터, 패턴 메모리, 예제 또는 플레이북을 변경한 후 게시 전에 node scripts/run_public_benchmarks.js 실행
  • 공개 릴리스 위험 감사: 푸시 전에 node scripts/explain_public_release_risk.js --json --strict 실행하여 추적 파일, 비밀, 경로, 캡처 및 생성된 아티팩트 위험 설명
  • 공개 기능 요약: 이 스킬을 다른 리버스 엔지니어링 패키지와 비교할 때 node scripts/generate_capability_scorecard.js 실행
  • 시장 격차 요약: 고급 리버스 엔지니어링 스킬 및 MCP 도구 체인과 비교하여 이 스킬을 개선하는 방법을 결정할 때 node scripts/generate_market_gap_scorecard.js 실행
  • 외부 회귀 매트릭스: 브라우저 MCP, 정적 디컴파일러, 에이전틱 JS 리버스 및 교차 도메인 RE 프로필과 이 스킬을 비교하려면 node scripts/compare_external_skill_matrix.js --json 실행
  • 브라우저 MCP 스모크 계획: 어댑터별 브라우저 스모크 검사를 실행하기 전에 node scripts/plan_browser_mcp_smoke.js --server-family chrome_devtools_mcp --json 실행
  • 브라우저 MCP 스모크 검증: 어댑터 스모크 관찰을 주장하기 전에 node scripts/verify_browser_mcp_smoke_record.js --record <mcp-execution.json> --json 실행
  • 브라우저 MCP 전달 루프: node scripts/run_mcp_delivery_loop.js <target> --record <mcp-execution.json> --out runs/current --json 실행하여 한 번에 스캐폴드, 검증, 승격, 유효성 검사 및 준비 상태 평가
  • 리플레이 실패 진단: 서명자 코드를 변경하기 전에 node scripts/diagnose_replay_failure.js --run-dir runs/current --json 실행하거나 --replay-record <record.json> 전달
  • 리플레이 클라이언트 생성: node scripts/generate_replay_delivery_client.js --record <accepted-replay.json> --out runs/current/replay-client --json 실행하여 정리된 Node 및 Python 리플레이 클라이언트 생성
  • 리플레이 클라이언트 검증: 생성된 클라이언트를 핸드오프 아티팩트로 처리하기 전에 node scripts/validate_replay_delivery_client.js runs/current/replay-client --json 실행
  • 정적 진실 게이트: 읽기 가능한 정적 출력을 승격하기 전에 node scripts/assess_static_recovery_truth.js --original <input.js> --recovered <output.js> --json 실행
  • 소스 맵 우선 정적 계획: 번들에 sourceMappingURL, sourceURL, 인라인 맵 또는 X-SourceMap 노트가 있는 경우 AST 정리 전에 node scripts/plan_static_toolchain.js <bundle.js> --json 실행
  • 도메인 핸드오프 검증: WASM, 패킷, 모바일, 네이티브 또는 디버거 결과를 JS 증거에 병합하기 전에 node scripts/validate_domain_handoff_record.js --record <handoff-record.json> --json --strict 실행
  • CLI 래퍼: 경로, 실행, 검증, 다음, 벤치마크, 스코어카드, 마켓갭, 릴리스 리스크, 외부 매트릭스, MCP 스모크, MCP 스모크 검증, MCP 루프, 리플레이 진단, 리플레이 클라이언트, 리플레이 클라이언트 체크, 정적 진실, 핸드오프, 핸드오프 체크, 설치 및 게시 명령에 node scripts/jsro.js <command> 또는 jsro 패키지 빈 사용
  • 원클릭 설치 또는 릴리스: bash scripts/install_local.sh 및 bash scripts/publish_release.sh 사용
  • 수락된 응답과 혼란스러운 브라우저 표시 값: 서명자 복구로 확대하기 전에 페이지 측 렌더링 및 억제 로직을 검사하고 playbooks/accepted-response-hidden-dom.md 사용
  • 수락된 응답과 페이지 로컬 포함 글꼴 또는 글리프 엔터티: 현재 응답 글꼴을 추출하고 페이지 범위에서 글리프 맵을 해결한 후 playbooks/embedded-runtime-font-mapping.md 사용
  • 하나의 수락된 다이제스트가 복구된 후에도 리플레이가 계속 실패: 부트스트랩 시 쿠키 쓰기 순서, 다이제스트 수집기 및 래핑된 쿠키 어셈블리를 검사한 후 playbooks/bootstrap-digest-ladder.md 사용
  • 하나의 엔드포인트가 계속 JavaScript를 반환하고 스크립트가 실행되고 동일한 경로에 대해 리플레이된 후에만 배열을 반환: 두 번째 숨겨진 엔드포인트를 찾는 대신 반복적 워밍업 체인으로 처리하고 playbooks/iterative-script-warmup-same-endpoint.md 사용
  • 서명자가 하나의 서버 발급 시간과 하나의 wasm 또는 모듈 도우미에 의존: 시간 소스를 고정하고 정확한 서명자 입력 형태를 증명한 후 playbooks/server-time-gated-wasm-signer.md 사용
  • 다이제스트 도우미 이름은 표준처럼 보이지만 브라우저 출력이 표준 라이브러리와 로컬 도우미 모두에서 diverg: 가장 작은 런타임 패치 표면을 먼저 분리하고 playbooks/patched-runtime-digest-branch.md 사용
  • 하나의 큰 번들이 실제로 리플레이에 필요한 작은 런타임 도우미를 숨김: 전체 페이지를 에뮬레이트하는 대신 해당 도우미를 먼저 추출하고 playbooks/runtime-bundle-signer-extraction.md 사용
  • 전역 토큰 도우미가 없거나 오해의 소지가 있지만 XMLHttpRequest.open이 보호된 URL을 서명자 필드로 다시 작성: 다시 작성된 URL을 서명자 출력으로 처리하고 스크립트 순서와 런타임 상태를 유지한 후 playbooks/xhr-open-url-rewrite-runtime-replay.md 사용
  • 표시된 요청 계약이 안정적이지만 다른 HTTP 클라이언트가 diverg: 더 많은 서명자 상태를 발명하기 전에 전송 사다리를 통해 확대하고 playbooks/transport-profile-ladder.md 사용
  • 검증 응답이 시끄럽거나 비관적으로 보이지만 데이터 요청은 계속 성공: 데이터 엔드포인트를 수락 오라클로 처리하고 playbooks/lenient-verify-data-gate.md 사용
  • 페이지가 하나의 간단한 요청 또는 하나의 도우미 필드를 노출하지만 이후 페이지가 토큰 모양 게이트로 실패: 전체 VM 복구로 확대하기 전에 표시된 요청이 미끼인지 증명하고 playbooks/decoy-page-request-hidden-token-gate.md 사용
  • 하나의 챌린지 이미지가 셀당 하나의 글리프 또는 기호가 있는 고정된 작은 그리드: 먼저 그리드 할당 경로를 해결하고 playbooks/grid-challenge-template-matching.md 사용
  • 다단계 챌린지에 새로고침, 하나의 시드된 서명자 증명이 필요하고 하나의 수락된 단계 값을 다음 키로 사용: 다운스트림 해독을 해결하기 전에 첫 번째 기준 요청의 유효성을 검사하고 playbooks/fresh-reload-seeded-signer-step-key-ladder.md 사용
  • 하나의 리플레이 경로가 1라운드에서는 작동하지만 이후 라운드는 이전 라운드 리플레이 후에야 동등성을 회복: 명시적인 동일 페이지 라운드 사다리를 유지하고 playbooks/same-page-prior-round-signer-replay.md 사용
  • 데스크톱 HTML이 불안정하지만 모바일 또는 앱 요청 프로필이 이후 JSON 하이드레이션과 함께 셸 페이지에 도달: 먼저 셸 요청 래퍼와 경로 맵을 복구한 후 playbooks/mobile-shell-api-pivot.md 사용
  • 환경 게이트(브라우저 대 샌드박스 분기, 수정된 base64 알파벳 또는 해시 상수, 브라우저 토큰은 통과하지만 샌드박스 토큰은 거부됨)가 있는 번들된 암호화 라이브러리의 경우 playbooks/env-gated-crypto-differential.md로 라우팅하십시오.
  • 캡처된 토큰 URL이 성공적으로 리플레이되는 상태 저장 VM 서명자의 경우 VM 의미 체계 복구를 시도하기 전에 playbooks/browser-assisted-token-replay.md로 라우팅하십시오.
  • 브라우저가 필요 없는 로컬 오라클이 필요한 사용자 정의 VM 서명자의 경우 playbooks/jsdom-native-vm-differential.md로 라우팅하고 명령어 및 상수 스트림을 계측된 브라우저 기준 진실과 비교하십시오.
  • 짧은 TTL 토큰의 경우 playbooks/short-ttl-inline-proxy.md로 라우팅하십시오. Promise 기반 리소스 인터셉터를 통해 토큰 계산 하니스 내부에서 실제 요청을 보냅니다.
  • 패킹된 또는 VM 유사 코드: 원본 아티팩트를 보존하고 구조를 점진적으로 복구하며 검증된 의미 체계에 레이블을 지정합니다.
  • 리플레이 핸드오프: Node 또는 Python 전달 코드를 작성하기 전에 안정적인 아티팩트 번들을 내보냅니다.

최고 도구 기준

라우팅, 증거, 아티팩트 및 재현성을 위해 내장 스크립트를 사용하십시오. 전문 도구는 해당 도구가 잘하는 좁은 작업에만 사용하십시오.

  • 난독화 해제 패스 전에 먼저 소스 맵 또는 원래 모듈
  • 일반적인 obfuscator.io, webpack 유사 번들, 문자열 배열 및 첫 번째 패스 번들 해제를 위한 webcrack
  • 구문 정규화 및 가독성이 런타임 진실보다 중요한 현대식 축소 출력을 위한 wakaru
  • 작고 목표 지향적인 구조 변환을 위한 ast-grep, Babel 또는 recast
  • 코드를 정리한 후에만 그리고 식별자 복구가 워크스페이스 외부로 스니펫을 보낼 가치가 있을 때만 humanify 또는 다른 LLM 이름 변경기

외부 난독화 해제 도구가 증거를 대체하지 못하게 하십시오. 모든 복구된 필드, 쿠키, 서명자 입력 또는 리플레이 도우미는 여전히 검증된 브라우저 관찰 또는 로컬 리플레이 아티팩트가 필요합니다.

인접한 리버스 엔지니어링 스킬 및 도구와의 광범위한 비교를 위해서는 references/external-skill-comparison-2026-06-04.md를 사용하십시오.

게시 안전 게이트

이 공개 스킬을 게시하기 전에 공개 리포지토리 루트에서 bash scripts/check_public_release.sh를 실행하십시오. 공개 패키지에는 다음이 포함되어서는 안 됩니다.

  • 비공개 사이트 노트, 라이브 캡처, 자격 증명, 쿠키, 토큰 또는 고객별 경로
  • git에 의해 추적된 생성된 tmp/, 캐시, __pycache__, .pyc 또는 로컬 벤치마크 출력
  • 절대 로컬 사용자 경로, 베어러 토큰, GitHub 토큰, 클라우드 키, JWT 또는 개인 키
  • 일반 예제 이상의 라이브 대상을 식별하는 정리되지 않은 스니펫

비공개 코퍼스 및 로컬 검증 번들은 비공개 워크스페이스에 보관하십시오. 일반 플레이북, 스크립트, 템플릿 및 정리된 예제만 게시하십시오.

주요 참조

  • references/env-rebuild-recipes.md
  • references/misdiagnosis-patterns.md
  • references/toolchain-bootstrap.md
  • references/standard-workflow-cookbook.md
  • references/stage-gates.md — 엄격한 진입/종료 조건, 시간 제한, 폴백 체인
  • references/decision-handoff.md — 단계/세션 간 델타 전용 핸드오프 프로토콜
  • references/task-types.md
  • examples/case-walkthrough-combinatorial-gates.md — 정리된 내러티브: 조합 환경 게이트 + 교정 오라클
  • examples/case-walkthrough-timer-selfcheck-and-fake-200s.md — 정리된 내러티브: 타이머 자체 검사, 시간 기반 키, 200-가짜 데이터 미로

참고: 전체 버전에 포함된 verbatim-harness 스캐폴딩 생성기는 비공개 워크스페이스에만 배포됩니다. 이 공개 패키지는 references/env-rebuild-recipes.md에 동등한 규칙을 문서화합니다.

  • references/stages/locate.md
  • references/stages/runtime.md
  • references/stages/recover.md
  • references/stages/replay.md
  • references/rules/evidence-rules.md
  • references/rules/runtime-first.md
  • references/rules/routing-rules.md
  • references/rules/replay-rules.md

게시 참고

이 공개 변형은 재사용 가능한 스킬 패키지로 공유하기 위한 것입니다. 비공개 픽스처, 라이브 캡처 및 고객 또는 사이트별 노트는 별도의 비공개 워크스페이스 또는 리포지토리에 보관하십시오.

관련 스킬