tainttracking
Tainttracking, often written as taint tracking, is a family of information flow analysis techniques designed to track how data from untrusted sources propagates through a program. The objective is to detect security vulnerabilities and privacy leaks by identifying cases where tainted input can influence sensitive operations without proper sanitization.
There are static taint analysis, dynamic taint tracking, and hybrid approaches. Static taint analysis examines source
Taint sources include user input, network data, environment variables, cookies, and other untrusted inputs. Sinks comprise
Implementation methods vary: runtime libraries that propagate taint, instrumentation of binaries or source code, and language-level
Limitations include performance overhead, possibility of false positives and negatives, and difficulties handling implicit information flows