6.6 KiB
6.6 KiB
Change Log
The format is based on Keep a Changelog.
Unreleased
0.1.9 - 2018-05-04
Thanks to our external contributors!
Added
- Ethereum:
--txnocoveragecli argument to suppress coverage based analysis halting criteria - Ethereum: Support added for more Solidity features (imports, uint/int types, function types)
Fixed
- Numerous Ethereum ABI fixes
- Linux and x86/64 emulation fixes
- Solver performance issue
0.1.8 - 2018-03-30
Thanks to our external contributors!
Added
- Ethereum:
--txaccountcli argument to control caller of transaction - Ethereum: Per state execution trace files in workspace
Fixed
- Linux:
--datacli argument to specify concrete stdin - Numerous Ethereum fixes and stability improvements
- Fixes for native cpu emulation
0.1.7 - 2018-02-23
This release brings EVM, performance, Linux emulation, and API improvements, along with numerous bug fixes. Thanks again to our external contributors!
Added
- Documentation on symbolic input
- "force" keyword argument in
cpu.write_bytes/read_bytesetc. - Linux syscalls: getrandom(), openat()
Fixed
- Improved ARMv7 Thumb support
- Numerous EVM bug fixes and improvements (transaction generation, SHA3 handling, instruction tracing, int overflow detection)
- Improved x86/64 emulation performance
0.1.6 - 2017-12-22
This release brings improved EVM support, performance improvements, and numerous bug fixes. Thanks to our external contributors!
- cole-lightfighter
- arunjohnkuruvilla
- Srinivas11789
- sidhant-gupta-004
- roachspray
- dbogs425
- HighW4y2H3ll
- chowdaryd
Added
- Ethereum support in the command line (Solidity files)
- --version, --txlimit flags to command line
- x86/64: Improved support for PCMPXSTRX instruction family
- Ethereum EVM assembly/disassembly APIs
Changed
- Workspace .txt file extension changed to .input
- Ethereum EVM analysis APIs
Fixed
- Deserializing Linux states with special files (/dev) opened
- Redundant forking performance issue fixed
- Various bugfixes in Decree, Linux, ARMv7 Thumb, Unicorn fallback emulation, Z3 Solver interface
0.1.5 - 2017-10-19
Thanks to our external contributors to this release!
Deprecated
Manticore('binary', ['arg1', 'arg2'])style initialization. Use new class methods (see below).
Added
- Platform-specific class methods for Manticore initialization
- e.g.
Manticore.linux('binary', ['arg1', 'arg2'])
- e.g.
Manticore.initanalysis initialization hook- Linux: Various new syscall support, including basic TCP socket support
- Core: An updated plugin infrastructure
- [Experimental] Support for symbolic execution of Ethereum Virtual Machine bytecode
Changed
Manticore.verbosity: logging preset levels interface is now a static method, replacingm.verbosityproperty- Logger output is slightly modified to be more Pythonic
Fixed
- Numerous bugfixes and refactors
- Linux: stderr file is generated in workspace
Removed
- Requirement of external z3 binary installation (z3 installation occurs automatically now via pip)
0.1.4 - 2017-08-18
Added
Manticore.locked_context()(safe parallel context access)State.generate_testcase()(arbitrary testcase generation from hooks)- Documentation on gotchas
- Command line interface support for symbolic files (
--file) (thanks 251!) - [Experimental]
State.context['branches'](States track symbolic branches) - [Experimental] Support for emulation of Binary Ninja IL
Changed
- Taint parameters added to
State.new_symbolic_buffer()andState.symbolicate_buffer()(thanks ehennenfent!) - Improved support for ARM binaries
Manticore.verbositylogging preset levels
Fixed
- Numerous bugfixes
- Fixed workspace error message bug (thanks chowdaryd!)
- Fixed double workspace bug
Removed
- [Experimental]
State.generate_inputs()(superseded byState.generate_testcase())
0.1.3 - 2017-07-14
Added
- Support for Redis as a storage backend, plus an API for user-defined serializers and storage backends
- "Events" which work as global signals for communication across manticore
- Support for using Binary Ninja for visualization
- Executor now provides a global shared context
- State now provides a local context
Changed
- Refactored Executor and everything it talks to significantly
- Some older APIs may be broken or removed by the above refactor (
state.cois no more, for instance)
Fixed
- Numerous bugfixes and stability improvements in logging, Windows, x86, Linux
0.1.2 - 2017-06-14
Added
- Function modeling API (
state.invoke_model(),manticore.variadic) strcmpandstrlenmodelsstate.solve_buffer()- Additional
stateAPIs - Support for ARMv7 Thumb mode
Changed
- Parallel processing API (
m.run(procs)) state.solve_n()
Fixed
- Numerous fixes in Linux, x86, ARM, SMT
- pip installation no longer requires
--no-binary capstone
0.1.1 - 2017-05-05
Added
State.constrain
Changed
- Command line verbosity:
--verbose->-v(up to-vvvv)
Fixed
- Linux platform fixes: syscalls, ELF loading
- x86 and ARM fixes
0.1.0 - 2017-04-24
Initial public release.