30.5 Gefährliche Parameter bei Variablen
- Folgendes wird von Anfang an als kontaminiert betrachtet:
- alle Kommandozeilen-Argumente,
- alle Umgebungs-Variablen,
- Lokalitätsinformationen (locale),
- Resultate einiger Systemaufrufe wie readdir(2) oder readlink(2),
- das gecos-Feld aus der Paßwort-Datei (beim Zugriff über die
getpw*-Prozeduren),
- Resultate von ... und
- alle Eingaben (von Dateien, Netzwerkverbindungen oder anderen Kanälen).
- Eine Variable, die in Abhängigkeit einer kontaminierten Variable gesetzt
wird, wird ebenfalls kontaminiert -- selbst wenn die Operation garantiert
ungefährlich ist (z.B. weil der ursprüngliche Wert nicht verändert wird).
- Die Kontaminierung ist nur mit einzelnen skalaren Werten verbunden und
nicht mit größeren Datenstrukturen. So können bei einer Liste einige
Elemente kontaminiert sein, während andere davon frei sind.