Re,
En fait, tu as raison. C'est plus le principe du scan de comportement,
qui m'interesse. Je me suis donc mal exprimé. (d'ailleurs j'imagine un
scanneur qui regarderait certains de mes codes :-$ )
Sur le fond, c'est bien la manière dont je commence un audit, à grand coup de find -exec grep MOT_CLEF par exemple pour voir si on se sert des sessions natives de php, des cookies, si on tripote _GET/_POST ou seulement _REQUEST, si on le fait avec une seule fonction d'accès etc. Il y a quand même des mots clefs réservés du langage PHP lui même qui *peuvent* servir de "signature", mais ça risque d'être assez limité.
Je n'ai clairement pas le temps d'écrire un tel outil, bien qu'il me serait utile d'ailleurs, mais si quelqu'un a envie de pousser la réflexion sur un algo possible, je veux bien détailler un peu plus certaines méthodes que j'applique (manuellement et laborieusement).
On pourrait aussi automatiser le croisement entre les répertoires protégés par un .htaccess "deny all" et les extensions ésotériques non parsées (.inc au hasard), avec un warning "non sécurisé si httpd!=apache", trouver les .old et autres ~bck contenant des chaînes du style "password".
Bref, ce type d'outil pourrait exister, mais si c'est le cas je n'en connais pas.
J'ai écrit une petite galerie des horreurs dans un PDF dispo sur
http://www.saphirtech.fr/securite.html
Oui. J'avais déjà vu cette page, et m'en était fortement inspiré, le
jour où l'on m'a mis un projet php dans les mains. Je profite que l'on
soit en "conversation" pour t'en remercier : je suis passé pour moins
profane que je l'était réellement :-).
Content que ça ait été utile.
Le but principal de ce document est de forcer le lecteur à se poser des questions sur sa compréhension de la situation, quel que soit son niveau. Méfie toi en revanche que certaines opinions qui y sont exprimées ne sont pas "à la mode", quand ce n'est pas carrément à contre-courant des (soit-disant) "best-practices" (comme qu'ils disent).
a++;
JG