Bug 1400513 - u2f-hid-rs: fuzzers should use a deterministic cmd byte r=jcj
This commit is contained in:
Родитель
e3919dce4b
Коммит
2ea634cd61
Двоичный файл не отображается.
Двоичные данные
fuzz/corpus/u2f_read/3e28ec02ceb803efa105dc82fcfc9cb4014d7ced
Двоичные данные
fuzz/corpus/u2f_read/3e28ec02ceb803efa105dc82fcfc9cb4014d7ced
Двоичный файл не отображается.
Двоичные данные
fuzz/corpus/u2f_read/60c1a897bef5145eb977461d13f789e1ddfa4a69
Двоичные данные
fuzz/corpus/u2f_read/60c1a897bef5145eb977461d13f789e1ddfa4a69
Двоичный файл не отображается.
Двоичный файл не отображается.
Двоичные данные
fuzz/corpus/u2f_read/7f960b178bcf3adf082da7c632b4e1366ba22274
Двоичные данные
fuzz/corpus/u2f_read/7f960b178bcf3adf082da7c632b4e1366ba22274
Двоичный файл не отображается.
Двоичный файл не отображается.
Двоичные данные
fuzz/corpus/u2f_read/a22d2b1daa9483abc026fa2f75290aa51be59ca9
Двоичные данные
fuzz/corpus/u2f_read/a22d2b1daa9483abc026fa2f75290aa51be59ca9
Двоичный файл не отображается.
Двоичный файл не отображается.
Двоичный файл не отображается.
|
@ -4,10 +4,8 @@
|
|||
|
||||
#![no_main]
|
||||
#[macro_use] extern crate libfuzzer_sys;
|
||||
extern crate rand;
|
||||
extern crate u2fhid;
|
||||
|
||||
use rand::{thread_rng, Rng};
|
||||
use std::{cmp, io};
|
||||
|
||||
use u2fhid::{CID_BROADCAST, HID_RPT_SIZE};
|
||||
|
@ -59,7 +57,10 @@ impl<'a> U2FDevice for TestDevice<'a> {
|
|||
}
|
||||
|
||||
fuzz_target!(|data: &[u8]| {
|
||||
let mut dev = TestDevice::new(data);
|
||||
let cmd = thread_rng().gen::<u8>();
|
||||
let _ = sendrecv(&mut dev, cmd, data);
|
||||
if data.len() > 0 {
|
||||
let cmd = data[0];
|
||||
let data = &data[1..];
|
||||
let mut dev = TestDevice::new(data);
|
||||
let _ = sendrecv(&mut dev, cmd, data);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -4,10 +4,8 @@
|
|||
|
||||
#![no_main]
|
||||
#[macro_use] extern crate libfuzzer_sys;
|
||||
extern crate rand;
|
||||
extern crate u2fhid;
|
||||
|
||||
use rand::{thread_rng, Rng};
|
||||
use std::{cmp, io};
|
||||
|
||||
use u2fhid::{CID_BROADCAST, HID_RPT_SIZE};
|
||||
|
@ -60,8 +58,11 @@ impl U2FDevice for TestDevice {
|
|||
}
|
||||
|
||||
fuzz_target!(|data: &[u8]| {
|
||||
let mut dev = TestDevice::new();
|
||||
let cmd = thread_rng().gen::<u8>();
|
||||
let res = sendrecv(&mut dev, cmd, data);
|
||||
assert_eq!(data, &res.unwrap()[..]);
|
||||
if data.len() > 0 {
|
||||
let cmd = data[0];
|
||||
let data = &data[1..];
|
||||
let mut dev = TestDevice::new();
|
||||
let res = sendrecv(&mut dev, cmd, data);
|
||||
assert_eq!(data, &res.unwrap()[..]);
|
||||
}
|
||||
});
|
||||
|
|
Загрузка…
Ссылка в новой задаче