SQLI和sqli-labs介绍
SQLI,sqlinjection,我们称之为sql注入。何为sql,英文:StructuredQueryLanguage,叫做结构化查询语言。常见的结构化数据库有MySQL,MSSQL,Oracle以及Postgresql。Sql语言就是我们在管理数据库时用到的一种。在我们的应用系统使用sql语句进行管理应用数据库时,往往采用拼接的方式形成一条完整的数据库语言,而危险的是,在拼接sql语句的时候,我们可以改变sql语句。从而让数据执行我们想要执行的语句,这就是我们常说的sql注入。
原理性的东西我们这里就不进行详细的讲解了,从sqli-labs以下的每一个关卡中,你能真正体会到什么是sql注入。Ps:有些朋友对工具比较熟悉,例如sqlmap,可以从sqlmap的日志中分析每个关卡的原理。但是我个人建议先去了解原理,再去使用工具。这样在使用工具的时候你也能深刻的理解工具起到了什么样的作用。更近一步你应该想着如果让你自己写代码实现攻击,你应该如何写。
Ps:因为本项工作我是在多个平台和多个浏览器下进行测试的,所以截图等可能会有不同的环境,但是都能说明原理。这里就不要吹毛求疵了。图片刚开始有很多都是chrome下截取的,后来发现不是很好看,所以在图片上面的url全部粘贴。尽量用firefox,有hackbar。
Sqli-labs下载
Sqli-labs是一个印度程序员写的,用来学习sql注入的一个游戏教程。博客地址为: