首页
社区
课程
招聘
CVE-2020-16898: "Bad Neighbor " Windows TCP/IP远程代码执行漏洞
发表于: 2020-10-16 17:13 10683

CVE-2020-16898: "Bad Neighbor " Windows TCP/IP远程代码执行漏洞

2020-10-16 17:13
10683
收藏
免费 7
支持
分享
最新回复 (28)
雪    币: 538
活跃值: (157)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
如果感觉这样交流很麻烦 不方便 可以发私信 微信交流 这样更方便
2020-10-22 12:51
0
雪    币: 437
活跃值: (524)
能力值: ( LV3,RANK:27 )
在线值:
发帖
回帖
粉丝
27
KasdnsQ!1 你如果自己逆向过这个函数 调试过 就会发现这个问题了 希望师傅自己实际调试一下
兄弟、你说的是对的。
1、Ipv6pHandleRouterAdvertisement 函数会先对所有的options进行格式检查、失败、直接就退出了、不会走到后面的Ipv6pUpdateRDNSS、所以、当为奇数时、后面如果有非法的包、直接就在前期失败了。
2、而之所以、设置为偶数时可以绕过这个检测、就在于它在检测时、只读取了Length、而没有判断此时的Type类型与Length应该满足的微妙的关系。所以、他会忽略掉精心构造的最后8个B。而这后面的是符合格式规范的option(至少长度、type符合),所以、前期就顺利通过 了。
3、后期执行时、就出现问题了。把那8个B给当成option了。
其实、其应该做的、是在前期校验option时、在增加CurrentMdlOffset时、要结合Type去判断、当Type为0x19时、Length的计算就应该考虑进去了。

最后YY一下:(老实说、我感觉他这个权限检查的地方、好像还有点猫腻,只是瞬间的念头,说不定为基数时、只要能构造些数据把这个给过去、说不定也能给Blue了,这就纯属YY了,哈哈)
2020-10-22 22:02
0
雪    币: 538
活跃值: (157)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
28
GhostValley 兄弟、你说的是对的。 1、Ipv6pHandleRouterAdvertisement 函数会先对所有的options进行格式检查、失败、直接就退出了、不会走到后面的Ipv6pUpdateRDNSS ...
是的 他判断的是 RDNSS Options 以0x10 字节对齐包才正确 如果其他地方计算错误 还是可以操作的
2020-10-23 16:22
0
雪    币: 2150
活跃值: (2006)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
29

各位大佬,请教一下,可不可以修改数据包,在第一个while()循环的位置造成溢出呢

2020-10-26 08:29
0
游客
登录 | 注册 方可回帖
返回
//