qa-assets icon indicating copy to clipboard operation
qa-assets copied to clipboard

Add initial wallet_bdb_parser corpus

Open Sjors opened this issue 2 years ago • 4 comments

Generated on Ubuntu 23.04 using Clang 15.0.7 and libFuzzer --with-sanitizers=fuzzer

Generated by running the wallet_bdb_parser target in https://github.com/bitcoin/bitcoin/pull/26606 for about a day on AMD Ryzen 9 7950X.

I used test/fuzz/test_runner.py --m_dir which reduced the inputs from 1210 (200KB) to 116 (2 KB).

I wonder if it makes sense to manually generate some inputs based on real (testnet) wallets.

Sjors avatar Aug 01 '23 10:08 Sjors

cc @achow101 @thecharlatan

Sjors avatar Aug 01 '23 10:08 Sjors

I wonder if it makes sense to manually generate some inputs based on real (testnet) wallets.

This should be trivially possible by removing the use of ConsumeRandomLengthByteVector/FuzzedDataProvider and replace it with outfile << Span{buffer};

maflcko avatar Aug 01 '23 11:08 maflcko

Pushed a commit that contains a wallet and a crash. Let me know if it's non-trivial to reproduce.

Sjors avatar Aug 02 '23 17:08 Sjors

bda20e7f3777a147f944da4a50b9147e68b7f4b0 produces a UndefinedBehaviorSanitizer for me with https://github.com/bitcoin/bitcoin/pull/26606/commits/a7508fedcb529324bb1009455151800138e09022.

Sjors avatar Aug 03 '23 08:08 Sjors

Are you still working on this?

maflcko avatar Jun 03 '24 14:06 maflcko

Probably not, will the commits up for grabs if someone wants to take a stab.

Sjors avatar Jun 04 '24 15:06 Sjors