第27章 破釜沉舟
有些人貌似闲得蛋疼喜欢嚼舌根子,平时自己的工作做不好,看到别人做的比自己好心里酸溜溜的,没事就喜欢聚到一起八卦一下,别人的痛成了他们热聊的话题。
“新来的主任也是个说大话的人,什么三重防护,医院的外网服务器已经停了十分钟了,一点办法也没有。”
“是啊,我听说是临时主任到时候乖乖卷铺盖走人。”有人小声附和。
“唉,唉好像网络可以用了。”刚才说话的人很快就被打脸了。
原来几分钟前沈星海已经找到了对付udp反射放大攻击的办法,网络从几分钟前就已经慢慢恢复了。
udp的反射攻击依靠放大后如洪流般的流量数据,这些流量霸占了医院服务器主机的所有网络带宽,沈星海和艾雅首先对每一个来访的ip的目标端口进行了限速。
这个也可以用排队挂号的例子来说明,病人不再一股脑地全站在挂号大厅里,而是用围栏隔了起来一个一个的排队进入。这样做网络虽然有些卡慢但是不会被挤垮。
接着就是在排队的人中揪出那些没有生病恶意捣乱的人,只需要多派人去询问排队的人得了什么病,有没有病历,有没有什么症状就可以把没有生病恶意排队捣乱的人找出来。
这一步在网络里叫包文长度学习,通过对主机历史包文数据的统计学习,艾雅可以描绘出正常业务包大小的正态分布图,由此可以清晰识别出构造的超大或超小包攻击包文,这样收到异常包文时,艾雅就通知防火墙直接拦下。
凭什么我把一手好牌打得稀烂?久山健表示不服,买了这么多的肉机电脑钱可不能够这样打水漂了,人有时候会在穷途末路的时候,才会有勇气奋力一搏。
现在互联网中数据的传输主要依靠tcp协议为核心的通信系统,如果要建立一次可靠的而有意义的连接,tcp协议必须要确认对方的身份,这个过程中tcp协议会和通信目标建立三次握手。
比如小明要和小红联系,怎么知道对方就是小红呢,怎么告诉他自己是小明,怎么知道和小红的机器已经正常连上了就是依靠三次握手。
第一次握手小明先把syn设置为1, ack设置为0, 顺序号设为x 确认号设置为空发给主机小红。
第二次握手小红在收到信息后把syn设置为1 ,ack设置为1,顺序号设为y ,确认号设为x加1,回传给小明,这看上去像是密语,其中的意思就是说,我知道你是小明,我小红收到你的信息了请回答。
第三次握手小明把syn设置为0 ,ack设置为1 ,顺序号x设置为1, 确认号设置为y加1。回传给小红,这个意思表示小红你的信息我已经收到,我们已经建立连接了,接下来小明和小红就可以在网络里聊家常,谈人生了。
上面的tcp协议三次握手貌似没有可以发动ddos攻击的条件。
接着我来说说syn反射攻击的原理,问题出在第二次握手这一步是小红收到小明发来的信息后要回传个信息给小明,表示知道你是小明,我小红收到你信息了。
考虑到网络环境问题,很有可能这条回传的信息在网路上会丢失,为了确认信息已经牢靠连接,于是我们在tcp协议中加了重传机制。
如果发送第一条消息的人没有回答,重传会重复十次我知道你是小明,我小红收到你的信息了请回答。
如果你觉得对上面的重传机制难以理解,我们模拟个简单点的场景。
你妈妈打电话叫你吃饭:“喂,儿子你听得到吗,老妈烧了红烧肉你中午回来吃饭听到了没有?”
那边你肯定要回答:“喂,喂老妈我听到了,中午回来吃红烧肉。”
第三句你妈回答:“那好你路上小心,再见,挂了。”
没毛病,要是剪掉第三句话你妈就说了头一句,接着你老妈那边什么声音也没有,你肯定会重新说一次:“喂,喂老妈听得到我说话吗,我中午回来。”你老妈还是一点声音也没有。
你还会重复说:“喂,喂老妈听得到我说话吗,我中午回来。”
一般你会重复回复两次,这就是重传机制,你需要重复确认你和你老妈的通话是正常连线的,重复回复两次如果还是没有回答,你就会推测出可能手机出了问题,或者网络出了问题。
稍微改一下中午喊你吃红烧肉的逻辑,你就能够理解syn攻击的原理了。
比方说你是个执拗的人没有听到你妈说再见挂了,你会重复:“喂,喂老妈我听到了,中午回来吃红烧肉。”重复十遍,而你妈一开始就是逗你玩,说一句故意搁着电话不回答。这样你就成了你妈的攻击目标,你不但没有肉吃,还对着空气自己空喊了十次中午回来吃红烧肉。
就是这个场景被像久山健这样的黑客找到了攻击的手段,因为有重传机制你向攻击目标发送一个连接请求,目标主机需要重复十次反复向你确认有没有正常连接,聪明的你一定看出来了这也是个放大器,放大了十倍。
其实这个放大器不能够直接拿来进攻别人,为什么呢?你想想你发一个数据给别人,别人把数据乘以十发回来,那不是直接要干死自己了。
而且这样发送数据自己的ip就直接暴露了,你打别人一拳,别人打你十拳,然后把你彻底关小黑屋。肯定不会有这样的无脑攻击手段,所以就有了syn反射攻击。
久山健只需在第一次向肉机发送攻击数据时,把回传的地址改为医院的主机ip,然后持续向他的肉机主机发送更改动过的连接数据包,这些肉机主机收到连接请求后会直接回复十次确认连接的数据给医院的主机,这一次数据流量被放大了十倍。
syn反射攻击和udp反射攻击同样是消耗网络带宽的攻击,但是syn反射攻击的放大只有十倍,刚才那一波五十倍的攻击虽然一开始取得了成效,但还是被艾雅和沈星海给拦下了。
虽然已经转换了攻击方式对方防守会有些困难,但久山健知道光靠syn反射攻击,威力肯定不如上次udp反射攻击。
怎么办呢,为了加大胜算,只能破釜沉舟选择加上粗暴直接的http洪水,http洪水之所以到最后使用,因为http洪水攻击会无可避免地把自己手里的攻击主机的ip全部暴露。
这一次syn反射攻击加http洪水,双重ddos攻击,是ddos攻击的最后一场战斗,如果失败到时候久山健将再攻击主机可用。