智能Intel产品AMT本地及远程提权漏洞 CVE-2017-5689

前言
本博客只做技术研究与分享 , 如果有恶意使用本博客中所涉及到的技术触犯法律 , 本博主概不负责!
环境搭建和涉及到的安全类工具
Kali1.0.9 虚拟机一台Burpsuite 抓包软件Shadan注册用户一个火狐浏览器一个
漏洞介绍
漏洞CVE-2017-5689 , 是英特尔一个高危提权漏洞 , 影响的范围包括过去7年英特尔服务器芯片的远程功能 , 远程攻击者可以利用漏洞来控制存在风险的PC , 笔记本电脑和服务器 。
漏洞的源由是英特尔通过其 vPro 商务处理器平台提供了(AMT)技术 , 这项技术能让IT管理人员远程管理和修复PC、工作站和服务器 。
这项预设的功能使用基于Web的控制页面 , 通过远程端口16992和16993让管理员远程管理系统 。为防止功能被未授权的用户滥用 , AMT服务会使用HTTP摘要认证和验证机制 。权限提升漏洞出现在web控制界面的认证用户环节 。
漏洞分析
1、用户发起登录请求 , 服务器给予响应(nonce、http方法和请求的URL) , 随即 , 用户在登录界面输入用户名、密码 , 客户端发送字符串() , 该字符串是由用户名、密码、nonce值、http方法以及请求的url生成的hash值 。
2、服务器端也会通过数据库中的用户名密码计算一个类似的加密字符串() 。服务器使用()函数对两个字符串进行比较 , 如果二者相符就会让用户登陆Intel AMT Web界面 。
3、Intel AMT漏洞的出现就是由于调用了()函数:
if((,, )) exit(0x99);
在此函数中 , 对和的值进行比较 , 要认证成功 , 变量的值必须等于 , 因此无论长度如何 , ()函数的返回值必须为0 , 方表示验证成功 。
但是写这段代码的程序员错把本应是的长度写成了的长度 , 放到了()函数中 。

智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图
4、因此 , 将值清空 , 即发送空响应 , 将没有字节被检查 , ()返回零 , 表明验证成功 。因而 , 空的响应字符串被认为有效而被执行 , 从而绕过密码核实机制 , 登录管理界面 。
影响的软/硬件版本
智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图
第一代 Core family: 6.2.61.3535第二代 Core family: 7.1.91.3272第三代Core family: 8.1.71.3608第四代Core family: 9.1.41.3024 and 9.5.61.3012第五代Core family: 10.0.55.3000第六代Core family: 11.0.25.3001第七代Core family: 11.6.27.3264
漏洞利用过程
(1)使用已经完成用户注册的搜索可能存在漏洞的链接 , 利用关键字——port:16992
智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图
(2)在查询到的目标中随机搜索一个存在这一漏洞特征的网站打开:
智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图
(3)设置burp suite代理
智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图
(4)开启burp suite拦截 , 并在浏览器中使用(admin/admin)登录
智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图

智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689

文章插图
(5)再次照常把“”置空 , 之后
智能Intel产品AMT本地及远程提权漏洞  CVE-2017-5689