Author: Volker GrabschVolker Grabsch
Date: Mar 5, 2008 16:30
Thomas Guettler schrieb:
> Außerdem sollte man, falls es geht lieber das Modul subprocess
> verwenden, weil dann nicht unnötigerweise eine Shell gestartet wird.
> Das ist auch einiges sicherer. Beispiel:
>
> myfile="abc; rm -rf /"
> os.popen('ls -l %%s' %% myfile)
>
> Das kann mit subprocess nicht so leicht passieren.
Autsch! Ja, solcher Code gehört verboten.
Vielleicht sollte man mal einen PEP starten, der os.popen()
und Konsorten endgültig ausrottet, oder zumindest mit einer
fetten "Deprecated"-Warnung kommt.
Okay, das Modul subprocess basiert intern auf diesen os.*-
Routinen, aber das ist ja kein ernsthaftes Problem.
Gruß,
Volker
|