Aedituus - Espace membre sécurisé
Par Wam mania le jeudi, août 14 2008
Aedituus est un script d'espace membre entièrement en PHP5, regroupant des techniques de sécurité pointues que l'on peut voir dans certains scripts "professionnels" ou sur certains sites de grande renommée.
Aedituus signifie en latin "gardien d'un temple", il était notamment le premier accusé en cas de vol, pillage ou saccage, alors que tout acte de bravoure pour la sauvegarde du temple ne pouvait venir que des dieux.
Le but de l'aedituus n'est pas de présenter un système complet de gestion de membre. En effet, il ne dispose que du minimum en terme d'Interface Homme-Machine. Cette partie étant à la charge du développeur.
L'aedituus se place plutôt au niveau de la gestion de la session utilisateur, et surtout au niveau du transfert de donnée entre lui et le serveur (notamment à l'inscription et à la connexion). Pour cela, l'aedituus a été conçu pour envelopper tout ce qui sort et qui rentre sur le site à protéger. A commencer par l'inscription à un site, durant laquelle il est nécessaire dans certains cas de posséder des informations non hashées, tel que le mot de passe par exemple, mais qu'on ne souhaite surtout pas voir en clair sur le réseau. Pour cela, nous utilisons l'algorithme symétrique RSA (il protégeait les silos de missiles nucléaires pendant la guerre froide).
Parmi les autres techniques de sécurité, on retrouve le hashage coté client du mot de passe par une implantation javascript du sha1, on utilise aussi la technique du grain de sable coté client et serveur pour éviter les attaques par dictionnaire et par force brute. Ce gds étant propre à chaque utilisateur. On utilise aussi le poka-yoké pour imposer un filtrage des données POST et GET (poka-yoké signifie que ne laisse le choix de ne faire que le bon), qui impose un contrôle des données d'entrée. On utilise un système de session contenu dans une base de donnée pour éviter les "sessions mutualisées" (cependant, une compatibilités avec les sessions PHP est assurées). Enfin, un système de token par page est installé dans le mécanisme de session afin de déconnecter rapidement un pirate utilisant une session volée.
Une démonstration est visible ici : Démonstration
Vous pouvez télécharger le script ici : Téléchargement
Enfin, vous pourrez trouver un début de doc et d'explication en lisant le wiki ici Wiki
Si vous l'aimez, pensez à mettre un lien vers ici ;)
Aedituus signifie en latin "gardien d'un temple", il était notamment le premier accusé en cas de vol, pillage ou saccage, alors que tout acte de bravoure pour la sauvegarde du temple ne pouvait venir que des dieux.
Le but de l'aedituus n'est pas de présenter un système complet de gestion de membre. En effet, il ne dispose que du minimum en terme d'Interface Homme-Machine. Cette partie étant à la charge du développeur.
L'aedituus se place plutôt au niveau de la gestion de la session utilisateur, et surtout au niveau du transfert de donnée entre lui et le serveur (notamment à l'inscription et à la connexion). Pour cela, l'aedituus a été conçu pour envelopper tout ce qui sort et qui rentre sur le site à protéger. A commencer par l'inscription à un site, durant laquelle il est nécessaire dans certains cas de posséder des informations non hashées, tel que le mot de passe par exemple, mais qu'on ne souhaite surtout pas voir en clair sur le réseau. Pour cela, nous utilisons l'algorithme symétrique RSA (il protégeait les silos de missiles nucléaires pendant la guerre froide).
Parmi les autres techniques de sécurité, on retrouve le hashage coté client du mot de passe par une implantation javascript du sha1, on utilise aussi la technique du grain de sable coté client et serveur pour éviter les attaques par dictionnaire et par force brute. Ce gds étant propre à chaque utilisateur. On utilise aussi le poka-yoké pour imposer un filtrage des données POST et GET (poka-yoké signifie que ne laisse le choix de ne faire que le bon), qui impose un contrôle des données d'entrée. On utilise un système de session contenu dans une base de donnée pour éviter les "sessions mutualisées" (cependant, une compatibilités avec les sessions PHP est assurées). Enfin, un système de token par page est installé dans le mécanisme de session afin de déconnecter rapidement un pirate utilisant une session volée.
Une démonstration est visible ici : Démonstration
Vous pouvez télécharger le script ici : Téléchargement
Enfin, vous pourrez trouver un début de doc et d'explication en lisant le wiki ici Wiki
Si vous l'aimez, pensez à mettre un lien vers ici ;)