标题:内核拒绝服务DOS


内核拒绝服务攻击(DOSDeny of Service),是指通过攻击手段,造成内核崩溃。

 

比如内核中如果存在下面的代码:

 

if(MmIsAddressValid(Buffer)

{

    memcmp(Buffer, buffer2,len);

}

 

由于MmIsAddressValid()函数只能判断一个字节的有效性,那么攻击者只需要传递第一个字节在有效页,而第二个字节在无效页的内存就会导致系统崩溃,例如0x7000是有效页,0x8000是无效页,那么攻击者传入0x7fff,就可以造成此系统的拒绝服务攻击。

 

Windows系统内核产生崩溃的常见原因有:

关闭了无效的HANDLE

在没有ObReferenceObject(pFileObject)的情况下ObDereferenceObject(pFileObject)

引用NULL指针

内存访问越界,BAD POOL HEADER

高中断级访问了缺页内存DRIVER_IRQL_NOT_LESS_OR_EQUAL

 

任何诱发这些崩溃的攻击,都可以认为是DOS攻击。



看文字不过瘾?点击我,进入腾讯课堂视频教学
麦洛科菲长期致力于IT安全技术的推广与普及,我们更专业!我们的学员已经广泛就职于BAT360等各大IT互联网公司。详情请参考我们的 业界反馈 《周哥教IT.C语言深学活用》视频

我们的微信公众号,敬请关注