Manticore

Latest version: v0.3.7

Safety actively analyzes 682404 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

0.3.7

Thanks to our external contributors!
- [sobolevn](https://github.com/trailofbits/manticore/pulls?q=is%3Apr+author%3Asobolevn)
- [G-11-P](https://github.com/trailofbits/manticore/pulls?q=is%3Apr+author%3AG-11-P)

Ethereum
* Use `crytic-compile` 0.2.2 [2530](https://github.com/trailofbits/manticore/pull/2530)
* Multi-transaction analysis now uses fixed attacker and owner contracts [2464](https://github.com/trailofbits/manticore/pull/2464)

Native
* **[Added API]** Retrieve list of unimplemented syscalls [2491](https://github.com/trailofbits/manticore/pull/2491)
* Add `FXSAVE`/`FXRSTOR` concrete support on x86 [2511](https://github.com/trailofbits/manticore/pull/2511)
* Add `last_executed_pc` property to CPU [2475](https://github.com/trailofbits/manticore/pull/2475)
* Support LD_LIBRARY_PATH [2476](https://github.com/trailofbits/manticore/pull/2476)
* Optional `will/did_read_memory` events [2488](https://github.com/trailofbits/manticore/pull/2488)
* Fixed base address handling on Linux [2500](https://github.com/trailofbits/manticore/pull/2500)
* Add `ENDBR`-style NOPs [2533](https://github.com/trailofbits/manticore/pull/2533)
* Support `epoll`-related syscalls [2529](https://github.com/trailofbits/manticore/pull/2529)

Other
* **[Added API]** Add fork policy for providing explicit values [2514](https://github.com/trailofbits/manticore/pull/2514)
* Fixed Constant Folding [2524](https://github.com/trailofbits/manticore/pull/2524)
* Add simplifications for subtraction [2504](https://github.com/trailofbits/manticore/pull/2504)
* Parent state ID, last PC now available in state descriptors [2479](https://github.com/trailofbits/manticore/pull/2479), [#2471](https://github.com/trailofbits/manticore/pull/2471)
* States now contain a reference to the current manticore instance [2486](https://github.com/trailofbits/manticore/pull/2486)
* `fast_fail` config to exit after first state exception [2487](https://github.com/trailofbits/manticore/pull/2487)
* Scaling bugfix for large solver queries [2502](https://github.com/trailofbits/manticore/pull/2502)
* Don't fork when only one solution is found for `Concretize` [2527](https://github.com/trailofbits/manticore/pull/2527)

0.3.6

Thanks to our external contributors!
- [timgates42](https://github.com/trailofbits/manticore/commits?author=timgates42)

Ethereum
* **[Changed API]** Default to quick mode: disable detectors and gas [2457](https://github.com/trailofbits/manticore/pull/2457)
* Allow symbolic balances from the beginning of execution [1818](https://github.com/trailofbits/manticore/pull/1818)
* Disable EVM Events in Testcases [2417](https://github.com/trailofbits/manticore/pull/2417)

Native
* **[Added API]** Syscall-specific hooks [2389](https://github.com/trailofbits/manticore/pull/2389)
* Fix wildcard behavior in symbolic files [2454](https://github.com/trailofbits/manticore/pull/2454)
* Bugfixes for control transfer between Manticore & Unicorn [1796](https://github.com/trailofbits/manticore/pull/1796)

Other
* Run multiple SMT solvers in parallel, take the fastest response [2420](https://github.com/trailofbits/manticore/pull/2420)
* Add socket for TUI [1620](https://github.com/trailofbits/manticore/pull/1620)
* Memory usage improvements in expression system [2394](https://github.com/trailofbits/manticore/pull/2394)
* Support for Boolector [2410](https://github.com/trailofbits/manticore/pull/2410)
* Solver Statistics API [2415](https://github.com/trailofbits/manticore/pull/2415)
* Allow duplicated config options [2397](https://github.com/trailofbits/manticore/pull/2397)

0.3.5

Thanks to our external contributors!
- [wolfo](https://github.com/trailofbits/manticore/commits?author=wolfo)
- [geohot](https://github.com/trailofbits/manticore/commits?author=geohot)
- [romits800](https://github.com/trailofbits/manticore/commits?author=romits800)

Ethereum
* Made EVM module ignore runtime gas calculations by default [1816](https://github.com/trailofbits/manticore/pull/1816)
* Updated gas calculations for calls to empty accounts [1774](https://github.com/trailofbits/manticore/pull/1774)
* Fixed account existence checks for `selfdestruct` and `call` [1801](https://github.com/trailofbits/manticore/pull/1801)

Native
* **[Added API]** new `strlen` models [1725](https://github.com/trailofbits/manticore/pull/1725)
* **[Added API]** State-specific hooks [1777](https://github.com/trailofbits/manticore/pull/1777)
* Improved system call argument handling [1785](https://github.com/trailofbits/manticore/pull/1785)
* Improved `stat` support for file descriptors [1780](https://github.com/trailofbits/manticore/pull/1780)
* Support symbolic-length reads from sockets [1786](https://github.com/trailofbits/manticore/pull/1786)
* Add stubs for `sendto` [1791](https://github.com/trailofbits/manticore/pull/1791)

WASM
* Fix type confusion when importing external functions [1803](https://github.com/trailofbits/manticore/pull/1803)

Other
* Made [Yices2](https://yices.csl.sri.com/) the default SMT Solver [#1820](https://github.com/trailofbits/manticore/pull/1820)
* **[Added API]** Added an API for introspecting live states [1775](https://github.com/trailofbits/manticore/pull/1775)
* Changed default multiprocessing type to threading [1779](https://github.com/trailofbits/manticore/pull/1779)
* Improved array serialization performance [1756](https://github.com/trailofbits/manticore/pull/1756)
* Fix name collisions in SMT variables [1792](https://github.com/trailofbits/manticore/pull/1792)

0.3.4

Thanks to our external contributors!
- [jimpo](https://github.com/trailofbits/manticore/commits?author=jimpo)
- [langston-barrett](https://github.com/trailofbits/manticore/commits?author=langston-barrett)

Ethereum
* Support and test against EVM Istanbul [1676](https://github.com/trailofbits/manticore/pull/1676)
* **[Added API]** Added a `manticore-verifier` script for checking properties of smart contracts [1717](https://github.com/trailofbits/manticore/pull/1717)
* Fixed RETURNDATASIZE [1612](https://github.com/trailofbits/manticore/pull/1612)
* Added strategies for symbolic SHA3 replacement [1609](https://github.com/trailofbits/manticore/pull/1609)
* Fixed GAS instruction [1633](https://github.com/trailofbits/manticore/pull/1633)
* Improved balance-related exploration [1615](https://github.com/trailofbits/manticore/pull/1615)
* Add `__format__` to EVM accounts [1613](https://github.com/trailofbits/manticore/pull/1613)
* Discard basic blocks that unavoidably REVERT [1630](https://github.com/trailofbits/manticore/pull/1630)
* Extract printable bytes from return data [1671](https://github.com/trailofbits/manticore/pull/1671)
* Support CHAINID, EXTCODEHASH, and SELFBALANCE instructions [1644](https://github.com/trailofbits/manticore/pull/1644)
* **[Changed API]** Renamed several arguments in EVM API, including `gaslimit` --> `gas` [1652](https://github.com/trailofbits/manticore/pull/1652)
* Explore states that self-destruct [1699](https://github.com/trailofbits/manticore/pull/1699)
* Lazy solving for the Ethereum leak detector [1727](https://github.com/trailofbits/manticore/pull/1727)

Native
* Support for ARM modified-immediate encodings [1638](https://github.com/trailofbits/manticore/pull/1638)
* Support for `/proc/self/maps` [1639](https://github.com/trailofbits/manticore/pull/1639)
* Support for `llseek` [1640](https://github.com/trailofbits/manticore/pull/1640)
* Support for `arm_fadvise64_64` [1648](https://github.com/trailofbits/manticore/pull/1648)
* Allow symbolic sockets in `accept` [1618](https://github.com/trailofbits/manticore/pull/1618)
* Fixes to `open` [1657](https://github.com/trailofbits/manticore/pull/1657)
* Overhauled filesystem emulation [1673](https://github.com/trailofbits/manticore/pull/1673)
* Fixed system call argument concretization [1697](https://github.com/trailofbits/manticore/pull/1697)
* **[Added API]** Add a symbolic model for `strcpy` [1681](https://github.com/trailofbits/manticore/pull/1681)

WASM
* Delay branch condition concretization for better coverage [1641](https://github.com/trailofbits/manticore/pull/1641)

Other
* **[Added API]** Added a snapshot system [1710](https://github.com/trailofbits/manticore/pull/1710)
* Transparent compression for state files [1624](https://github.com/trailofbits/manticore/pull/1624)
* Unify around singleton interface for solver [1649](https://github.com/trailofbits/manticore/pull/1649)
* Use `__slots__` to reduce memory usage in expression system [1635](https://github.com/trailofbits/manticore/pull/1635)
* **[Removed API]** Removed `policy` argument from ManticoreBase, added `outputspace_url` to optionally separate working files from output files [1651](https://github.com/trailofbits/manticore/pull/1651)
* Disable broken `get_related` logic [1674](https://github.com/trailofbits/manticore/pull/1674)
* Disable flaky Z3 tactics [1691](https://github.com/trailofbits/manticore/pull/1691)
* Remove Keystone engine from dependencies [1684](https://github.com/trailofbits/manticore/pull/1684)
* Improved error messages [1632](https://github.com/trailofbits/manticore/pull/1632), [#1704](https://github.com/trailofbits/manticore/pull/1704)
* Made ConstraintSets hashable [1703](https://github.com/trailofbits/manticore/pull/1703)
* Added system to dynamically enable/disable plugins [1696](https://github.com/trailofbits/manticore/pull/1696) [#1708](https://github.com/trailofbits/manticore/pull/1708)
* Re-establish support for Yices and CVC4 [1714](https://github.com/trailofbits/manticore/pull/1714)
* Improved constant folding and constraint set slicing [1706](https://github.com/trailofbits/manticore/pull/1706)

0.3.3

Thanks to our external contributors!

- [catenacyber](https://github.com/trailofbits/manticore/commits?author=catenacyber)

Ethereum
* **[added API]** Flag to only generate alive states when finalizing Manticore [1554](https://github.com/trailofbits/manticore/pull/1554)
* Fix gas check [1587](https://github.com/trailofbits/manticore/pull/1587)

Native
* **[added API]** Add post-instruction hooks [1579](https://github.com/trailofbits/manticore/pull/1579)
* Fix issue with re-using stdio file descriptors after they'd been closed [1604](https://github.com/trailofbits/manticore/pull/1604)

WASM
* **[added API]** getattr-style calls for WASM functions [1578](https://github.com/trailofbits/manticore/pull/1578)
* **[changed API]** Pass state to function calls instead of constraint sets [1578](https://github.com/trailofbits/manticore/pull/1578)
* **[added API]** Added read/write helper methods to memory instances [1589](https://github.com/trailofbits/manticore/pull/1589)

Other
* **[added API]** Added streamlined state serialization interface [1596](https://github.com/trailofbits/manticore/pull/1596)
* Fixed Z3 version parsing [1551](https://github.com/trailofbits/manticore/pull/1551)
* Unique names for ArrayVars [1552](https://github.com/trailofbits/manticore/pull/1552)
* Improve pickling and multiprocessing compatibility [1583](https://github.com/trailofbits/manticore/pull/1583)
* Fix SMTLib visitor bug that broke the example tests [1577](https://github.com/trailofbits/manticore/pull/1577)
* Optimize MinMax SMTLib operations [1599](https://github.com/trailofbits/manticore/pull/1599)

0.3.2

Thanks to our external contributors!

- [Srinivas11789](https://github.com/trailofbits/manticore/commits?author=Srinivas11789)
- [catenacyber](https://github.com/trailofbits/manticore/commits?author=catenacyber)
- [Boyan-MILANOV](https://github.com/trailofbits/manticore/commits?author=Boyan-MILANOV)

Ethereum
* **[added API]** Use higher-level test generation to symbolically execute SHA3 [1526](https://github.com/trailofbits/manticore/pull/1526)
* **[added API]** Added fast unsound SHA3 strategy [1549](https://github.com/trailofbits/manticore/pull/1549)
* **[added API]** Added plugin for discarding states without changes to storage [1507](https://github.com/trailofbits/manticore/pull/1507)
* **[fixed API]** Fix `ADDMOD` and `MULMOD` [1531](https://github.com/trailofbits/manticore/pull/1531)
* Warn on missing bytecode [1534](https://github.com/trailofbits/manticore/pull/1534)
* Simplifiy PC upon modification [1523](https://github.com/trailofbits/manticore/pull/1523)


Native
* Better memory tests ([1506](https://github.com/trailofbits/manticore/pull/1506), [1524](https://github.com/trailofbits/manticore/pull/1524))
* Memory IO performance improvements [1509](https://github.com/trailofbits/manticore/pull/1509)
* **[added API]** Expose ELF dynamic load addresses [1515](https://github.com/trailofbits/manticore/pull/1515)
* Optimize instruction decoding ([1522](https://github.com/trailofbits/manticore/pull/1522), [#1527](https://github.com/trailofbits/manticore/pull/1527))
* Add partial support for `recvfrom` syscall [1514](https://github.com/trailofbits/manticore/pull/1514)
* **[fixed API]** Add `will_write_memory` event to `write_bytes` [1535](https://github.com/trailofbits/manticore/pull/1535)
* Update supported Unicorn version [1536](https://github.com/trailofbits/manticore/pull/1536)
* Fix file pointer leak in ELF interpreter [1538](https://github.com/trailofbits/manticore/pull/1538)
* Deduplicate socket symbol names [1542](https://github.com/trailofbits/manticore/pull/1542)
* Improve environment variable parsing [1545](https://github.com/trailofbits/manticore/pull/1545)
* **[fixed API]** Reduce chance of orphaned `did_execute_instruction` event [1529](https://github.com/trailofbits/manticore/pull/1529)

WASM
* **[added API]** Added initial support for webassembly [1495](https://github.com/trailofbits/manticore/pull/1495)

Other
* Incorporate type checking (mypy) into CI [1544](https://github.com/trailofbits/manticore/pull/1544)
* Fixes to smtlib ([1512](https://github.com/trailofbits/manticore/pull/1512), [#1511](https://github.com/trailofbits/manticore/pull/1511))
* Remove runtime type checking from smtlib to improve performance [1543](https://github.com/trailofbits/manticore/pull/1543)
* Logging improvements ([1518](https://github.com/trailofbits/manticore/pull/1518), [#1520](https://github.com/trailofbits/manticore/pull/1520))
* Simplify unsigned division constant folding [1530](https://github.com/trailofbits/manticore/pull/1530)
* Improve signed division logic [1540](https://github.com/trailofbits/manticore/pull/1540)
* **[changed API]** Move to manticore-specific exception types [1537](https://github.com/trailofbits/manticore/pull/1537)
* **[changed API]** Save profiling data in the workspace instead of the current directory [1539](https://github.com/trailofbits/manticore/pull/1539)

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.