John GALLET <john.gallet@wanadoo.fr>, le lun. 28 juil. 2008
13:18:16, écrivait ceci:
Re,
Je ne connais pas d'analyseur automatique de code php, seulement
des scanneurs qui testent le comportement de l'application.
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 :-$ )
De la même façon que les antivirus, ils ne sont "efficaces" que
pour la détection des signatures connues.
J'ai du mal à voir ce que peut bien être une "signature" dans du
code source.
Je citais cette méthode, uniquement pour illustrer le fait qu'un
antivirus ne peut contrôler que ce qu'il connait (les signatures ou les
codes heuristiques)
Pour avoir essayé moi même de faire des recherches
systématisées lors de certains audits (récemment, un paquet de
m***e de plus de 2500 fichiers écrit via MXKart, le soft
d'Interakt, plugin générateur de code pour Dreamweaver), je pense
qu'on peut écrire un programme qui va vérifier les injections
possibles de variables dans les chemins des includes (ce type de
truc génère des milliers d'include dynamiques, dans des boucles,
un vrai bohneur), c'est uniquement suivre la source de la donnée.
On peut aussi avoir un signal d'alarme sur des fonctions
"dangereuses" du genre exec/system ou import_request_variables,
mais à part ça...
C'est déjà bien d'avoir ça. Même au niveau newbee, ça permet de ne pas
prendre de mauvaises habitudes.
J'ai écrit une petite galerie des horreurs dans un PDF dispo sur
http://www.saphirtech.fr/securite.html
Ca date un peu, mais je n'ai rien vu de révolutionnaire arriver
depuis concernant PHP en lui même. On peut ajouter des choses
dangereures côté client (les PDF dans la liste des fichiers
dangereux à accepter en upload par exemples, avec leur cochonnerie
de JS embarqué) mais je n'ai rien vu de radicalement différent
côté serveur. Bien entendu, le paragraphe sur "c'est valide grâce
à javascript" est encore plus vrai avec "ajax".
Des papiers commencent à circuler sur les nouvelles conneries
liées au stockage côté client de html 5, et ça va être rigolo
probablement, mais pour le moment on y est pas encore.
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 :-).