Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate jazzer.js with novel fuzzing engines #117

Closed
jasikpark opened this issue Sep 17, 2022 · 3 comments
Closed

Integrate jazzer.js with novel fuzzing engines #117

jasikpark opened this issue Sep 17, 2022 · 3 comments

Comments

@jasikpark
Copy link

Thanks for working on this project! I'm glad to see something like js-fuzz that is more actively developed 馃憤

I'm currently exploring using this to fuzz prettier formatter parsers, and I was wondering if y'all could provide any insight into how I might make use of https://github.com/googleprojectzero/fuzzilli/blob/main/Docs/HowFuzzilliWorks.md to generate js programs for prettier's babel parser to format.

It's pretty extensively used, so I doubt I'll find easy bugs in it but 馃し

@bertschneider
Copy link
Contributor

Great that you're trying out Jazzer.js!

I didn't know Fuzzilli and I'm also not firm in Swift, so there's probably not much support I can provide. If Swift has some kind of C interop you could try to use a native Node.js addon to call Fuzzilli's CodeGenerators.

Otherwise, you probably would need to write your own code generators based on the provided fuzzer input. @babel/generator already provides nice functionality to turn an AST into code, which should be a good starting point. When doing that you could use the exploreState feedback function to help the fuzzer generate different source code to format. As an example you can have a look at the maze example.

@bertschneider
Copy link
Contributor

As you added a "thumbs up" to my answer I assume this is resolved for now. If you have other questions, please feel free to reopen or create a new issue.

@jasikpark
Copy link
Author

yep, sorry for no response!

i have yet to explore this idea as i haven't worked on jasikpark/fuzz-prettier in a moment / getting Fuzzili running normally was taking me a bit to do, trying to figure out how to set up firefox

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants