From 71a1d9f8d2bc894dc77edac7184c8a882b508eb2 Mon Sep 17 00:00:00 2001 From: Marwan Bayoumi <marwan.bayoumi@stud.h-da.de> Date: Wed, 1 Mar 2023 09:13:05 +0000 Subject: [PATCH] add owasp standard analysis --- readme.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/readme.md b/readme.md index 6f7ac20..4474582 100644 --- a/readme.md +++ b/readme.md @@ -44,3 +44,38 @@ To delete a person you must first login by `POST`ing to the `api/auth` route: ``` You will receive a token which you will need to copy. Then you can use the `DELETE` `/api/persons/:id` route. + +## OWASP Standard +Die vorgegebene API wird mithilfe des Open Web Application Security Project auch OWASP Standards analysiert. Der OWASP Standard hilft bei der Entwicklung von vertraubaren APIs. +Die bevorstehende API wurde mit Node.js und Express.js geschrieben. Die API verbindet sich mit einer kleinen MySQL Datenbank. + + +### A01:2021 – Broken Access Control +Dieser Standard wurde gebrochen. Da Nutzer Zugriff auf die Löschfunktion haben, nicht nur für Ihre eigenen Kontos sondern auch für die Kontos von anderen Nutzern. Dies ist möglich solange ein Nutzer eingeloggt ist. + +### A02:2021 – Cryptographic Failures +Standard ist auch gebrochen, da die API Daten als Klartext schickt und erhält. + +### A03:2021 – Injection +Die API ist nicht anfällig was SQL Injections angeht, da Prepared Statements verwendet wurden. Die vor SQL Injections versichern. + +### A04:2021 – Insecure Design +Siehe A02 und A01 + +### A05:2021 – Security Misconfiguration +Trifft eher nicht zu wegen dem kleinen Scope der API und die korrekt Verwendung von JWT Token. + +### A06:2021 – Vulnerable and Outdated Components +Die API läuft auf dem neusten Stand und verwendet die aktuellsten Versionen von den Frameworks. + +### A07:2021 – Identification and Authentication Failures +Die API verhindert keine Brute Force Attacken und hat keine Rate Limits für die Aufrufe der Verfikationsroute. Die API erlaubt die Nutzung von schwachen Passwörtern, es gibt keinen Check der dies verhindert. + +### A08:2021 – Software and Data Integrity Failures +Die API verwendet keine Third Party Resourcen bzw. CDNs also gibt es kein Verstoß gegen diesem Standard. Die API muss nichts verfizieren. + +### A09:2021 – Security Logging and Monitoring Failures +Die API hat keine Art von Logging bzw. es werden keine Log Daten erstellt. Egal ob für erfolgreiche oder Fehlgeschlagenen Transaktionen. + +### A10:2021 – Server-Side Request Forgery (SSRF) +Könnte verletzt werden, da es keine Firewall gibt für die API. Es gibt auch keine Redirects in der API und die API läuft nur auf einem System. -- GitLab