最近玩机甲旋风光出现链路层** 点了很多次安全登陆都进不去 求高手解答

你有去过十三月嘛 2024-05-18 11:48:40
最佳回答
链路层**是指第三方(可能是运营商、黑客)通过在用户至服务器之间,植入恶意设备或者控制网络设备的手段,侦听或篡改用户和服务器之间的数据,达到窃取用户重要数据(包括用户密码,用户身份数据等等)的目的。链路层**最明显的危害就是帐号、密码被窃取。随着应用安全的发展,大家都比较关注应用安全漏洞,其实在应用层之下的传输层也有很多安全风险,而且这些安全风险正在被广泛利用。比如今天要给大家介绍的tcp链路**攻击。tcp链路**其实就是指网络链路上侦听、伪造tcp包,达到控制目标网络链路的行为。最常见的就是某些设备实现的对非法站点的访问拦截,以及一些地区运营商的网页植入广告行为。因为广域网的链路**影响面大,一般会影响一个地区甚至是全国,所以本文重点讨论广域网的tcp链路**,局域网的**如arp攻击不在讨论范围。目前发现的tcp链路**攻击一般有两种形式:中断访问型(分为单向发包和双向发包)和替换页面型。中断访问型常见于阻止用户访问某些网站,如某些设备禁止用户访问某些站点、某地运营商的禁止adsl多终端上网功能。其原理就是伪造服务端给用户发rst包阻止tcp连接的建立(单向发包)。某些设备做得比较狠,在冒充服务端给用户发rst包的同时也冒充用户给服务端发rst包(双向发包)。替换页面型常见于运营商植入广告,也有篡改正常网页进行seo、骗流量的。笔者见过最恶劣的莫过于钓鱼,如2011年出现过的gmail钓鱼事件以及一些不能告诉你的钓鱼事件。原理也简单,就是在一个http请求后伪造服务端的http响应给客户端。如下图所示就是一次典型的tcp链路**替换页面,我们可以看到,tcp三次握手完成后,http请求包发送后,客户端收到两个http响应包,因为伪造的第一个包(10号)先到,所以第二个正常的http响应包(13号)被客户端忽略了。很明显,在网络上有一个设备,侦听整个会话,当匹配某个特征就抢先发包**会话。这些利用链路**进行的弹窗广告、“技术问题”产生的误拦截、植入代码不慎将页面弄乱、甚至是钓鱼等将会损害用户利益。笔者跟链路**的“不解之缘”就因此而起。要解决链路**先要搞清楚是否是链路**,如是则出问题的大概位置在哪里。链路**是区域性的,一般来讲某地区用户集中投诉,就可以联系用户调查了。用户往往不懂wireshark抓包,还要远程协助,如果网速慢就是悲剧……各种心酸且按下不表。抓到可疑包之后关注两个关键点:ttl值和ip id(identification)。根据实际观测,伪造的tcp包的ttl值和id是不符合逻辑的。比如下图,真实包的ttl是53,id是按顺序自增的,而伪造的包的ttl是64,id始终是0。还有,笔者也见过某地运营商禁止adsl多终端上网功能会伪造id值恒为8888的rst包。通过伪造的ttl值就可以大致定位侦听设备的位置。利用伪造的数据包的ttl值加上当时用户的路由即可定位:数据包每经过一个路由ttl值就会减一,我们找到假的包,看他的ttl(一般初始发出的ttl是256或128或64)减了多少,反推回去就找到出问题的位置了。刚刚那个截图,伪造的的tcp包ttl值是64,也就是可以推测出链路**就发生在局域网内。的确如此,这个case是一个路由器软件进行链路**的案例。有个问题,如果攻击者聪明一些,伪造包定制一个ttl值,就会导致我们难以精确定位。比如某些设备会发三次rst包,每次的ttl都不一样。注意,我说的“难以定位”并非“不能定位”,还是有办法的,需要动动脑子。坏人是很多的,不能每次都被动等待用户投诉,如何主动发现链路**呢?客户端访问目标站点的时候,同一个tcp会话的ttl值发生较大变动,就可以判定为疑似**。以下python代码就是一个利用scapy检测tcp链路**的示例:#!/bin/python# # import sysfrom scapy.all import * conf.verb=0print "tcp hijacking delector by lake2"print "[+] sniffing ...."ip_arr = {}while 1: a=sniff( filter="tcp and src host not 10.26.234.44", count=50) for b in a: ip_src = b.sprintf(r"%ip.src%") ip_ttl = b.sprintf(r"%ip.ttl%") if ip_arr.has_key(ip_src): c = int(ip_ttl) - int(ip_arr[ip_src]) if abs(c) > 4: print ip_src + " has been hijacking !!! debug ** : " + str(ip_ttl) + " <-> " + str(ip_arr[ip_src]) else: ip_arr[ip_src] = ip_ttl print "=>"检测到某些设备拦截笔者在google搜索敏感**的链路**:双向rst的情况,部署在机房的ids也可以发现端倪。如果是替换页面型攻击,页面hash或者html元素个数会有异常,这里也可以作为一个检测点。防范链路**就比较困难,毕竟攻击者控制着网络链路。不过并非不可能。一是网站全程使用ssl。再一个就是在客户端或(和)服务器丢弃伪造的tcp包。比如前面说到的单向中断访问型攻击,就可以丢弃包含伪造特征的tcp包(如id为0或8888)。某些项目就是利用客户端、服务端同时丢弃的方式来**的。最后,我们可以看到广域网一点都不安全,所以敏感信息传输一定要加密,还要高强度加密;高端网页最好有个校验机制;自动升级的程序也一定要校验文件签名。从链路层**的原理来看,我们发现核心的问题是:客户端没有办法识别返回的应答是否真的是服务器返回的,还是第三方返回的,所以简单的信任了第三方的应答,丢弃了真正的应答。所以只要对服务器本身进行身份验证,就可以防止“误接受”恶意应答。https技术就是为此种场景而生,通过一个权威机构,派发证明服务器合法身份的证书,用户的电脑通过检查证书的合法性,来辨别服务器的真假(因为第三方黑客不可能伪造证书)。因此,https网站能有效防御链路层**。腾讯统一安全登录就是用采用了https技术,来防止链路层**。[1]你可能遭到黑客了 20210311
汇率兑换计算器

类似问答
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。