SQLmap可以使用以下哪些注入方式。()
0x00 前言
现在的网络环境往往是WAF/IPS/IDS保护着Web 服务器等等,这种保护措施往往会过滤挡住我们的SQL注入查询链接,甚至封锁我们的主机IP,所以这个时候,我们就要考虑怎样进行绕过,达到注入的目标。因为现在WAF/IPS/IDS都把sqlmap 列入黑名单了,呵呵!但是本文基于sqlmap 进行绕过注入测试,介绍至今仍然实用有效的技巧,以下策略在特定的环境能够成功绕过,具体是否绕过,请仔细查看输出的信息。
0x01 确认WAF
首先我们判断该Web 服务器是否被WAF/IPS/IDS保护着。这点很容易实现,因为我们在漏扫或者使用专门工具来检测是否有WAF,这个检测,在nmap 的NSE,或者WVS的策略或者APPSCAN的策略中都有,我们可以利用这些来判断。在此我们,也介绍使用sqlmap 进行检测是否有WAF/IPS/IDS
root@kali:~# sqlmap -u "http://yiliaokingdeecom/contentsphpid=51&types=4" --thread 10 --identify-waf#首选
root@kali:~# sqlmap -u "http://yiliaokingdeecom/contentsphpid=51&types=4" --thread 10 --check-waf#备选
0x02 使用参数进行绕过
root@kali:~# sqlmap -u "http://yiliaokingdeecom/contentsphpid=51&types=4" --random-agent -v 2 #使用任意浏览器进行绕过,尤其是在WAF配置不当的时候
root@kali:~# sqlmap -u "http://yiliaokingdeecom/contentsphpid=51&types=4" --hpp -v 3#使用HTTP 参数污染进行绕过,尤其是在ASPNET/IIS 平台上
root@kali:~# sqlmap -u "http://yiliaokingdeecom/contentsphpid=51&types=4" --delay=35 --time-sec=60 #使用长的延时来避免触发WAF的机制,这方式比较耗时
root@kali:~# sqlmap -u "http://yiliaokingdeecom/contentsphpid=51&types=4" --proxy=211211211211:8080 --proxy-cred=211:985#使用代理进行注入
POST注入 有两种方法来进行post注入,一种是使用--data参数,将post的key和value用类似GET方式来提交。二是使用-r参数,sqlmap读取用户抓到的POST请求包,来进行POST注入检测。 查看payload 之前一直是加本地代理,然后用burpsuit来看sqlmap的pa
SQLmap可以使用以下哪些注入方式。()
A 基于布尔的SQL盲注(正确答案)
B 基于显错的SQL注入(正确答案)
C 基于UNION注入(正确答案)
D 基于时间的SQL盲注(正确答案)
网络安全专业的学生可以获得以下技能:
网络基础知识:了解计算机网络、互联网、通信协议、路由和交换技术等基础知识。
安全概念:了解信息安全的基本概念和原则,包括保密性、完整性、可用性、身份验证和访问控制等。
攻击和防御技术:了解常见的网络攻击类型,如拒绝服务攻击、SQL注入攻击、社交工程攻击等,以及相关的防御技术。
安全评估:掌握安全评估技术,如漏洞扫描、渗透测试、红队/蓝队演练等,以识别和缓解潜在的安全风险。
安全措施:了解安全措施的实施和管理,如访问控制、加密、日志记录、备份等。
法律和合规性:了解相关的法律法规和合规性要求,如GDPR、HIPAA、PCI-DSS等,以及如何保持合规性。
沟通和管理技能:学习如何与其他团队成员、管理层和客户沟通,以及如何管理和协调安全项目。
综上所述,网络安全专业需要学习的技能非常广泛,涉及到技术、法律、管理等多个方面,以帮助他们成为综合能力强的网络安全专业人员。
1、首先是burp设置记录log 2、把记录的log文件放sqlmap目录下 3、sqlmap读log自动测试: python sqlmappy -l 文件名 --batch -smart batch:自动选yes。 smart:启发式快速判断,节约时间。 4、最后能注入的url会保存到out文件夹下。
参考: https://wwwwlhhlctop/posts/14827
开始sqlmap的使用,提示使用 --refer 绕过refer检查:
注意,最后一句不加 --dump 会直接把数据写入文件中,不显示在终端上。
提示如下:
提示如下:
提示需要api鉴权:
可以看到,每次请求之前会进行如下url的调用:
最终的命令如下:
提示我们需要闭合:
查询语句中也的确是这样的:
不过sqlmap会帮我们处理这个,所以不需要在意,命令和上一题一样:
对传入的参数开始过滤了,使用tamper应对。
这一题过滤了空格,可以使用注释进行绕过,使用sqlmap自带的space2commentpy进行绕过:
space2commentpy如下:
当然也可以使用 %09 之类的来进行绕过。
对小写的 select 和空格进行了绕过,不过sqlmap中的select都是大写的,所以和上一题一样即可:
过滤了空格,号和等号,使用 %09 绕过空格,使用 like 绕过等号,基于此改一下tamper即可:
命令如下:
base64和反转字符串连着来,按着逻辑写脚本即可:
命令如下:
多加了一个空格过滤,用注释绕过:
命令如下:
除了base64和反转字符串,还过滤了空格和号,那么使用 %09 绕过空格:
命令如下:
提示了使用 --os-shell :
–os-shell 其本质是写入两个shell文件,其中一个可以命令执行,另一个则是可以让我们上传文件;
不过也是有限制的,上传文件我们需要受到两个条件的限制,一个是网站的绝对路径,另一个则是导入导出的权限
在mysql中,由 secure_file_priv 参数来控制导入导出权限,该参数后面为null时,则表示不允许导入导出;如果是一个文件夹,则表示仅能在这个文件夹中导入导出;如果参数后面为空,也就是没有值时,则表示在任何文件夹都能导入导出
命令如下:
如图,获得了shell:
上图中出现了两个php文件,分别是tmpbvrciphp和tmpuuvbophp,这就是前面所提到的sqlmap上传的两个shell文件。
tmpbvrciphp用于命令执行:
而tmpuuvbophp用于文件上传:
获得flag:
它是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MS-SQL,,MYSQL,ORACLE和POSTGRESQL。
SQLMAP采用四种独特的SQL注入技术,分别是盲推理SQL注入,UNION查询SQL注入,堆查询和基于时间的SQL盲注入。其广泛的功能和选项包括数据库指纹,枚举,数据库提取,访问目标文件系统,并在获取完全操作权限时实行任意命令。
你应该是线程同步的问题,使用MFC或者windows线程同步,有信号量,互斥量,临界区,事件等,你可以使用全局变量,消息本质还是生成了新的线程
自定义消息方法
在头文件声明
#define MYMSG (WM_USER+1)//随便填,但是要大于WM_USER
在头文件声明消息响应函数
afx_msg LRESULT MyMsg(WPARAM wParam,LPARAM lParam);
在对应cpp文件加入消息注册
然后再cpp文件实现消息响应函数
某个地方要发送该消息,先获取到消息响应函数对象指针,然后发消息
比如主框架
((CMainFrame)AfxGetMainWnd())->SendMessage(MYMSG);
后边两个参数根据实现需要添加
0条评论