minemu icon indicating copy to clipboard operation
minemu copied to clipboard

c or c++ for taint analysis

Open Waterman178 opened this issue 5 years ago • 2 comments

Is there a taint analysis algorithm implemented by c or c++?And it supports backward and forward analysis.

Waterman178 avatar Aug 09 '19 14:08 Waterman178

The taint propagation code is inserted directly as machine code by the just-in-time compiler/translator.

Minemu does not do forward or backward slicing, but you may be able to implement it on top of minemu.

There's a branch which I changed to be able to find out where which bytes from an input ended up, but it is very much quickly hacked together: https://github.com/brainsmoke/minemu/compare/hacked-up-count-cmp

Sadly, only 32 bit x86 is supported by Minemu, and it won't run on most modern Linux distros, since the compiler emulates a CPU without SSE instructions (so minemu can use those.) Most distros now generate code which use SSE registers.

brainsmoke avatar Aug 10 '19 18:08 brainsmoke

I am always looking for a debugger that supports system-wide taint analysis.but I only found free tools like panda.Unfortunately, its performance is too bad.When I run some large software in the vm, the whole system is very slow, I can't debug it at all.Finally I found a commercial tool. It is called tetrane.But I asked some people, they said that this tool is not as high-performance as it is advertised.I don't know if there is a debugger that supports full-system taint analysis on the market, and if you run Firefox, the system won't slow down.In addition, I am looking for an open source project, which is implemented by c or c++, and it support forward and backward taint analysis.I found an open source ida plugin. It's called bincat, but it's not c language, I studied it for a few days, headache, and couldn't understand.If you know any information, please let me know, thank you.

Waterman178 avatar Aug 20 '19 04:08 Waterman178