1 - Introduction
1.1 - Concept
1.2 - How taint
1.2.1 - Dynamic analysis
1.2.2 - Static analysis
1.2.3 - Dynamic or Static ?
1.3 - Some problematic
1.3.1 - Byte or bits ?
2 - Simple taint a memory area
2.1 - Catch the syscalls
2.2 - Catch the LOAD and STORE instructions
2.3 - Output
3 - Spread the taint
3.1 - Requirement
3.2 - Memory spread
3.3 - Registers spread
3.4 - Output
4 - Follow your data
4.1 - Requirement
4.2 - Output
5 - Detect a use after free vulnerability
5.1 - Via obsolete stack frame
5.2 - Classical use after free
5.2.1 - Methodologie
5.2.2 - Pin API - Symbols
5.2.3 - Test on a C based program
5.2.4 - Test on a C++ based program
6 - Detect pointer utilization without check
6.1 - Via pattern matching
6.2 - Output
7 - Conclusion
7.1 - Taint analysis and pattern matching with Pin
7.2 - References
7.2.1 - Web references
7.2.2 - My pin tool sources
7.3 - Special Thanks