symbolic-execution-tools

Solve symbolic execution and constraint solving problems for CTF binary analysis.

120|8|Updated Jun 2, 2026
One-click install
npx skills add https://github.com/Prohao42/aimy-sikll --skill symbolic-execution-tools-prohao42
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: symbolic-execution-tools
Source: https://github.com/Prohao42/aimy-sikll/tree/main/ai-mian/hack-skills/skills/symbolic-execution-tools
Command: npx skills add https://github.com/Prohao42/aimy-sikll --skill symbolic-execution-tools-prohao42

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Symbolic execution and constraint solving help automate complex binary analysis tasks, enabling rapid discovery of inputs that satisfy given constraints in CTF challenges.

Core Features & Use Cases

  • Angr-based symbolic workflows: drive program exploration from entry_state to a solution using find/avoid patterns.
  • Hooking & SimProcedures: customize behavior of libc and internal routines to control the analyzable surface.
  • Constraint-driven stdin/memory modeling: encode inputs and memory layouts as symbolic variables for precise solving with Z3.
  • Hybrid strategies: combine Unicorn for fast concrete execution with Angr for symbolic reasoning on demand.

Quick Start

Provide a minimal angr workflow starting from entry_state with a symbolic stdin, hook a library function, and run explore to obtain a solution.

Frequently Asked Questions about symbolic-execution-tools

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I use angr for symbolic execution to bypass binary checks in CTF?

To automate binary analysis with symbolic execution, define an entry_state with symbolic stdin, apply find/avoid exploration patterns, and use Z3 constraint solving to recover inputs that bypass binary checks or recover keys.

What is the best way to hook libc functions during symbolic execution with angr?

The best way to hook libc functions during symbolic execution in angr is using SimProcedures, which replace complex routines with custom logic to control the analyzable surface and prevent execution crashes.

Can I combine Unicorn and angr for hybrid concrete and symbolic execution?

Yes, hybrid execution combines Unicorn for fast concrete execution with angr for on-demand symbolic reasoning, accelerating program exploration when analyzing complex binaries with heavy computational routines.

How do I model memory and stdin as symbolic variables for Z3 constraint solving?

Model stdin and memory layouts as symbolic variables during angr state setup, encoding program inputs so Z3 can deduce valid concrete values that satisfy the defined constraints and reach the target execution path.

Why does my angr symbolic execution get stuck on unsupported instructions?

Symbolic execution in angr stalls on unsupported or computationally heavy routines; resolve this by writing SimProcedures to bypass the logic, or by applying Unicorn to concretize execution through the difficult code block.