python渗透编程,python渗透测试编程技术

  python渗透编程,python渗透测试编程技术

  另一方面,背景1。拒绝服务攻击是指攻击者停止目标设备服务的方法,是黑客常用的攻击手段之一。

  2.实际上,对网络带宽的消耗性攻击只是拒绝服务攻击的一部分。如果它可以干扰目标,暂停一些服务或使主机崩溃,这就是拒绝服务攻击。

  3.由于网络协议本身的安全缺陷,拒绝服务攻击问题一直没有得到合理的解决,拒绝服务攻击也成为了攻击者的终极手段。

  拒绝服务攻击不是一种攻击方法,而是具有相似特征的攻击方法的集合。

  4.黑客可能利用TCP/IP协议层的数据链路层、网络层、传输层、APP应用层的各种协议漏洞,发起拒绝服务攻击。按照以下协议的步骤,介绍各种拒绝服务攻击及实现方法。

  二、数据链路层拒绝服务攻击1。数据链路层拒绝服务攻击模式

  它的目标是双层交换机。

  这种攻击的目的不是停止二层交换机,而是让它运行不正常的方式工作

  开关异常的动作方法是什么?将开关设置为“集线器

  根据交换机的特点,当CAM表已满时,如果收到未知的单播帧,则该帧为广播处理。此时,被攻击的交换机实际上变成了一个集线器。在这种情况下,黑客只要在电脑上将网卡设置为混合模式,就可以拦截全网的通信。

  这是用来完成这次攻击的专用工具macof。这个工具的使用非常简单。以下是该工具的使用格式。

  Usage: macof[-s src][-d dst][-e tha][-x sport][-y dport][-i interface][-n times]

  在APP的实际应用中,参数只使用-i,用来指定发送这些伪造数据包的网卡。

  macof的使用方法很简单。键入macof启动该工具。

  root@kali:# macof

  交换机被攻击后,内部CAM表很快就填满了。

  当交换机退化为集线器时,它会广播所有接收到的数据包,因此无法正常向局域网提供传输功能。实现这一点的过程很简单。

  2.操作步骤

  (1)步骤1)建立随机MAC和IP。scapy模块的**RandMAC)RandIP) *很容易做到这一点,还可以生成http://www等固定网段IP。新浪网

  执行结果:

  创建其他格式的随机包:

  )步骤2)如果数据包包含指定的源IP和MAC,交换机将记录ARP数据包和其他信息。

  *ether(src=randMAC),dst= ff : ff : ff : ff (/ARP ) op=2,scr="0.0.0.0 ,HWDR

  或ICMP数据包:RandIP(“192.168.1.*”)

  模拟macof的完整代码如下

  三、位于网络层拒绝服务攻击网络层的协议有ARP、IP、ICMP等。

  其中,ICMP主要用于在IP主机和路由器之间传递控制消息。

  平时用来检测网络连接的Ping命令是基于ICMP的。

  请尝试使用Ping命令。

  对于这次互联网控制消息协议设置的3358www.Sina.com/,Ping命令发送的数据包大小可以指定为-1。该值通常指定为65500。这样配置的数据包称为“Ether(src=RandMAC(),dst=RandMAC())/IP(src=RandIP(),dst=RandIP())/ICMP()”。这是因为早期的系统无法处理如此大的ICMP数据包。

  虽然目前的系统没有这个问题,但是你可以考虑通过这种方式向目标连续发送这个“死亡ping”:http://www。Sina.com/

  目前的操作系统和CPU有能力处理这个量级的数据包。

  既然对方可以承受这个速度的数据包,那么这里的拒绝服务攻击就没有作用了,足够大

  主要是死亡之Ping

  除了上述使用本地地址继续向目标发送ICMP数据包的方法之外,还可以使用3358www.Sina.com/继续向目标发送ICMP数据包。在这种攻击模式下,最终淹没3358www.Sina.com/目标的洪水不是攻击者发出的。

  ,而且不是伪造IP发的,是正常通信的服务器发出的

  除了前面使用的RandIP()之外,还可以使用下面的方法来模拟一个随机的IP地址。

  I . src=" % I . % I . % I " %(random.randint(1,254),random.randint(1,254),random.randint(1,254),random.randint(1,254),random . randint(1,254))

  id.dst=

  发送(IP(dst=" 1.2.3.4")/ICMP())

  下面给出了一个完整的攻击程序。

  使用WireShark捕获传出的数据包,您可以看到ICMP请求被快速发送到1.1.1.1的各个地址,该地址在收到请求后会很快向1.1.1.1发回答复。这是第三种攻击方式。

  四。传输层1.TCP(传输控制协议,传输控制协议)中的拒绝服务攻击

  这是一种面向连接的、可靠的、基于字节流传输层通信协议。

  TCP是互联网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求时,等待对方应答SYN ACK,最后对对方的SYN进行ACK确认。这种建立连接的方法可以是防止产生错误连接。

  2.2的过程。TCP三次握手如下

  (1)客户端发送一个SYN(SEQ=x)包给服务器,进入SYN_SEND状态。

  (2)服务器收到客户端的SYN消息后,响应一个SYN(SEQ=y)ACK(ACK=x 1)数据包,进入SYN_RECV状态。

  (3)客户端从服务器接收SYN包,响应ACK(ACK=y 1)包,进入建立状态。

  3.与针对ICMP和UDP的拒绝服务攻击不同,基于TCP的攻击是面向连接的。你只需要和目标主机的端口建立大量的TCP连接,这样目标主机的连接表就可以填满,不会再收到新的连接。

  基于TCP的拒绝攻击有两种类型:

  一种是完成与目标端口建立一个完整连接的三次握手;

  另一种是只完成与目标端口的前两次三次握手,建立一个不完整的连接

  攻击者会向目标端口发送大量设置了SYN标志的TCP包,被攻击的服务器会根据这些包建立连接,并将连接信息存储在连接表中。但是,攻击者不断发送SYN包,很快就会填满连接表,此时被攻击的服务器无法接收新的连接请求。

  攻击者会向目标端口发送大量设置了SYN标志的TCP包,被攻击的服务器会根据这些包建立连接,并将连接信息存储在连接表中。但是,攻击者不断发送SYN包,很快就会填满连接表,被攻击的服务器将无法接收新的连接请求。

  pdst= “%i.%i.%i.%i” % (random.randint(1,254),random.randint(1,254),random.randint(1,254),random.randint(1,254))

  攻击目标时,使用端口为80的TCP,并将标志位设置为syn。

  TCP(dport=80, flags=“S”)

  完整的程序如下所示。

  执行该程序,将参数设置为192.168.0.116,并使用WireShark捕获这些数据包。执行结果如下图所示。

  5.应用层有很多协议,如HTTP、FTP、DNS、DHCP等。这些协议中的每一个都可以用来发起拒绝服务攻击。

  DHCP为例,DHCP(动态主机配置协议)通常应用于大规模局域网环境。其主要功能是集中管理和分配IP地址,使网络环境中的主机可以动态获取IP地址、网关地址、DNS服务器地址等信息。提高地址利用率。

  主DHCP的过程如图所示。

  DHCP攻击的目标也是服务器( DHCP )。恶意用户伪造大量DHCP请求报文发送到服务器。导致DHCP服务器地址池中的IP地址会被快速分配,导致合法用户无法申请IP地址。

  同时,大量的DHCP请求也会导致服务器高负载运行,导致设备瘫痪。

  先写一个程序在网络中搜索DHCP服务器,只在网络中广播DHCP的discover包,源端口68,目的端口67。这个构建过程涉及多个层面。

  dhcp_discover = Ether(dst=“ff:ff:ff:ff:ff:ff”)/IP(src=“0.0.0.0”,dst=“255.255.255.255”)/UDP(sport=68,dport=67)/BOOTP()/DHCP(options=[(“message-type”,“discover”),“end”])

  完整的程序如下所示。

  此时可以打开WireShark,将过滤器设置为udp,然后执行上面的程序。

  分析数据包后,我们可以看到网络中有一台DHCP服务器,地址为192.168.26.254。

  这个程序也可以用来检测网络中的非法DHCP服务器

  本节使用了两种工具,

  一个是Yersinia,是非常强大的拒绝服务攻击工具,一个是Metasploit

  耶尔森氏菌进行DHCP攻击实验,是一个图形化工具。在命令行输入“yersinia -G”就可以图形界面的形式启动这个工具。

  root@kali:# yersinia -G

  基于DHCP的攻击总共提供了四种契约形式,这四种模式的含义如下。

  (1)sending RAW packet:发送原始数据包。

  (2)sending DISCOVER packet:发送请求获取IP地址的数据包,占用所有IP,导致拒绝服务。

  (3)creating DHCP rogue server:创建一个假的DHCP服务器,让用户连接。真正的DHCP不能工作。

  (4)sending RELEASE packet:向DHCP服务器发送释放IP的请求,使所有使用中的IP失效。

  理论上,所有提供连接的协议都可能受到拒绝服务的攻击。Metasploit提供了很多针对各种协议的拒绝服务攻击模块,所以你可以启动Metasploit,查询并使用其中对应的模块。

  root@kali:# msfconsole

  成功启动Metasploit后,可以使用search命令查找与DoS(拒绝服务攻击)相关的模块。

  仍然使用这里的模块对目标进行SYN拒绝服务攻击,使用辅助/dos/tcp/synflood模块完成这个攻击。首先,选择相应的模块:

  msf use auxiliary/dos/tcp/synflood

  使用“显示意见”查看本模块的参数。

  Synflood需要参数,包括RHOST、RPORT、SNAPLEN和TIMEOUT。后三个参数都有默认值,所以只需要设置RHOST,就是将要发起拒绝服务攻击的服务器的IP地址。该目标必须是向外界提供HTTP服务的服务器。

  将参数设置为目标192.168.26.101。

  然后,您可以使用exploit命令发起攻击。

  如果事先获得了足够的目标信息,还可以利用目标主机上的一些特定服务进行拒绝服务攻击。

  例如,许多人有两台以上的电脑。一个在上班,一个在家。如果你在工作时间没有完成所有的工作,你可以远程连接家里的电脑。但这需要计算机提供远程控制服务。

  Windows操作系统提供远程桌面协议,这是一种多通道协议。用户可以使用此协议(客户端或“本地计算机”)连接到提供Microsoft终端服务的计算机(服务器或“远程计算机”)。

  但是,微软提供的这项服务被发现存在编号为MS12-020的漏洞。当Windows处理一些RDP消息时,终端服务器出现错误,利用此错误可导致服务停止响应。默认情况下,任何Windows操作系统上都不启用远程桌面协议(RDP)。未启用RDP的系统不会受到威胁。

  或者在Metasploit中启动相应的模块:

  msf use auxiliary/dos/windows/rdp/ms12_020_maxchannelids

  使用“显示选项”查看该模块要使用的参数。

  这个模块的参数也很简单,只需要设置一个RHOST,就是目标的IP地址,这里设置为192.168.0.116。

  设定攻击目标后,就可以攻击目标了。使用run命令攻击:如果成功,主机将关闭。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: