Skip to content

Conversation

@vyavdoshenko
Copy link
Contributor

Closes: #5712
Depends on: romange/container-foundry#24

Improves the AFL++ fuzzing infrastructure to increase crash detection effectiveness.

Changes:

Fuzzing Configuration (run_fuzzer.sh):

  • Reduced timeout from 10s to 500ms for faster iteration
  • Added CMPLOG mode (-l 2) for automatic command discovery
  • Added memory limit (4GB)
  • Set AFL_HANG_TMOUT=60000 to avoid false positive hangs
  • Disabled dangerous commands: SHUTDOWN, DEBUG, FLUSHALL, FLUSHDB

Socket Timeout (dfly_main.cc):

  • Increased socket timeout from 100ms to 2s to allow complex commands to complete

New Seed Files:

  • Added new seeds covering

Dictionary Expansion (resp.dict):

  • Added new entries: scripting commands, bitfield operations, sorted set operations, edge case numbers, JSON paths, RESP protocol edge cases, Lua patterns

Documentation (FUZZING.md):

  • Added guide for AFL_PERSISTENT_RECORD usage
  • Documented crash replay procedures for stateful bugs

GitHub Actions:

  • Updated container image to ghcr.io/romange/ubuntu-dev:24-afl with pre-built AFL++
  • Added AFL_PERSISTENT_RECORD=1000 for crash replay support
  • Simplified AFL++ verification step

@vyavdoshenko vyavdoshenko self-assigned this Dec 5, 2025
Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 1 suggestion posted.

Comment augment review to trigger a new review at any time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[AFL++] Crash management and local reproduction tooling

2 participants