当前位置:网站首页>Cve - 2015 - 1635 (ms15 - 034) réplication de la vulnérabilité d'exécution de code à distance
Cve - 2015 - 1635 (ms15 - 034) réplication de la vulnérabilité d'exécution de code à distance
2022-07-02 06:49:00 【Xu Jirong】
Table des matières
1 Contexte de vulnérabilité
2 Impact de la vulnérabilité
3 Exploitation des vulnérabilités
3.1 Configuration et configuration du serveur
3.2 Tests
3.2.1 curlLes ordres
3.2.2 HostChamp
3.2.3 RangeChamp
3.3 Utilisation des attaques
4 Mesures défensives
1 Contexte de vulnérabilité
2015Année04Mois14Jour,Microsoft publie des bulletins de sécurité de niveau critique MS15-034,Le numéro est CVE-2015-1635,Allegedly in Http.sys Une vulnérabilité dans peut permettre l'exécution de code à distance
Http.sys C'est un endroit Windows Composants de base du système d'exploitation,Capable de faire passer n'importe quelle application à travers l'interface qu'elle fournit,Par Http Protocole pour la communication d'informations.
HTTP.sysCertaines constructions spéciales seront mal résoluesHTTPDemande,Cause une vulnérabilité d'exécution de code à distance.Après une exploitation réussie de cette vulnérabilité,Un attaquant peutSystemExécuter n'importe quel code dans le contexte du compte.
Parce que cette vulnérabilité existe dans le pilote du noyau,Un attaquant peut également provoquer à distance un écran bleu du système d'exploitation.Un attaquant distant peutIIS 7(Ou plus)Le Service sera malveillantHTTPDemande transmise àHTTP.sysDrive.
2 Impact de la vulnérabilité
IIS 7.0Ce qui précèdeWindows 7/8/8.1EtWindows Server 2008 R2/Server 2012/Server 2012 R2Système d'exploitation équivalent.
3 Exploitation des vulnérabilités
3.1 Configuration et configuration du serveur
ip:192.168.52.131
Système d'exploitation:win7
Middleware:IIS7.0
win7 Comment ouvrir iisEt le service?
Panneau de commande>Programmes et fonctions>On or offwindowsFonction>InternetServices d'information>CocherWeb Outils de gestion et services Web
Faisons une visite.
http://127.0.0.1/
Comme indiqué ci - dessus iisServices
3.2 Tests
Nous envoyons le code suivant sur l'attaquant
curl -v 192.168.52.131 -H "Host:irrelevant" -H "Range:bytes=0-18446744073709551615"
Les informations suivantes sont retournées pour prouver la vulnérabilité
3.2.1 curlLes ordres
Voir détailsLinux curl La commande est la plus détaillée
Paramètres | Description |
---|---|
-v | Afficher plus de détails,Lors de la mise en service; |
-H “name:value” | (HTTP)Ajouter unhttp header(httpEn - tête de la demande); |
3.2.2 HostChamp
UnIP
Ça correspond.Plusieurs noms de domaine
, Mais nous sommes là pour Différencier les différents domaines
Différents contenus affichés ,À ce stade, la référencehostConcept, Donc chaque nom de domaine correspond à un host,Adoptionhost Vous pouvez distinguer les sites sur le serveur auxquels vous accédez .( Mais ici, nous allons directement IP,Par défaut80Port,J'ai essayé.,-H "Host:irrelevant"
Non, ça ira. )
Je ne comprends pas.
3.2.3 RangeChamp
Quand le réseau n'était pas bon, , Télécharger de gros fichiers n'est pas facile ,Si le téléchargement est interrompu , Alors vous devez recommencer à télécharger ,Pour résoudre ce problème HTTP/1.1 Demande de champ d'application introduite . C'est - à - dire demander ce fichier x~yOctets de,Préciser la portée, Ajouter au début du message de demande RangeChamp,Ce champPréciser la ressourcebyteChamp d'application
,Dites au serveur, Quelle est la portée de la ressource demandée? , Permettre la poursuite des points d'arrêt et le téléchargement parallèle .
Par exemple:
Range: bytes=5001-10000
Tous les serveurs ne supportent pas cette exigence
Renvoie si le serveur n'est pas pris en charge 400Code d'état
, Cela signifie que le client a demandé une exception
Voici notre commande de test pour
-H "Range:bytes=0-18446744073709551615"
18446744073709551615 La conversion en hexadécimal est 0xFFFFFFFFFFFFFFFF(16- Oui.F),- Oui.64 Le nombre entier maximum qu'un entier non signé BIT peut exprimer ,Débordement entier
C'est à propos de cet entier surdimensionné
Envoyer un paquet de demande renvoie 416Code d'état
Si la demande contient Range En - tête de la demande,Et Range Toute plage de données spécifiée dans est disponible avec la ressource courante La plage ne coïncide pas
,En même temps, il n'y a pas de définition dans la demande If-Range En - tête de la demande,Alors le serveur devrait retourner416Code d'état.
Cette vulnérabilité élimine les vulnérabilités de débordement , Comment le serveur traite - t - il cette demande? , Je ne comprends pas non plus , Je ne connais que les débordements d'entiers. 416Code d'état, Prouver que cette vulnérabilité existe ici
3.3 Utilisation des attaques
OutilsMetasploit(MSF)
Méthode d'installation et d'utilisation
Deux modules
0 ddosAttaque
1 Lire les informations de mémoire
Essayez le deuxième module
Non, je ne sais pas pourquoi.
Essayons le premier module. ddosAttaque
Il y a quelque chose qui s'appelle therads
, C'est le nombre de Threads simultanés. ,J'ai essayé,Si ouiPar défaut
,Directrun
,Le serveur Écran bleu instantané
,Puis redémarrez, Si elle est changée en set therads 10
,Le serveur Long écran bleu
4 Mesures défensives
1.Patch
https://docs.microsoft.com/zh-cn/security-updates/Securitybulletins/2015/ms15-034
2.Désactivation temporaireIISCache du noyau
RÉFÉRENCES
MicrosoftAvis de sécuritéMS15-034 -Grave
HTTP.sysExécution de code à distance(CVE2015-1635,MS15-034)
Qu'est - ce qu'une vulnérabilité de débordement d'entiers et ses conséquences
边栏推荐
- sprintf_s的使用方法
- The default Google browser cannot open the link (clicking the hyperlink does not respond)
- js创建一个自定义json数组
- PIP install
- Uploading attachments using Win32 in Web Automation
- Dynamic global memory allocation and operation in CUDA
- Utilisation de la carte et de foreach dans JS
- Tensorrt command line program
- 由於不正常斷電導致的unexpected inconsistency;RUN fsck MANUALLY問題已解决
- Pytest (3) parameterize
猜你喜欢
随机推荐
Linux MySQL 5.6.51 Community Generic 安装教程
Unexpected inconsistency caused by abnormal power failure; Run fsck manually problem resolved
There are multiple good constructors and room will problem
Sentinel rules persist to Nacos
Browser scrolling for more implementations
浏览器滚动加载更多实现
Blog directory of zzq -- updated on 20210601
20201002 vs 2019 qt5.14 developed program packaging
Win10桌面图标没有办法拖动(可以选中可以打开可以删除新建等操作但是不能拖动)
Alibaba cloud MFA binding Chrome browser
Vscode installation, latex environment, parameter configuration, common problem solving
微信小程序基础
Usage of map and foreach in JS
js中map和forEach的用法
Sentry construction and use
qq邮箱接收不到jenkins构建后使用email extension 发送的邮件(timestamp 或 auth.......)
web自动化切换窗口时报错“list“ object is not callable
看完有用的blog
20201025 visual studio2019 qt5.14 use of signal and slot functions
Self cultivation of programmers - Reflection on job hunting