GithubHelp home page GithubHelp logo

anthrax3 / angr Goto Github PK

View Code? Open in Web Editor NEW

This project forked from angr/angr

0.0 1.0 0.0 35.23 MB

The next-generation binary analysis platform from UC Santa Barbara's Seclab!

License: BSD 2-Clause "Simplified" License

Python 98.51% Makefile 0.02% C 0.21% C++ 1.27%

angr's Introduction

angr

Latest Release Build Status License Gitbook API Docs

angr is a platform-agnostic binary analysis framework developed by the Computer Security Lab at UC Santa Barbara and their associated CTF team, Shellphish.

What?

angr is a suite of python libraries that let you load a binary and do a lot of cool things to it:

  • Disassembly and intermediate-representation lifting
  • Program instrumentation
  • Symbolic execution
  • Control-flow analysis
  • Data-dependency analysis
  • Value-set analysis (VSA)

The most common angr operation is loading a binary: p = angr.Project('/bin/bash') If you do this in IPython, you can use tab-autocomplete to browse the top-level-accessible methods and their docstrings.

The short version of "how to install angr" is mkvirtualenv angr && pip install angr.

Example

angr does a lot of binary analysis stuff. To get you started, here's a simple example of using symbolic execution to get a flag in a CTF challenge.

import angr

project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False)

@project.hook(0x400844)
def print_flag(state):
    print "FLAG SHOULD BE:", state.posix.dump_fd(0)
    project.terminate_execution()

project.execute()

Quick Start

angr's People

Contributors

5lipper avatar acama avatar antoniobianchi333 avatar axt avatar badnack avatar bannsec avatar bennofs avatar codemaxx avatar domenukk avatar ekilmer avatar ekse avatar ercoppa avatar jinblack avatar jmgrosen avatar kereoz avatar ltfish avatar lukas-dresel avatar m1ghtym0 avatar nebirhos avatar nickstephens avatar owlz avatar p1kachu avatar rhelmot avatar ronnychevalier avatar salls avatar schieb avatar subwire avatar tiffanyb avatar tyb0807 avatar zardus avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.