R14. Sécurité - PastoriLucas/Dev.Web GitHub Wiki
Risques :
Sécurité des données
- Ne pas laisser les mots de passe en clair.
- Ne pas donner accès en modification aux tables qui ne peuvent pas être accessible par les utilisateurs.
Sécurité de l'infrastructure
- Sécurisation des requêtes http :
- Serveur :
- Uniquement les services nécessaires.
- Protection : Firewall.
Sécurité de l'application
- attaques par injection.
- Authentification :
- Mots de passes trop faibles (minimum 1 majuscule, 1 minuscule, 1 chiffre et 1 caractère spécial).
- Mots de passes transmis / stockés en clair.
Solutions :
Sécurité des données
- Les Mots de passe ont été hachés de telle manière a ce que personne ne puis accéder à ceux-ci sans en être le propriétaire.
- Notre page admin est protégée par un système de connexion au compte admin qui lui-même est protégé contre les injections SQl
Sécurité de l'infrastructure
-
Mise en place de Https avec des certificats valides associés a notre nom de domaine grâce a "CertBot" (Let's Encrypt) à la fois pour notre serveur back-end et pour notre front-end.
-
Seul les ports utiles à notre applications on été ouverts sur le vps dans le cadre de notre projet :
- Port 80 : Nginx projetant Angular.
- Port 8888 : Nodejs en HTTPS.
D'autres ports sont ouverts sur notre vps mais ceux-ci doivent le rester dans le cadre de notre projet Admin Réseaux
Sécurité de l'application
-
Nous avons regroupé les valeurs en un tableau avant de les insérer dans les requêtes de telle manière a ce que celles-ci soit inspectées par pgAdmin. En cas de valeurs essayant de nuire à la base de données PGadmin se charge de les modifier pour qu'elles n'aient pas d'impact. (queries paramétrés)
-
Pour éviter les mots de passe trop faible nous forçons les utilisateurs à utiliser des mots de passe contenant au moins :
- Une majuscule
- Une minuscule
- Un chiffre
- Un caractère spécial (@$.!%*#?&)
- entre 8 et 50 caractères
Si ces conditions ne sont pas remplies le formulaire d'inscription ne s'enregistre pas dans la base de données.