ajksn_ 2024-06-19 22:29 采纳率: 50%
浏览 4

关于sqli-labs-master靶场的SQL注入问题。

各位好,我在练习sqli-labs-master这个靶场的SQL注入
我输入 '# 以及 and 1=2 来测试第八关有没有漏洞,但是我发现我这样按照答案去测试,却没有得到我想要的效果,当我是输入 '#和and 1=2 的时候,页面中的 you are in 并没有消失,可是按答案来说他是应该消失的 可是并没有消失,这是我的问题吗,还是网站的问题

img

img

另外我试了第一关,当我测试第一关有没有漏洞的时候,我输入 ?id=1' 的时候按答案来说他应该是会显示,你有一个错误,但是他没反应啊,为什么会这样

img

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-19 22:29
    关注

    引自免费微信小程序:皆我百晓生

    针对你在sqli-labs-master靶场遇到的问题,让我们逐一分析并尝试解决。

    第八关(Less-8)的问题

    在Less-8关卡中,你提到使用'#and 1=2 进行测试时,页面中的 “you are in” 并没有消失,与预期不符。这可能是因为网站对输入进行了过滤或处理,使得注入语句未能生效。

    解决方案

    尝试使用不同的编码或绕过方法。例如,可以尝试将'# 替换为 %23%27 或使用其他字符进行注释。对于 and 1=2,确保其正确地被包含在SQL语句中,可以通过调整引号的位置来实现这一点。

    示例代码:

    # 测试用的URL参数
    payload = "1%27%23"  # 尝试使用URL编码的单引号和井号
    url = f"http://your-target.com/sqli-labs-master/Less-8/?id={payload}"
    

    第一关(Less-1)的问题

    在Less-1关卡中,你输入 ?id=1' 后,期望看到错误信息,但实际上没有反应。这可能是因为服务器返回的错误被隐藏了,或者你的输入未被正确解析为SQL注入尝试。

    解决方案

    确保你的测试环境配置正确,即服务器允许显示SQL错误信息。此外,尝试更复杂的注入语句,如 ?id=1' OR '1'='1?id=1' AND (SELECT 1 FROM(SELECT(SLEEP(5)))X) --,这些语句可以用来测试是否存在SQL注入漏洞,并且可能触发不同的响应。

    示例代码:

    # 测试用的URL参数
    payload1 = "1' OR '1'='1"
    payload2 = "1' AND (SELECT 1 FROM(SELECT(SLEEP(5)))X) --"
    url1 = f"http://your-target.com/sqli-labs-master/Less-1/?id={payload1}"
    url2 = f"http://your-target.com/sqli-labs-master/Less-1/?id={payload2}"
    

    总结

    • 对于Less-8,尝试使用不同的编码方式或绕过策略来构造你的SQL注入语句。
    • 对于Less-1,确保你的测试环境允许显示错误信息,并尝试使用更复杂的SQL注入语句。

    如果上述方法仍无法解决问题,检查你的测试环境设置,确认是否正确启用了错误报告,以及是否正确理解了靶场的规则和目标。有时候,靶场的某些关卡可能需要特定的技巧或知识才能通过。希望这些建议能帮助你进一步探索和学习SQL注入技术。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月19日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见