分享

关于dns欺骗和劫持的问题,Windows为什么不能识别替换或自组dns响应包?

 昵称11935121 2018-04-30

“我是哟哟吼说科技,专注于数据网络的回答,欢迎大家与我交流数据网络的问题”

如题,windows为什么不能识别替换或自组的DNS响应包?

因为没有重新计算UDP/TCP的校验和。

下面哟哟先来解释两者的概念,然后再进行问题的解答。

DNS欺骗:是指攻击者冒充域名服务器的一种欺骗方式,当某用户访问某网站时,攻击者会冒充域名服务器,回应自身的IP地址,使得用户无法访问正确的地址。

DNS劫持:是指拦截网络范围内解析请求,将域名对应的IP地址进行人为的修改,导致访问某网站时会重新被定位到另外一个IP地址。

哟哟个人认为从这两个概念本身来看,都是将解析请求拦截掉,然后重新定义一个域名与IP地址的对应关系,感觉DNS欺骗和DNS劫持其实是一种原理。这种技术实现有利又有弊:

利的方面是运营商可以将DNS进行优化,在访问某些资源时可以人为定位到最优的资源服务提供商内;

弊的方面是黑客可能根据这种技术来进行攻击,导致大量用户访问互联网时被重定向到黑客自身设置的地址。

了解到这种技术的概念和原理后来解答此题:

不论是DNS欺骗还是DNS劫持,原理都是篡改了DNS的客户请求/服务器回应内的IP地址,搞网络的都清楚,DNS是工作在传输层的53号端口。

在传输层的TCP和UDP协议上都有体现,那么就有两种定义:

1、UDP协议

DNS在基于UDP的请求或应答时,最直接的就是Disabled UDP头的校验和,UDP的校验和是可选项,因此将CRC赋值为0就行了;

2、TCP协议

DNS基于大数据块的请求或应答时,同步传输则使用TCP来进行,其中校验和是必须选项,因此在你修改IP等信息时,你必须重新进行校验和的计算,用重新计算出的校验和去覆盖原来的校验和才能完成通信。

欢迎大家多多关注我,在下方评论区说出自己的见解。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多