Commit Graph

  • 99a0b9f0b0 Update simplifier to handle ((stack + k) ^ source_r14 - C) + C wip Duncan Ogilvie 2026-05-26 15:38:24 +02:00
  • 9e77633f50 Handle calls and invalid instructions in vmentry_concolic.py Duncan Ogilvie 2026-05-26 02:46:02 +02:00
  • 17ac061ae7 Add DF and a few missing semantics Duncan Ogilvie 2026-05-26 02:45:42 +02:00
  • 9a7ef2e4f6 Emit __striga_invalid when disassembly fails Duncan Ogilvie 2026-05-26 02:44:48 +02:00
  • ff68feb780 Fix memory explosion in vmentry_concolic.py Duncan Ogilvie 2026-05-26 02:38:03 +02:00
  • 0d216db013 add pushan paper Duncan Ogilvie 2026-05-24 13:06:19 +02:00
  • 443057626b Remove redundant memory load metadata Duncan Ogilvie 2026-05-24 12:56:15 +02:00
  • afb563f4c6 Clean up striga.domains and add tests Duncan Ogilvie 2026-05-24 12:50:12 +02:00
  • 70f46d883c Remove tools.domains and format code Duncan Ogilvie 2026-05-24 11:47:57 +02:00
  • 3a83dabd44 Expose domain examples under tools Duncan Ogilvie 2026-05-24 03:52:46 +02:00
  • ca7942ef0c Add SMT interpreter domain Duncan Ogilvie 2026-05-24 03:51:55 +02:00
  • e60821b453 Add concrete taint interval and counting domains Duncan Ogilvie 2026-05-24 03:50:29 +02:00
  • 6d6cb4bd26 Declare provenance interpreter adapters Duncan Ogilvie 2026-05-24 03:36:59 +02:00
  • 904a1f9621 Use reusable interpreter in VM entry concolic tool Duncan Ogilvie 2026-05-24 03:36:37 +02:00
  • d39ca37b48 Add reusable LLVM IR interpreter core Duncan Ogilvie 2026-05-24 03:33:01 +02:00
  • 5bed09daa5 Split instruction lifting from disassembly Duncan Ogilvie 2026-05-24 03:31:30 +02:00
  • b8b088cd4f Updated interpreter plan after review Duncan Ogilvie 2026-05-24 03:20:10 +02:00
  • 218011a371 Add smoke test for vmentry_concolic Duncan Ogilvie 2026-05-24 03:17:27 +02:00
  • fbb7441846 Clean up old experiments Duncan Ogilvie 2026-05-24 03:15:34 +02:00
  • d58724a3d5 Prepare for smt_wire Duncan Ogilvie 2026-05-24 03:07:19 +02:00
  • 966b89f94d Add section about full abstract interpretation Duncan Ogilvie 2026-05-24 03:01:03 +02:00
  • aa7d03f902 Initial interpreter planning Duncan Ogilvie 2026-05-24 02:56:59 +02:00
  • 97b30e92f3 Refine concolic execution engine Duncan Ogilvie 2026-05-24 01:55:40 +02:00
  • 79adc135db Add LLVM IR concolic VM entry executor Duncan Ogilvie 2026-05-23 23:13:20 +02:00
  • 4186e27da1 Honor initial memory overrides in writable overlays Duncan Ogilvie 2026-05-23 22:52:41 +02:00
  • a6198364b5 Add guided VM entry exploration controls Duncan Ogilvie 2026-05-23 18:20:47 +02:00
  • a53d0ed442 Add VM entry discovery workbench Duncan Ogilvie 2026-05-23 18:12:07 +02:00
  • b9739a4c72 Add presentation Duncan Ogilvie 2026-05-23 10:59:59 +02:00
  • a8be5908e1 Remove handler-specific hacks Duncan Ogilvie 2026-05-23 02:47:12 +02:00
  • d374c7131f devirtualization of binaryshield Duncan Ogilvie 2026-05-24 12:50:32 +02:00
  • 087535530a add auto-faulthandler segfault Duncan Ogilvie 2026-05-24 11:48:39 +02:00
  • f4917ddd2b planning Duncan Ogilvie 2026-05-23 00:52:48 +02:00
  • 8ea5d2945f WIP Duncan Ogilvie 2026-05-22 23:42:39 +02:00
  • 269d70d69e Update README master v0.1.1 Duncan Ogilvie 2026-05-21 13:41:44 +02:00
  • d99fd4466c Remove test binaries from sdist Duncan Ogilvie 2026-05-21 12:59:21 +02:00
  • 736d67d487 Add GitHub Actions v0.1.0 Duncan Ogilvie 2026-05-21 12:03:38 +02:00
  • 5792d05827 Clean up brighten.py script Duncan Ogilvie 2026-05-20 16:07:13 +02:00
  • a3b3f50074 Remove confusing assert messages Duncan Ogilvie 2026-05-20 16:01:45 +02:00
  • 3273695571 Add TBAA annotations to State loads/stores Duncan Ogilvie 2026-05-20 14:17:13 +02:00
  • f403b6bc8d Address leftover TODOs in operand handling Duncan Ogilvie 2026-05-20 12:46:49 +02:00
  • e11da95765 Remove rip from context completely Duncan Ogilvie 2026-05-20 12:24:42 +02:00
  • 055526216b Switch around state and memory to match Remill Duncan Ogilvie 2026-05-16 12:37:29 +02:00
  • a675cc5916 TODO: fix this segfault Duncan Ogilvie 2026-05-15 01:45:01 +02:00
  • a0ed507618 Match blog post in brighten.py Duncan Ogilvie 2026-05-15 01:41:05 +02:00
  • e52df6c840 Reformat and fix ruff check errors Duncan Ogilvie 2026-05-15 00:57:42 +02:00
  • 8dbe1caf29 Add aliases for i1-i128 in Semantics Duncan Ogilvie 2026-05-15 00:53:58 +02:00
  • 9365a13a0e Working brightening example Duncan Ogilvie 2026-05-14 16:28:55 +02:00
  • ebdf8d3b3c Mark undef flag functions as memory(none), nounwind, willreturn Duncan Ogilvie 2026-05-14 16:28:32 +02:00
  • 3c671c5cc2 Turn lift_bfs into a reusable function Duncan Ogilvie 2026-05-14 04:25:49 +02:00
  • 15a95377c2 Further cleanups before publication Duncan Ogilvie 2026-05-13 12:36:21 +02:00
  • e2808eca76 Use ret as terminator instead of unreachable Duncan Ogilvie 2026-05-13 01:27:39 +02:00
  • f04c329d9f Update after llvm-nanobind API changes Duncan Ogilvie 2026-05-13 01:27:23 +02:00
  • a24d3d64aa Another cheat sheet revision Duncan Ogilvie 2026-05-12 21:12:40 +02:00
  • e34ea6f048 Rewrite cheat sheet Duncan Ogilvie 2026-05-12 20:46:33 +02:00
  • 3e2ba1de10 Add glossary/cheat sheet for LLVM concepts Duncan Ogilvie 2026-05-12 17:52:08 +02:00
  • 6a2e421e01 Clean up undefined flag handling Duncan Ogilvie 2026-05-12 17:42:14 +02:00
  • 9f077e9d17 Clean up repository root Duncan Ogilvie 2026-05-12 17:23:03 +02:00
  • 07837a9435 More faithful semantics for op_mem Duncan Ogilvie 2026-05-12 03:51:23 +02:00
  • bb35fdd435 Switch to llvm pypi package (test) Duncan Ogilvie 2026-05-12 15:52:56 +02:00
  • edad654821 Lazily create GEP for registers and rename some functions Duncan Ogilvie 2026-05-11 01:00:10 +02:00
  • 5f78af4744 Add missing semantics for Themida Duncan Ogilvie 2026-05-10 16:24:51 +02:00
  • 53292c1f9c Add LICENSE and description Duncan Ogilvie 2026-05-10 11:53:47 +02:00
  • 9684447c14 Move test files to tests/ Duncan Ogilvie 2026-05-10 11:51:46 +02:00
  • 7698850d04 Restructure semantics into striga package Duncan Ogilvie 2026-05-10 11:46:26 +02:00
  • 2132eb29a5 Semantics review and fixes Duncan Ogilvie 2026-05-10 10:28:52 +02:00
  • 0b3c6c6bed Add semantics necessary for riscvm.exe Duncan Ogilvie 2026-05-10 01:54:40 +02:00
  • a938861ac5 Implement flags Duncan Ogilvie 2026-05-10 01:38:41 +02:00
  • 8552acf91a Further cleanup Duncan Ogilvie 2026-05-10 01:20:25 +02:00
  • eec7bfe862 Add lifting of every binaryshield handler Duncan Ogilvie 2026-05-09 23:00:03 +02:00
  • a0b602dfe1 Implement subregs and the rest of the semantics Duncan Ogilvie 2026-05-09 22:59:39 +02:00
  • 25b4bf2074 Refactor semantics handling Duncan Ogilvie 2026-05-09 19:40:34 +02:00
  • 0817dee12c Fix some minor bugs Duncan Ogilvie 2026-05-09 18:35:55 +02:00
  • 2ac172cf33 First handler lifted! Duncan Ogilvie 2026-05-09 16:50:27 +02:00
  • beec01d84e Initial lifting POC Duncan Ogilvie 2026-05-09 15:09:52 +02:00
  • d0c719bc98 Initial commit Duncan Ogilvie 2026-05-08 21:36:18 +02:00