Available policies

These list the policy that are currently available in our fuzzing. The policies can be combined to get more complex policies.

ClassPolicyUsageDescription
GenericNo Policytauri-fuzz-policies::no_policy()No functions are monitored and this will not provoke crashes. Used if your fuzz target can inherently crash and you just want to investigate those.
Rule HelperBlock on entrytauri-fuzz-policies::block_on_entry()The function monitored with this rule will just automatically crash when called.
File System policiesNo file accesstauri-fuzz-policies::file_policy::no_file_access()Any access to file system will provoke a crash.
Read only accesstauri-fuzz-policies::file_policy::read_only_access()Any access to file system with write access will provoke a crash.
No access to filenamestauri-fuzz-policies::file_policy::no_access_to_filenames(filenames)Any access to the files given as parameter will provoke a crash.
Child processInvocation of child process through Rust std is blockedtauri-fuzz-policies::external_process::block_on_entry()Any child process created through Rust std::process is blocked
Invocation of child process through Rust std is monitoredtauri-fuzz-policies::external_process::block_monitored_binaries(binaries)Any child process created through Rust std::process is monitored and specified binaries are blocked
Block any child process created through Rust std returning an errortauri-fuzz-policies::external_process::block_rust_api_return_error()Any child process created through Rust std::process will be blocked if returning an error status
Block any child process returning an errortauri-fuzz-policies::external_process::block_on_libc_wait_error_status()Any child process created and waited with wait, waitpid or waitid will be blocked if returning an error status
GenericBlock any calls to the host system that returns an errortauri-fuzz-policies::no_error_policy()We plan to monitor: child processes, file system and networking (ongoing work)