Skip to main content

TritonDSE

TritonDSE is a Python library providing exploration capabilities to Triton and some refinement easing its usage. This library is primarily designed to perform pure emulation symbolic execution even though it can also be applied under different settings. It works by performing an elementary loading of the program and starts exploring from the entrypoint. The whole exploration can be instrumented using a hook mechanism enabling to obtain a handle on various events.

At the moment solely ELF and Linux are supported. But further development can lead to more platform. Furthermore it provides facilities on the C runtime and it has not been tested on other types of programs.

Documentation


TritonDSE goal is to provide higher-level primitives than Triton. Triton is a low-level framework where one have to provide manually all instructions to be executed symbolically. As such, TritonDSE provides the following features:

  • Loader mechanism (based on LIEF, cle or custom ones)
  • Memory segmentation
  • Coverage strategies (block, edge, path)
  • Pointer coverage
  • Automatic input injection on stdin, argv
  • Input replay with QBDI
  • input scheduling (customizable)
  • sanitizer mechanism
  • basic heap allocator
  • some libc symbolic stubs

Quick start

Installation

pip install tritondse

The pip package will install all dependencies.

Documentation

A complete documentation on how to use TritonDSE is available on Github pages.


External Contributors

  • Jonathan Salwan
  • Richard Abou Chaaya

All contributions*

Metadata

Release files for tritondse 0.1.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for tritondse 0.1.14
File Interpreter ABI Platform
tritondse-0.1.14-py3-none-any.whl Python 3 none any Details

Release files / tritondse-0.1.14-py3-none-any.whl

Download URL tritondse-0.1.14-py3-none-any.whl
Size 114.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
20b3ad314a00dd7e4af7fa9a404b1551aff5a996a2212e3ef9c5d6090efcde39
BLAKE2b-256 checksum
How to use checksums
aaa89d4661a80fbad0ecb120820cd968e59816514b15d25a6dd0f41b9c4424be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

0.1.14 This release

1 release file

0.1.13

1 release file

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page