Erstellt von Fernando Mengali
YpreyPHP ist ein Webanwendungs-Framework mit Schwachstellen aus den OWASP TOP 10. Das Framework wurde zum Lehren und Lernen von Details in Pentest (Penetrationstests) und Anwendungssicherheit entwickelt. Im Rahmen der Offensive Security können in Webanwendungen enthaltene Schwachstellen identifiziert, ausgenutzt und kompromittiert werden. Für Anwendungssicherheitsexperten und -spezialisten bietet das Framework ein tiefgreifendes Verständnis von Schwachstellen auf Codeebene. Derzeit ist Yrprey eines der Frameworks mit der höchsten Anzahl an Schwachstellen weltweit, was es für Bildungs-, Lern- und Lehrzwecke im Bereich Informationssicherheit wertvoll macht. Für weitere Informationen zu den Schwachstellen empfehlen wir, die auf yrprey.com verfügbaren Details zu erkunden.
Zunächst hat ein nicht registrierter Benutzer Zugriff auf minimale Informationen über das Framework, beispielsweise auf die Landing Page. Bei der Registrierung kann sich der Nutzer anmelden und erhält so einen Token, der zum Kauf von Produkten verwendet wird. Zu den Funktionen gehören Kauftools, Zeichentrickfiguren, das Veröffentlichen von Nachrichten im Gästebuch usw. Das Framework wurde aufgrund von Schwachstellen entwickelt und wird nicht für die Verwendung für Geschäfts- und Dienstleistungsverkäufe empfohlen.
In diesem Abschnitt haben wir einen Vergleich der im Framework vorhandenen Schwachstellen mit den Routen und einen Vergleich zwischen den OWASP TOP 10-Webanwendungen. Diese Tabelle erleichtert das Verständnis, wie Schwachstellen in den einzelnen Systemfunktionen ausgenutzt werden können. In den letzten beiden Spalten haben wir eine Klammer und das Szenario, das mit den OWASP TOP 10 Webanwendungen verknüpft ist, was das Verständnis der auf der Seite https://owasp.org/www-project-top-ten/ beschriebenen Theorie erleichtert. Nachdem Sie das Szenario und die anfällige Route verstanden haben, wird der Prozess der Identifizierung und Ausnutzung von Schwachstellen einfacher. Wenn Sie ein Anwendungssicherheitsexperte sind, erleichtert die Kenntnis des Szenarios und der Routen von Endpunkten die Identifizierung und Behebung von Schwachstellen mithilfe manueller Code-Review-Sicherheitstechniken oder automatisierter SAST-, SCA- und DAST-Analysen
Vollständige Tabelle mit Schwachstellenpunkten, Schwachstellendetails und einem Vergleich zwischen OWASP TOP 10 Webanwendungsschwachstellen:
Qtde | Verfahren | Weg | Einzelheiten |
---|---|---|---|
01 | ERHALTEN | /search.php | MySQL-Injection |
02 | ERHALTEN | /search.php | Cross-Site-Scripting – Reflect (RXSS) |
03 | ERHALTEN | /tools.php?id={numer_id} | MySQL-Injection |
04 | ERHALTEN | /warriors.php?id={numer_id} | MySQL-Injection |
05 | POST | /guestbook.php | Cross-Site-Scripting – Gespeichert (XSS) |
06 | POST | /login.php | MySQL-Injection (' oder 1=1#) |
07 | ERHALTEN | /change.php?password={string} | Cross-Site-Request-Forgery (CSRF) |
08 | ERHALTEN | /profile.php?id={string} | Manipulation von Web-Parametern |
09 | N / A | /index.php | Session Hijacking (Manipulations-Cookie) |
10 | ERHALTEN | /phpinfo.php | Fehlkonfiguration |
11 | ERHALTEN | /js/jquery-1.5.1.js | Cross-Site-Scripting – Reflect (RXSS) |
12 | ERHALTEN | /js/jquery-1.5.1.js | Prototypische Verschmutzung |
13 | ERHALTEN | /js/lodash-3.9.0.js | Prototypische Verschmutzung |
14 | ERHALTEN | /js/lodash-3.9.0.js | Befehlsinjektion |
15 | ERHALTEN | /js/lodash-3.9.0.js | Denial-of-Service mit regulären Ausdrücken (ReDoS) |
16 | ERHALTEN | /js/bootstrap-4.1.3.js | Prototypische Verschmutzung |
17 | ERHALTEN | /WS_FTP.LOG | Fehlkonfiguration |
18 | ERHALTEN | /register.php | Remote-Befehlsausführung – (RCE) |
Sie können auf Xampp oder jeder anderen Plattform testen, die PHP und MySQL unterstützt.
Bitte vermeiden Sie diese Maßnahme und die Anforderung eines CVE!
Die Anwendung weist absichtlich einige Schwachstellen auf, die meisten davon sind bekannt und werden als gewonnene Erkenntnisse behandelt. Andere wiederum sind eher „versteckt“ und können auf eigene Faust entdeckt werden. Wenn Sie den echten Wunsch haben, Ihre Fähigkeiten beim Finden dieser zusätzlichen Elemente unter Beweis zu stellen, empfehlen wir Ihnen, Ihre Erfahrungen in einem Blog zu teilen oder ein Video zu erstellen. Es gibt sicherlich Leute, die daran interessiert sind, mehr über diese Nuancen zu erfahren und wie Sie sie identifiziert haben. Wenn Sie uns den Link senden, können wir sogar darüber nachdenken, ihn in unsere Referenzen aufzunehmen.