Awesome Application Security Checklist
1.0.0
Wenn Sie Ihre Web-/Mobile-Anwendung unter Berücksichtigung der Sicherheit entwerfen, erstellen, testen, kann diese Checkliste der Gegenmaßnahmen ein guter Ausgangspunkt sein
Bcrypt (kein Salz erforderlich - Bcrypt macht es für Sie). logout . state in OAuth2 haben. OTP -basierten mobilen Überprüfung die OTP nicht wieder in die Antwort, wenn generate OTP oder Resend OTP . Login , Verify OTP , Resend OTP und generate OTP . Haben Sie ein exponentielles Backoff -Set oder/und so etwas wie eine Captcha -basierte Herausforderung. my cart , my history sollte den angemeldeten Eigentum des Benutzers an der Ressource mithilfe der Sitzungs -ID überprüfen. /me/orders anstelle von /user/37153/orders . Dies fungiert als Überprüfung der Gesundheit, falls Sie vergessen haben, nach Autorisierungs -Token zu suchen. Edit email/phone number -Funktion sollte von einer Überprüfungs -E -Mail an den Eigentümer des Kontos beigefügt sein. Profile photo upload -Funktion sollte alle EXIF -Tags auch sanften, falls dies nicht erforderlich ist. UUID anstelle von Ganzzahlen. Für Ihre Sprache auf GitHub finden Sie eine Implementierung dafür. salt von Zahlungsgateways sollte nicht festcodiert werden. secret / auth token von SDKs von Drittanbietern sollte nicht festcodiert werden. server to server erfolgen sollen, sollte nicht aus der App durchgeführt werden. Add CSP -Header hinzu, um XSS und Dateneinspritzangriffe zu mildern. Das ist wichtig. Add den CSRF -Header hinzu, um eine Forderung der Anfrage zu verhindern. Fügen Sie auch Samesit -Attribute zu Cookies hinzu. Add HSTS -Header hinzu, um SSL -Stripping -Angriffe zu verhindern. Add Ihre Domain der HSTS -Vorspannliste hinzu Add X-Frame-Optionen hinzu, um sich vor ClickJacking zu schützen. Add den X-XSS-Protest-Header hinzu, um XSS-Angriffe zu mildern. Sanitize alle Benutzereingänge oder Eingabeparameter, die dem Benutzer ausgesetzt sind, um XSS zu verhindern. Sanitize die Benutzereingabe für spezielle Fälle wie Robots.txt als Profilnamen für den Fall, dass Sie ein URL -Muster wie coolcorp.io/username verwenden. open ports . databases , insbesondere MongoDB & Redis,. CI & CD Prüfen Sie Ihr Design und Ihre Implementierung mit Abdeckung von Einheiten/Integrationstests. Verwenden Sie einen Code-Überprüfungsprozess und ignorieren die Selbstverträglichkeit. Stellen Sie sicher, dass alle Komponenten Ihrer Dienste statisch mit AV -Software gescannt werden, bevor sie in die Produktion drängen, einschließlich Anbieterbibliotheken und anderer Abhängigkeiten. Entwerfen Sie eine Rollback -Lösung für Bereitstellungen.