Ich bin jetzt nicht so der große Sicherheitsexperte, aber soweit ich mich erinnere besteht die mögliche Sicherheitslücke hauptsächlich darin, das oft Parameter üngeprüft weiter gereicht werden.
Da macht es dann auch keinen Unterschied, ob der entsprechende Befehl über CGI oder von einem PHP Script gestartet wird. Wobei auch PHP als CGI oder Fast-CGI laufen könnte. Der User ist dann immer www-data.
Es geht hauptsächlich darum, ob ein Anwender die Möglichkeit hat, irgendwelche Parameter ungeprüft an das Script weiter zu geben.
Mit CGI hat das wenig zu tun.
Das mit CGI hatte ich während der suche ca. nur einmal gefunden.
Ich denke CGI wird nur noch selten eingesetzt, da es den Sever veranlasst für jede Anfrage einen neuen Prozess zu starten. Aber wenig bekannt ist, das man darüber auch WEB Anwendungen nur mit Shell Scripten bauen kann. Ist ganz lustig, ändert aber nichts an der Sicherheit.