Free and Open Source Reverse Engineering Platform powered by rizin
Go to file
karliss 4d2ef58e6a
Fix errors reported by UB sanitizer (#2150)
* Use qt parent for deleting completer

Manually deleting causes some UAF due to it being installed as event
filter.
Qt seems to destroy things in correct order. Sanitizer doesn't report
completer as being leaked.

* Fix sanitizer problems in HexWidget

* Initialize size properties to somewhat sane values to avoid
unrealized variable use when calculating them first time.
* Change AbstractData interface. Old one returned pointer to unknown
sized block of data which was difficult to use correctly. Adjust bound
checking to avoid out of bounds access when comparing with oldData and
scrolling.
2020-04-16 20:32:24 +03:00
.github Update cutter-deps to include qt 5.14.2 (#1868) 2020-04-07 23:24:25 +03:00
docker docker/Dockerfile*: Use latest alpine image to fix GUI crashes in the container (#2012) 2020-01-14 08:52:37 +02:00
docs Rename "Open" to "Map File" and "New" to "New Window" 2020-04-08 00:10:31 +03:00
radare2@9ea0b7ce56 update radare2 submodule (#2153) 2020-04-15 22:24:30 +03:00
scripts Update cutter-deps to include qt 5.14.2 (#1868) 2020-04-07 23:24:25 +03:00
src Fix errors reported by UB sanitizer (#2150) 2020-04-16 20:32:24 +03:00
.appveyor.yml Update cutter-deps to include qt 5.14.2 (#1868) 2020-04-07 23:24:25 +03:00
.dockerignore Allow local development using Docker (#1806) 2019-10-06 16:38:01 +02:00
.gitignore add astyle backup .orig extension in .gitignore 2020-03-19 17:41:13 +02:00
.gitmodules Change submodule URL (radare/radareorg) 2019-10-11 13:54:09 +02:00
.lgtm.yml Exclude cpp/short-global-name from LGTM (#1649) 2019-07-12 12:25:13 +02:00
.travis.yml Do the depoly build on Ubuntu 16.04 (#2135) 2020-04-10 19:53:41 +03:00
build.bat Exclude r2 *.lib files (#1777) 2019-09-16 13:37:41 +03:00
build.sh Shellcheck on build.sh (#1534) 2019-05-15 10:02:48 +02:00
CONTRIBUTING.md Add initial user documentation and improve layout and style (#2078) 2020-03-02 20:06:28 +01:00
COPYING LICENSE -> COPYING 2017-11-27 17:31:48 +01:00
meson.py Code cleanup (#1535) 2019-05-17 13:40:50 +02:00
prepare_r2.bat Update r2 submodule (#1786) 2019-09-25 14:36:30 +02:00
README.md Point build instructions to updated version. (#1881) 2019-11-18 21:25:23 +02:00

Cutter logo

Cutter

Cutter is a free and open-source reverse engineering framework powered by radare2 . Its goal is making an advanced, customizable and FOSS reverse-engineering platform while keeping the user experience at mind. Cutter is created by reverse engineers for reverse engineers.

Build Status Build status Total alerts

Screenshot

Learn more at https://cutter.re.

Downloading a release

Cutter is available for all platforms (Linux, macOS, Windows). You can download the latest release here.

  • macOS: Download the latest .dmg file or use Homebrew Cask brew cask install cutter.
  • Windows: Download the latest Zip archive.
  • Linux: Download the latest AppImage file. Then just make it executable and run it:
    • chmod +x <appimage_file>
    • ./<appimage_file>

Building from sources

To build Cutter on your local machine, please follow this guide: Building from source

Docker

To deploy cutter using a pre-built Dockerfile, it's possible to use the provided configuration. The corresponding README.md file also contains instructions on how to get started using the docker image with minimal effort.

Documentation

You can find our documentation in our website.

Plugins

Cutter supports both Python and Native C++ plugins. Want to extend Cutter with Plugins? Read the Plugins section on our documentation.

Official and Community Plugins

Our community built many plugins and useful scripts for Cutter such as the native integration of Ghidra decompiler or the plugin to visualize DynamoRIO code coverage. You can find more plugins in the following list. Don't hesitate to extend it with your own plugins and scripts for Cutter.

Help

The best place to obtain help from Cutter developers and community is to contact us on: