Esiste una sola regola importante: se si invoca un programma esterno (attraverso le funzioni os.system() o os.popen(), o altre con funzionalit� simili), occorre prestare estrema attenzione a non far passare stringhe arbitrarie ricevute dal client alla shell. Questa � una mancanza di sicurezza ben conosciuta dove un cracker pu� forzare uno script CGI debole per eseguire comandi di shell arbitrari. Ogni parte della URL o del nome del campo non pu� essere considerata affidabile, se la richiesta non arriva dalla propria form!
Per avere pi� sicurezza, si deve passare la stringa ottenuta dalla form ad un comando di shell, cercando di assicurarsi che la stringa contenga esclusivamente caratteri alfanumerici, lineette, trattini bassi e punti.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.