Skip to content

Use the Scudo hardened allocator in example fuzzers #3541

@langston-barrett

Description

@langston-barrett

The Scudo allocator (which is part of LLVM) "aims at providing additional mitigation against heap based vulnerabilities, while maintaining good performance". It is the default allocator in Android, and recently caught a near-miss memory corruption bug. There is an easy-to-use Rust binding, usage is as simple as:

#[global_allocator]
static SCUDO_ALLOCATOR: GlobalScudoAllocator = scudo::GlobalScudoAllocator;

LibAFL contains considerable amounts of unsafe code. Using this allocator in the example fuzzers might help catch additional memory corruption bugs during testing.

Just a suggestion, feel free to close if you don't like the idea!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions