taint-analysis

Track untrusted data flow from sources to sinks in Python code.

17|2|Updated Feb 16, 2026
One-click install
npx skills add https://github.com/rainoftime/pl-skills --skill taint-analysis-rainoftime
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: taint-analysis
Source: https://github.com/rainoftime/pl-skills/tree/main/taint-analysis
Command: npx skills add https://github.com/rainoftime/pl-skills --skill taint-analysis-rainoftime

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires dataflow-analysis-framework, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill identifies potential security vulnerabilities by tracking the flow of untrusted data through a program, helping to prevent security breaches.

Core Features & Use Cases

  • Source Tracking: Identifies origins of untrusted input (e.g., user input, network data).
  • Taint Propagation: Follows how tainted data moves through variables and operations.
  • Sink Detection: Flags dangerous operations where tainted data could cause harm (e.g., database queries, command execution).
  • Sanitizer Handling: Recognizes functions that clean tainted data, preventing false positives.
  • Use Case: Detect if user-provided input could be used in a SQL query without proper validation, preventing SQL injection attacks.

Quick Start

Use the taint-analysis skill to find vulnerabilities in the provided Python code.

Frequently Asked Questions about taint-analysis

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How does taint analysis detect security vulnerabilities in source code?

Static taint analysis detects security vulnerabilities by tracking the flow of untrusted data from sources to sinks. It analyzes program control flow and data dependencies to identify potential injection flaws, input validation issues, and information leaks.

How do I find SQL injection flaws caused by unvalidated user input?

You can find SQL injection flaws by tracking untrusted user input to database query sinks without passing through a sanitizer. This process flags dangerous operations where tainted data could cause harm if used without proper validation.

Do I need a dataflow analysis framework to track information flow for security?

Yes, a dataflow analysis framework is required to track information flow for security. The framework models program execution and identifies tainted paths across variables and operations during static analysis.

Can static analysis recognize functions that clean untrusted data to prevent false positives?

Yes, static analysis can recognize sanitizers that clean untrusted data to prevent false positives. Sanitizer handling identifies cleaning functions to ensure tainted data reaching sinks through these operations does not trigger a vulnerability alert.

What is the best way to detect information leaks and injection flaws in Python code?

The best way to detect information leaks and injection flaws in Python code is performing static taint analysis. This approach tracks untrusted network data and user input through data dependencies to identify potential security breaches.