kali mysql注入_在windows系统和kali中通过sqlmap注入

第1章 在windows系统中通过sqlmap注入

1.1 环境搭建

Sqlmap是目前功能最强大,使用最为广泛的注入类工具,是一个开源软件,被集成于kaliLinux,

由于sqlmap是基于Python编写,所以需要在系统中先安装好2.7.x版本的Python,然后将下载好的sqlmap放在Python2.7目录下,这里Python安装我就不一一截图了,因为都是使用默认安装,只是安装的时候根据需要可以修改下安装路径。

在Windows下首先把下载好的sqlmap放在Python路径下

03fdfc9ad7c68ddeb4c82eab1c00495c.png

然后我们在此路径下运行sqlmap.py,可以看到可以成功访问sqlmap,以及显示出了版本号

6063c16960c6d121abaea16b6a92663f.png

那么我们在kali中直接输入sqlmap就可以了

2099d61cda7d85b6c94b198889408642.png

如果需单独查询版本号,我们需要在后面加一个--version

7293f790f4d0835b446680aa33ec13a2.png

以上就我们的环境就搭建好啦!

现在就可以开始注入啦!

1.2 注入过程

首先我们在windows系统中,查找下本地的ip

cd47e90c1cef5fd0a6ece9832d8d22b7.png

再开一下phpstudy服务

ce662b8fd04f90ee4191fb6a84d4a84b.png

访问url成功,然后复制到sqlmap运行

063acdff40a739efbd120062838e7505.png

1.2.1 判断注入类型

在sqlmap下运行

这里的-u是运行指定的url,-u是选项,后面的是参数。这里需要注意的是后面指定的内容需要用双引号引起来。

我们输入命令后就开始检测了,如下图所示。

cae7135e541af094a58bed6d713eb3ff.png

检测过程中会出现很多提示,我们挨着来看一下

3b823f423638b98c98e71cfad3d5a41f.png

这句话问的是:看起来后端DBMS是“MySQL”。是否要跳过选择其他DBMS的特定测试有效负载?[是/否],这里可以看到Y是大写,大写就是默认值,我们这里手动选择n,然后回车。

30bcf3784d3bbbeafd2d0d3fb4db1087.png

这句话问的是:对于其余的测试,是否要包括对“MySQL”扩展提供的级别(1)和风险(1)值的所有测试?[是/否],这里我们还是选择n然后回车。

这里我们就要注意看下面这个提示了,Vulnerable是可被入侵的,看到它我们得两眼发亮,也就是说这个id是个注入点,可进行注入,问我们想想继续其他参数的测试吗?[是/否],这里我们就默认是n,直接回车。

dfb9bd85d68dd46b25e2dd748fed55fd.png

我们可以看到输出结果显示sqlmap用总共45个HTTP

61467398d705f94882adf39a4a9cc61c.png

上面结果显示还可以看到显示的数据库类型是mysql数据库。

以上我们就判断出来了注入点!

我们知道了数据库是mysql,我们就可以开始查看数据库的内容了。

1.2.2 查看数据库的表

cc79dd83e6b2640deb306aece67917e2.png

735e87fea5b225f0874c5d399d0f2986.png

ed0750bca2dc28af914f429540f0ed11.png

84ef00151474075c9b1b432171e4b7ed.png

ad3e08b1ac8d070a2e11b22def3ab747.png

86afe2a5eab86a84cf072216698380ba.png

2cb741122063458fd5cf09e317e93905.png

ef2c0bb593a1dcacae58175b3133dff4.png

958e3022913bd56eadc3aff0ef471395.png

6ff0e38ec7c67bfcff1c1c6ba5e13d03.png

04d7aed9e86e1a23ed38df45916c068b.png

566ed7fbf5cb3109c6747a1220648988.png

以上就是我们查看到的关于mysql数据库里面的所有数据表,有点多哈。我们也可以在sqlmap路径下查看存放的表的内容

dd5a8690a17a629b159d8fd43b61ff15.png

在利用sqlmap进行检测的时候,需要注意的是,每次在sqlmap检测一次就会自动保存本次的结果,当下次再执行同样的命令的时候,直接会出现之前已经检测出来的结果,而不会反复进行检测。那么有人会问了,那我就想让它重新检测怎么办??那么我们把之前保存的检测结果删掉就可以了,那么结果保存在哪?看下面图:

fa24a03bce16b0c8a8db5a0669b04fa0.png

如果在c盘用户下没有看到,很有可能就是你的文件被设置成隐藏了。解决办法如下图所示:

370e70a6bb3cb849990e2a2b6374e1ef.png

好啦!我们现在再用windows系统检测下一步!前面我们已经在windows中猜出我们的表名了,那么现在呢?

那肯定是猜表的字段啦!

1.2.3 查看数据库表的字段

424294ef8c4a91b66aa51dd212fd0932.png

输出结果显示:

82b02519a6446d14d093fcd7433d176a.png

0a7de12519561096827ce862b8d62b7b.png

由上图结果显示我们可以看到,这个猜解表名的字段直接猜会显示所有表的字段,我们也可以直接选择猜解我们指定的表的字段

eb9cdc557cba799a1c7c60329e4f4440.png

输出结果显示

ddd597c72866cc4d0df1599c52684491.png

我们在上图看到users这个表中,有username和password,也就是用户名和密码,接下来当然是爆出它们的内容啦!

1.2.4 查看表的字段内容

输入:

304b27642228cf4293f0b35b284840ed.png

解释:-C 指定字段的名字,-T指定表的名字,--dump获得数据库指定字段的内容。

输出结果:

3b8c169dad147a8cdacd38eaaca7add2.png

我们用windows做出来了!真棒!

第2章 在kali中通过sqlmap注入

2.1 环境搭建

因为kaliLinux里本身带有Python2.7和sqlmap,所以可以直接使用,不需要搭建环境,是不是很棒呀!

2.2 注入过程

前面我们知道在windows系统中注入过程和结果会自动保存在文件夹,那么在kali中是保存在哪个地方呢?

首先我们在kali中输入ls查看目录

fb4b75c4f5fedaf927e34e83b7da735a.png

可以看到没有.sqlmap文件耶,

那也就是上面我们说的很有可能是隐藏文件。

那么我们就输入ls –a试一下查看隐藏文件

6c926eef5ad2de6352d9c52baa83c682.png

是不是比上面的要多一些文件了?没错!

但是,emmm..好像没有.sqlmap这个文件,为什么呢?

我们直接查找这个文件试一下?很显然,真的没有!

adb679018e6c42416dc486f2a4abb632.png

这是为什么呢?我们没有在kali中做过检测当然没有啦!

好吧,我们在kali中做一下前面在windows中做的

2.2.1 检测是否是注入点

a0c8e5650b931cb7f049f90d8993f373.png

在这里跟在windows中差不多,然后我们看一下提示

67ed0999e8f379fd6afeefde626ff4a4.png

第一个提示:判断出来数据库是mysql,问是否需要继续检测是其他类型,我们不需要再检测,按y

第二个提示:为了继续检测,问是否想使用默认的安全级别1和风险级别1吗?我们使用默认是就可以了,直接回车

870776b8ff77cb25281a13dfdc82b18d.png

上面这个这个提示是检测到id是存在可注入的情况,问是否需要检测其他的注入类型,这里我们就不需要了,直接回车,然后我们看一下输出结果,显示的就是盲注类型,跟我们在windows中检测的结果是一样的

c2eaf5eb351a5b8dc7cdf6cc2bce9112.png

2.2.2 检测mysql中包含的数据库

1f7e84a2d61e1eb30dc1779e5655c9e6.png

检测出当前所有数据库,输出结果显示为六条数据库

e947538cec2aa329c4dfebc77866e5dc.png

2.2.3 检测当前正在使用的数据库

51ea280075301b0ad53db42607de4525.png

输出结果显示为当前使用的数据库是security

374c8fed268a3fb58e90492ce8363273.png

2.2.4 检测当前正在使用的用户

77cc99057e29791ac6a17a8da3f65be7.png

输出结果显示当前用户为root@localhost

160924ef0d10eae08e9fe80de3f07747.png

2.2.5 判断当前用户是否为数据库管理员

52791f03dd0b329d6a61aa161afc6ec7.png

输出结果显示ture,说明当前用户是数据库管理员

67772944a423f80bb9b6c7a85bf83fbd.png

2.2.6 查看数据库中所有的表

f9360718138c6a85839a7a47735f0650.png

输出结果显示数据库中有101个表,这里我就不一一截图了

d62ecc436a40eb5069d43a4541fcb6eb.png

我们也可以来kali中看看字典文件存放在哪里。

2043676c734b498bea38d49676b3bb65.png

由上图我们可以看到大部分软件都安装在usr/share下

然后我们现在查找一下kali中的sqlmap放在哪里:

输入cd返回到根目录

1ec54ae46f70edbb6172b29fd58e998d.png

查看sqlmap的目录路径

d268f970ba4c643e3ad0c8b44ce1c267.png

进入到目录下查看存放表名的txt文件

4792bdd7f1afb79e243980ec4577a5ed.png

用vim编辑器打开存放表文件

32e432402f863a0b61091bcbd3e87ee3.png

fe8e59a20a44b47811158f266a7ccc08.png

也可在表中进行一个编辑,此处添加manage_user,按下-o在下一行进行插入。

fc73b6e36657167a040fe7c1ce6e0dd5.png

好的,在上图中我们在kali中已经查找到我们的表的文件位置了

2.2.7 检测指定数据库security中的表

534ea37e90feea87ca702813eab65b6d.png

输出结果显示security数据库中有4个表

71cca9462a18eb8189495d130c2bf1f4.png

2.2.8 检测表users中的字段

d2f2ca61754f9d193bd93d0e73cbc36e.png

输出结果显示

4e3cba7170ad8fbcd8e4b65b33937ade.png

2.2.9 爆出字段内容

0ca8acebe816d4b2771a4c7cadfd32c0.png

输出结果显示:

6900964e4ccddca9079204633461dbd6.png

那么我们现在已经利用kali都做了爆字段内容了,现在再尝试下查看隐藏文件呢??

9647820aa4138d697c31f9b78d8ea87c.png

哇撒!有了!那么我们进入到这个文件夹下看看

1d3336725682b9d477d8b776a22bf631.png

是不是有了!哈哈,成功了!

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值