-
Notifications
You must be signed in to change notification settings - Fork 47
There was an error when VUzzer reads the *.names and *.pkl files. #17
Copy link
Copy link
Open
Description
When I start VUzzer to fuzz base64 from LAVA-M, it shows that:
root@moonlight:~/vuzzer64/fuzzer-code# python runfuzzer.py -s '/root/target_of_lava/LAVA-M/base64 -d %s' -i '/root/vuzzer64/fuzzer-code/datatemp/b64' -w '/root/idafiles/base64.pkl' -n '/root/idafiles/base64.names'
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "runfuzzer.py", line 704, in main
gau.prepareBBOffsets()
File "/root/vuzzer64/fuzzer-code/gautils.py", line 394, in prepareBBOffsets
tdata=pickle.load(tFD)
File "/usr/lib/python2.7/pickle.py", line 1384, in load
return Unpickler(file).load()
File "/usr/lib/python2.7/pickle.py", line 864, in load
dispatch[key](self)
File "/usr/lib/python2.7/pickle.py", line 1096, in load_global
klass = self.find_class(module, name)
File "/usr/lib/python2.7/pickle.py", line 1130, in find_class
__import__(module)
ImportError: No module named __builtin__
After my analysis, the reason is that the base64.names and base64.pkl are generated by IDA using text mode on Windows. In this mode on Windows, \n will be transferred as \r\n.
According to https://stackoverflow.com/questions/46350566/pickle-importerror-no-module-named-builtin, we just need to convert the \r\n into \n in the *.names and *.pkl.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels