-
-
[原创]0803漏洞利用分析
-
发表于:
2019-7-5 13:07
10274
-
对0803漏洞的利用工具进行改进使其运用在windows server2012系统环境中。已成功。。对之前的分析做个小结。。比较凌乱。而且还存在一些疑惑没有弄明白。。欢迎讨论。另外对360安全研究的技术人员表示忠心的感谢。分享了有关该漏洞的触发原理及利用方法。参考文章见文末。
补充
Aimeier提出直接用SetDIBColorTable和GetDIBColorTable函数即可实现内存任意地址读写。可以不用tagWND。是可行的。
1. buffakePal的0x80偏移处放任意内存地址
SetDIBColorTable和GetDIBColorTable函数可读写3字节,为方便计算,每次读写2字节
读:
增加Readshort函数(一开始函数中两个字节移位相加拼接时一直出错,所以一步一步把值保存出来printf,导致代码有点丑,现在还是不太清楚为什么直接用
unsigned short read = ((unsigned short)number2.rgbGreen << 8) + number2.rgbRed;会出错)
补充
Aimeier提出直接用SetDIBColorTable和GetDIBColorTable函数即可实现内存任意地址读写。可以不用tagWND。是可行的。
1. buffakePal的0x80偏移处放任意内存地址
SetDIBColorTable和GetDIBColorTable函数可读写3字节,为方便计算,每次读写2字节
读:
增加Readshort函数(一开始函数中两个字节移位相加拼接时一直出错,所以一步一步把值保存出来printf,导致代码有点丑,现在还是不太清楚为什么直接用
unsigned short read = ((unsigned short)number2.rgbGreen << 8) + number2.rgbRed;会出错)
Aimeier提出直接用SetDIBColorTable和GetDIBColorTable函数即可实现内存任意地址读写。可以不用tagWND。是可行的。
1. buffakePal的0x80偏移处放任意内存地址
SetDIBColorTable和GetDIBColorTable函数可读写3字节,为方便计算,每次读写2字节
读:
增加Readshort函数(一开始函数中两个字节移位相加拼接时一直出错,所以一步一步把值保存出来printf,导致代码有点丑,现在还是不太清楚为什么直接用
unsigned short read = ((unsigned short)number2.rgbGreen << 8) + number2.rgbRed;会出错)
Aimeier提出直接用SetDIBColorTable和GetDIBColorTable函数即可实现内存任意地址读写。可以不用tagWND。是可行的。
1. buffakePal的0x80偏移处放任意内存地址
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2019-7-9 16:51
被Sebastianasd编辑
,原因: