sqlmap post注入怎么获取注入的参数

sqlmap post注入怎么获取注入的参数,第1张

POST注入

有两种方法来进行post注入,一种是使用--data参数,将拦旁post的key和value用类似GET方式来提交。二是使用-r参数,sqlmap读取用户抓到的POST请求包,来进行POST注入检测。

查看payload

之前一直是加本地代理,拿隐然后用burpsuit来看sqlmap的payload,到现在才发现用-v参数就可以实现。一直认为-v实现的只是控制警告,debug信息级别。实际上使用-v 3就可以显示注入的payload,4,5,6还可以显示HTTP请求,HTTP响应头和页面。

使用google搜索

sqlmap可以测试google搜索结果中的sql注入,很强大的功能吧。使用方法是参数-g。不过感觉实际使用中这个用的还是很少的。

请求延时

在注入过程中请求太频繁的话可能会被防火墙拦截,这时候--delay参数就起作用了。可以设定两次HTTP请求间的延时。有的web程序会在多次错误访问后屏蔽所有请求,这样就导致之后所有的测试无法进行,绕过这个策略可以使用--safe-url,每隔一段时简敏橡间去访问一个正常的页面。

伪静态页面

有些web服务器进行了url rewrite或者网站是伪静态的,无法直接提供测试参数,这样子可以使用*来代替要测试的参数。

执行系统命令

当数据库支持,并且当前用户有权限的时候,可以执行系统命令,使用--os-cmd或者--os-shell,具体的讲,当可以执行多语句的时候,会尝试用UDF(MySQL,PostgrepSQL)或者xp_cmdshell(MSSQL)来执行系统命令。不能执行多语句时,仍然会尝试创建一个webshell来执行语句,这时候就需要web的绝对路径了。总体来说,成功率偏低,不过个人也有成功的经验~

测试等级

sqlmap使用--level参数来进行不同全面性的测试,默认为1,不同的参数影响了使用哪些payload,2时会进行cookie注入检测,3时会进行useragent检测。

一般的http请求不斗态肢外乎 get 和 post两种,如果过滤掉所有post或者get请求中的参数信息中的非法字符,那么也就实现了防SQL注入。

首先定义请求中不能包含如下字符:

'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare

各个字符用"|"隔开,然后再判断Request.QueryString,具体代闭判码如下:

get请求的非法字符过滤空世:

dim sql_injdata

SQL_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"

SQL_inj = split(SQL_Injdata,"|")

If Request.QueryString<>"" Then

For Each SQL_Get In Request.QueryString

For SQL_Data=0 To Ubound(SQL_inj)

if instr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))>0 Then

Response.Write "<Script Language='javascript'>{alert('请不要在参数中包含非法字符!')history.back(-1)}</Script>"

Response.end

end if

next

Next

End If

post请求的非法字符过滤:

If Request.Form<>"" Then

For Each Sql_Post In Request.Form

For SQL_Data=0 To Ubound(SQL_inj)

if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then

Response.Write "<Script Language='javascript'>{alert('请不要在参数中包含非法字符!')history.back(-1)}</Script>"

Response.end

end if

next

next

end if

然后在使用的时候将这两段代码放在数据库连接的文件里一起Include进来即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12230200.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存