Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2023-24203-and-CVE-2023-24204 — Analyse pédagogique de CVE-2023-24203 (XSS stocké) et CVE-2023-24204 (Injection SQL) dans SourceCodester CRM, avec étapes d'exploitation et stratégies d'atténuation. | Kitploit
Outils/GitHubGitHub/momo1239/cve-2023-24203-and-cve-2023-24204
Analyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebArticles et RechercheApprentissage et Éducation
GitHubmomo1239/cve-2023-24203-and-cve-2023-24204

CVE-2023-24203-and-CVE-2023-24204

Analyse pédagogique de CVE-2023-24203 (XSS stocké) et CVE-2023-24204 (Injection SQL) dans SourceCodester CRM, avec étapes d'exploitation et stratégies d'atténuation.

Voir le dépôt
25il y a 2 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2023-24203-and-CVE-2023-24204

Introduction

Dans le paysage en constante évolution de la cybersécurité, les applications web restent une cible de choix pour les attaquants cherchant à exploiter des vulnérabilités. Récemment, deux vulnérabilités critiques ont été découvertes dans le système Simple Customer Relationship Management (CRM) v1.0 de SourceCodester : CVE-2023-24203 et CVE-2023-24204. Ces vulnérabilités, impliquant du Cross-Site Scripting (XSS) et de l'injection SQL, présentent des risques importants, notamment l'exécution de code arbitraire et l'accès non autorisé. Comprendre ces vulnérabilités et leurs impacts est essentiel pour les développeurs et les professionnels de la sécurité afin de protéger les systèmes contre les menaces potentielles.

Cross-Site Scripting (XSS)

Le Cross-Site Scripting (XSS) est un type de vulnérabilité qui survient lorsqu'une application web permet aux utilisateurs d'injecter des scripts malveillants dans des pages web consultées par d'autres utilisateurs. Cela peut entraîner des actions non autorisées au nom de l'utilisateur, le vol de données et une exploitation plus poussée. Les vulnérabilités XSS peuvent être classées en trois types principaux :

  1. XSS stocké : Le script malveillant est stocké de manière permanente sur le serveur cible, par exemple dans une base de données, un forum de discussion ou un champ de commentaire.
  2. XSS réfléchi : Le script malveillant est réfléchi par un serveur web, par exemple dans un message d'erreur, un résultat de recherche ou toute autre réponse qui inclut une partie ou la totalité des données envoyées au serveur.
  3. XSS basé sur le DOM : La vulnérabilité existe dans le code côté client plutôt que dans le code côté serveur.

Injection SQL

L'injection SQL est un type de vulnérabilité qui survient lorsqu'un attaquant parvient à manipuler des requêtes SQL en injectant du code SQL arbitraire dans une requête. Cela peut conduire à un accès non autorisé, au vol de données et à d'autres activités malveillantes. L'injection SQL se produit généralement en raison d'une validation insuffisante des entrées et de l'absence de requêtes paramétrées. Les principaux impacts de l'injection SQL sont les suivants :

  1. Accès non autorisé : Les attaquants peuvent contourner les mécanismes d'authentification pour obtenir un accès non autorisé à un système.
  2. Vol de données : Les attaquants peuvent exfiltrer des informations sensibles depuis la base de données.
  3. Manipulation de données : Les attaquants peuvent modifier, insérer ou supprimer des données dans la base de données.

Dans cet article de blog, nous allons examiner en détail CVE-2023-24203 et CVE-2023-24204, en explorant les spécificités de ces vulnérabilités, leurs vecteurs d'attaque, leurs impacts et les stratégies d'atténuation. Comprendre ces vulnérabilités en profondeur est crucial pour protéger vos applications et vos données contre les exploits potentiels.

Causes courantes d'injection SQL dans les applications web

Les vulnérabilités d'injection SQL sont souvent le résultat d'une validation inadéquate des entrées et de mauvaises pratiques de codage. Certaines causes courantes sont les suivantes :

  1. Absence de requêtes paramétrées : Le fait de ne pas utiliser de requêtes paramétrées permet aux attaquants d'injecter du code SQL malveillant dans une chaîne de requête.
  2. Validation inadéquate des entrées : Ne pas valider correctement les entrées utilisateur peut conduire à l'exécution de commandes SQL non souhaitées.
  3. Requêtes SQL dynamiques : Construire des requêtes SQL dynamiquement en concaténant des chaînes directement à partir des entrées utilisateur peut créer des vulnérabilités exploitables.
  4. Échappement insuffisant des entrées utilisateur : Ne pas échapper correctement les caractères spéciaux dans les entrées utilisateur peut permettre des attaques par injection SQL.
  5. Code hérité : Les bases de code plus anciennes peuvent ne pas suivre les pratiques de sécurité modernes, ce qui les rend plus vulnérables à l'injection SQL.

Causes courantes de XSS dans les applications web

Les vulnérabilités de Cross-Site Scripting (XSS) sont généralement causées par une mauvaise gestion des entrées et sorties utilisateur. Les causes courantes sont les suivantes :

  1. Encodage de sortie incorrect : Ne pas encoder les entrées utilisateur avant de les afficher sur les pages web peut permettre l'injection de scripts malveillants.
  2. Validation inadéquate des entrées : Ne pas valider ni assainir les entrées utilisateur peut conduire à l'exécution de scripts injectés.
  3. Entrées utilisateur réfléchies : Renvoyer directement les entrées utilisateur dans les réponses sans validation ni encodage appropriés peut entraîner un XSS réfléchi.
  4. Entrées utilisateur stockées : Stocker les entrées utilisateur sans assainissement approprié peut conduire à des attaques XSS stockées.
  5. Manipulation du DOM : La manipulation non sécurisée du Document Object Model (DOM) basée sur les entrées utilisateur peut entraîner un XSS basé sur le DOM.

CVE-2023-24203 : Découverte d'un XSS stocké !

Résumé de la vulnérabilité

CVE-2023-24203 est une vulnérabilité de Cross-Site Scripting (XSS) stocké trouvée dans le composant get-quote.php du système Simple Customer Relationship Management (CRM) v1.0 de SourceCodester. Cette vulnérabilité permet à un attaquant d'injecter des scripts malveillants dans les paramètres company et query, qui sont ensuite stockés dans la base de données et exécutés lorsqu'un administrateur les consulte, conduisant à l'exécution de code arbitraire.

Détails de la vulnérabilité

La vulnérabilité réside dans le script get-quote.php, qui traite les entrées utilisateur d'un formulaire de demande de devis. Le code source PHP est présenté ci-dessous :

<?php
session_start();
include("dbconnection.php");
include("checklogin.php");
check_login();
error_reporting(0);
if(isset($_POST['submit']))
{
    $name=$_POST['name'];
    $email=$_POST['email'];
    $contact=$_POST['contact'];
    $company=$_POST['company'];
    $services=addslashes(mysqli_real_escape_string($con, json_encode($_POST['services'])));
    $other=$_POST['other'];
    $query=$_POST['query'];
    $pd=date('Y-m-d');
    mysqli_query($con,"insert into prequest(name,email,contactno,company,services,others,query,posting_date) values('$name','$email','$contact','$company','$services','$other','$query','$pd')");
    echo "<script>alert('Query received. We will contact you soon.');</script>";  
    echo "<script>window.location.href='get-quote.php'</script>";
}
?>

Le script prend les entrées utilisateur du formulaire (name, email, contact, company, services, other et query) et les intègre directement dans une requête SQL pour stocker les données dans la base de données. Alors que l'entrée services est assainie à l'aide de mysqli_real_escape_string et addslashes, les paramètres company et query ne sont pas correctement assainis ni encodés lorsqu'ils sont renvoyés dans la réponse. Ce manque d'assainissement et d'encodage appropriés permet l'injection et le stockage de scripts malveillants dans la base de données.

Exploitation

Pour exploiter cette vulnérabilité, un attaquant peut élaborer une charge utile contenant du code JavaScript malveillant dans le paramètre company ou query. Lorsque l'administrateur consulte la demande de devis, le script injecté s'exécutera dans son navigateur.

Exemple de charge utile d'exploitation

En soumettant la charge utile suivante dans le paramètre query :

<script>alert('XSS');</script>

L'attaquant peut déclencher une attaque XSS lorsque l'administrateur consulte la demande de devis.

Vol des cookies de l'administrateur

Une charge utile plus dangereuse peut être élaborée pour voler les cookies de session de l'administrateur. En utilisant la charge utile suivante dans le paramètre query :

Télécharger l’outil