首页 > 代码库 > 十年磨一剑,霜刃未曾试——杀猪越货利器放送
十年磨一剑,霜刃未曾试——杀猪越货利器放送
这是南方七月一个风少雨多,杀猪越货的早晨。
混迹于IT圈多年,自制若干攻击利器,后门木马等,个人一直低调在用,基本上从未示众,借用唐朝贾岛同学的话说就是“十年磨一剑,霜刃未曾试。”。
今早,就在今早,公布吧——所谓技术这东西,似乎、好像不能一辈子(尤其是在天朝);何况长江后浪推前浪,前浪必然挂在沙滩上;与其被挂,不如主动让路,做后来者的人梯,让生命成为桥梁(^_*)。再次套用贾岛同学的话就是“今日把示君,谁有不平事?”。
好了,废话和牢骚一大通,下面进入正题。今天公布一个私家拒绝服务工具,其威力太大,攻击力太猛(使用者在合理配置硬件资源后,能接近线速的发包率,这里我不能多说),大家要谨慎使用,仅可用作拒绝服务的研究,发包测试之用,切勿用于商业目的或主动攻击有关服务器去敲诈勒索捞金,否—则(说话有点困难了)始作俑者的本人也不能追究你的法律责任,只是说:“人在做,天在看,你自己看着办吧!”。
(发包攻击前)
(发包攻击中)
几个概念。
1、bit与Byte
在计算机科学中,bit是表示信息的最小单位,叫做二进制位;一般用0和1表示。Byte叫做字节,由8个位(8bit)组成一个字节(1Byte),用于表示计算机中的一个字符。bit(比特)与Byte(字节)之间可以进行换算,其换算关系为:1Byte=8bit;同时记下如下的公式:
1Byte=8bit
1KByte=1024Byte
1MByte=1024KByte
2、bps与pps的概念
bps:bit per second比特每秒即表示每秒传输多少位的信息。网络运营商所用的单位就是bps,比如我们常见的很多用户从电信或网通办理的2M,这里的2M指的也就是2Mbps=0.25MBps=256KBps(也说明了用户为什么用迅雷等软件下载的时候2M为什么最大也就200多K)
pps: Packet Per Second 包每秒即表示每秒转发多少数据包。是网络、路由设备性能的线速处理能力常用指标。通常而言,网络设备的转发性能以“包转发性能”来表示,即设备在单位时间内能够处理多少个“包”决定了设备转发能力的强弱。在这里,无论是大包、还是小包都具有相同的包转发率(如果是超大包则需要考虑MTU(最大传输单元)值的问题)。包转发性能比较常见的单位是“PPS”,即Packet Per Second(包每秒)。
所以设备是否能够达到线速通常以短包来进行计算,如果小包能够达到某一带宽的线速,则我们说设备或设备的接口则能够达到线速。
PPS如何计算:以64字节短包计算(以太网帧最短为64字节,至于为什么最短是这个,大家自己找答案去,本利器结合MTU,可以发送小于64字节的包)。
根据以太网的CSMA/CD的工作原理,报文在发送之前,要先侦听一段时间,如果在这段时间内线路空闲,则可以发送;以太网帧结构为8个字节的前导码,其中7个字节为AA(其二进制形式为01010101)用于与接收端同步,因为电平一高一低,很容易取得同步;第8个字节为AB(帧定界符),用于定界,标明从现在开始后面的内容真正的是以太网帧了。综上所述,一个最短帧其实际长度为:
(12+7+1+64)*8=84*8=672bit
3、bps与pps之间的换算
由于以太网的包长是不定长的,因此,不同的包长在线速情况下的转发能力是不一样的。rfc2544也建议以下包长做为测试的标准, 64、128、256、512、1024、1280、1518字节。此处给出千兆环境下有单向转发包长为64字节的理论PPS,以GE(1000Mbps,1000 Mega Bits Per Second)接口为例:
pps=1000M/〔(64+7+1+12)×8〕=1488095pps,即1.488Mpps
100BASE-TX接口线速吞吐量 148,810pps ,约为0.148Mpps
1000BASE-T/S/LX接口线速吞吐量 1,488,095pps,约为1.488Mpps
至于什么是拒绝服务,相关原理等,想用这工具的人都明白,不用这工具的人也不需要明白。但我现在不管你明白不明白,都请诸位看官自己去维基百科或看相关文档吧!下面,精彩部分到来:介绍一下参数用法。
pser,原为PacketSender之简写,使用简介如下:
pser -d 目标地址 -r 目标端口。随机源地址随意端口的SYN Flood攻击包;不带-a参数默认TCP包;-f 0x01则发送FIN包,其他分别如下:
FIN 0x01
SYN 0x02
RST 0x04
PSH 0x08
ACK 0x10
URG 0x20
pser -n(发包数,-n 0为无休止)
pser -a 1000 (发UDP Flood攻击包)
pser -a 2000 (发ICMP Flood攻击包;类型和代码参考相关协议)
最后,我把它封装到一个只有十多兆的CDLinux里,猛击这里下载。大家可以用Virtual PC,VMware Workstation,VirtualBox等来运行;至于Windows8/8.1的Hyper-V下,建议网卡用旧版,以避免无法加载(不支持)驱动而找不到网卡的悲剧。
介绍和公布完毕,大清早的刚起床,洗洗吃早点去吧!
本文出自 “星星落在我头上” 博客,请务必保留此出处http://staronmytop.blog.51cto.com/6366057/1437313