Re: Taint

[email protected] (Jørgen Elgaard Larsen) Thu, 12 May 2011 11:09:16 +0200
Newsgroups perl.copenhagen
Message-ID <[email protected]>
Henrik Hald Nørgaard skrev:
> - Bruger I Perls taint check? Hvofor/hvorfor ikke? Hvilke problemer har det
> givet at bruge taint check?

Jeg plejer at bruge taint check, når jeg laver nye ting, der skal køre i 
et åbent miljø - f.x. webapplikationer.

> - Har I erfaringer med at få en eksisterende applikation til at køre under
> taint check?

Det kan være et hyr, hvis man har meget inddata. Men i mange tilfælde er 
det nok at untainte $ENV{PATH}.

> - Er det umagen værd at bruge taint check? Det giver vel ikke større
> sikkerhed, men til gengæld en masse støj i koden, bare at untainte en masse
> variable?
 >
> - Hvis I untainter variable: Hvordan gør I? Bruger I et modul (f.eks.
> Taint::Util) eller et skræddersyet regexp for hver variabel?

Det giver efter min mening kun mening at bruge taint check, hvis man for 
hver enkelt variabel sætter sig ned og overvejer, hvad den må indeholde 
- og så untainter den med et regex ud fra det.

Taint check er et værktøj til at skrive bedre kode. Lige som use 
warnings|strict er det ikke nødvendigt, men kan fange nogle ting, man 
ikke lige havde overvejet.

Med taint check tvinges du til at validere inddata. Men hvis du bare 
omgår det ved bevidstløst at hive ting gennem Taint::Util::untaint, er 
det lidt ligemeget.

- Jørgen