Skip to content

Releases: rizinorg/cutter

Cutter 1.8.1

14 Apr 20:56
8005945
Compare
Choose a tag to compare

After the great 1.8.0 release, this one concentrates on bugfixes and minor improvements.

Additions

  • Update radare2 to 3.4.1 (#1420)
  • Add automatic Crash Handling (#1157, #1439, #1443, #1447, #1449)
  • Navigate through graph view with arrows (#1441)
  • Implement middle mouse button panning. (#1433)
  • Make plugins path selectable and bold (#1422)
  • Load plugins from app dir on Windows (#1408)
  • Implement Getter for MainWindow's menus (#1418)
  • Enable dock grouped dragging when available. (#1402)
  • Add emu.str in Preferences->Metadata (#1369)
  • Add compiler information to dashboard (#1385)

Fixes and Changes

  • Refactor Refresh and Display of Overview (#1453)
  • Fix Segfault with Extra Widgets
  • Removed max bbsize analysis option (#1424)
  • Fix crash in StringsWidget::on_actionX_refs_triggered. (#1450)
  • Focus on visible disasm or graph (#1444)
  • fix compile ubuntu gcc7 (#1442)
  • Use Python stable ABI >= 3.5 (#1426)
  • Replace GraphView::useCache with dirty flag (#1437)
  • Bring back Launch Script for macOS (#1438)
  • Fix GraphEdge initialization in DisassemblerGraphView (#1436)
  • Rewrite block sorting and placment so that unreachable blocks are processed. (#1428)
  • Minor Header Optimizations (#1429)
  • R2PluginsDialog: Sort plugins by name in ascending order (#1431)
  • Meson: remove workaround for qtmain lib (#1430)
  • Make graph layout more failure resistant. (#1427)
  • Separate graph layout code from GraphView. (#1414)
  • Take pixel ratio into account for graph cache. (#1405)
  • Get color for optimization (#1404)
  • Init Layout after loading Plugin UI (#1407)
  • Xrefs select top item (#1401)
  • Do not update sectionWidget position outside valid range. (#1399)
  • Fixed not switching Disassembly to not opened Graph view using (#1370)
  • build.sh: Check for lrelease-qt5 (#1396)
  • Renamed asm.bbline to asm.bb.line (#1400)
  • Fixed overview basic block highlighting (#1393)
  • Remove Jupyter Integration (#1398)
  • Improve hexdump width calculation. (#1389)
  • Fixed a few issues with the XRef dialog (#1384)
  • Delete all PySide2 QObjects before Py_Finalize() (#1386)
  • Add CutterPlugin::terminate() (#1372)
  • Build an app bundle on macOS (#1355)
  • DisassemblerGraphView zooming fix (#1354)
  • Feature/dialogs optimization (#1360)
  • Fix a bug regarding highlighting the words in Graph
  • Fix crash because of mixing debug and release CRT. (#1361)
  • Extend FindPySide2.cmake and FindShiboken2.cmake for current versions (#1358)
  • Fixed a bug related to reset_settings (#1349)

Cutter 1.8.0 - Codename "Snakebyte"

20 Mar 13:51
1cfc5e8
Compare
Choose a tag to compare

Cutter 1.8.0

This release is one of the biggest so far, bringing a full Python API for creating Plugins
and many improvements to the Graph Widget, such as the Graph Overview, along with lots of other improvements and fixes.

Notice that in this version we dropped the support for 32-bit binaries. We also made improvements to our configuration files, this might reset your current configurations.

Want to build your own Cutter plugin? Check out our documentation: https://cutter.re/docs/plugins.html

Additions

  • Add Support for Python Plugins
  • Add Graph Overview
  • Graph scrolling forever (#1195)
  • Add Plugins Section to Preferences
  • Add configurable graph overview node color (#1259)
  • Auto update check (#1235)
  • Added feature to link a type to an address (#1219)
  • Add feature to apply structure offset and fix some issues in EditVariablesDialog (#1215)
  • Added a BasicBlock highlighting API
  • Show sizes of structs and unions (#1203)
  • Implement highlight in Types dialog (#1186)
  • Added load, delete and export features in the Types Widget (#1158)
  • Added a checkbox in the preferences dialog for asm.indent (#1175)
  • Add support for listing and editing Anal Classes in ClassesWidget
  • Adding #685 (Adding a report issue button) (#1165)
  • Added some of the features mentioned in the Types Widget Project. (#1153)
  • Added 'asm.xrefs' option in preferences dialog (#1150)
  • Added support for automatically saving and opening recent folder (#1149)
  • Added dialog to show infinite progress-bar while running script (#1145)

Fixes and Changes

  • Updated radare2 to 3.3.0 (#1231)
  • Fix changing Variable Name in EditVariablesDialog
  • Fixes regarding saving and restoring of the Widget Layout (#1308)
  • append layout to OpenFileDialog, so the dialog more flexible (#1293)
  • Removed asm.stackptr option because the result is meaningless (#1285)
  • Fix NewFileDialog positioning on macOS
  • Fix NewFileDialog leaking MainWindow
  • Replace red syntax highlighting with blueish color (#1261)
  • Disable aan (#1253)
  • Start using "gui.navbar.seek" color instead of "gui.navbar.err" to show seek cursor (#1244)
  • Fix an infinite loop bug (#1218)
  • Overview does not disappear anymore when it is moved to the same dock as Graph (#1212)
  • Change organizationName and use QSettings:IniFormat (#1213)
  • Fix Segfault when jupyter is not installed
  • Modified some APIs for more consistence
  • Move everything Jupyter related out of PythonManager
  • Fix arch and bits in Hexdump Widget (#1209)
  • Update SyntaxHighlighter.cpp (#1206)
  • Fix a bug which causes segfault when adding another Graph (#1202)
  • Fix FunctionsWidget Tooltip Colors
  • Move HTML Disasm formatting to Cutter
  • AppVeyor: switch to VS2017, Qt 5.12 and disable x86 build (#1184)
  • disable "aan" from advanced options (#1190)
  • Fix graph header resizing (#1189)
  • Fix SDB Browser docking problem and rename the whole thing (#1188)
  • Fix progress bar alignment (#1185)
  • Fixed memory leak and refactored code (#1181)
  • Reordered menu items by alphabetical order (#1178)
  • set ayu default for dark interface (#1174)
  • Fixed AboutDialog leaking (#1168)
  • Improved big blocks rendering performance (#1166)
  • Fixed asm.xrefs checkbox in Asm Options (#1167)
  • Prevent r2 injection when opening a file (#1125)
  • Fix graph blocks rendering optimization (#1164)
  • Force context menu to show shortcuts fix. Closes #1154 (#1163)
  • Dockerfile: Use Cutter from master, merge layers (#1141)
  • Moved type checkbox from windows/info to windows dropdown (#1142)
  • Fix CutterCore::getAllRelocs() for RBTree (#1135)

Cutter 1.7.4

21 Jan 21:31
Compare
Choose a tag to compare

Cutter 1.7.4

This release improves greatly the performances of the interface.

Additions

  • Added a Welcome Dialog (#1116)
  • Added RefreshDeferrer to redraw only visible widgets
  • Added 'Copy' context menu option to graph view (#1097)
  • Highlight program counter in Navbar widget (#1095)
  • Implemented click and seek for the address maps in the Section Widget (#1046)

Fixes and changes

  • Fixed pdJ command results (#1124)
  • Fixed translations deployment for MAC & Linux
  • Fixed overlap qlabel and icon in WelcomeDialog (#1123)
  • Fixed r2 command injection in FunctionsWidget tooltip (#1122)
  • Fixed CutterSeekable isSynchronized() and signal on de-syncing (#1121)
  • Fixed incorrect "(unsynced)" in the graph widget's title.
  • Improved xref widget performances (#1112)
  • Added USE_LIB_MAGIC check to avoid compilation issues
  • Fixed DisassemblyWidget's eventFilter crash (#1111)
  • Fixed a bug with the emulation layout (#1107)
  • Fixed many warnings in DisassemblerGraphView (#1103)
  • Refactored CutterSeekableWidget to CutterSeekable (#1099)
  • Enforce LTR layout (#1102)
  • Removed Fallback for afcf in Graph Header (#1090) (performances)
  • Wrapped Python API
  • Optimized tooltip data retrieving (#1088)
  • Adjust size of each section in the address maps of Section Widget (#1086)
  • Fixed lrelease for Windows (#1055)
  • docker/Dockerfile: Added check for image building (#1054)
  • Improved XREF window size and locations (#1049)
  • Fixed some tiny analysis issues caused by Cutter
  • Made Plugin window bigger for readability (#1044)
  • Set default IO plugin to file:// (#1042)
  • Fixed AppImage Link in README.md

Cutter 1.7.3

26 Dec 13:04
e055457
Compare
Choose a tag to compare

Cutter 1.7.3

Additions

  • Added recent projects list in NewFileDialog (#785)
  • Added extra function information to function widget (#788)
  • Added color scheme customization feature (#709)
  • Added status bar and display items count (#779)
  • Added indicator to show when a command is being executed (#789)
  • Added context menu to Strings Widget (#817)
  • Added some keyboard shortcuts for widgets (#819)
  • Added header to Disassembly Widget to show function prototype (#771)
  • Added close and reopen button to Hexdump Widget side view (#852)
  • Added segments view (#851) (#916)
  • Enabled colors in console (#823)
  • Added edit function menu and dialog (#765)
  • Disabled debug window menu outside debug/emulation mode (#860)
  • Made text in About Dialog selectable (#871)
  • Added try again option when write failed (#880)
  • Added translations system (#848, #895)
  • Updated seek after console tasks finishes (#883)
  • Auto refresh contents after loading PDB (#935)
  • Added section selection to Strings Widget (#938)
  • Added xref shortcut to Strings Widget (#858)
  • Added new package UI design for MAC build (#986)
  • Added *BSD support to build.sh (#994, #1000)
  • Added block selection in Hexdump Widget (#1006)
  • Added Dark Native Colors

Fixes

  • Runtime crash fix (#799)
  • Fixed extra empty row in Function Widget (#797)
  • Don't show Load Options dialog when choosing not to open any file (#800)
  • Fixed handling of Close button in Save Project dialog (#806)
  • Fixed asm.var.sub* fetching in AsmOptionsWidget
  • Fixed logic bug with close window flag (#826)
  • Fixed non-mono font token highlighting on graph view (#825)
  • Multiple highlight fixes (#896, #899)
  • Fixed C++ plugin loading (#829)
  • Fixed function summary displayed in tooltip (#831)
  • Moved General Settings menu to Appearance (#837)
  • Fixed exit() calls in CutterApplication constructor
  • Typos fixes
  • Fixed utf8 file path for Windows (#890, #969)
  • Fixed project saving on Windows (#900)
  • Fixed Settings initialization (#901)
  • Fixed Dockerfile building
  • JSON parsing optimization (#947)
  • Fixed Jupyter with recent versions (#949)
  • build.sh improvements
  • Improved some colors (#976, #992, #1003)
  • Fixed graph refreshing
  • Several clean up
  • Updated radare2

Deletion

  • Removed isForbidden() that checked command in console widget
  • Killed Sidebar Widget

Cutter 1.7.2

08 Oct 08:58
25e45c8
Compare
Choose a tag to compare

Cutter 1.7.2

Additions

  • Added export graph feature (#650)
  • Added icon for Windows (#674, #677)
  • Updated documentation
  • Added support for r2dec
  • Added instruction preview to the bytes edit dialog (#696)
  • Added a dialog when trying to write a non writable file (#695)
  • Added an update check (#704)
  • Refresh the view after executing an r2 script (#723)
  • Added filename to title (#726)
  • Keep graph view priority if graph is empty (#734)
  • Local variable edition via context menu (#708)
  • Enabled continue, asm.flags in emulation

Fixes

  • Fixed missing items from view submenu
  • Updated offset during startup
  • Fixed segfault when pressing f or t in graph mode
  • Fixed xref description
  • Fixed jump tables display
  • Fixed instruction preview dialog (#714)
  • Fixed Cutter load script for sleeping
  • Random segfaults fixing (#724)
  • Fix editable hex widget (#725)
  • Fixed macOS builds (dynamic lib loading)
  • Updated attach dialog (#603)
  • Updated debug toolbar
  • Fixed Ctrl+F in Flag widget (#759)
  • Hide debug IO plugins (#767)
  • Fixed macOS instructions to build manually
  • Updated radare2

Removals

  • Removed pie chart (#661)
  • Removed unneeded menu (#720)
  • Removed QtWebEngine by default (#728)

Known issues

  • Jupyter Widget not working on some Windows environments

Cutter 1.7.1

26 Aug 12:04
Compare
Choose a tag to compare

Cutter 1.7.1

Patch release primarily for fixing the Strings Widget.

Additions

  • Add 'Export as code' feature (#657)
  • Updated radare2 submodule to f82b289 (#652)
  • Specify require for QT (#646)
  • Make af from DisassemblyContextMenu more meaningful
  • Add -i Command Line Arg
  • Use InitialOptions right from the start
  • Rename OptionsDialog to InitialOptionsDialog
  • Navbar color improvements (#628)

Fixes

  • Fixed #643 empty strings panel (#655)
  • Don't use native macOS Font Dialog (Fixes #630)
  • Fix Default Anal Level
  • Fixing graphOptions layout (#640)

Cutter 1.7 - Codename "Xarkes doesn't care about codenames"

17 Aug 19:41
Compare
Choose a tag to compare

Cutter 1.7 - Codename "Xarkes doesn't care about codenames"

Along with some smaller additions and fixes, this release introduces the first big changes by our GSoC student @fcasal in the form of emulation support.

Additions

  • Graph highlighting (#624)
  • UI Improvemetnts + graph.offset implementation (#612)
  • Add T/F shortcuts in graph view (#611)
  • adding Open Shellcode function to the New menu mode (Fix #547) (#609)
  • Add Set to Code/Data feature (#602)
  • Added options to remove excessive spacing (#577)

Fixes

  • Fixing #625 - EditInstruction ignores reject() (#626)
  • Fix #619 (#623)
  • Fix OptionsDialog initialization warning
  • Fix disassembly colors (#617)
  • Set bits for analysis after loading the binary (#618)
  • Fix #601 (#613)
  • Fix #604 - Forbid double clicking on ok
  • Fix wrong rebase
  • Fix AttachProcDialog include in DebugToolbar.cpp
  • Fix flagspace for initial script
  • Fix companion script loading
  • Fix segfault when adding new graph widget (#592)
  • Fix export graph in contextmenu (#593)
  • Fix opening correct panel in the preferences dialog via the contextmenu (#583)
  • Set r2 prefix before r_core_loadlibs()

Emulation/Debug

  • Added continue until call for emulation (#599)
  • Added option to break esil execution on invalid instructions (#597)
  • Only enable emulation
  • Added register references to registerwidget tooltip
  • Added context menu to register refs
  • Added check for non-executable binary
  • Center label vertically in registers
  • Added seeking, editing and colors to stack widget
  • Fix location of breakpoint contextmenu
  • preserve maximization choice when switching to debug
  • Fix register editing in emulation
  • Fix horizontal scrolling in stack widget
  • Fix naming of program counter in contextmenu
  • Larger stack by default
  • Fix highlighting in RIP when restarting emu/debug
  • Debug geometry is now customizable * Preserve open widget when switching to and from debug mode * Fix wonky widgets when using readSettings
  • Closing Cutter during debug stops the process
  • Added register references widget
  • Hack to fix continue until commands (#586)
  • Monospace fonts (#584)
  • Add esil stack options and cleanup (#582)
  • Debugging shortcuts (#578)
  • Added emulation support (#553)
  • Added new buttons to breakpoint widget (#548)
  • highlight PC line while debugging (#541)
  • Color debug toolbar when debugging (#545)
  • Added Breakpoint widget (#546)
  • fix saving settings when debugging
  • Added debug option to define program arguments
  • added debug option to change debug plugin
  • add continue until call/syscall to toolbar
  • when quitting debug, we go to where we were before debug
  • added basic debug view and stop debug button to toolbar
  • Debug toolbar (#521)

Cutter 1.6 - Codename "Arterial Incision"

14 Jul 20:28
Compare
Choose a tag to compare

Cutter 1.6 - Codename "Arterial Incision"

This is a smaller release than 1.5 with the primary goal to fix a bug on Windows, which caused the Functions, Strings and Console widgets to be unusable.

Additions

  • Updated radare2 to a98557b (after 2.7.0)
  • Use p- in VisualNavbar
  • Optimize VisualNavbar Stats Loading
  • Save last clicked tab in NewFileDialog
  • Added IO list to NewFileDialog
  • Enable sorting for plugin lists (#566)
  • AppVeyor: optimize python modules (#569)

Fixes:

  • Fixed unusable Functions, Strings and Console widgets on Windows by recent changes in radare2
  • Fix #562, replace ?d. by aod
  • Docker: Fix typo in README.md, travis: fix image name (#564)
  • Remove unnecessary newline from VisualNavbar tooltip
  • Fix dont open any file option
  • Fix unwanted jumping from Hexdump to Disassembly
  • Fix empty IO
  • Fix HexDump HTML issues
  • Reorder starting AnalTask and showing Dialog
  • Do not show MainWindow if loading failed
  • Initialize settings earlier and disable jmptbl (#576)
  • Exclude python libs when using linuxdeployqt
  • Set r2 prefix before r_core_loadlibs()

Cutter 1.5

02 Jul 12:09
Compare
Choose a tag to compare

Cutter 1.5 release

Additions

  • Add QuickFilter to RelocsWidget
  • Readme/documentation update
  • Load radare script from Options Dialog
  • Distribute precompiled cutter_*.py files
  • Windows dist: moved r2 related data to subdir
  • Added a button "Version Information" in Dashboard (iVj)
  • CommentsWidget refactor
  • Reordered preferences panel
  • Dark theme improvements
  • Added copy address feature in graph/disasm
  • Added info about nullptr and connect() style (doc)
  • Added entropy to Section widget
  • Added message box when r_core_file_open fails
  • Disassembly improvements
  • Added ctrl+wheel zoom in graph view
  • Added forward/back functionality to mouse buttons
  • Disabled alignement to 0 in HexdumpWidget
  • Replaced placeholder icons in preferences window with SVGs
  • Graph improvements
  • Added headers widget
  • Added a panel for zignatures
  • Added possibility to have multiple graph/disasm/hexdump widgets
  • Added AsyncTask
  • Added AsyncTaskDialog
  • Added widget to view register values (debugger WIP)
  • Reset settings do not change selected architecture anymore
  • Added python dependencies notice for default building process
  • Added appstream XML file
  • Added shortcuts to change font-size in disassembly widget
  • Added a open file dialog
  • Fetch strings asynchronously
  • Run Commands from ConsoleWidget in AsyncTask
  • Disabled Console QLineEdit when task is running
  • Improved docker build guidelines and Dockerfile
  • Fetch functions asynchronously
  • Added possibility to have C++ plugins
  • Increased default graph maxcols
  • Added python _getentropy fix for macOS El Capitan
  • Updated radare2

Fixes

  • Refactor SymbolsWidget to use Model/View architecture
  • Refactor SectionsWidget to use Model/View architecture
  • Refactored Analysis Options
  • Fixed Entropy and base addr on Dashboard view
  • Fixed base address load option default value
  • Fixed switching between views in same offset
  • Fixed x-refs to Address
  • Fixed references to pkg-config in lib_radare2.pri for unix
  • Fixed weird widget priority behaviour and add message to empty graph
  • Fixed highlight color in xref dialog

Removals

  • Removed callgrind Macros
  • Removed Progress UI from OptionsDialog

Cutter 1.4

24 Apr 08:53
Compare
Choose a tag to compare

Cutter 1.4 release

Additions

  • Added project deletion with a right click in the projects list
  • Added FlagsWidget context menu
  • Added registers used by current function in the side bar
  • Added cutter.refresh() python API for Jupyter (refresh widgets)
  • Added ability to open Cutter with no files
  • Added certificates listing
  • Added quick filter to Imports and Exports widgets
  • Added ROP gadgets searching (/Rj)
  • Added /v search ability
  • Added option to swap conditional jumps (patching)
  • Added asm.size option in preferences

Fixes

  • Fixed some fonts issues
  • Fixed multiple widgets sorting issues
  • Jupyter notebook fixes
  • Fixed HexdumpWidget scrolling and seeking
  • Fixed omnibar seeking
  • Improved RelocsWidget
  • Fixed restoring window layout
  • Fixed OS X packaging issue
  • Removed useless stuff from AppImage
  • Removed lib files from Windows zip package
  • Fixed some crashing issues in specific environment
  • Updated documentation