Onefuzz Versions Save

A self-hosted Fuzzing-As-A-Service platform

5.12.0

1 year ago

5.12.0

Added

  • Deployment: Add --use_dotnet_agent_functions to deploy.py. #2292
  • Service: Added Logging to az_copy calls for improved failure tracking. #2303
  • Service: Added Logging when sending ADO Notifications #2291
  • Service: Additional C# migration work. #2183, #2296, #2286, #2282, #2289

Changed

  • CLI: Changed the CLI's scaleset commands size positional parameter to max_size to better communicate its use in auto scaling properties. #2293

Fixed

  • Deployment: Fixed set_admins.py script. #2300
  • Service: Include serialization options when sending event message. #2290

5.11.0

1 year ago

5.11.0

Added

Changed

  • Agent: Increase the size of the output buffer when collecting logs from agent. #2166
  • Agent/Supervisor/Proxy: Updated multiple third-party Rust dependencies. #2270

Fixed

  • Service: Use a singleton for logging to reduce memory use. #2247
  • Service: Use a singleton for the EntityConverter. #2267
  • Service: Add retries when creating a connection to a repro machine for debugging on windows. #2252
  • Deployment: Fix deploy to use the correct date formats when querying MSGraph. #2258
  • Service: Sync the Autoscale table to current scaleset settings. #2255
  • Service: Fixed the pool comparison in the scheduler. #2260
  • CLI: Fixed the way job and task state enumerations are compared. #2004
  • Service: Clone the JsonSerializerOptions instead of just modifying it. #2280
  • Service: Fixed a NullReferenceException in CreateQueue. #2283

5.10.0

1 year ago

5.10.0

Added

  • Recommendation in getting-started.md that OneFuzz users include a .onefuzz file in their project root directory for security tool detection #2236
  • Agent: New libfuzzer_dotnet_fuzz task #2221

Changed

  • CLI: Updated default Windows VM host image. #2226
  • Agent: Modified LibFuzzer struct to own its environment and option data #2219
  • Agent: Factor out generic LibFuzzer task #2214
  • Service: Enable C# migrated TimerRetention, TimerDaily, and containers functions #2228, #2220, #2197
  • Service: Finished migrating TimerRepro to C# #2222, #2216, #2218
  • Service: Change instances of NotImplementedException to more accurately be NotSupportedException exceptions #2234
  • Service: Migrated Tasks, Notifications, add_node_ssh_key, and Proxy functions to C# #2233, #2188, #2193, #2206, #2200

Fixed

  • Service: Update the autoscale settings to allow a VM scaleset to scale down to zero nodes and prevent new nodes from spinning up when in the shutdown state. #2232, #2248
  • Service: Add a missing function call to properly queue webhook events in WebhookOperations #2231
  • Service: Add a missing job state transition to the Task implementation. #2202
  • Service: Fixed the return value in the C# implementation when associating a subnet with the NSG. #2201
  • Service: Changed log level from Error to Info in TimerProxy. #2185
  • Service: Fixed TimerTasks config bugs in the C# port. #2196

5.9.0

1 year ago

5.9.0

Added

  • Agent: Depend on SharpFuzz 2.0.0 package in the LibFuzzerDotnetLoader project. #2149
  • Test: Added GoodBad C# example project to use with the LibFuzzerDotnetLoader integration tests. #2148

Changed

  • Service: Implemented the containers function in C#. #2078
  • Service/Build: Reuse agent build artifacts if nothing in the agent source tree has changed. This is to speed up dev builds and will not impact official releases. #2115
  • CLI: Default autoscale minimum value to 0. This allows a scaleset to scale-in until there are zero nodes running when no work is pending in the queue. This is important to ensure VM's have the latest patches when running. #2112, #2162
  • Service: Initial work to migrate TimerRepro function to C#. #2168
  • Service/CLI: Remove support for pre 3.0.0 style authentication. #2173
  • Agent/Supervisor/Proxy: Updated multiple third-party Rust dependencies. #2164, #2056, #2175, #2127
  • Service: Updated C# dependencies. #2181
  • Service: When getting information about a task, ignore the task's state if the job_id is specified. #2171

Fixed

  • Agent: Drop the global event sender when closing the telemetry channel to ensure all events are flushed. #2125

5.8.0

1 year ago

5.8.0

Added

  • Service: Add correct routes and auth to agent C# functions. #2109
  • Service: Port agent_registration to C#. #2107
  • Agent: Add the dotnet_coverage task. #2062
  • Agent: Add multiple ways to specify LibFuzzerDotnetLoader targets. #2136
  • Agent: Add logging to LibFuzzerDotnetLoader. #2141
  • Documentation: Added documentation for LibFuzzerDotnetLoader. #2142

Changed

  • Service: Add caching to C# storage implementation so repeated queries do not get throttled. #2102
  • Service: Remove unused poolname validation. #2094
  • Service: Make the hostbuilder async in C#. #2122
  • Service: Updated the scaling policy for the App Functions. #2140
  • Agent/Supervisor/Proxy: Updated multiple third-party Rust dependencies. #2022
  • Agent: Remove incomplete macOS support. #2134, #2135

Fixed

  • Service: Include State filter when searching for expired tasks and jobs. #2138
  • Service: Fix reported TLS errors. #2087
  • Service: Change the upload_file method to use the Azcopy command by default for robustness and fall back to the Azure Python SDK implementation if needed. This also addresses issues where low bandwidth connections timeout due to not being able to handle multiple concurrent upload streams. #1556
  • Service: Update the log SAS URL to last as long as the job duration. #2116, #2121
  • Service: Fixed a number of issues in the C# implementation of TimerProxy. #2133
  • Agent: Fix a race condition when monitoring files on the VM. #2105

5.7.1

1 year ago

5.7.1

Fixed

This a hotpatch to the 5.7.0 release fixing SAS URL generation which had the potential to cause tasks to fail. #2116

5.7.0

1 year ago

5.7.0

Added

  • Agent: Add NodeState to Node Heartbeat to better track the current state of nodes in the system #2024, #2053
  • Service: Ported existing Python functions to C# #2061, #2072, #2076, #2066
  • Service: Enabling ported C# functions for QueueNodeHeartbeat, QueueTaskHeartbeat, and QueueSignalREvents #2046, #2047
  • Service: Add null analysis attributes to service result types to make it easier to check and use the various existing result types #2069
  • Service: Add dotnet editorconfig underscores naming rule for private fields to start with an underscore, ensuring OmniSharp will generate conformant names by default #2070

Changed

  • Agent: Update onefuzz-agent clap to version 3.2.4 #2049
  • Agent: Added scripts to install dotnet on windows and ubuntu fuzzing VMs #2038
  • Deployment: Update Getting Started instructions for deploy.py's file permissions. #2030

Fixed

  • CLI: Error output to specify that the tools are missing locally, not on the repro VM #2036
  • Service: Handle service event messages that are too big to fit in a queue message. #2020
  • Service: Removing unnecessary /obj/ directory. #2063

5.6.0

1 year ago

5.6.0

Added

  • Service: Add Function App settings to Bicep template and deploy.py. #1973
  • Agent: Add a timestamp to agent log to make it easier to correlate events. #1972

Changed

  • Agent/Supervisor/Proxy: Rename the supervisor process from onefuzz-supervisor to onefuzz-agent. #1989
  • Agent/Supervisor/Proxy: Rename the task executor that runs on the VM from onefuzz-agent to onefuzz-task. #1980
  • Agent/Supervisor/Proxy: Ensure GlobalFlag registry value is initialized for targets. #1960
  • Agent/Supervisor/Proxy: Enable full backtraces on Rust panics. #1959
  • Agent/Supervisor/Proxy: Updated multiple third-party Rust dependencies. #2003, #2002, #1999, #1992, #1986, #1983, #1982, #1981, #1985, #1974, #1969, #1965
  • CLI/Service: Updated multiple first-party and third-party Python dependencies. #2009, #1996

Fixed

  • Agent: Remove stray print statement from the task_logger. #1975
  • Agent: Fix local coverage definition by removing a duplicated command line parameter. #1962
  • Service: Fix Instance Config and Management Logic. #2016

5.5.0

1 year ago

5.5.0

Added

  • Service: Added new functionality to the service port from Python to C#. #1924, #1938, #1946, #1934

Changed

  • Documentation: Update coverage filtering docs. #1950
  • Agent: Allow the agent to skip reporting directories. #1931
  • Agent/Supervisor/Proxy: Updated multiple third-party Rust dependencies. #1935
  • CLI: Deprecate libfuzzer_coverage task. #1944
  • CLI: Use consistent logger names. #1945
  • Service: Updated functionality to the service port from Python to C#. #1922, #1925, #1947

Fixed

  • Agent: Allow old reports to be parsed. #1943
  • Agent: Remove transitive OpenSSL dependency. #1952
  • Agent: Ensure GlobalFlag registry value is initialized when checking library dependencies. #1960
  • Service: Allow old reports to be parsed. #1940

5.4.1

2 years ago

5.4.1

This a hotpatch to the 5.4.0 release fixing the parsing failures from old crash reports.

Fixed

  • Agent: Allow old reports to be parsed #1943
  • Service: Allow old reports to be parsed #1940