nathaniel-bennett / winsharpfuzz Goto Github PK
View Code? Open in Web Editor NEWA fork of SharpFuzz for Windows - .NET fuzzing for IL and mixed-mode C# assemblies
License: MIT License
A fork of SharpFuzz for Windows - .NET fuzzing for IL and mixed-mode C# assemblies
License: MIT License
Hi,
I am currently trying to automate fuzzing of .net dlls with WinSharpFuzz.
I have fuzzed several dlls and always get the same cov (8), ft (8) and corp (1/1b) in the output of libFuzzer.
The dlls are instrumented and the path to the dll is added as hintpath to the project.
WinSharpFuzz is added via dotnet add "pathToProjectFile" package WinSharpFuzz
Im currently running the Fuzzer with: winsharpfuzz --target_path="pathToExe" "pathToTestDir" -print_final_stats=1 -workers=1
There are several file types in the test directory (txt, json, pdf, xml,...).
Does libfuzzer manage to select a suitable testcase based on the coverage?
Edit:
I think the winsharpfuzz-libfuzzer-x64.exe included in the package is not working properly. I have compiled a new one which seems to work.
Hi,
I've discovered this project from looking into SharpFuzz and this project seems to be actively worked on. I've ran into a problem trying to follow the documentation but it appears I can't seem to get this run. When I run the following command: winsharpfuzz --target_path="testingIdea/bin/Debug/netcoreapp3.1/testingIdea.exe" "testcases" -jobs=8
I get the following output:
Executing process...
The application appear to crash/hangs - I'm not too sure what I've been doing wrong. I've been trying to follow your docs and get them to work with this example from SharpFuzz.
Here are my project file if that helps:
Program.cs
using System;
using SharpFuzz;
using System.IO;
namespace Jil.testingIdea
{
class Program
{
static void Main(string[] args)
{
Fuzzer.OutOfProcess.Run(stream => {
try
{
using (var reader = new StreamReader(stream))
{
JSON.DeserializeDynamic(reader);
}
}
catch (ArgumentException) { }
catch (DeserializationException) { }
});
}
}
}
csproj file -
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="SharpFuzz" Version="1.6.2" />
<PackageReference Include="WinSharpFuzz" Version="1.0.0" />
</ItemGroup>
<ItemGroup>
<Reference Include="Jil">
<HintPath>..\..\sharpfuz\Jil.dll</HintPath>
</Reference>
</ItemGroup>
</Project>
Any assistance with this would be a great help - Thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.