首页
社区
课程
招聘
Grub2认证绕过0DAY漏洞
发表于: 2015-12-16 22:09 3353

Grub2认证绕过0DAY漏洞

2015-12-16 22:09
3353
新闻链接:http://bobao.360.cn/learning/detail/2505.html
新闻时间:2015-12-16 17:54:30
新闻正文:
      在Grub2上发现一枚0day漏洞。版本从1.98(十二月,2009)到2.02(十二月,2015)受到影响。该漏洞可以在某些情况下被利用,允许本地攻击者绕过任何认证(明文密码或Hash)。因此,攻击者可以控制计算机。

grub2是大多数Linux系统使用的一种常用嵌入式系统使用的引导程序。这一漏洞可造成数不胜数的设备受到影响。
如图所示,在Debain 7.5 中我们成功的利用了该漏洞,在qemu下成功get shell。

我是否会受到影响?

你应当赶紧检查你的系统是否存在该漏洞,当Grub访问你的用户名的时候,按退格键28次。如果你的设备重新启动或者你能够get shell,那么你的设备以及被感染了。

影响:

攻击者成功利用此漏洞可以获得一个Grub的rescue shell,Grub的rescue shell是一个非常高权限的shell,有如下权限:

权限的提升:攻击者在不知道有效用户名和密码的情况下进行身份验证。攻击者已经全面进入GRUB“控制台”(grub rescue)。

信息披露:攻击者可以加载特定的内核以及initramfs(例如USB),然后在一个更舒适的环境,将整盘复制或者安装一个rootkit。

拒绝服务攻击:攻击者可以破坏任何数据包括grub本身。即使在这种情况下,磁盘加密,攻击者仍然可以覆盖它,处罚DOS。

关于该漏洞:

故障(bug)发生在GRUB代码1.98以后的版本(十二月,2009)。由提交记录b391bdb2f2c5ccf29da66cecdbfb7566656a704d引入,影响grub_password_get()函数。

有两个函数都受到同一个整数下溢漏洞影响。grub_username_get()和grub_password_get()分别位于grub-core/normal/auth.c 以及 lib/crypto.c 。除了grub_username_get()调用了函数printf()以外,这两个函数基本是一样的。这里描述的PoC是基于grub_username_get()来get shell的。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
很巧合啊
2016-1-11 22:20
0
游客
登录 | 注册 方可回帖
返回
//