Awesome Application Security Checklist
1.0.0
Si vous concevez, créez, testez votre application Web / mobile avec la sécurité à l'esprit, cette liste de contrôle des contre-mesures peut être un bon point de départ
Bcrypt (aucun sel nécessaire - Bcrypt le fait pour vous). logout . state dans OAuth2. OTP mobile, ne renvoyez pas l'OTP dans la réponse lors de generate OTP ou Resend OTP est appelée. Login , Verify OTP , Resend OTP et generate OTP pour un utilisateur particulier. Ayez un ensemble de backoff exponentiel ou / et quelque chose comme un défi basé sur Captcha. my cart , my history devrait vérifier la propriété de la ressource par l'utilisateur en utilisant l'ID de session. /me/orders au lieu de /user/37153/orders . Cela agit comme une vérification de la santé mentale au cas où vous avez oublié de vérifier le jeton d'autorisation. Edit email/phone number doit être accompagnée d'un e-mail de vérification au propriétaire du compte. Profile photo upload doit désinfecter toutes les balises EXIF également si elle n'est pas requise. UUID conforme à RFC au lieu des entiers. Vous pouvez trouver une implémentation pour cela pour votre langue sur GitHub. salt des passerelles de paiement ne doit pas être codé en dur. secret / auth token des SDK tiers ne devrait pas être codé en dur. server to server ne doivent pas être effectués à partir de l'application. Add un en-tête CSP pour atténuer les XS et les attaques d'injection de données. C'est important. Add l'en-tête CSRF pour empêcher le contrefaçon de demande de site croisé. Ajoutez également les attributs sonores sur les cookies. Add un en-tête HSTS pour prévenir l'attaque de décapage SSL. Add votre domaine à la liste de précharge HSTS Add des options X-Frame pour protéger contre le jacking de clics. Add l'en-tête X-XSS-Protection pour atténuer les attaques XSS. Sanitize toutes les entrées utilisateur ou tout paramètre d'entrée exposé à l'utilisateur pour empêcher les XS. Sanitize la saisie de l'utilisateur pour des cas spéciaux comme Robots.txt comme noms de profil au cas où vous utilisez un modèle d'URL comme coolcorp.io/username. open ports publiquement indésirables. databases , en particulier MongoDB & Redis. CI & CD Audit votre conception et implémentation avec la couverture des tests unit / intégration. Utilisez un processus d'examen de code et ne tiennent pas compte de l'auto-approbation. Assurez-vous que tous les composants de vos services sont analysés statiquement par le logiciel AV avant de passer à la production, y compris les bibliothèques des fournisseurs et d'autres dépendances. Concevez une solution en arrière pour les déploiements.