http://www.freebuf.com/fevents/104106.html14:30 AM
来自美国加州大学的选手曹跃在不共享链路(非中间人攻击)的情况下截取电脑与服务器的 TCP 链接,成功弹出一个钓鱼页面,盗走用户密码。而这个 TCP 协议栈的漏洞,会影响几乎全部的安卓和 Linux 系统。曹跃成功重现了当年世界头号黑客凯文米特尼克完成的 TCP 劫持。
1 、 TCP 是什么?
在互联网启蒙时期,不同的开发者使用了不同通信方式,而为了让通信成功并且可靠,要求所有主机都使用相同的语言,而非各自的“方言”。这时“协议”便出现了,通俗地说就是一种大家约定好的通信方式。
TCP 的全名为传输控制协议,是上世纪 60 年代由麻省理工学院和一些商业组织为美国国防部开发的,作为目前世界上应用最为广泛的协议,被用于网站、邮件及即时通讯网络连接中。
TCP 提供一种面向连接的、可靠的字节流服务。面向连接意味着两个使用 TCP 的应用(通常是一个客户和一个服务器)在彼此交换数据包之前必须先建立一个 TCP 连接。这一过程与打电话很相似,先拨号振铃,等待对方摘机说“喂”,然后才说明是谁。
2 、 TCP 劫持 /破解 TCP 序列号为什么被视为“不可能的任务”?
当主机与服务器通过 TCP 协议建立初始连接时,它们之间会发送一系列数据包,来创建一个连接。 TCP 协议要求把传输的数据分成大小适合的“包”,并给每个“包”一个序列号,接受者成功接收后也会发回一个相应的确认号( ACK )。
因此是否能够有效劫持一个连接,取决于攻击者是否能够预测出 TCP 序列号和端口号。序列号这是一个 32 位随机数,有 40 多亿种可能;端口号则 6 万多种可能,两者相叠加一共有超过 280 万亿种可能。在实际网络环境中,由于网络带宽以及相应 TCP 连接持续时长有限,这样的连接是不可能被暴力猜解的。当今 TCP 连接序列号的设计就是为了防止被破解。
--------
这个新闻说的很牛逼,而且微博上说是『知道 IP 地址就能发起攻击』,然而真正实现并没说。所以到底是咋回事儿?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/278301
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.