-
Notifications
You must be signed in to change notification settings - Fork 53
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
Heap-buffer-overflow in function __zzip_parse_root_directory() at zzip/zip.c:539 #164
Comments
I can not reproduce it. Did you test with master / 0.13.76 ? |
Yes,I test it with the newest version. |
Well, then I must assume there is some information missing. I would have liked to check before the next release but I guess it can wait a bit. |
* Fix the issue gdraheim#164 where extra_ptr could be alocated without enough bytes to check the magic value. Signed-off-by: vlefebvre <valentin.lefebvre@suse.com>
I am also able to reproduce the issue. I propose, with my PR to check if the u_extras is at least the same size of the zzip_extra struct. |
* Fix the issue gdraheim#164 where extra_ptr could be alocated without enough bytes to check the magic value. Signed-off-by: vlefebvre <valentin.lefebvre@suse.com>
probably fixed in v0.13.78 |
Describe:
A heap-buffer-overflow was discovered in zziplib v0.13.77. The issue is being triggered in function __zzip_parse_root_directory() at zzip/zip.c:539.Attackers may exploit this vulnerability to execute and cause a DOS attack.
Reproduce:
Tested in Ubuntu 22.04
First,Compile the program with address sanitizer:
AFL_USE_ASAN=1 CC=afl-clang-fast CXX=afl-clang-fast++ cmake ..
Then the poc is inputed:
/home/zziplib/build/bins/unzzip -l /home/zziplib/build/fuzz_out/default/crashes/id:000000,sig:06,src:000083,time:235075,execs:252387,op:havoc,rep:2
ASAN Reports:
and this is the code at the bug address:
Poc
Poc file is here
Fuzzer
Fuzzer is AFL.
The text was updated successfully, but these errors were encountered: