-
Notifications
You must be signed in to change notification settings - Fork 444
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’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DoS risk: panic "index out of bounds" while building very small regex #464
Comments
I was stumped for a moment because I couldn't reproduce it with the following program: extern crate regex;
use regex::Regex;
fn main() {
let re = Regex::new(r"a{\r\n");
println!("{:?}", re);
} Running gives a syntax error, not a panic, as expected:
But it seems the issue here is that I used a raw string. If I use However you found this, it's definitely a legitimate bug, and I would consider it trophy worthy. :-) |
A fix should now be on crates.io in |
Awesome, thanks @BurntSushi ! |
@PaulGrandperrin nice!! here's the trophy update - google/honggfuzz@ef1aa31#diff-04c6e90faac2675aa89e2176d2eec7d8 |
Hi,
will cause
playground
I found it while porting https://github.com/rust-fuzz/targets to
afl.rs
andhonggfuzz
(it's currently only usinglibFuzzer
).It's funny because libFuzzer seems unable to find it while honggfuzz finds it reliably in just a couple of seconds and AFL in a couple of dozen of minutes.
Regexes sometimes are built from untrusted input so I guess it could be used for denial of service.
@robertswiecki : I found it with
honggfuzz
first, is that trophy worthy?The text was updated successfully, but these errors were encountered: