agentleFS
rainoftimerainoftime/pl-skills/information-flow-analyzer/SKILL.md

information-flow-analyzer

Skill17 starsChanged 9 months agoApache-2.0View on GitHub

Analyze information flow through programs to enforce security policies and prevent data leaks.

The file

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 3 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Test with both confidentiality and integrity

    line 47
  2. Distinctive:

    When security is not a concern

    line 85
  3. Distinctive:

    When dynamic checks suffice

    line 87

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Information Flow Analyzer

Information flow analysis tracks how data flows through programs, enabling security policies like confidentiality (no leaks) and integrity (no corruption from untrusted sources).

When to Use This Skill

  • Enforcing data confidentiality
  • Preventing information leaks
  • Implementing taint tracking
  • Security audits
  • Building secure systems

What This Skill Does

  1. Security Labels: Assign security levels to data
  2. Flow Tracking: Track how labels propagate
  3. Policy Enforcement: Block disallowed flows
  4. Declassification: Allow controlled release of secrets
  5. Implicit Flows: Handle control-flow-based leaks

Key Concepts

ConceptDescription
Security LabelClassification level of data
Explicit FlowDirect assignment of secret to public
Implicit FlowControl-flow-based leak
NoninterferenceSecret inputs don't affect public outputs
DeclassificationControlled release of secrets
TaintMark data from untrusted sources

Tips

  • Handle implicit flows (control flow)
  • Model declassification carefully
  • Consider timing channels
  • Test with both confidentiality and integrity
  • Document security assumptions

Common Use Cases

  • Preventing data leaks
  • Taint tracking in web apps
  • Secure information systems
  • Compliance (HIPAA, GDPR)
  • Security audits

Related Skills

  • taint-analysis - Dynamic taint tracking
  • type-checker-generator - Security type systems
  • capability-system - Capability-based security
  • smt-solver-interface - Verify security properties

Canonical References

ReferenceWhy It Matters
Denning "A Lattice Model of Secure Information Flow"Original paper
Volpano et al. "A Sound Type System for Secure Flow"Type-based analysis
Sabelfeld, Myers "Language-Based Information-Flow Security"Comprehensive survey

Tradeoffs and Limitations

Approach Tradeoffs

ApproachProsCons
Static typingCompile-timeConservative
Dynamic taintPreciseRuntime overhead
HybridBest of bothComplex

When NOT to Use This Skill

  • When security is not a concern
  • Performance-critical code
  • When dynamic checks suffice

Limitations

  • Covert channels (timing, termination)
  • Side channels
  • Approximation may reject safe programs

Assessment Criteria

A high-quality implementation should have:

CriterionWhat to Look For
SoundnessNo information leaks
Implicit FlowsHandles control flow
PrecisionFew false positives
PolicyConfigurable security policy

Quality Indicators

✅ Good: Sound, handles implicit flows, configurable ⚠️ Warning: Misses implicit flows ❌ Bad: Allows explicit leaks, no policy support

Research Tools & Artifacts

Real-world information flow tools:

ToolWhy It Matters
JifJava information flow
FlowlightFacebook's flow analysis
SPARKVerified information flow
Frama-CC information flow
TaintDroidAndroid taint tracking

Key Systems

  • Jif: Princeton's security-typed language
  • Flowlight: Production taint analysis

Research Frontiers

Current information flow research:

DirectionKey PapersChallenge
Dynamic"Dynamic Information Flow"Precision
Channels"Covert Channels"Timing channels
Quantitative"Quantitative IF"Leakage amount

Hot Topics

  1. ML for information flow: Learning flow patterns
  2. Differential privacy: Quantitative leakage

Implementation Pitfalls

Common information flow bugs:

PitfallReal ExamplePrevention
Implicit flowBranch on secretTrack PC label
TerminationLoop count leaksNon-terminating loops
TimingTiming channelConstant-time

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.