Skip to content

Releases: rizinorg/cutter

Cutter 1.11.1

13 Aug 14:49
9a822ec
Compare
Choose a tag to compare

Bug Fixes

  • Include r2dec decompiler in Windows build
  • Sort items in Resources widget by numeric values instead of numbers misinterpreted as strings #2308
  • Fix custom color themes not working correctly #2376
  • Fix a crash when opening the theme editor #2359
  • Update r2dec, includes wargio/r2dec-js@ff0d57e fixing common r2dec crash when processing Windows executables

See full list of changes here

Cutter 1.11

24 Jul 14:59
00595da
Compare
Choose a tag to compare

Features

Graphs

  • Major improvements to graph layout algorithms (#2207, #2255, #2246)
  • New Graph widgets: Call-Graph, Global Call Graph, Import Graph and more (#2273)
  • Support Horizontal Graphs (#2234)

Layout

  • Support saving and loading multiple UI layouts (#2172)
  • Add UI for managing layouts (#2211)

Others

  • Expose asm.reloff (#2243) and asm.reloff.flags (#2244) in Preferences
  • Command line option to open a file in Write mode (#2216)
  • Add menu options for changing IO mode (#2187)
  • Add pci to hexdump widget (#2219)
  • Toggle Console Widget (Ctrl + ` and :) and clear output (Ctrl + L) shortcuts (#2213)
  • Implement editor for .cutterrc initialization file - an easy way of saving r2 options that aren't otherwise exposed (#2162)

Radare2

Documentation

  • Introducing improved Contribution Guidelines (#2293)
  • Add documentation for TempConfig (#2221)Update Cutter compilation documentation (#2238)
  • Setting up development environment and IDE comparison (#2290)

Known issues

  • R2dec isn't included in Windows package.

Cutter 1.10.3

08 May 17:55
1aad797
Compare
Choose a tag to compare

New features and improvements since 1.10.2:

  • Update radare2 to its latest release 4.4.0
  • Patching and Writing features added to Hexwidget
  • Flag and comment indicator in Hexwidget
  • Enhanced Debug experience
  • Official Appimage build compatibility with Ubuntu 16.04
  • Light theme improvements
  • Improved performance

Windows:

  • Updated Qt. If Cutter doesn't start try installing the bundled Microsoft Visual C++ Redistributable.

Build system changes:

  • Support for CUTTER_USE_BUNDLED_RADARE2=ON on windows
  • Improve usability of CMake for preparing Linux packages

Cutter 1.10.3 Pre2 Release

01 May 17:45
a3661fa
Compare
Choose a tag to compare
Pre-release

Changes:

  • Update radare2 to its latest release
  • Patching and Writing features added to Hexwidget
  • Flag and comment indicator in Hexwidget
  • Official Appimage build compatibility with Ubuntu 16.04
  • Light theme improvements

Cutter 1.10.2

10 Mar 13:21
Compare
Choose a tag to compare

Edit:

Please note: Users encountered issues with the debugger in this release.
We're looking into fixing it. If you don't intend to use the debugger, use this release. If yes, please use the previous release, v1.10.1 or the newer v1.10.3.
We're sorry for the inconvenience and will release a fixed version soon.


This is a minor release to bump the version of radare2 to its latest release.

radare2

  • Update the radare2 submodule to its latest release

Additions

  • Add bindings for context menus in Python API
  • Show cleaner function names on the disassembly context menu
  • Display Authentihash and Sha256 for Windows PE files
  • Add scaling and background transparency for Graph export

Bug Fixes

  • Fix crash when using theme editor

Cutter 1.10.1 - "Arctic World Archive"

01 Feb 17:37
37544b4
Compare
Choose a tag to compare

📥 Take me to the download links

Highlights

⭐ r2dec decompiler is now shipped by default on all platforms
⭐ radare2 is updated to its newest version - v4.2.1
⭐ Major performance improvements across Cutter
⭐ Remove prefixes from flags and functions to make them prettier
⭐ New dialog to set and edit breakpoints, including hardware and conditional breakpoints
⭐ Improved API for plugin authors
⭐ Faster and better telescoping for Stack and Registers
⭐ Various bug fixes and small improvements

The Arctic World Archive

On February 2, 2020, GitHub will capture a snapshot of every active public repository, to be preserved in the GitHub Arctic Code Vault. This data will be stored on 3,500-foot film reels, provided and encoded by Piql, a Norwegian company that specializes in very-long-term data storage. The film technology relies on silver halides on polyester. This medium has a lifespan of 500 years as measured by the ISO; simulated aging tests indicate Piql’s film will last twice as long.

csm_Svalbard_Global_Seed_Vault_f25d850445

Additions

  • Bundle r2dec into macOS and Linux Builds (#2023, #2033)
  • Show pretty names for flags and functions (#2014)
  • Add realname and libname to Flags and Imports widgets (#2024)
  • Add Breakpoint editor dialog (#1975)
  • Add more breakpoint editing options (#1967)
  • Imporve Register references widget (#2038)
  • Add API for Plugins to extend context menu (#2029)
  • Add a custom telescoping function and improve StackWidget's output (#1990)
  • Make breakpoints available outside of debug (#2027)
  • Add virtual-size to section widget (#2030)
  • Add sha256 and crc32 to the hexdump widget (#2006)
  • Patching: add a ';' delimiter and responsive dialog box, multiple instructions can be patched (#1984)
  • Improve graph HighDPI scaling (#1963)
  • Threads widget now shows the current location in code instead of the thread's path (#15771)

Fixes and Changes

  • Update radare2 to 4.2.1 (#2040)
  • Simplify and move Plugin context menu GUI code out of core. (#2039)
  • Make user plugin path in settings a link (#2034)
  • Improve default line-width values on graph (#2026)
  • If available, set r2ghidra the default decompiler (#2007)
  • Improve flag and string widget performance (#2021)
  • Set zoom factor when opening appearance settings. (#2003)
  • Refresh monospace font after it gets reset by style or font change. (#2002)
  • set Style tab to default view (#1986)
  • Fix debug not working with paths that have a space in them (#1978)
  • Refactor breakpoint validation (#15754)
  • Fix multithreaded breakpoint behavior in linux (#15782)
  • Unset breakpoints if continue was interrupted (#15772)
  • Fix crash caused by rebasing a file without sections (#15792)
  • Fix windows process info not showing the correct path for child processes (#15741)
  • Fix function variable information rebasing (#15726)

Cutter 1.10 - "A Debugger steps into a bar"

20 Dec 19:20
c0d4fda
Compare
Choose a tag to compare

This release comes with the long promised native and remote debugging support. Celebrate the end of the year with Cutter 1.10!

Currently supported features

  • Multiplatform native debugger
  • Remote debugging using GDB
  • Remote kernel debugging using WinDbg
  • Attaching to a running process
  • STDIO interaction with debugee
  • Support for multi-threading
  • Stack and Registers inspection
  • Backtrace
  • Memory map

And much more!

Planned and in-progress debug features

  • Reverse debugging
  • SIMD register display
  • Hardware breakpoints support
  • Conditional breakpoints
  • Signal handling customization
  • Performance improvements
  • Integration with rarun2 library preload
  • Standalone DLL debugging
  • WinDbg Ethernet protocol support

Note that any kind of contribution is welcome. We are eager to hear your feedback for more debug improvement ideas!

Known issues

  • Linux breakpoints only work if you are selecting the thread that will hit the breakpoint
  • Function stack variable comments aren't relocated in GDB remote debug
  • Cutter's interface changes size when debug is started/stopped
  • macOS debugging doesn't work without signing the binary

Please give it a try and let us know what you think :)

Full Changelog

Additions

  • Add -F command line option to specify Format (#1946)
  • Define string of length N in address (#1915)
  • Add startRemote to the debug dropdown menu
  • Add a signal for widget rebasing and switch to oodf for remote debug rebasing (#1913)
  • Add debug dialogs (#1903)
  • Add processes widget for kernel and child debugging (#1894)
  • Stdin redirection for locally debugged processes (#1892)
  • gdbserver and windbg remote debugging support (#1874)
  • ThreadsWidget and r2 debugging fixes (#1846)
  • Pressing Enter in disassembly will jump to the desired location (#1910)
  • Add menus to seek backward and forward buttons. (#1889)
  • Add Adikso's Midnight Theme (#1895)
  • Highlight in red changes in the Hexdump Widget (#1880)
  • Add instruction highlight in graph view (#1879)
  • Add highlight to hexdump (#1862)
  • Redirect stdout/stderr to Console Widget (#1821)
  • Add shortcuts to breakpoints widget (#1834)
  • Add common zoom action for widgets using font from configuration (#1813)
  • Implement parsing selected bytes as Yara (#1818)
  • Add search color option feature + sort color options by name (#1803)
  • Add information from aai to Dashboard, fixes #1571 (#1792)
  • Add addressable item context menu to stack widget (#1779)
  • Add more shortcuts to DisassemblyContextMenu (#1782)
  • Graph export without graphviz (#1773)

Fixes and Changes

  • Moved the debug exit dialog to DebugActions
  • Update radare2 to 4.1.1 - reantull
  • Use events to notify the user about the debugee's death
  • Fix remote debug crash after the first session
  • Prevent the update of some widgets while debug task is in progress to avoid freezing
  • Switch to registerChanged from seekChanged where possible
  • When using add breakpoint button add it not toggle. (#1953)
  • Workaround for new debug widgets being opened in normal mode. (#1950)
  • Show debug widget menu under Debug. (#1949)
  • Highlight Breakpoints and PC in decompiler (#1948)
  • Fix Segfault on Quit after Debug/Emulation (#1943)
  • Fix automatic function naming (#1942)
  • Increase input field size when resizing NativeDebugDialog. (#1930)
  • Fix formatBytecount's sizes (#1928)
  • Separate the search widget's boundaries for debug and non-debug modes
  • Replace changeDebugView and changeDefinedView with toggleDebugView
  • Removed disabling of startEmul to show the restart debug option when emulating
  • Remove metadata from inkscape icons
  • Remove auto scroll from registerRefs widget
  • Support multi-theme icons on debug
  • Improve debug icons
  • Show icon in menus
  • Use uppercase for program counter name
  • Make labels selectable by mouse
  • Disable auto scroll in stack widget
  • Rename backtrace func name column
  • Auto-select text in EditInstructionDialog
  • Improve RegistersWidget grid UI
  • Improve stack widget ui
  • Remove column of active thread in ThreadsWidget
  • Remove vertical numbers in debug widgets
  • Change label to suspend process
  • Detach Cutter interface from debug command execution (#1857)
  • Look for sym.main instead of main 'cause latter is not rebasing in PIEs
  • Fix PIE debug
  • Hides the ContinueUntilMain button if there is no flag called main
  • Fixes issues with reset layout in debug mode
  • Fix emulation not working after a debugging session
  • Improve seek backward and outside of function in Decompiler widget (#1916)
  • Fix 1756: Disable seek when selecting text on Decompiler Widget (#1917)
  • Coverity Fixes (#1912, #1907)
  • Replace hardcoded system plugin directories with list from Qt. (#1814)
  • Added a temporary fix to allow backslashes names (#1899)
  • Improve compatibility with cmake 3.10. (#1882)
  • Disable asm.lines and asm.bytes in XRefs Preview (Fix #1339) (#1893)
  • Fix Strings Widget for changes in radare2 (#1885)
  • Change focus order in SetToDataDialog. (#1873)
  • Hide and resize hexdump sidebar with heuristics (#1798)
  • Refactored qhelpers AbstractItemView item select (#1850)
  • Fix decompiler widget not updating xrefs to decompiled function (#1851)
  • Automatically select the first line of xref (#1849)
  • Deduplicate seek forward and backward action. (#1844)
  • Show bytes has been renamed and moved (#1841)
  • Replacing all QRegExp with QRegularExpression (#1820)
  • Fix graph zoom reset and use same font size as everything else. (#1835)
  • Fix Native Plugin Loading for CMake (#1829)
  • Fix refresh after renaming imported function (#1828)
  • Improve compatibility with cmake 3.5 and QT 5.5-5.11. (#1805)
  • Allow local development using Docker (#1806)
  • Fix #1802 (newly created graph docks have no title) (#1815)
  • Restore breakpoint listing. (#1811)
  • Use AddressableItemContextMenu in Registers widget. (#1794)
  • Improve about dialog (#1799)
  • Fix crash when using graph shortcut (#1801)
  • Fixed zoom shortcuts to something more generic (#1781)
  • Fix "ta" commands after radare2 command refactoring #1774 (#1775)
  • Fix Segfault on Theme Editor Preview Click
  • Fixed TypeWidget font to monospace. (#1755)

Cutter 1.9.0 - Codename "Trojan Dragon"

06 Sep 08:31
Compare
Choose a tag to compare

This release comes bundled with the r2ghidra Decompiler. Enjoy r2con 2019!

Additions

  • Bundle r2ghidra-dec
  • Select highlighted variable in EditVariablesDialog if possible. (#1727)
  • Allow seeking in unsynchronized widgets using 'g'. (#1731)
  • Decompiler Auto-Refresh (#1724)
  • Make Decompilation asynchronous (#1721)
  • Add context menu entries for target address (#1712)
  • Add context menu to PseudocodeWidget (#1702)
  • Graphviz based graph layout (#1691)
  • Graph edge highlight (#1693)
  • Added QtVersion inside AboutDialog
  • Updated DisasWidget zoom shortcuts
  • Remember last selected Decompiler
  • Add Plugin Interface for Decompilers
  • Add a generic Decompiler interface and remove pdc (#1659)
  • Add scrolling to DisassemblyWidget left panel
  • Sync PseudocodeWidget with Seek (#1648)
  • Use KSyntaxHighlighting (#1645)
  • Add Loading ~/.cutterrc (#1644)

Fixes and Changes

  • Rename PseudoCode widget to Decompiler (#1728)
  • Center Rename Dialogs (#1743)
  • Update radare2 to 3.8.0
  • Fix unnecessary Auto-Decompile on Seek (#1734)
  • Read global offset when opening a new hexdump widget. (#1732)
  • Common behaviour for lists with items that have address (#1700, #1718)
  • Increase asm.tabs indention
  • Fix Main Task Synchronization (#1723)
  • Fix Disassembly widget focus detection. (#1720)
  • Refactor Decompiled Code Structure (#1717)
  • Fix Segfault after changing Decompiler (Fix #1705) (#1715)
  • Restore cursor after making empty selection. (#1714)
  • Don't interpret data as code in xrefs from table. (#1710)
  • Improve InitialOptionsDialog and modify UI terminology for analysis (#1669)
  • Fix out of bounds memory access. (#1697)
  • Fixed file name display in new file dialog (#1675)
  • Allow returning to top level in sdb widget. (#1696)
  • Fix memory leak in sdbListKeys. (#1695)
  • Fix ClassesWidget sorting by vtable offset (#1686)
  • Transfer zoom events from overview to main graph. (#1685)
  • Use bundled radare2 as ExternalProject in cmake (#1674)
  • Don't use scr.html in CommandTask (#1683)
  • Fix arrow offset when scrolling with arrows or zooming in. (#1677)
  • Docker: Move to alpine; Use multistage building
  • Rewrite raise memory widget functionality (#1654)
  • Unify preferences layouts (#1670)
  • Use more specific stylesheet selecters. (#1668)
  • Adjust arrow offset calculation.
  • Make penSizePix thinner
  • Improve arrow widget
  • First implementation of new disassembly widget
  • Make Syntax Highlighter react to Theme Changes (#1650)

Cutter 1.8.3

09 Jul 09:59
Compare
Choose a tag to compare

Additions

  • Updated radare2 to 3.6.0
  • Case Insensitive ASM search (#1612)
  • Improve hex selection painting and right click behavior. (#1602)
  • Implement Editing and Viewing of Types in the Types Widget (#1597)
  • Improve Graph Overview Fill and Node Colors (#1596)
  • Implement Seek to start/end of function Shortcuts (#1589)
  • Basic Block Highlight (#1533)
  • Hide duplicate and cross-function edges. (#1582)

Fixes and Changes

  • Rename dialog text is now preselected (#1635)
  • Disable asm.movlea by default (#1630)
  • Fix asm.describe typo (#1629)
  • Move graph header to GraphWidget. (#1628)
  • Initial refactoring and improvement for Assembly Options Dialog (#1627)
  • Disable modification buttons for builtin color themes (#1615)
  • Fix crash on theme edition (#1614)
  • Fix Console Font for some Platform Themes (#1610)
  • Don't raise unsynced widgets. (#1609)
  • Remove Memory Widget Pointers and Toggle Actions
  • Refactor Layout Save and Restore Feature (#1538)
  • Use correct character width for hexwidget (#1607)
  • Reset breakpad to buildable commit (#1605)
  • Fix def. Cutter specific Colors for Custom Themes (#1606)
  • Interface theme and theme features refactoring (#1598)
  • Combine Set-As menu items (#1601)
  • Remove default Shiboken2 executable in qmake proj (#1600)
  • Sync hex.pairs eval to "Bytes as pairs" in Hexdump (#1586)
  • Added natural registers sorting in RegistersWidget (#1591)
  • Fix memory leaks found by ASAN. (#1590)
  • Make the shadow selection wider in hex (#1584)
  • Update hex side panel only when visible. (#1578)
  • Fix PNG iCCP errors (#1583)
  • Fix QToolbutton color and offset in light theme. (#1579)
  • Remove tab style modifications in native style sheet. (#1565)
  • Lock Core in CutterCore::loadScript() (#1581)

Cutter 1.8.2

20 May 21:05
5390a7d
Compare
Choose a tag to compare

Additions

  • Updated radare2 to 3.5.1
  • New Hexedit (#1516)
  • Save Console Wrap in QSettings (#1550)
  • Added hotkeys for undo and redo seek (#1514)
  • Added advanced options aao and avrr to the initial options dialog (#1513)
  • Added X-Refs context menu item for Flags Widget (#1499)
  • New Color Theme Editor (#1461)
  • Added Light Theme (#1486)
  • Added Console Autocompletion from radare2 (#1489)
  • Added Ctrl-Shift-C shortcut (#1476)
  • Show a tooltip with Asm\Hex preview on search hits (#1480)
  • Added Option to toggle Line Wrap in Console (#1466)

Fixes and Changes

  • Keep Console Font on Theme Change (#1567)
  • Remove vertical padding in QMenuBar in Light Theme (#1566)
  • Improve Color Theme Copy Feature (#1560)
  • Add Settings and Color Theme Versioning (#1557)
  • Take in to account selected instruction when moving view offset. (#1551)
  • Make code compatible with QT 5.9 (#1553)
  • Fix XrefsDialog Preview Font (#1548)
  • Fix non-integer Font Metrics in Graph (#1545)
  • Fix io plugin listing. (#1544)
  • Remove unnecessary Console Messages (#1546)
  • Fix Sections Size in Visualization
  • Auto Resize Visualization in SectionsWidget
  • Add Permissions Column to SectionsWidget
  • Make gui.dataoffset color adapt to Native
  • Always enter mouse drag mode when clicking on overview widget. (#1539)
  • Refresh overview even when function doesn't change (#1541)
  • Fix Bindings of Signals (Fix #1482) (#1530)
  • Seperate Widget showing grid of bytes from rest of the hexdump panel. (#1504)
  • Fix Shortcuts of DisassemblyContextMenu (#1510)
  • Make grouped dock dragging optional. (#1506)
  • Invalidate overview graph cache when changing color. (#1502)
  • docker/Dockerfile: Make build noninteractive (#1500)
  • Use API for Functions (#1498)
  • Only require Shiboken2 and PySide2 Version up to Minor (#1491)
  • Delete Extra Widgets on Close (#1490)
  • Use same font size for all text in hexdump widget. (#1485)
  • Fix highlighting bugs in DisasmWidget (#1477)
  • Help not getting lost in empty parts of graph. (#1467)
  • Show context menu with non block specific graph actions everywhere. (#1465)
  • Show recent files ordered by opening time. (#1462)
  • Improve project choose page (#1451)
  • Start placing edges from centre. (#1460)
  • Fallback to current offset in LinkTypeDialog (#1458)