SQLi-labs学习sql注入(五)

💡 原文中文,约2900字,阅读约需7分钟。
📝

内容提要

本文讨论了在sqli-labs进行SQL注入测试的过程,重点介绍第16和第17关的注入技巧。作者分享了使用不同提交方式时遇到的问题,特别是POST请求的Content-Type对特殊字符的影响。通过示例展示了如何利用错误信息进行注入,并介绍了使用burpsuite抓包的技巧。最后提醒读者在实际应用中需谨慎并遵守法律。

🎯

关键要点

  • 文章讨论了在sqli-labs进行SQL注入测试的过程,重点在第16和第17关的注入技巧。
  • 测试环境为Windows 7,通过phpstudy2018部署的sqli-labs。
  • 第16关中,使用单引号、比引号和小括号进行注入,结合布尔盲注确定注入点。
  • 在username字段中,使用hacker bar提交与在页面表单提交的效果不同,特别是对特殊字符的处理。
  • POST请求中的Content-Type影响特殊字符的编码,默认情况下为application/x-www-form-urlencoded。
  • 在第17关中,发现用户名输入无效,注入点在密码字段,使用updatexml进行注入。
  • 第18关利用POST请求中的user-agent字段进行注入,使用burpsuite抓包修改请求。
  • 通过修改user-agent字段进行报错注入,发现需要处理单引号闭合问题。
  • 文章最后提醒读者在实际应用中需谨慎并遵守法律,提供免责声明和适用性声明。

延伸问答

在sqli-labs中如何进行SQL注入测试?

在sqli-labs中进行SQL注入测试时,可以通过尝试不同的输入方式,如使用单引号、比引号和小括号,结合布尔盲注来确定注入点。

第16关和第17关的注入技巧有什么不同?

第16关主要通过username字段进行注入,而第17关则发现注入点在密码字段,使用updatexml进行注入。

POST请求中的Content-Type对SQL注入有什么影响?

POST请求中的Content-Type为application/x-www-form-urlencoded,会影响特殊字符的编码,导致不同提交方式的效果不同。

如何使用burpsuite进行SQL注入测试?

使用burpsuite抓包可以修改请求中的user-agent字段,通过报错注入来获取数据库信息。

在实际应用中进行SQL注入测试需要注意什么?

在实际应用中进行SQL注入测试时,需谨慎并遵守法律,确保不违反网络安全法。

如何处理SQL注入中的单引号闭合问题?

在SQL注入中,可以通过输入两个单引号来完成闭合,从而避免报错并进行有效的注入。

➡️

继续阅读