Revision 4b79711b92e9959f2fda4da548c09d6298de0e89 authored by feliam on 12 December 2017, 17:56:39 UTC, committed by GitHub on 12 December 2017, 17:56:39 UTC
* Fixes symbolic reentrancy example * Fix coverage Issue# 527 * Remove debug unused code * New solidity biased API and reporting * Updated examples to new api WIP * simple_mapping FIXED. new api * Simple transaction example added. msg.value can be symbolic now * Reentrancy symbolic now updated to new API + bugfixes * Doc and cleanups in evm assembler * EVMInstruction -> Instruction * cleanups * typo * deepcopy in Constant * Better EVM-asm api and doc * some docs * More evm asm docs * Initial seth in place refactor * Fix import * * typo * newline between text and param * similar phrasing to all the other flags * typo * typo * fix function name in comment * sphinx newline * documentation fixes * documentation fixes * refactors * EVMAssembler to EVMAsm * Fix evm @hook signature * EVMAsm * WIP seth doc * WIP move seth * seth moved to manticore module * Fixed DUP and typo * Slightly better evm reporting * review * review * Removed unfinished refactor * Various refactors. Auxiliar for calculating % coverage * Change report in examples * Detailed transactions and reporting accessible to the user2 * Fix on Expression Array * Some documentation * Get full ABI from solc compiler * evm/examples -> bugfixes * Clarify try/except blocks * Code review * Code review * Code review * Code review * Code review * Initial detector plugin. integer overflow and unitialized mem * Better metadata handling and new events for detectors * detectors wip * Better name for internal findings context * Explicit detector register * review
1 parent df9af1f
CHANGELOG.md
# Change Log
The format is based on [Keep a Changelog](http://keepachangelog.com/).
## [Unreleased](https://github.com/trailofbits/manticore/compare/0.1.5...HEAD)
## 0.1.5 - 2017-10-19
Thanks to our external contributors to this release!
- [johnfxgalea](https://github.com/johnfxgalea)
### 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'])`
- `Manticore.init` analysis 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, replacing `m.verbosity` property
- 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](http://manticore.readthedocs.io/en/latest/gotchas.html)
- Command line interface support for symbolic files (`--file`) (thanks [251](https://github.com/251)!)
- [Experimental] `State.context['branches']` (States track symbolic branches)
- [Experimental] Support for emulation of [Binary Ninja](https://binary.ninja) IL
### Changed
- Taint parameters added to `State.new_symbolic_buffer()` and `State.symbolicate_buffer()` (thanks [ehennenfent](https://github.com/ehennenfent)!)
- Improved support for ARM binaries
- `Manticore.verbosity` logging preset levels
### Fixed
- Numerous bugfixes
- Fixed workspace error message bug (thanks [chowdaryd](https://github.com/chowdaryd)!)
- Fixed double workspace bug
### Removed
- [Experimental] `State.generate_inputs()` (superseded by `State.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.co` is 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`)
- `strcmp` and `strlen` models
- `state.solve_buffer()`
- Additional `state` APIs
- 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.
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...