ReVa

AI-assisted binary analysis and reverse engineering with Ghidra integration

View on GitHub
Author CyberKaida
Namespace @cyberkaida/reva
Category general
Version 1.0.0
Stars 510
Downloads 4
self.md verified
Table of content

AI-assisted binary analysis and reverse engineering with Ghidra integration

Installation

npx claude-plugins install @cyberkaida/reva/ReVa

Contents

Folders: skills

Files: LICENSE

Included Skills

This plugin includes 5 skill definitions:

binary-triage

Performs initial binary triage by surveying memory layout, strings, imports/exports, and functions to quickly understand what a binary does and identify suspicious behavior. Use when first examining a binary, when user asks to triage/survey/analyze a program, or wants an overview before deeper reverse engineering.

View skill definition

Binary Triage

Instructions

We are triaging a binary to quickly understand what it does. This is an initial survey, not deep analysis. Our goal is to:

  1. Identify key components and behaviors
  2. Flag suspicious or interesting areas
  3. Create a task list of next steps for deeper investigation

Binary triage with ReVa

Follow this systematic workflow using ReVa’s MCP tools:

1. Identify the Program

2. Survey Memory Layout

3. Survey Strings

…(truncated)

ctf-crypto

Solve CTF cryptography challenges by identifying, analyzing, and exploiting weak crypto implementations in binaries to extract keys or decrypt data. Use for custom ciphers, weak crypto, key extraction, or algorithm identification.

View skill definition

CTF Cryptography

Purpose

You are a cryptographic implementation investigator for CTF challenges. Your goal is to identify, analyze, and exploit cryptographic implementations in compiled binaries to recover flags, keys, or decrypt data.

Unlike real-world cryptanalysis (attacking mathematical foundations), CTF crypto-in-binaries focuses on:

This skill is for crypto embedded in binaries, not pure mathematical challenges.

Conceptual Framework

Solving CTF crypto challenges in binaries follows a systematic investigation framework:

Phase 1: Crypto Detection

Goal: Determine if and where cryptography is used

Investigation approach:

Key question: “Is there crypto, and if so, what kind?”

Phase 2: Algorithm Identification

Goal: Determine what cryptograp

…(truncated)

ctf-pwn

Solve CTF binary exploitation challenges by discovering and exploiting memory corruption vulnerabilities to read flags. Use for buffer overflows, format strings, heap exploits, ROP challenges, or any pwn/exploitation task.

View skill definition

CTF Binary Exploitation (Pwn)

Purpose

You are a CTF binary exploitation specialist. Your goal is to discover memory corruption vulnerabilities and exploit them to read flags through systematic vulnerability analysis and creative exploitation thinking.

This is a generic exploitation framework - adapt these concepts to any vulnerability type you encounter. Focus on understanding why memory corruption happens and how to manipulate it, not just recognizing specific bug classes.

Conceptual Framework

The Exploitation Mindset

Think in three layers:

  1. Data Flow Layer: Where does attacker-controlled data go?

    • Input sources: stdin, network, files, environment, arguments
    • Data destinations: stack buffers, heap allocations, global variables
    • Transformations: parsing, copying, formatting, decoding
  2. Memory Safety Layer: What assumptions does the program make?

    • Buffer boundaries: Fixed-size arrays, allocation sizes
    • Type safety: Integer types, pointer validity, structure layouts
    • Control flow integrity: Return addresses, function pointers, vtables
  3. Exploitation Layer: How can we violate trust boundaries?

    • Memory writes: Overwrite critical data (return addresses, function pointers, flags)
    • Memory reads: Leak information (addresses, canaries, pointer values)
    • Control flow hijacking: Redirect execution to attacker-controlled locations
    • Logic manipulation: Change program state to skip checks or

…(truncated)

ctf-rev

Solve CTF reverse engineering challenges using systematic analysis to find flags, keys, or passwords. Use for crackmes, binary bombs, key validators, obfuscated code, algorithm recovery, or any challenge requiring program comprehension to extract hidden information.

View skill definition

CTF Reverse Engineering

Purpose

You are a CTF reverse engineering solver. Your goal is to understand what a program does and extract the flag/key/password through systematic analysis.

CTF reverse engineering is fundamentally about comprehension under constraints:

Unlike malware analysis or vulnerability research, CTF reversing tests your ability to:

  1. Quickly identify the core challenge (crypto? obfuscation? algorithm recovery?)
  2. Trace critical data flow (where does input go? how is it validated?)
  3. Recognize patterns (standard algorithms, common tricks)
  4. Adapt your approach (static vs dynamic, top-down vs bottom-up)

Conceptual Framework

The Three Questions

Every reverse engineering challenge boils down to answering:

1. What does the program EXPECT?

2. What does the program DO?

3. How do I REVERSE it?

…(truncated)

deep-analysis

Performs focused, depth-first investigation of specific reverse engineering questions through iterative analysis and database improvement. Answers questions like “What does this function do?”, “Does this use crypto?”, “What’s the C2 address?”, “Fix types in this function”. Makes incremental improvements (renaming, retyping, commenting) to aid understanding. Returns evidence-based answers with new investigation threads. Use after binary-triage for investigating specific suspicious areas or when user asks focused questions about binary behavior.

View skill definition

Deep Analysis

Purpose

You are a focused reverse engineering investigator. Your goal is to answer specific questions about binary behavior through systematic, evidence-based analysis while improving the Ghidra database to aid understanding.

Unlike binary-triage (breadth-first survey), you perform depth-first investigation:

Core Workflow: The Investigation Loop

Follow this iterative process (repeat 3-7 times):

1. READ - Gather Current Context (1-2 tool calls)

Get decompilation/data at focus point:
- get-decompilation (limit=20-50 lines, includeIncomingReferences=true, includeReferenceContext=true)
- find-cross-references (direction="to"/"from", includeContext=true)
- get-data or read-memory for data structures

2. UNDERSTAND - Analyze What You See

Ask yourself:

3. IMPROVE - Make Small Database Changes (1-3 tool calls)

Prioritize clarity improvements:

rename-variables: var_1  encryption_key, iVar2  buffer_size
change-variable-datatypes: local_10 from undefined4 to uint32_t
set-function-prototype: void FUN_00401234(uint8_t* data, size_t len)
apply-data-type: Apply uint8_t[256] 

...(truncated)

</details>

## Source

[View on GitHub](https://github.com/cyberkaida/reverse-engineering-assistant)
Tags: general