Skip to content

v5.0.0

Compare
Choose a tag to compare
@kdharsee-draper kdharsee-draper released this 30 Apr 19:40
· 1 commit to main since this release

New Features:

  • Added Windows support with a new Frida Executor
  • Support for persistent-mode fuzzing with three new features:
    • In-memory test-case delivery
    • Support for SUTs compiled with AFL++-based deferred initialization (AFL_INIT())
    • Support for SUTs compiled with AFL++-based single-process persistence loop (AFL_LOOP(...))
    • Added persistent mode unit tests
  • New DictionaryMutator module that accepts user-specified tokens to use for mutation.
    • Tokens are selected randomly and inserted at random offsets in the testcase buffer
  • New feature in the SaveCorpusOutput module to output mutator information per test case
    • This required changes to SaveCorpusOutput, ConfigInterface, ConfigManager, ModuleFactory, ModuleManager, and each input generator module
  • New TrivialSeedInitialization module to start fuzzing without seeds
  • New VmfTestLib library to aid unit test builds in Experimental/Extension repos

Updates and Bug Fixes:

  • Added a migration guide for VMF 5.0.0
  • Added a check in storage to prevent duplicated deletes of a single entry
  • Fixed a compiler error for an uninitialized variable in AFLForkserverExecutor
  • Fixed an issue with map sizes being off by one in some cases
  • Now supporting AFL++ instrumentation and handshake protocol up to v4.30
  • Changed support for AFL++ cmplog instrumentation to currently only support v4.30
    • We anticipate future code refactors to enable better backwards compatibility.
  • StringsInitialization module updated to produce strings readable by the DictionaryMutator module.
  • Added a configuration option to AFLForkserverExecutor to skip kernel.core_pattern check
  • Minor updates to documentation
    • Fixed broken links
    • Added missing configuration option descriptions
  • Docker changes
    • Updated KLEE docker container signature checks
    • Pinned Dockerfile builds to Clang/LLVM 18
  • Fixed issue in KLEE post-processing script
  • Added UINT64 type to Storage
  • Fixed divide-by-zero error in Grammatron modules
  • Added Windows build support to VmfExtension, VmfExperimental, VmfGovExperimental
  • AFLForkserverExecutor updates:
    • Added config option to skip the kernel coredump pattern check
    • Updates to Unit Tests for AFL++ version compatibility checks
  • Fixed AFLMutator Test
  • Fixed an issue where ConfigManager occasionally loaded vmfVariables out of order

Note: CDMS has not changed since VMF 3.2, so no upgrade is required for VMF 5.0.0

Release binaries SHA256:

  • CDMS.war: 052b61544d9d2c084f2ff3632d2564eb3358cbff95e7aa441c2c9ddf47a00650
  • emptycdms.db: 38788934bef348e0ce77c7a03145c1e969c4092b3505b1f7e98e5c3f8e099813