shellphish / driller

Driller: augmenting AFL with symbolic execution!
BSD 2-Clause "Simplified" License
901 stars 162 forks source link

Exception AttributeError: Uc is NoneType? #30

Open 0xling opened 7 years ago

0xling commented 7 years ago

I test driller by the example `import driller

d = driller.Driller("./CADET_00001", # path to the target binary "racecar", # initial testcase "\xff" * 65535, # AFL bitmap with no discovered transitions )

new_inputs = d.drill()

print repr(new_inputs)`

I get the new_inputs successfully. but It generate a error output. It may the Uc is NoneType?

WARNING | 2017-03-27 04:51:05,224 | tracer.cachemanager.LocalCacheManager | loading state from cache file /tmp/CADET_00001-8955a29d51c1edd39b0e53794ebcf464.tcache set([((7, 134513087, 134513100), '^\xfe\xfe\xfe\xfe^\xfe'), ((7, 134513409, 134513424), '^\xff\x01\xfe\xf7\xa1\xfe'), ((7, 134513100, 134513087), '^\x01\x01\xfe\xfe^\xfe'), ((7, 134513087, 134513100), '\xfe\x01\x01\xfe\xfe\xfe\xfe'), ((7, 134513100, 134513087), '\xfe\xfe\xfe\xfe\xfe\xfe\xfe'), ((7, 134513100, 134513087), '^\xfe\x01\xfe\xfe^\xfe'), ((7, 134513087, 134513100), '\xfe\x01\xfe\xfe\xfe\xfe\xfe'), ((7, 134513210L, 134513263), '\x00\x00\x00\x00\x00\x00\x00'), ((7, 134513100, 134513087), '^\x01\xfe\xfe\xfe^\xfe'), ((7, 134513087, 134513100), '\xfe\xfe\x01\xfe\xfe\xfe\xfe'), ((7, 134513719L, 167772168), '^\xff\x01\xfe\xf7\xa1\xfe'), ((7, 134513348, 134513388), '\xfe\xfe\xfe\xfe\xfe\xfe\xfe'), ((7, 134513719L, 167772168), '\x00\x00\x00\x00\x00\x00\x00')]) Exception AttributeError: "'NoneType' object has no attribute 'release_handle'" in <bound method UcCleanupManager._finalizer of <unicorn.unicorn.UcCleanupManager object at 0x7f8769321090>> ignored

salls commented 7 years ago

It looks like it's an error during cleanup, i.e. exiting python. I would ignore it

rhelmot commented 7 years ago

Doesn't even have to be while exiting python, just in a destructor. But yes, this is not a showstopper. Execution should continue and you should still get results.