Skip to content

v4.0.0

Compare
Choose a tag to compare
@ebraunstein ebraunstein released this 18 Jun 16:46
· 3 commits to main since this release

VMF Version 4.0.0
New Features:

  • API Changes to VMF Modules (see docs/migration-4.0.0.md for additional details):
    • ExecutorModule now has access to storage, and should write execution results to storage
    • FeedbackModule no longer directly depends on a specific ExecutorModule
    • InputGenerator now creates the new StorageEntry and passes it to the mutator submodule
    • FormatterModule has been removed
    • New helper methods to retrieve a submodule by name (getXXXSubmoduleByName)
  • API Changes to StorageModule (see docs/migration-4.0.0.md for additional details):
    • Tagging separated from saving
    • Support for temporary/local storage entries
    • New convenience methods to allocation and initialize a buffer in one step
    • Capability to specify a default value for a storage entry field
    • Minor renaming/relocation of functions
  • RedPawn: An input-to-state (I2S) analysis tool comparable to RedQueen (https://www.ndss-symposium.org/wp-content/uploads/2019/02/ndss2019_04A-2_Aschermann_paper.pdf)
  • Config Changes:
    • New configuration option to support a named set of submodules (see vmfClassSet in docs/configuration.md)
    • Storage and controller module configuration options are now references by className/id (to be consistent with other modules)
  • New VmfRand utility function

Updates and Bug Fixes:

  • Additional Linux OS Support:
    • CentOS 8 and 9
    • Kali
    • Oracle Linux 8 and 9
    • RedHat 8 and 9
    • Ubuntu 20 and 22 (Supported in earlier release of VMF as well)
  • DirectoryBasedSeedGenerator now sorts test cases in input directory alphabetically
  • Improved error handling in AFLForkserverExecutor, auto-detection of AFL++ map size
  • Build Changes
    • make vmf-clean target is now included (rebuilds VMF without rebuilding third party dependencies)
    • coremodules renamed to modules
    • VMF framework dependencies are now statically linked, and the required source code is included with VMF
    • VMF no longer directly depends on AFL++ source code
  • Radamsa module removed
  • Minor renaming and restructuring of source code

Note: CDMS has not changed since VMF 3.2, so no upgrade is required for VMF 4.0.0
Release binaries SHA256:

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