Jinak by podle
mě
šlo především o díru ve webserveru, pokud by cokoliv založené na stringu,
který poslal klient jako User-Agent, podstrkával shellu. A o té bychom jistě
už také věděli, v této vzrušené době...
Ne, tohle je běžné chování CGI. Server musí nějak předat informace
skriptu a nemá moc možností, musí použít proměnné prostředí, aby předal
cestu, user-agenta a podobně. No a tady dojde k chybě, protože pokud je
použit bash, tak ten proměnné automaticky prožene evalem a pokud je v
ních funkce, tak se nadefinuje a průšvih je na světě. Web server je v
tom nevinně.
Tomu rozumím. On ten můj druhý odstavec (viz výše) sám o sobě skutečně není
pravdivý a zasluhuje rozcupovat přesně tak, jak jsi to provedl :).
Šlo mi o to, že by mělo být lhostejné co za hrůzy User-Agent obsahuje, dokud
CGI skript není spuštěn, protože s ním webserver zavolá nanejvýš tak setenv()
nebo něco podobného.
A pokud šel request na "/", nebude (s běžnou konfigurací) co spustit a tak
nic spuštěno nebude. To byla moje "hlavní" hypotéza, proč by nás taková
řádka v logu měla nechat v klidu. Hlavně tohle bych rád, kdyby někdo veřejně
podpořil :).
E.