-
Notifications
You must be signed in to change notification settings - Fork 74
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
Implement slice/slicing #23
Comments
In semtrax they call this Up-graph and it can be seen here: The idea is to see with instructions modified the taint input. They also implement down-graph. Starting with a taint input, like argv[0] see how this value in use along the program. |
Hi @0ca, I was wondering how is going for slicing? |
Hi @pfsun, right now we are not dedicating too much time to Ponce, we are working in parallel projects. But this functionality should be easy to code, I will try to do it in the next weeks ;) |
|
Thanks! |
Thanks:-) |
@JonathanSalwan I just the sliceExpressions API. It seems the output will not be the backwards sequence, right? For example, the expression is : |
why it's not? |
Original definition:
More info:
http://web.cs.iastate.edu/~weile/cs513x/5.TaintAnalysis2.pdf
The idea is from an instruction get all the previous instructions that modified the values used in the current instr.
This is very useful for exploiting. If you found an input is crashing a program via fuzzing, and you want to know where comes from the values from the registers, memory, you could use that.
They implemented in the past something similar in this paper. But they never released a fully functional version:
https://media.blackhat.com/us-13/US-13-Li-How-to-Grow-a-TREE-Slides.pdf
They show the previous functions involved in the tainting.
The text was updated successfully, but these errors were encountered: