Git Product home page Git Product logo

cutter's Introduction

Cutter

Build Status Build status

A Qt and C++ GUI for radare2 reverse engineering framework (originally named Iaito).

Screenshot

Screenshot

Disclaimer

Cutter is not aimed at existing radare2 users. It instead focuses on those whose are not yet radare2 users because of the learning curve, because they don't like CLI applications or because of the difficulty/instability of radare2.

Installing

Downloading a release

You can download the latest release here.

Building from source

Requirements

Cutter is based on Qt so you will need to have it installed.

Building

First you must clone the repository:

git clone https://github.com/radareorg/cutter
cd cutter
Building radare2

/!\ WARNING /!\ This will delete your current radare2 version if any already installed.

git submodule init radare2 && git submodule update radare2
cd radare2 && ./sys/install.sh
cd ..
Building cutter

Cutter can be build with two methods: The preferred one is with qmake, but you can also compile it with cmake. Choose the one you want to use.

  • Method 1: Qmake
mkdir build
cd build
qmake ../src
make
  • Method 2: CMake
mkdir build
cd build
cmake ../src
make

Then run cutter: ./cutter or ./build/cutter

Note: If radare2 is not installed system-wide (./sys/user.sh installation for instance) you might want to use LD_LIBRARY_PATH=$HOME/bin/prefix/radare2/lib ./cutter to run cutter.

Troubleshooting

On Mac, QT5 apps fail to build on QtCreator if you have the libjpeg lib installed with brew. Run this command to workaround the issue:

sudo mv /usr/local/lib/libjpeg.dylib /usr/local/lib/libjpeg.dylib.not-found

If you encounter the Project ERROR: r_core development package not found try this command instead PKG_CONFIG_PATH=$HOME/bin/prefix/radare2/lib/pkgconfig qmake

Platforms

Cutter is developed on OS X, Linux and Windows. The first release for users will include installers for all three platforms.

Keyboard shortcuts

Shortcut Function
Global shortcuts:
. Focus console input
G & S Focus search bar
F5 Refresh contents
Disassembly view:
Esc Seek to previous position
Space Switch to disassembly graph view
Ctrl/Cmd+C Copy
; Add comment
N Rename current function/flag
Shift+N Rename flag/function used here
X Show Xrefs
Disassembly graph view:
Esc Seek to previous position
Space Switch to disassembly view
+ Zoom in
- Zoom out
= Reset zoom
J Next instruction
K Previous instruction

Help

Right now the best place to obtain help from cutter developers and community is joining this telegram group:

cutter's People

Contributors

thestr4ng3r avatar xarkes avatar hteso avatar ballessay avatar mrexodia avatar nezza avatar pwntester avatar siebelstim avatar radare avatar probonopd avatar properrr avatar sergiodmn avatar dtzwill avatar xiaogrill avatar trufae avatar xorb0ss avatar moebiuz avatar aiosin avatar xpahos avatar twz avatar neversatisfied avatar march93 avatar askme765cs avatar stanislaw avatar sidhax avatar pelijah avatar wobbol avatar mariovilas avatar circleous avatar kazarmy avatar

Stargazers

Glenn Y. Rolland avatar

Watchers

Bijay limbu senihang 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.