如何使用Python多线程测试并发漏洞


Posted in Python onDecember 18, 2019

这篇文章主要介绍了如何使用Python多线程测试并发漏洞,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

需求介绍

有时候想看看Web应用在代码或者数据库层有没有加锁,比如在一些支付、兑换类的场景,通过多线程并发访问的测试方式可以得到一个结论。

步骤

1. Burp Suite安装插件

安装一个Copy As Python-Requests插件,提高编码效率;

如何使用Python多线程测试并发漏洞

2. 拦截包并拷贝发包的代码

如何使用Python多线程测试并发漏洞

打开一个文本编辑器,右键粘贴出来:

import requests

burp0_url = "https://www.baidu.com:443/s?word=test123&tn=50000021_hao_pg&ie=utf-8&sc=UWd1pgw-pA7EnHc1FMfqnHRdnHfkP163PWD3PzuW5y99U1Dznzu9m1Y1rj0zPjRYP1Ds&ssl_sample=s_108&srcqid=2890185856410820647&H123Tmp=nu"
burp0_cookies = {"BAIDUID": "DE39C3557AA883A517F3717D9ED1B346:FG=1", "BIDUPSID": "DE39C3557AA883A517F3717D9ED1B346", "PSTM": "1548660573", "BD_UPN": "13314352", "H_PS_PSSID": "1431_21111_18560_28585_26350_28519", "H_PS_645EC": "0701XLkxqPa8GpBa6wBJs%2BrZyNuhMOA%2FIRfHCR7YuUcETmxXSKm0g32CT0c", "delPer": "0", "BD_CK_SAM": "1", "PSINO": "1", "BDSVRTM": "142"}
burp0_headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0", "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", "Accept-Encoding": "gzip, deflate", "Referer": "https://www.hao123.com/", "Connection": "close", "Upgrade-Insecure-Requests": "1"}
requests.get(burp0_url, headers=burp0_headers, cookies=burp0_cookies)

3. 运行Python多线程代码

将生成的python代码粘贴到action( )函数里面即可;

import threading
import requests

threads = []

def action():
  burp0_url = "https://www.baidu.com:443/s?word=test123&tn=50000021_hao_pg&ie=utf-8&sc=UWd1pgw-pA7EnHc1FMfqnHRdnHfkP163PWD3PzuW5y99U1Dznzu9m1Y1rj0zPjRYP1Ds&ssl_sample=s_108&srcqid=2890185856410820647&H123Tmp=nu"
  burp0_cookies = {"BAIDUID": "DE39C3557AA883A517F3717D9ED1B346:FG=1", "BIDUPSID": "DE39C3557AA883A517F3717D9ED1B346",
           "PSTM": "1548660573", "BD_UPN": "13314352", "H_PS_PSSID": "1431_21111_18560_28585_26350_28519",
           "H_PS_645EC": "0701XLkxqPa8GpBa6wBJs%2BrZyNuhMOA%2FIRfHCR7YuUcETmxXSKm0g32CT0c", "delPer": "0",
           "BD_CK_SAM": "1", "PSINO": "1", "BDSVRTM": "142"}
  burp0_headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0",
           "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
           "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
           "Accept-Encoding": "gzip, deflate", "Referer": "https://www.hao123.com/", "Connection": "close",
           "Upgrade-Insecure-Requests": "1"}
  requests.get(burp0_url, headers=burp0_headers, cookies=burp0_cookies)


if __name__ == '__main__':
  print("Threading ready:")

  for i in range(0,100):
    t = threading.Thread(target=action)
  t.setDaemon(True) // 开启守护进程,如果宿主进程挂了,不用执行完全部线程任务也要立即结束。 参考 https://www.cnblogs.com/Haojq/p/10278365.html
  t.start()

  print("Threading ran end!")

4. 确认结果

查看领取的结果是否有超过原本的数量,如果超过就原本可领的数量,那就666了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3.3实现乘法表示例
Feb 07 Python
深度剖析使用python抓取网页正文的源码
Jun 11 Python
python实现用户登陆邮件通知的方法
Jul 09 Python
关于Python中Inf与Nan的判断问题详解
Feb 08 Python
Python读取图片为16进制表示简单代码
Jan 19 Python
python利用微信公众号实现报警功能
Jun 10 Python
python 高效去重复 支持GB级别大文件的示例代码
Nov 08 Python
创建Django项目图文实例详解
Jun 06 Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
Feb 13 Python
在django中查询获取数据,get, filter,all(),values()操作
Aug 09 Python
python基础学习之生成器与文件系统知识总结
May 25 Python
Python实现图像去噪方式(中值去噪和均值去噪)
Dec 18 #Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 #Python
Django中使用MySQL5.5的教程
Dec 18 #Python
Python hashlib加密模块常用方法解析
Dec 18 #Python
Python实现中值滤波去噪方式
Dec 18 #Python
详解Python中字符串前“b”,“r”,“u”,“f”的作用
Dec 18 #Python
Python字典底层实现原理详解
Dec 18 #Python
You might like
Php Ctemplate引擎开发相关内容
2012/03/03 PHP
php在线解压ZIP文件的方法
2014/12/30 PHP
linux下实现定时执行php脚本
2015/02/13 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
PHP实现正则匹配所有括号中的内容
2018/06/22 PHP
php伪静态验证码不显示的解决方案
2019/09/26 PHP
js function定义函数使用心得
2010/04/15 Javascript
javascript onmouseout 解决办法
2010/07/17 Javascript
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
JS自调用匿名函数具体实现
2014/02/11 Javascript
Vue表单验证插件Vue Validator使用方法详解
2017/04/07 Javascript
jQuery实现的页面遮罩层功能示例【测试可用】
2017/10/14 jQuery
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
vue将单页面改造成多页面应用的方法
2018/11/25 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
JS前端知识点总结之页面加载事件,数组操作,DOM节点操作,循环和分支
2019/07/04 Javascript
JavaScript this在函数中的指向及实例详解
2019/10/14 Javascript
Vue实现简易计算器
2020/02/25 Javascript
详解python中xlrd包的安装与处理Excel表格
2016/12/16 Python
python机器学习之神经网络实现
2018/10/13 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
python中lower函数实现方法及用法讲解
2020/12/23 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
GNC健安喜官方海外旗舰店:美国著名保健品牌
2017/01/04 全球购物
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
盛大二次面试题
2016/11/18 面试题
护理职业应聘自荐书
2013/09/29 职场文书
端午节粽子促销活动方案
2014/02/02 职场文书
技能竞赛活动方案
2014/02/21 职场文书
学生自我评语大全
2014/04/18 职场文书
会计系毕业生求职信
2014/05/28 职场文书
2015年个人自我剖析材料
2014/12/29 职场文书
2015年财务工作总结范文
2015/03/31 职场文书
基于HTML十秒做出淘宝页面
2021/10/24 HTML / CSS
Python装饰器的练习题
2021/11/23 Python