or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/atheris@2.3.x
tile.json

tessl/pypi-atheris

tessl install tessl/pypi-atheris@2.3.0

A coverage-guided fuzzer for Python and Python extensions based on libFuzzer

Agent Success

Agent success rate when using this tile

91%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.28x

Baseline

Agent success rate without this tile

71%

rubric.jsonevals/scenario-7/

{
  "context": "This criteria evaluates how well the engineer uses Atheris's string method hooking capability to enable effective fuzzing of string comparison operations. The focus is on proper usage of the enabled_hooks interface and FuzzedDataProvider to discover magic string prefixes and suffixes.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "String hook enabled",
      "description": "Uses atheris.enabled_hooks.add() to enable the \"String\" hook for tracking string comparison operations like startswith() and endswith()",
      "max_score": 25
    },
    {
      "name": "FuzzedDataProvider usage",
      "description": "Uses atheris.FuzzedDataProvider to convert raw fuzzing bytes into structured string data for testing",
      "max_score": 15
    },
    {
      "name": "Setup() called correctly",
      "description": "Calls atheris.Setup() with sys.argv and the TestOneInput callback to initialize the fuzzer",
      "max_score": 15
    },
    {
      "name": "Fuzz() called",
      "description": "Calls atheris.Fuzz() to start the fuzzing loop after setup is complete",
      "max_score": 10
    },
    {
      "name": "String comparison operations",
      "description": "The validate_input function uses str.startswith() and str.endswith() methods which are instrumented by the String hook",
      "max_score": 20
    },
    {
      "name": "Proper data flow",
      "description": "TestOneInput properly creates FuzzedDataProvider from input bytes, generates strings, and passes them to validate_input",
      "max_score": 15
    }
  ]
}