亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

php網站被掛木馬后的修復方法總結

2020-03-22 19:32:42
字體:
來源:轉載
供稿:網友
本文實例總結了php網站被掛木馬后的修復方法。分享給大家供大家參考。具體方法如下: 在linux中我們可以使用命令來搜查木馬文件,到代碼安裝目錄執行下面命令
復制代碼 代碼如下:find ./ -iname "*.php" | xargs grep -H -n "eval(base64_decode"
搜出來接近100條結果,這個結果列表很重要,木馬都在里面,要一個一個文件打開驗證是否是木馬,如果是,馬上刪除掉
最后找到10個木馬文件,存放在各種目錄,都是php webshell,功能很齊全,用base64編碼
如果你在windows中查找目錄直接使用windows文件搜索就可以了,可以搜索eval或最近修改文件,然后如果是dedecms我們要查看最新dedecms漏洞呀然后修補。 下面給個php木馬查找工具,直接放到你站點根目錄

復制代碼 代碼如下: php
/**************PHP Web木馬掃描器************************/
/* [+] 作者: alibaba */
/* [+] MSN: weeming21@hotmail.com */
/* [+] 首發: t00ls.net , 轉載請注明t00ls */
/* [+] 版本: v1.0 */
/* [+] 功能: web版php木馬掃描工具*/
/* [+] 注意: 掃描出來的文件并不一定就是后門, */
/* 請自行判斷、審核、對比原文件。*/
/* 如果你不確定掃出來的文件是否為后門,*/
/* 歡迎你把該文件發給我進行分析。*/
/*******************************************************/
ob_start();
set_time_limit(0);
$username = "t00ls"; //設置用戶名
$password = "t00ls"; //設置密碼
$md5 = md5(md5($username).md5($password));
$version = "PHP Web木馬掃描器v1.0";

PHP Web 木馬掃描器
$realpath = realpath('./');
$selfpath = $_SERVER['PHP_SELF'];
$selfpath = substr($selfpath, 0, strrpos($selfpath,'/'));
define('REALPATH', str_replace('//','/',str_replace('','/',substr($realpath, 0, strlen($realpath) - strlen($selfpath)))));
define('MYFILE', basename(__FILE__));
define('MYPATH', str_replace('', '/', dirname(__FILE__)).'/');
define('MYFULLPATH', str_replace('', '/', (__FILE__)));
define('HOST', "http://".$_SERVER['HTTP_HOST']);

html
head
title php echo $version /title
meta http-equiv="Content-Type" content="text/html; charset=gb2312" /
style
body{margin:0px;}
body,td{font: 12px Arial,Tahoma;line-height: 16px;}
a {color: #00f;text-decoration:underline;}
a:hover{color: #f00;text-decoration:none;}
.alt1 td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#f1f1f1;padding:5px 10px 5px 5px;}
.alt2 td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#f9f9f9;padding:5px 10px 5px 5px;}
.focus td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#ffffaa;padding:5px 10px 5px 5px;}
.head td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#e9e9e9;padding:5px 10px 5px 5px;font-weight:bold;}
.head td span{font-weight:normal;}
/style
/head
body
php
if(!(isset($_COOKIE['t00ls']) && $_COOKIE['t00ls'] == $md5) && !(isset($_POST['username']) && isset($_POST['password']) && (md5(md5($_POST['username']).md5($_POST['password']))==$md5)))
{
echo ' form id="frmlogin" name="frmlogin" method="post" action="" 用戶名: input type="text" name="username" id="username" / 密碼: input type="password" name="password" id="password" / input type="submit" name="btnLogin" id="btnLogin" value="登陸" / /form
}
elseif(isset($_POST['username']) && isset($_POST['password']) && (md5(md5($_POST['username']).md5($_POST['password']))==$md5))
{
setcookie("t00ls", $md5, time()+60*60*24*365,"/");
echo "登陸成功!";
header( 'refresh: 1; url='.MYFILE.' action=scan' );
exit();
}
else
{
setcookie("t00ls", $md5, time()+60*60*24*365,"/");
$setting = getSetting();
$action = isset($_GET['action']) $_GET['action']:"";

if($action=="logout")
{
setcookie ("t00ls", "", time() - 3600);
Header("Location: ".MYFILE);
exit();
}
if($action=="download" && isset($_GET['file']) && trim($_GET['file'])!="")
{
$file = $_GET['file'];
ob_clean();
if (@file_exists($file)) {
header("Content-type: application/octet-stream");
header("Content-Disposition: filename="".basename($file).""");
echo file_get_contents($file);
}
exit();
}

table border="0" cellpadding="0" cellspacing="0" width="100%"
tbody tr
td php echo $_SERVER['SERVER_ADDR'] span php echo " a href='http://www.t00ls.net/' $version /a " /span /td
/tr
tr
td span =date("Y-m-d H:i:s",mktime()) /span
a href=" action=scan" 掃描 /a |
a href=" action=setting" 設定 /a |
a href=" action=logout" 登出 /a
/td
/tr
/tbody /table
br
php
if($action=="setting")
{
if(isset($_POST['btnsetting']))
{
$Ssetting = array();
$Ssetting['user']=isset($_POST['checkuser']) $_POST['checkuser']:"php | php | phtml";
$Ssetting['all']=isset($_POST['checkall'])&&$_POST['checkall']=="on" 1:0;
$Ssetting['hta']=isset($_POST['checkhta'])&&$_POST['checkhta']=="on" 1:0;
setcookie("t00ls_s", base64_encode(serialize($Ssetting)), time()+60*60*24*365,"/");
echo "設置完成!";
header( 'refresh: 1; url='.MYFILE.' action=setting' );
exit();
}

form name="frmSetting" method="post" action=" action=setting"
FIELDSET
LEGEND 掃描設定 /LEGEND
table width="100%" border="0" cellspacing="0" cellpadding="0"
tr
td width="60" 文件后綴: /td
td width="300" input type="text" name="checkuser" id="checkuser" value=" php echo $setting['user'] " /td
/tr
tr
td label for="checkall" 所有文件 /label /td
td input type="checkbox" name="checkall" id="checkall" php if($setting['all']==1) echo "checked" /td
/tr
tr
td label for="checkhta" 設置文件 /label /td
td input type="checkbox" name="checkhta" id="checkhta" php if($setting['hta']==1) echo "checked" /td
/tr
tr
td /td
td
input type="submit" name="btnsetting" id="btnsetting" value="提交"
/td
/tr
/table
/fieldset
/form
php
}
else
{
$dir = isset($_POST['path']) $_POST['path']:MYPATH;
$dir = substr($dir,-1)!="/" $dir."/":$dir;

form name="frmScan" method="post" action=""
table width="100%%" border="0" cellspacing="0" cellpadding="0"
tr
td width="35" 掃描路徑: /td
td width="690"
input type="text" name="path" id="path" value=" php echo $dir "
input type="submit" name="btnScan" id="btnScan" value="開始掃描" /td
/tr
/table(www.phpstudy.net)
/form
php
if(isset($_POST['btnScan']))
{
$start=mktime();
$is_user = array();
$is_ext = "";
$list = "";

if(trim($setting['user'])!="")
{
$is_user = explode("|",$setting['user']);
if(count($is_user) 0)
{
foreach($is_user as $key= $value)
$is_user[$key]=trim(str_replace(" ","(.)",$value));
$is_ext = "(.".implode("($|.))|(.",$is_user)."($|.))";
}
}
if($setting['hta']==1)
{
$is_hta=1;
$is_ext = strlen($is_ext) 0 $is_ext."|":$is_ext;
$is_ext.="(^.htaccess$)";
}
if($setting['all']==1 || (strlen($is_ext)==0 && $setting['hta']==0))
{
$is_ext="(.+)";
}

$php_code = getCode();
if(!is_readable($dir))
$dir = MYPATH;
$count=$scanned=0;
scan($dir,$is_ext);
$end=mktime();
$spent = ($end - $start);

div 掃描: php echo $scanned 文件| 發現: php echo $count 可疑文件| 耗時: php echo $spent 秒 /div
table width="100%" border="0" cellspacing="0" cellpadding="0"
tr
td width="15" align="center" No. /td
td width="48%" 文件 /td
td width="12%" 更新時間 /td
td width="10%" 原因 /td
td width="20%" 特征 /td
td 動作 /td
/tr
php echo $list
/table
php
}
}
}
ob_flush();

/body
/html
php
function scan($path = '.',$is_ext){
global $php_code,$count,$scanned,$list;
$ignore = array('.', '..' );
$replace=array(" ","n","r","t");
$dh = @opendir( $path ); while(false!==($file=readdir($dh))){
if( !in_array( $file, $ignore ) ){
if( is_dir( "$path$file" ) ){
scan("$path$file/",$is_ext);
} else {
$current = $path.$file;
if(MYFULLPATH==$current) continue;
if(!preg_match("/$is_ext/i",$file)) continue;
if(is_readable($current))
{
$scanned++;
$content=file_get_contents($current);
$content= str_replace($replace,"",$content);
foreach($php_code as $key = $value)
{
if(preg_match("/$value/i",$content))
{
$count++;
$j = $count % 2 + 1;
$filetime = date('Y-m-d H:i:s',filemtime($current));
$reason = explode("- ",$key);
$url = str_replace(REALPATH,HOST,$current);
preg_match("/$value/i",$content,$arr);
$list.="
tr onmouseout='this.className="alt$j";'
td $count /td
td a href='$url' target='_blank' $current /a /td
td $filetime /td
td font color=red $reason[0] /font /td
td font color=#090 $reason[1] /font /td
td a href=' action=download&file=$current' target='_blank' 下載 /a /td
/tr
//echo $key . "-" . $path . $file ."(" . $arr[0] . ")" ." br /
//echo $path . $file ." br /
break;
}
}
}
}
}
}
closedir( $dh );
}
function getSetting()
{
$Ssetting = array();
if(isset($_COOKIE['t00ls_s']))
{
$Ssetting = unserialize(base64_decode($_COOKIE['t00ls_s']));
$Ssetting['user']=isset($Ssetting['user']) $Ssetting['user']:"php | php | phtml | shtml";
$Ssetting['all']=isset($Ssetting['all']) intval($Ssetting['all']):0;
$Ssetting['hta']=isset($Ssetting['hta']) intval($Ssetting['hta']):1;
}
else
{
$Ssetting['user']="php | php | phtml | shtml";
$Ssetting['all']=0;
$Ssetting['hta']=1;
setcookie("t00ls_s", base64_encode(serialize($Ssetting)), time()+60*60*24*365,"/");
}
return $Ssetting;
}
function getCode()
{
return array(
'后門特征- cha88.cn'= 'cha88.cn',
'后門特征- c99shell'= 'c99shell',
'后門特征- phpspy'= 'phpspy',
'后門特征- Scanners'= 'Scanners',
'后門特征- cmd.php'= 'cmd.php',
'后門特征- str_rot13'= 'str_rot13',
'后門特征- webshell'= 'webshell',
'后門特征- EgY_SpIdEr'= 'EgY_SpIdEr',
'后門特征- tools88.com'= 'tools88.com',
'后門特征- SECFORCE'= 'SECFORCE',
'后門特征- eval(" '= 'eval(('|") ',
'可疑代碼特征- system('= 'system(',
'可疑代碼特征- passthru('= 'passthru(',
'可疑代碼特征- shell_exec('= 'shell_exec(',
'可疑代碼特征- exec('= 'exec(',
'可疑代碼特征- popen('= 'popen(',
'可疑代碼特征- proc_open'= 'proc_open',
'可疑代碼特征- eval($'= 'eval(('|"|s*)$',
'可疑代碼特征- assert($'= 'assert(('|"|s*)$',
'危險MYSQL代碼- returns string soname'= 'returnsstringsoname',
'危險MYSQL代碼- into outfile'= 'intooutfile',
'危險MYSQL代碼- load_file'= 'select(s+)(.*)load_file',
'加密后門特征- eval(gzinflate('= 'eval(gzinflate(',
'加密后門特征- eval(base64_decode('= 'eval(base64_decode(',
'加密后門特征- eval(gzuncompress('= 'eval(gzuncompress(',
'加密后門特征- eval(gzdecode('= 'eval(gzdecode(',
'加密后門特征- eval(str_rot13('= 'eval(str_rot13(',
'加密后門特征- gzuncompress(base64_decode('= 'gzuncompress(base64_decode(',
'加密后門特征- base64_decode(gzuncompress('= 'base64_decode(gzuncompress(',
'一句話后門特征- eval($_'= 'eval(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- assert($_'= 'assert(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- require($_'= 'require(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- require_once($_'= 'require_once(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- include($_'= 'include(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- include_once($_'= 'include_once(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- call_user_func("assert"'= 'call_user_func(("|')assert("|')',
'一句話后門特征- call_user_func($_'= 'call_user_func(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'一句話后門特征- $_POST/GET/REQUEST/COOKIE[ ]($_POST/GET/REQUEST/COOKIE[ ]'= '$_(POST|GET|REQUEST|COOKIE)[([^]]+)](('|"|s*)$_(POST|GET|REQUEST|COOKIE)[',
'一句話后門特征- echo(file_get_contents($_POST/GET/REQUEST/COOKIE'= 'echo(file_get_contents(('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'上傳后門特征- file_put_contents($_POST/GET/REQUEST/COOKIE,$_POST/GET/REQUEST/COOKIE'= 'file_put_contents(('|"|s*)$_(POST|GET|REQUEST|COOKIE)[([^]]+)],('|"|s*)$_(POST|GET|REQUEST|COOKIE)',
'上傳后門特征- fputs(fopen(" ","w"),$_POST/GET/REQUEST/COOKIE['= 'fputs(fopen((.+),('|")w('|")),('|"|s*)$_(POST|GET|REQUEST|COOKIE)[',
'.htaccess插馬特征- SetHandler application/x-httpd-php'= 'SetHandlerapplication/x-httpd-php',
'.htaccess插馬特征- php_value auto_prepend_file'= 'php_valueauto_prepend_file',
'.htaccess插馬特征- php_value auto_append_file'= 'php_valueauto_append_file'
);
}
希望本文所述對大家基于php的網站安全建設有所幫助。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩精品二区| 亚洲一区二区三区777| 九九综合九九综合| 777国产偷窥盗摄精品视频| 国产精品一区av| 2019中文字幕在线观看| 在线观看欧美成人| 精品视频久久久久久| 91欧美激情另类亚洲| 欧美激情精品久久久久久变态| 国产精品色午夜在线观看| 日韩成人免费视频| 久久久国产精品亚洲一区| 欧美国产日韩二区| 亚洲精品720p| 亚洲激情自拍图| 国产欧美一区二区三区在线看| 国产精品人人做人人爽| 欧美国产激情18| 久久噜噜噜精品国产亚洲综合| 中文字幕不卡在线视频极品| 亚洲第一区在线| 69av在线播放| 中文在线资源观看视频网站免费不卡| 黑人狂躁日本妞一区二区三区| 91成人免费观看网站| 日本成人激情视频| 国产一区二区三区在线视频| 社区色欧美激情 | 日韩精品一区二区三区第95| 亚洲精品一区久久久久久| 亚洲欧美日韩久久久久久| 欧美国产乱视频| 97激碰免费视频| 疯狂蹂躏欧美一区二区精品| 国产成人免费av电影| 久久精品国产久精国产思思| 精品久久久久久久久久久久久| 92看片淫黄大片看国产片| 国模视频一区二区| 欧美激情在线有限公司| 欧美激情久久久久| 亚洲一区二区精品| 欧美做爰性生交视频| 成人久久久久久久| 久久中文久久字幕| 欧美成人剧情片在线观看| 日韩欧美在线网址| 亚洲影院污污.| 成人黄色片网站| 日韩免费在线免费观看| 亚洲一区二区三区四区视频| 91成人天堂久久成人| 国产精品久久一区主播| 成人性教育视频在线观看| 亚洲在线一区二区| 中文字幕不卡在线视频极品| 日韩av在线免费观看| 国产精品久久久久秋霞鲁丝| 在线视频中文亚洲| 一个色综合导航| 奇门遁甲1982国语版免费观看高清| 亚洲乱码av中文一区二区| 久久国产色av| 亚洲精品欧美日韩| 91啪国产在线| 中文字幕成人精品久久不卡| 日韩欧美一区视频| 国产欧美日韩中文字幕| 狠狠爱在线视频一区| 国产精品va在线播放我和闺蜜| 亚洲综合中文字幕在线| 亚洲人午夜精品| 欧美黑人巨大精品一区二区| 国产精品国产自产拍高清av水多| 欧美一级淫片播放口| www.日本久久久久com.| 久久97久久97精品免视看| 精品无人区太爽高潮在线播放| 九九视频直播综合网| 国产热re99久久6国产精品| 色狠狠久久aa北条麻妃| 日韩av在线免费观看一区| 热久久免费视频精品| 欧美电影免费观看网站| 色999日韩欧美国产| 亚洲最大的成人网| 色噜噜狠狠狠综合曰曰曰| www.欧美精品| 欧美日韩国产精品| 91成人精品网站| 精品久久久一区| 日韩在线免费视频| 自拍视频国产精品| 国产精品黄色影片导航在线观看| 亚洲激情视频在线观看| 国产精品高清在线| 91精品国产综合久久香蕉922| 久久久久国产精品www| 久久久国产精品免费| 国产欧美日韩中文字幕在线| 日韩在线不卡视频| 亚洲精品aⅴ中文字幕乱码| 亚洲人成电影在线播放| 久久在线免费视频| 国产主播欧美精品| 中文字幕视频在线免费欧美日韩综合在线看| 日韩在线视频播放| 久久久久久国产| 久久精品国产91精品亚洲| 国产99久久精品一区二区永久免费| 久久频这里精品99香蕉| 亚洲欧美日韩精品久久亚洲区| 欧美黑人极品猛少妇色xxxxx| 午夜精品99久久免费| 亚洲国产精品中文| 91精品国产综合久久香蕉922| 国产视频观看一区| 久久99精品国产99久久6尤物| 亚洲一区二区中文字幕| 日韩国产欧美精品一区二区三区| 亚洲精品日韩欧美| 亚洲一二在线观看| 亚洲欧美日韩精品久久亚洲区| 亚洲aⅴ日韩av电影在线观看| 欧美激情亚洲精品| 国产综合久久久久久| 亚洲最大的网站| 久久人人爽人人爽爽久久| 久久精品电影网| 日韩精品欧美国产精品忘忧草| 最近2019年日本中文免费字幕| 久久噜噜噜精品国产亚洲综合| 久久99精品久久久久久青青91| 欧美性猛交xxxxx免费看| 日韩成人激情在线| 日本韩国欧美精品大片卡二| 中文字幕av一区二区| 欧美日韩在线视频观看| 亚洲综合色激情五月| 亚洲欧美日本另类| 久久久91精品国产| 国产丝袜一区二区三区免费视频| 亚洲视频在线看| 中文字幕亚洲在线| 精品亚洲男同gayvideo网站| 懂色av一区二区三区| 91久久精品国产91久久性色| 久久精品久久久久久国产 免费| 不卡av日日日| 国产精品久久91| 亚洲精品日韩在线| 国产综合在线视频| 精品中文字幕在线2019| 日韩在线观看免费全集电视剧网站| 精品中文字幕在线2019| 日韩高清中文字幕| 亚洲国产97在线精品一区| 欧美电影电视剧在线观看| 国产精品日韩欧美大师| 国产精品黄视频| 久久久精品中文字幕| 日韩一二三在线视频播| 亚洲精品国产欧美|