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.