跳到主要内容

REA 逆向分析工作流

收藏0

在授权前提下对原生二进制、JavaScript/Electron、APK、固件等做取证、反编译、版本比对与证据化分析的工作流手册;是 REA MCP 服务器的配套指令(需另装工具本体),仅限合法安全研究。

让 AI 安装

github最新版本 0.1.1更新于 2026-10-19下载 0 次2 个版本

references/evidence-workflows.md

4.3 KB查看源码

Evidence, comparison, and verification workflows#

Evidence-producing tools return the complete Evidence record directly in MCP structuredContent and CLI JSON. Read normalized_result for operation data, and cite evidence_id when another tool or your explanation needs a stable reference. Preserve authority, limitations, coverage, and residual unknowns. If a result is incomplete or paginated, continue only when the remaining data matters to the task; do not fetch a bundle or resource merely to read a result already returned inline. When complete inspect_binary_layout or analyze_javascript_application Evidence is already retained, call inspect_analysis_view for a summary, one section/symbol/module, or a stable page instead of repeating the producer.

Completed inspect_artifact inventory also supports a summary and view: {kind: "inventory", collection: "occurrences", logical_paths: ["package.json", "main.js"]}. Omit logical_paths to page all available occurrences; [] selects none. Other inventory collections are nodes, edges and integrity_contradictions. Keep source_complete separate from page exhaustion: a missing match in partial source Evidence does not establish absence. Use the returned parent Evidence ID for subsequent views and export before closing the session when the source must survive it. When tools/list advertises inspect_artifact.detail, request "summary" to retain its complete source and receive that view immediately. Without that advertised choice, keep the existing complete call. CLI inspection returns portable complete Evidence; save it before projecting a selected inline view.

Use record_unknown to track unresolved questions in the user's investigation and name the authority or environment still required. Supply supporting and contradicting evidence IDs. It updates the session registry directly. Use update_unknown with the current revision; reread after a stale revision instead of retrying blindly. Only qualifying observed evidence can verify a resolution.

Use comparisons with complete, compatible page sets when claiming equivalence or absence:

  • compare_artifacts compares inventory pages by occurrence path, content, metadata, and graph relations.
  • compare_functions compares explicit function Evidence, not fuzzy whole-binary matches.
  • compare_bundles compares canonical bundle membership and unknown history.
  • find_changed_behavior combines existing comparisons; static differences remain candidates, not causal proof.
  • build_call_path needs explicit function dossiers from one artifact/provider; an incomplete frontier makes absence unknown.
  • correlate_static_and_runtime uses explicit mappings; matching patterns are hypotheses, not causality.
  • verify_reconstruction evaluates a finite typed specification. A pass covers only declared comparable claims, not global equivalence.

Process captures are opt-in behavioral evidence, not a security sandbox. V3 captures cannot be upgraded to V4; rerun the original scenario. Distinguish root exit from descendant settlement and require freshness when the task needs it. A timed-out target that must write a final report needs finalization_ms: REA sends SIGTERM to the captured root, keeps observing, and sends SIGKILL once only if the target has not exited by the end of the interval. exit.finalization.signals lists each attempt with its delivery result; the observed exit signal stays in exit.signal, exit.code is null for every deadline exit, and the code of a finalizer that exited on its own is in exit.finalization.exit_code (null on a signal exit or when no exit was observed).

Use inspect_analysis_view with view: {kind: "api-surface"} on retained inspect_web_network_capture HAR Evidence to group observed request lines by method, origin and path template. Format matches are inferences, not handler identity or schemas. Group pages cite parent record ordinals; consult record coverage and exclusions before claiming completeness. No requests are replayed. When the connected schema advertises include_query_parameter_names, select it in the view for distinct observed names with original record ordinals. Query values are omitted; the names establish neither required parameters nor a complete server schema. Keep the original parent Evidence for exact URLs.

文件内容是平台检查时读出的文本,只供查看。平台不会运行包里的任何脚本或程序。