Mark Mossberg
d0f2c0116e
Refactor Register ( #82 )
...
* Fix register read bug
If we store a BitVec, we do NOT want to return bool() of it, which
returns True, which is totally incorrect. We do however, want to return
a symbolic Bool of it, if it is a 1 bit register (flag).
* Improve
* Raise error
* Fix register tests
Changed the interfaces:
- removed nbits param (never used)
- no longer raise AssertionError when overflowing a flag reg, just
truncate
- rename test funcs to be more descriptive
* rm unused import
* Add symbolic tests
* Rm no longer applicable test
2017-03-21 16:50:39 -04:00
Mark Mossberg
d50b3da9a8
arm: Fix broken dynamic APSR ( #78 )
2017-03-21 16:47:52 -04:00
Mark Mossberg
ca396d8d13
Use OrderedDict ( #84 )
...
It can be useful to know elements in `branches` towards the end are
more recently discovered branches
2017-03-21 16:47:40 -04:00
Mark Mossberg
5368716e42
Fix state.branches ( #74 )
...
* init
* rm old code
pretty sure it's wrong
* Clean
* rm
* Rename record_fork, move to ConcretizeRegister exception handler
It doesn't need to be in fork() because it's only relevant for when
we fork due to PC.
* Add test for record_branches
* Add back record_branches which got removed in rebase
Rebase went oddly because State got moved to a new file
2017-03-20 17:56:25 -04:00
JP Smith
e77628bfe7
Add example crackme ( #77 )
...
* add example crackme
* make filename and directory structure more accurate
2017-03-17 14:43:06 -05:00
Mark Mossberg
7742df6b67
Rm unnecessary code ( #80 )
2017-03-17 14:10:48 -04:00
Mark Mossberg
e920b73e14
Move state into own file ( #75 )
...
* Move State from executor.py
* Fix import
* relative import
2017-03-16 14:43:17 -04:00
Mark Mossberg
4464b2e842
Rm unused files ( #76 )
2017-03-16 12:02:29 -04:00
feliam
963669f3f2
Make cpuid more forgiving ( #67 )
...
* Make cpuid more forgiving
* error() to warning()
* Add CPUID EAX=0xd ECX=0,1
* Let logger handle the format string iff needed
* to hex
2017-03-14 13:39:06 -03:00
JP Smith
5d2ca04957
Switch instructions to prefer virtualenv ( #65 )
...
* switch instructions to prefer virtualenv
* document use of virtualenvwrapper
2017-03-13 16:14:18 -05:00
JP Smith
ca0bee2377
Rename test -> tests ( #66 )
...
* rename test -> tests
* re-add ignored tests
2017-03-13 14:06:36 -05:00
JP Smith
dd24878724
Remove unicorn script from travis build ( #64 )
...
* remove unicorn script from travis build
* remove unicorn script entirely
2017-03-13 10:51:49 -05:00
Mark Mossberg
296f4abb34
Print workspace dir by default ( #55 )
...
* Print workspace dir by default
* Change initial cli output
2017-03-10 10:49:31 -05:00
Mark Mossberg
88456a4ef8
Rm requirements.txt ( #56 )
2017-03-09 13:01:26 -05:00
Mark Mossberg
d527d9239b
Improve quick start ,add asciinema ( #58 )
2017-03-08 17:51:07 -05:00
feliam
1cc66f16ca
Add APSR support ( #53 )
...
* Add APSR support
* #issuecomment-284826572
* APSR tests
* cspr to aspr
2017-03-08 17:17:05 -03:00
Mark Mossberg
ef6e21b865
Fix stdin/stdout linux file generation, add test ( #50 )
...
* Support linux read/write in stdout/stdin files
* Add basic binary
* Add basic integration test
* Skip
* Update skip message
* Add github issue
2017-03-06 18:39:31 -05:00
Mark Mossberg
be59812a89
Support linux read/write in stdout/stdin files ( #51 )
2017-03-06 16:08:49 -05:00
feliam
1f838736a5
Add capstone ASR special case ( #42 )
...
* Add capstone ASR special case
* Fix capstone install (#43 )
* Add arm asr, abstract SR type insns (#44 )
* tmp
* Fix bug
* test m.hook typerror (#41 )
* Use setuptool extras for dev deps (#40 )
* Add extra deps to setup.py
* Fix nose dep
* lol wrong keystone
* Fix readme
* Update travis
* Workaround capstone install bug
* Use --no-binary in only pip install line
* Fix another readme regression
* Not again
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update travis token, reformat (#46 )
the travis cli tool auto reformatted the yaml
* Remove embedded ply (#47 )
* rm ply
* add ply dep
* Refactor `new_symbolic_value` (#48 )
* Use default params instead of dict, add taint
* Update docstring
* Add capstone ASR special case
2017-03-06 15:31:24 -03:00
Mark Mossberg
ab0abf7f72
Refactor new_symbolic_value ( #48 )
...
* Use default params instead of dict, add taint
* Update docstring
2017-03-03 18:22:04 -05:00
Mark Mossberg
e49341c506
Remove embedded ply ( #47 )
...
* rm ply
* add ply dep
2017-03-03 17:21:33 -05:00
Mark Mossberg
ad3a438e05
Update travis token, reformat ( #46 )
...
the travis cli tool auto reformatted the yaml
2017-03-03 15:39:28 -05:00
Dan Guido
bff9376308
Update README.md
2017-03-02 17:53:18 -05:00
Dan Guido
2cbac6b424
Update README.md
2017-03-02 17:50:20 -05:00
Dan Guido
8e2bab90ff
Update README.md
2017-03-02 17:48:19 -05:00
Dan Guido
96d08cef2d
Update README.md
2017-03-02 17:33:35 -05:00
Mark Mossberg
d2a0165958
Use setuptool extras for dev deps ( #40 )
...
* Add extra deps to setup.py
* Fix nose dep
* lol wrong keystone
* Fix readme
* Update travis
* Workaround capstone install bug
* Use --no-binary in only pip install line
* Fix another readme regression
* Not again
2017-03-02 17:31:06 -05:00
Mark Mossberg
7412b2a374
test m.hook typerror ( #41 )
2017-03-02 17:19:36 -05:00
Mark Mossberg
fed00af160
Add arm asr, abstract SR type insns ( #44 )
...
* tmp
* Fix bug
2017-03-02 16:33:04 -05:00
Mark Mossberg
259eab71e0
Fix capstone install ( #43 )
2017-03-02 15:35:45 -05:00
feliam
61ccfc1b14
OOps
2017-03-02 16:37:25 -03:00
feliam
f5515df4ff
Add capstone ASR special case
2017-03-02 16:33:58 -03:00
Mark Mossberg
04d95735ac
Fix empty trace file ( #39 )
...
* Improve .trace generation
* Rm unused self.trace stuff
2017-03-01 13:47:55 -05:00
Mark Mossberg
f0069792c3
Misc cleanup: Rm old script, unused executor hooking functions ( #38 )
...
* Rm old irrelevant example script
* Make this easier to copy and paste
* Rm old unused executor hooking
2017-03-01 13:47:46 -05:00
Mark Mossberg
275a85e08e
Clean CGC artifacts from linux model ( #36 )
...
* Use errno instead of CGC constants for linux
* Rm linux.sys_allocate
* Rm linux.sys_deallocate
* Rm linux.sys_fdwait
* Rm comments
* Clean sys_read
* Clean sys_write
* Fix syscall trace spots
* Clean exit_group
2017-03-01 13:47:35 -05:00
Mark Mossberg
16f9bba9b5
Add readme for devs
2017-03-01 13:44:50 -05:00
Mark Mossberg
a6b81c0464
Update README.md ( #33 )
...
* Update README.md
* Add quick start
* Update README.md
* Update README.md
* Update README.md
2017-03-01 13:30:37 -05:00
JP Smith
ca158dd5b4
remove alternate solver support ( #35 )
2017-03-01 11:06:32 -06:00
JP Smith
a4576009de
switch pse_ prefix to mcore_ ( #34 )
2017-03-01 11:06:25 -06:00
Mark Mossberg
b591f2a83a
Add unicorn to required deps ( #31 )
...
* Add unicorn to python deps
* Update readme
* Add deps to setup.py
* test letting pip install install deps in travis
2017-03-01 11:22:04 -05:00
JP Smith
d052d3b2d7
Fix the --stats flag ( #26 )
...
* start re-integrating profiling functionality
* profiling works
* rename X class
* make profile a private attribute
* nomenclature fixes
* profiling -> profile
* remove _dump stats
* always initialize self._profile
* remove extra setting of profiling
2017-02-27 14:45:12 -06:00
Mark Mossberg
d6393cc8a6
Add hook decorator ( #28 )
...
* Add m.add_hook test
* Add @m.hook test
* Add `hook` decorator for convenience
* Update readme and examples
* Update run_callback
* Improve `add_hook` docstring
expound on callback structure
* Rm debug print
* Improve docstring
2017-02-27 15:44:33 -05:00
JP Smith
98567efeaa
Force pc argument to add_hook to be an int or None ( #30 )
...
* force pc to be an int or None
* follow pep8 more closely
* change debug message to an error
* use format and isinstance
2017-02-27 14:25:18 -06:00
Yan
bbc36a2b2e
Use issymbolic() throughout Manticore ( #22 )
...
* Use issymbolic() throughout Manticore
* Add a missed import
* absolute -> relative import
* Import issymbolic from helpers
* Missing import
2017-02-24 15:56:46 -05:00
Mark Mossberg
103d32c0a7
Make m.verbosity=2 work ( #24 )
...
* Make each model get "MODEL" logger instead of unique name
This makes implementing `manticore.verbosity` actually work for level
2
* Replace model names with 'MODEL'
2017-02-24 15:21:37 -05:00
Mark Mossberg
9d3dfec08b
Rm helloworld in make clean ( #27 )
2017-02-24 15:21:28 -05:00
Mark Mossberg
44bf8745a1
m.start -> m.run ( #25 )
2017-02-22 10:08:35 -05:00
Mark Mossberg
f51227acd5
Control memory logging with verbosity ( #23 )
2017-02-21 11:41:15 -05:00
Mark Mossberg
065266ba7f
Refactor symbolic syscall handling to be arch indep ( #19 )
2017-02-16 16:41:24 -05:00
Yan
5a432b8957
Update README snippet ( #17 )
2017-02-15 17:25:56 -05:00