En plus des fondamentaux, comment sécuriser une application web PHP HTML5 construite "from scratch" ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : En plus des fondamentaux, comment sécuriser une application web PHP HTML5 construite "from scratch" ?

Re: En plus des fondamentaux, comment sécuriser une application web PHP HTML5 construite "from scratch" ?

par metamoun » 22 sept. 2021, 01:08

PHP the Right way est un peu ma bible PHP avec le site officiel.
Quant aux 2 autres liens, c'est exactement ce que je voulais, c'est à dire une cheatsheet qui regroupe toutes les étapes de manière exhaustive.
Merci beaucoup pour ces références.

Re: En plus des fondamentaux, comment sécuriser une application web PHP HTML5 construite "from scratch" ?

par @rthur » 21 sept. 2021, 12:36

Il y a beaucoup de paramètres à prendre en compte donc difficile de t'orienter vers un plutôt qu'un autre.

Un site très utile et bien fait c'est un rappel des bonnes pratiques de développements PHP :
https://eilgin.github.io/php-the-right-way/

Et 2 autres sites plus spécifiques sur la sécurité :
https://www.cases.lu/publications/recom ... ns_fr.html
https://docs.php.earth/security/intro/

Après ma recommandation sera de faire faire un audit/pentest de ton code par une société spécialisée si tu as vraiment besoin de valider la robustesse de ton code.

En plus des fondamentaux, comment sécuriser une application web PHP HTML5 construite "from scratch" ?

par Metamoun » 21 sept. 2021, 00:31

Bonjour !
J'ai construit un robot d'alertes en PHP HTML5 sans framework, mais avec des bibliothèques bien sûr.
J'aimerais implémenter un niveau de sécurité égal ou au moins proche de celui offert par Symfony ou Laravel par exemple.

Voici ce que j'ai mis en place et que j'appelle les fondamentaux :
  • * Nettoyage et validation de toutes les entrées utilisateur avant insertion dans bdd
    * Hash et multi-salage des mots de passe avant insertion dans bdd
    * Echapper toutes les sorties
    * Requêtes bdd préparées avec PDO
    * Accès restreint avec open_basedir
    * Login limité à 5 tentatives/demi-heure
    * Pare-feu finement configuré avec uniquement les ports nécessaires ouverts
    * Session PHP limitée à 20 minutes
    * Pas de variables globales
    * Pas d'iframes
    * TLS pour serveur SMTP
    * Uniquement les modules nécessaires installés sur le VPS
Que dois-je implémenter et/ou rectifier pour que mon application atteigne un niveau de sécurité pro ?

SVP pas de réponses du genre "Tu devrais vraiment essayer Laravel, ou ci ou ça...". Je bosse avec des frameworks PHP, JS et Python sur des projets en équipe, je n'ai rien contre les frameworks. Simplement, je hais le paradigme MVC, voilà tout !!!