MS08-067远程代码执行漏洞(CVE-2008-4250) | Windows Server服务RPC请求缓冲区溢出漏洞复现

文章目录

  • MS08-067远程代码执行漏洞(CVE-2008-4250) | Windows Server服务RPC请求缓冲区溢出漏洞复现
  • 1. 概述
    • 1.1 SMB
      • What is SMB?
      • SMB工作原理是什么?
    • 1.2 漏洞简述
    • 1.3 风险等级
    • 1.4 影响范围
    • 1.5 漏洞详情/原理
  • 2. 环境配置
    • 访问测试
  • 3. 漏洞复现
  • 4. 修复建议
  • 5. 总结
  • 6. 漏洞成因
  • 7. References

1. 概述

1.1 SMB

What is SMB?

SMB(Server Message Block)是一个协议服务器信息块,它是一种客户机/服务器、请求/响应协议,通过SMB协议可以在计算机间共享文件、打印机、命名管道等资源,电脑上的网上邻居就是靠SMB实现的;SMB协议工作在应用层和会话层,可以用在TCP/IP协议之上,SMB使用TCP139端口和TCP445端口,SMB使用了NetBIOS的API。

SMB工作原理是什么?

  1. 首先客户端发送一个SMB negport 请求数据报,,并列出它所支持的所有SMB的协议版本。服务器收到请求消息后响应请求,并列出希望使用的SMB协议版本。如果没有可以使用的协议版本则返回0XFFFFH,结束通信。

  2. 协议确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送SessetupX请求数据包实现的。客户端发送一对用户名和密码或一个简单密码到服务器,然后通过服务器发送一个SessetupX应答数据包来允许或拒绝本次连接。

  3. 当客户端和服务器完成了磋商和认证之后,它会发送一个Tcon或TconX SMB数据报并列出它想访问的网络资源的名称,之后会发送一个TconX应答数据报以表示此次连接是否接收或拒绝。

  4. 连接到相应资源后,SMB客户端就能够通过open SMB打开一个文件,通过read SMB读取文件,通过write SMB写入文件,通过close SMB关闭文件。

1.2 漏洞简述

MS08-067漏洞全称是“Windows Server服务RPC请求缓冲区溢出漏洞”,攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC(Remote Procedure Call,远程过程调用)请求,造成栈缓冲区内存错误,从而被利用实施远程代码执行。

1.3 风险等级

评定方式 等级
CVSS Score 10.0
Confidentiality Impact Complete
Integrity Impact Complete
Availability Impact Complete
实现难度
基础权限 不需要
漏洞类型 代码执行+缓存区溢出

1.4 影响范围

Windows 2000 SP4

Windows Server 2003 SP1-2

Windows Server 2008

Windows Vista SP0-1

Windows XP SP1-3

1.5 漏洞详情/原理

MS08-067漏洞是通过MSRPC over SMB通道调用Server程序中的NEtPathCanonicalize函数时触发的。NetPathCanonicalize函数在远程访问其他主机时,会调用NetpwPathCanonicalize函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize函数中发生了栈缓冲区内存错误(溢出),造成可被利用实施远程代码执行(Remote Code Execution)。后续部分我将分析该漏洞的CFG流程图及漏洞成因。

2. 环境配置

主机 系统 IP
靶机 Windows XP 192.168.189.129
攻击机 Kaili 192.168.189.128

注:在配置靶机Windows XP或其他受影响的版本时需要打开TCP默认445端口

访问测试

3. 漏洞复现

  1. Nmap扫描,发现端口及服务漏洞

    nmap -Pn -sV --script=vuln -oN nmap.out victim_ip

    发现445端口开放,及两个漏洞,编号如图

  2. 打开Matespioit,搜索相应漏洞利用模块,并选用

    search ms08-067

    use 0

  3. 设置相应参数,并选着目标所用系统版本

    检查有无遗漏

    运行模块

    成功利用

  4. 提权

    进入Shell

    可能会遇到乱码问题,是选用了中文版XP系统所致,这里换成了英文版就没有乱码了,或者通过chcp 65001解决

    创建高权限用户
    这里也可以打开默认端口3389进行远程桌面连接
    方法如下

    远程桌面默认端口3389,CMD命令如下

    打开:

    REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

    关闭命令:

    REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /f

4. 修复建议

  1. 升级到最新的Windows系统,安装KB958644补丁
  2. 修改远程桌面默认端口,或关闭该服务

5. 总结

6. 漏洞成因

等我学会了再写吧…

可以先参考如下文章

  • MS08-067复现与简单分析
  • 漏洞考古:MS08-067详细分析

7. References

CVE Details (2020) CVE-2008-4250. Available at: https://www.cvedetails.com/cve/CVE-2008-4250/…(Accessed: 30 Aug 2022).

MS08-067远程代码执行漏洞(CVE-2008-4250) | Windows Server服务RPC请求缓冲区溢出漏洞复现相关推荐

  1. [系统安全] 九.Windows漏洞利用之MS08-067远程代码执行漏洞复现及深度防御

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  2. [系统安全] 十.Windows漏洞利用之SMBv3服务远程代码执行漏洞(CVE-2020-0796)及防御详解

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  3. Windows漏洞:MS08-067远程代码执行漏洞复现及深度防御

    摘要:详细讲解MS08-067远程代码执行漏洞(CVE-2008-4250)及防御过程 本文分享自华为云社区<Windows漏洞利用之MS08-067远程代码执行漏洞复现及深度防御>,作者 ...

  4. [网络安全自学篇] 五十九.Windows安全缺陷利用之MS08-067远程代码执行及深度防御解析

    这是作者的网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步.前文分享了Windows远程桌面服务漏洞(CVE-2019-0708)复现,利用 ...

  5. CVE-2021-1675: Windows Print Spooler远程代码执行漏洞

    ** 赶紧点击上方话题进行订阅吧!** 报告编号:B6-2021-062902 报告来源:360CERT 报告作者:360CERT 更新日期:2021-06-29 1 漏洞简述 2021年06月29日 ...

  6. CVE-2021-34527: Windows Print Spooler 蠕虫级远程代码执行漏洞

    报告编号:B6-2021-062902 报告来源:360CERT 报告作者:360CERT 更新日期:2021-07-02 1 更新概览 1.漏洞简述新增360CERT对CVE-2021-34527( ...

  7. linux内核远程漏洞,CVE-2019-11815:Linux内核竞争条件漏洞导致远程代码执行

    *本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担. 运行了Linux发行版的计算机设备,如果内核版本小于5.0.8的话,将有可能受到一 ...

  8. linux内核竞争条件漏洞,Linux内核竞争条件漏洞-导致远程代码执行

    原标题: Linux内核竞争条件漏洞-导致远程代码执行 导读*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担. 运行了Linux发行版 ...

  9. Windows 2003 Server远程代码执行漏洞集合

    目录 MS08-067 CVE-2017-7269 MS08-067 发布日期:2008/10/22 针对端口:139.445 漏洞等级:高危 漏洞影响:服务器服务中的漏洞可能允许远程执行代码 受影响 ...

最新文章

  1. Maven编译jar出现:无法确定 T 的类型参数的异常的原因和处理方案
  2. POJ3270 Cow Sorting ——置换群
  3. 'React/RCTBridgeDelegate.h' file not found
  4. 智能窗帘研究制作_基于51单片机智能窗帘的研究与设计
  5. Oracle X$Tables
  6. rabbitmq 常用的一些命令
  7. Linux常用脚本命令总结
  8. android 自定义view之雷达扫描,基于Android自定义控件实现雷达效果
  9. bootstrap 右自适应 左_Bootstrap自适应布局-网格系统
  10. 4.2V锂电池充电、放电保护电路分享
  11. java设计模式5,接口隔离原则
  12. 安全产品的部署方式及位置
  13. 单条视频播放量破2000w,一首《孤勇者》就能盘活一个账号?
  14. expected `;' before ‘iter’
  15. Linux终端设备文件介绍
  16. 【点云配准-4PCS(2008)】4-Points Congruent Sets for Robust Pairwise Surface Registration
  17. Kali扫描 w3af的使用(一)用户界面和身份认证
  18. 39、基于51单片机声控光控灯人体感应路灯照明灯系统设计
  19. 【Linux之Ubantu——乱记】5.U盘重装Linux系统(惠普)
  20. Redis中如何批量删除key

热门文章

  1. 一个简单的马尔可夫过程例子
  2. 【报告分享】2021中国消费者洞察-埃森哲(附下载)
  3. 5G网络优化工程师的前景好吗?需求大不大?中级最高高达10000!
  4. 什么是多态,多态的实现
  5. args = parser.parse_args()报错
  6. pr预设的卷及内核锐化是什么_PR CC 特效
  7. Java多线程案例-Java多线程(3)
  8. 《情感分析、挖掘观点、情感和情绪》1
  9. Mangos模拟器综合资源贴
  10. 查询快递单号物流,筛选出代收的单号