Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-56799 — # Vulnérabilité d'injection de commandes système via le planificateur de nettoyage du cache dans l'application de bureau Reolink | Kitploit
Outils/GitHubGitHub/shinycolumn/cve-2025-56799
Mécanismes de PersistanceAnalyse des VulnérabilitésExploitationExploitation d'Applications WebAnalyse de MalwareExploitation de Binaires
GitHubshinycolumn/cve-2025-56799

CVE-2025-56799

# Vulnérabilité d'injection de commandes système via le planificateur de nettoyage du cache dans l'application de bureau Reolink

Voir le dépôt
15il y a 10 moisPas 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-2025-56799

Vulnérabilité d'injection de commandes OS via le planificateur de nettoyage du cache dans l'application de bureau Reolink

1. Aperçu

Icône Reolink
  • Nom : Application de bureau Reolink
  • Version : 8.18.12
  • Fournisseur : Reolink
  • CWE : CWE-78 : Neutralisation incorrecte d'éléments spéciaux utilisés dans une commande OS ('Injection de commandes OS')
  • CVSS : 6,5 MOYEN
  • Chaîne vectorielle : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N

2. Résumé

L'application de bureau Reolink (version 8.18.12) contient une vulnérabilité d'injection de commandes OS dans sa fonctionnalité de planificateur de nettoyage du cache (coverCacheClearScheduler). L'application construit une commande shell OS en utilisant un chemin de dossier temporaire lu à partir d'un fichier de configuration situé dans . Comme cette valeur de chemin ne fait l'objet d'aucune assainissement approprié des entrées, un attaquant peut la manipuler pour injecter des commandes OS arbitraires.

%LOCALAPPDATA%

Cette vulnérabilité est déclenchée par le planificateur, qui s'exécute automatiquement chaque jour à 3 h 00, offrant ainsi à l'attaquant une persistance sur le système. De plus, la commande injectée est exécutée dans le cadre du processus légitime Reolink.exe signé numériquement, ce qui confère une discrétion en échappant à la détection des solutions de sécurité.

3. Détails

L'application initialise un planificateur pour s'exécuter chaque jour à 3 h 00 :

root@kitploit:~
{
  key: "clearCoverCacheRegularly",
  value: function () {
    if (this.coverCacheClearScheduler) {
      var e = new Date(),
        t = new Date(
          e.getFullYear(),
          e.getMonth(),
          e.getDate(),
          3,
          0,
          0,
        ).getTime();
      (e.getTime() > t &&
        (t = new Date(
          e.getFullYear(),
          e.getMonth(),
          e.getDate() + 1,
          3,
          0,
          0,
        ).getTime()),
        this.coverCacheClearScheduler.add({
	          id: this.clearCoverCacheTaskId,
          name: "clearCoverCache",
          unit: r.ETaskUnit.DAY,
          interval: 1,
          args: !1,
          execute: this.removeCoverCacheDir,
          nextTime: t,
          isInExact: !0,
        }),
        this.coverCacheClearScheduler.start());
    }
  },
}

La fonction exécutée par le planificateur construit une chaîne de commande shell en utilisant la logique suivante :

root@kitploit:~
p(
  "darwin" === process.platform
    ? "rm -rf ".concat(t)
    : "rd /s /q ".concat(t),
  function (t) {
  //...

Sous Windows, la commande résultante est :

root@kitploit:~
rd /s /q %LOCALAPPDATA%\Temp\reolink\<TEMP_FOLDER>\playback-covers

Sous macOS, la commande résultante est :

root@kitploit:~
rm -rf ~/Library/Caches/reolink/<TEMP_FOLDER>/playback-covers

Comme <TEMP_FOLDER> n'est pas correctement assaini, un attaquant peut injecter des commandes supplémentaires via la manipulation du nom de dossier, conduisant à l'exécution de commandes :

root@kitploit:~
rd /s /q %LOCALAPPDATA%\Temp\reolink\& <COMMAND> &\playback-covers
root@kitploit:~
rm -rf ~/Library/Caches/reolink/& <COMMAND>; echo /playback-covers

Le déclenchement de l'attaque nécessite une modification locale de fichiers, ce qui implique une autre vulnérabilité, l'exécution d'un logiciel malveillant ou un accès physique au système.

Bien que le déclenchement initial soit relativement difficile, l'attaque est très efficace une fois réussie, car elle offre une persistance en réexécutant automatiquement la charge utile toutes les 3 h 00. Cette persistance est encore renforcée par la nature de l'application en tant qu'outil de sécurité physique, souvent laissée en fonctionnement 24 h/24 et 7 j/7. Elle prend également en charge une fonctionnalité de « démarrage au démarrage », garantissant que la charge utile survit aux redémarrages.

De plus, l'attaquant bénéficie d'une discrétion significative. La commande s'exécute dans le cadre du processus fiable Reolink.exe signé numériquement, ce qui la rend très efficace pour contourner les solutions EDR et de liste blanche d'applications. Il s'agit d'une technique classique de Living Off the Land (LOTL).

4. Preuve de concept (PoC)

L'attaque peut être exécutée en lançant poc.py, qui modifie le fichier de configuration local. Cela est rendu possible en enchaînant d'autres vulnérabilités liées à un chiffrement insuffisant (CVE-2025-56801 et CVE-2025-56802), utilisées pour déchiffrer et rechiffrer le fichier de configuration.

Normalement, la charge utile ne se déclencherait qu'à 3 h 00. Cependant, comme l'application n'utilise pas l'empaquetage ASAR, le code peut être corrigé pour déclencher la vulnérabilité immédiatement à des fins de démonstration.

Le résultat de l'exécution est le suivant :

https://github.com/user-attachments/assets/44bf4d84-b8bf-4f4a-853c-07380ce26783

Pour plus de détails, veuillez vous référer à CVE-2025-56801 pour la vulnérabilité de génération IV AES-CFB et à CVE-2025-56802 pour la vulnérabilité de génération et de gestion des clés AES-CFB.

5. Recommandations

Pour résoudre fondamentalement cette vulnérabilité d'injection de commandes OS, vous devez éviter d'inclure directement des valeurs lues à partir de sources externes non fiables, telles que les fichiers de configuration utilisateur, dans les chaînes de commandes shell OS. La solution recommandée consiste à remplacer l'utilisation de commandes shell comme rd ou rm par des API natives qui traitent le chemin comme des données pures, et non comme une commande, telles que fs.rm() de Node.js. Cette méthode élimine complètement cette classe de vulnérabilité.

Si la construction d'une commande shell est absolument inévitable, une logique défensive doit être mise en œuvre pour valider strictement et assainir ou échapper tous les caractères spéciaux susceptibles de provoquer une injection de commandes, tels que &, | et ;.

6. Références

  • https://www.cve.org/CVERecord?id=CVE-2025-56799
  • https://nvd.nist.gov/vuln/detail/CVE-2025-56799
  • https://github.com/shinyColumn/CVE-2025-56801
  • https://github.com/shinyColumn/CVE-2025-56802
Télécharger l’outil