Teardrop攻击的原理是什么?

来源:百度知道 编辑:UC知道 时间:2024/07/04 17:47:43
Teardrop攻击的原理是什么?
该程序是在TCP/IP哪一个层次上实现的,使用
什么协议?

UINT MyThreadProc( LPVOID pParam )
{
CMyObject* pObject = (CMyObject*)pParam;
if (pObject == NULL ||
!pObject->IsKindOf(RUNTIME_CLASS(CMyObject)))
return 1; // if pObject is not valid
// do something with 'pObject'
return 0; // thread completed successfully
}
// inside a different function in the program
main(int argc char *argv[])
{
pNewObject = new CMyObject;
AfxBeginThread(MyThreadProc, pNewObject);
}

Teardrop攻击是一种拒绝服务攻击。

攻击特征:Teardrop是基于UDP的病态分片数据包的攻击方法,其工作原理是向被攻击者发送多个分片的IP包(IP分片数据包中包括该分片数据包属于哪个数据包以及在数据包中的位置等信息),某些操作系统收到含有重叠偏移的伪造分片数据包时将会出现系统崩溃、重启等现象。(利用UDP包重组时重叠偏移(假设数据包中第二片IP包的偏移量小于第一片结束的位移,而且算上第二片IP包的Data,也未超过第一片的尾部,这就是重叠现象。)的漏洞对系统主机发动拒绝服务攻击,最终导致主机菪掉;对于Windows系统会导致蓝屏死机,并显示STOP 0x0000000A错误。)

检测方法:对接收到的分片数据包进行分析,计算数据包的片偏移量(Offset)是否有误。

反攻击方法:添加系统补丁程序,丢弃收到的病态分片数据包并对这种攻击进行审计。