Skip to main content

An evolutionary source-code fuzzer

Project description

Codename GitHub License PyPI - Python Version GitHub Workflow Status (with event) Documentation Status GitHub last commit (alpha) PyPI - Downloads

Byron is a source code fuzzer designed to support assembly and high-level languages. It starts by generating a set of random programs, which are then iteratively improved by an evolutionary algorithm. Internally, it encodes candidate solutions as typed, directed multigraphs, and can effectively handle complex, realistic structures containing local and global variables, conditional and looping statements, and subroutines.

Programs can be evaluated using a user-defined Python function or an external tool, such as an interpreter or a simulator. Different types of parallelization are supported out of the box, from simple multithreading to the creation of temporary directories where multiple subprocesses are concurrently spawned.

⚠️ Byron is currently in alpha and under active development

Installation

As simple as

pip install --upgrade byron

A few dependencies can enhance Byron functionalities, but are not strictly required. You can get them all with

pip install --upgrade "byron[full]"

Documentation

None yet, but some HOWTO's and examples are available in the development repo.

Contacts

License

Copyright (c) 2023-24 Giovanni Squillero and Alberto Tonda
Byron is free and open-source software, and it is distributed under the permissive Apache License 2.0.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

byron-0.8a1.dev66.tar.gz (66.5 kB view details)

Uploaded Source

Built Distribution

byron-0.8a1.dev66-py3-none-any.whl (122.2 kB view details)

Uploaded Python 3

File details

Details for the file byron-0.8a1.dev66.tar.gz.

File metadata

  • Download URL: byron-0.8a1.dev66.tar.gz
  • Upload date:
  • Size: 66.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Windows/11

File hashes

Hashes for byron-0.8a1.dev66.tar.gz
Algorithm Hash digest
SHA256 ed759f45168d87cdad2700f7fbcb3d1e91a238ba5ad394353811603fa00479d3
MD5 f0cba271f3ab026c9da3cbfa760e2a41
BLAKE2b-256 a2273e40f13356fb4b52aa16eb5703f502bd3a0a494afcddc9120ada9c42c4b9

See more details on using hashes here.

File details

Details for the file byron-0.8a1.dev66-py3-none-any.whl.

File metadata

  • Download URL: byron-0.8a1.dev66-py3-none-any.whl
  • Upload date:
  • Size: 122.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Windows/11

File hashes

Hashes for byron-0.8a1.dev66-py3-none-any.whl
Algorithm Hash digest
SHA256 531622cca13116186f1dbeb49d856af896882405caf80a8fccdd488ba83b6e15
MD5 82146cad18e22ac39d2f42acebe20270
BLAKE2b-256 2d0f3ef8b5d3978ad496ccbdb9b433203477823a2fbcc59088c40409e5718df2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page