about summary refs log tree commit diff stats
path: root/run.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove ignore logicTheofilos Augoustis11 days1-35/+17
|
* Updates to schedulerTheofilos Augoustis11 days1-51/+20
|
* Refactor runner to be modularTheofilos Augoustis11 days1-181/+148
|
* Handle correctly process exitTheofilos Augoustis11 days1-24/+15
|
* Do not modify python-ptrace internals in a breaking mannerTheofilos Augoustis11 days1-45/+94
|
* Correctly communicate TIDs to run.pyTheofilos Augoustis11 days1-3/+2
|
* Make running Focaccia with multithreading possibleTheofilos Augoustis11 days1-91/+93
|
* Update runnerTheofilos Augoustis11 days1-5/+10
|
* Set the schedule timeout to 0Theofilos Augoustis11 days1-2/+1
|
* Run QEMU under debugTheofilos Augoustis11 days1-39/+40
|
* Continue running when no new scheduleTheofilos Augoustis11 days1-27/+89
|
* Implement proof of conceptTheofilos Augoustis11 days1-0/+166
|
* Adapt symbolic compare to new transform interfaceTheofilos Augoustis2023-12-081-105/+0
| | | | | | | | | | | | Also implement a `MiasmSymbolicTransform.concat` function that concatenates two transformations. Some minor adaptions to the eval_expr code was necessary to remove some assumptions that don't work if the resolver state returns symbols instead of concrete values. Remove obsolete utilities that were used for angr. Co-authored-by: Theofilos Augoustis <theofilos.augoustis@gmail.com> Co-authored-by: Nicola Crivellin <nicola.crivellin98@gmail.com>
* Standardize X86 register namesTheofilos Augoustis2023-11-261-38/+9
| | | | | | | | | | | | | | | | | | | | | | | Add some infrastructure for flexible register name matching (i.e. using 'PC' to look up RIP): - `Arch.to_regname` tries to look up a register's standard name from an arbitrary string. - `ArchX86` overrides `to_regname` to resolve alias names for registers. Currently just 'PC' for 'RIP'. - `ProgramState.read` and `ProgramState.write` use `to_regname` to make register access more convenient. Add all flags with their standard abbreviations to `x86.regnames`. Implement a full RFLAGS decomposition into its individual flags in `x86`. Replace the hacks in `run.py` and `miasm_test.py` with this more complete solution. Co-authored-by: Theofilos Augoustis <theofilos.augoustis@gmail.com> Co-authored-by: Nicola Crivellin <nicola.crivellin98@gmail.com>
* Support for testing concrete and emulated execution with angrTheofilos Augoustis2023-10-211-68/+34
|
* Refactor file structureTheofilos Augoustis2023-10-111-73/+27
| | | | | | | | | | | | | | | | | - main.py: focaccia user-interface - snapshot.py: state trace snapshots handling - compare.py: snapshot comparison algorithms - run.py: native execution tracer - arancini.py: Arancini log handling - arch/: per-architecture abstractions Co-authored-by: Theofilos Augoustis <theofilos.augoustis@gmail.com> Co-authored-by: Nicola Crivellin <nicola.crivellin98@gmail.com>
* Add development scripts for comparing Arancini dumpsTheofilos Augoustis2023-07-121-0/+214