/ 学习笔记 / 61浏览

sqlmap 的 level 和 risk 参数

文章目录
  • level 参数
  • risk 参数
  • level和risk参数的区别
  • 自定义Payloads和参数选择
  • 参考
  • level 参数

    简单说,--level参数决定了sqlmap在检测SQL注入时的“努力程度”。

    • level 1默认的level等级,会测试GET和POST请求中的参数。
    • level 2:除了前面提到的,还会检查cookie里的数据。
    • level 3:user-agent和referer头部也纳入检测范围。
    • level 4~5:会尝试各种payloads和边界条件,确保不放过任何潜在的注入点。

    risk 参数

    --level 不同,--risk 参数更像是告诉 sqlmap:“我愿意承担多大的风险来进行这次测试”。

    • risk 1:安全第一。默认的风险等级,风险几乎为零。
    • risk 2:除了默认的检测,还会尝试时间型盲注。
    • risk 3:在风险等级2的基础上,再加上OR类型的布尔型盲注。这种方式在某些情况下可能会导致数据表的所有记录被更新,所以使用时需谨慎。

    level和risk参数的区别

    虽然 --level--risk 两个参数在某些方面有重叠,但它们各自侧重的方向是不同的。

    • 方向不同--level 更像是广度上的拓展,而 --risk 则是深度上的挖掘。
    • 场景不同:如果觉得默认的GET和POST参数检测不够,想要找找其它位置的注入点时,可以考虑加 --level等级。如果可以确定某个位置就是存在注入点,或是强烈怀疑某个地方存在注入,但目前的payload覆盖不到,而且愿意承担风险进行深入测试时,可以考虑提升 --risk等级。

    自定义Payloads和参数选择

    除了内置的payloads,sqlmap还支持用户自定义编辑和添加payloads。如果默认的测试方式不起作用,可以根据自己的需要,编写针对性的payloads来进行测试。同时,通过 -p 参数和 --skip 参数,还可以灵活地选择或排除某些参数进行测试,使检测过程更加高效和精准。使用了-p参数时会sqlmap自动忽略--level参数。

    参考

    Linux系统用户最小化检测方法
    企业采购模式扫盲
    安卓APP渗透基础 —— APK安装包的签名机制
    安卓APP渗透基础 —— 四大组件暴露测试
    安卓APP渗透基础 —— APK文件结构
    《CCNA认证指南》“IP地址”知识点整理

    1

    1. acj7kr

      绝,这下彻底区别开了

      来自天津

    发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注