php木马webshell扫描器代码_PHP
webshell
复制代码 代码如下:/*
+--------------------------------------------------------------------------+
| Codz by indexphp Version:0.01 |
| (c) 2009 indexphp |
| http://www.indexphp.org |
+--------------------------------------------------------------------------+
*/
/*===================== 程序配置 =====================*/
$dir='cms'; //设置要扫描的目录
$jumpoff=false;//设置要跳过检查的文件
$jump='safe.php|g'; //设置要跳过检查的文件或者文件夹 $jumpoff=false 时此设置有效
$danger='eval|cmd|passthru';//设置要查找的危险的函数 以确定是否木马文件
$suffix='php|inc';//设置要扫描文件的后缀
$dir_num=0;
$file_num=0;
$danger_num=0;
/*===================== 配置结束 =====================*/
extract (GetHttpVars());
if ($m=="edit") Edit();
if ($m=="del") Delete();
if ($check=='check')
{ $safearr = explode("|",$jump);
$start_time=microtime(true);
safe_check($dir);
$end_time=microtime(true);
$total=$end_time-$start_time;
$file_num=$file_num-$dir_num;
$message= " 文件数:".$file_num;
$message.= " 文件夹数:".$dir_num;
$message.= " 可疑文件数:".$danger_num;
$message.= " 执行时间:".$total;
echo $message;
exit();
}
function GetHttpVars() {//全局变量
$superglobs = array(
'_POST',
'_GET',
'HTTP_POST_VARS',
'HTTP_GET_VARS');
$httpvars = array();
foreach ($superglobs as $glob) {
global $$glob;
if (isset($$glob) && is_array($$glob)) {
$httpvars = $$glob;
}
if (count($httpvars) > 0)
break;
}
return $httpvars;
}
function Safe_Check($dir)//遍历文件
{
global $danger ,$suffix ,$dir_num ,$file_num ,$danger_num;
$hand=@dir($dir) or die('文件夹不存在') ;
while ($file=$hand->read() )
{
$filename=$dir.'/'.$file;
if (!$jumpoff) {
if(Jump($filename))continue;
}
if(@is_dir($filename) && $file != '.' && $file!= '..'&& $file!='./..')
{ $dir_num++;
Safe_Check($filename);
}
if (preg_match_all ("/\.($suffix)/i",$filename,$out))
{
$str='';
$fp = @fopen($filename,'r')or die('没有权限');
while(!feof($fp))
{
$str .= fgets($fp,1024);
}
fclose($fp);
if( preg_match_all ("/($danger)[ \r\n\t]{0,}([\[\(])/i",$str,$out))
{
echo "可疑文件:{$filename}
查看代码
删除
";
$danger_num++;
}
}
$file_num++;
}
}
function Edit()//查看可疑文件
{
global $filename;
$filename = str_replace("..","",$filename);
$file = $filename;
$content = "";
if(is_file($file))
{
$fp = fopen($file,"r")or die('没有权限');
$content = fread($fp,filesize($file));
fclose($fp);
$content = htmlspecialchars($content);
}
echo "\r\n";
exit();
}
function Delete()//删除文件
{
global $filename;
(is_file($filename))?($mes=unlink($filename)?'删除成功':'删除失败 查看权限'):'';
echo $mes;
exit();
}
function Jump($file)//跳过文件
{
global $jump,$safearr;
if($jump != '')
{
foreach($safearr as $v)
{
if($v=='') continue;
if( eregi($v,$file) ) return true ;
}
}
return false;
}
?>

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds





La description du scénario suppose que dans un environnement de production réel, il existe une vulnérabilité RCE, qui nous permet d'obtenir l'installation de l'environnement WebShell. Tout d'abord, avant d'extraire l'image vulnérable sur GetHub, nous devons au préalable installer nginx et tomcat sur centos et. configurez le fichier de configuration nginx et tomcat, utilisez docker pour extraire l'image et reproduire la vulnérabilité. 1. Configurez d'abord l'environnement Docker. 2. Testez si Tomcat est accessible. Comme le montre la figure ci-dessus, le Tomcat back-end est accessible. 3. Vérifiez l'équilibrage de charge du proxy inverse nginx dans Docker. Vérifiez la fourmi dans lbsnode1 dans le texte docker.

1. Après avoir ouvert l'URL, il a été constaté qu'il s'agissait d'une page de téléchargement. 2. J'ai directement téléchargé le fichier avec le suffixe php, mais j'ai constaté qu'il ne pouvait pas être téléchargé. 3. Utilisez BurpSuite pour capturer le paquet et modifiez le suffixe. du fichier téléchargé avec le suffixe php à php5 pour le contourner. Après 4. Utilisez un couteau de cuisine pour vous connecter. Dans le répertoire de var/www/html, un fichier avec KEY est trouvé et vous verrez open. une autre URL, qui est également une page de téléchargement, mais la liste de téléchargement est définie. Autoriser uniquement le téléchargement des fichiers avec le suffixe .gif.jpg.png jusqu'à 6. Nous écrivons un cheval de Troie txt d'une phrase et changeons son suffixe en jpg7. Lors du téléchargement, utilisez BurpSiuit pour capturer le paquet et modifier le suffixe du fichier pour l'afficher

Alors que les problèmes de sécurité sur Internet deviennent de plus en plus importants, la sécurité des principaux sites Web et applications est devenue un problème de plus en plus important. En particulier dans la gestion de l'exploitation et de la maintenance des sites Web, des outils tels que WebShell sont souvent nécessaires à la maintenance et à la réparation. Cependant, WebShell est également souvent utilisé par les pirates et devient un point d'entrée pour les attaquants. Cet article présentera les paramètres de sécurité WebShell du Pagoda Panel pour aider les administrateurs de sites Web à améliorer la sécurité du site. 1. Le concept et les utilisations courantes de WebShell 1. Le concept WebShell est

Configuration de l'environnement local À en juger par les captures d'écran conservées, la version PHP de l'autre partie est 5.6.40, je souhaite donc configurer un environnement de test Apache+php5.6.40. Ouvrez virtualbox, copiez le lien vers le système d'image centos et configurez-le selon le processus suivant. 1.Installez apacheyuminstall-yhttpdhttpd-vServerversion:Apache/2.4.6(CentOS)Serverbuilt:Aug8201911:41:182.Installez php5.6yum-yinstallepel-releaserpm-Uvhhttps://mi

Cet article vous présente le Webshell du framework Empire CMS. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

SINE Security effectuait une détection et une réparation des vulnérabilités du site Web d'un client et a découvert que le site Web présentait de graves vulnérabilités d'injection SQL et des vulnérabilités de fichiers de Troie de site Web Webshell téléchargés. Le site Web utilisait un système CMS, développé en langage PHP, et disposait d'une architecture de base de données MySQL. Le code source de ce site Web est actuellement open source. Un certain CMS est un système CMS social qui se concentre sur la fourniture de connaissances payantes. Le paiement des connaissances est très demandé sur Internet actuel. Ce système peut partager des documents et les télécharger moyennant des frais. Le contenu des connaissances publié par les utilisateurs peut être masqué et fourni. aux clients payants lire. Le code est relativement simplifié et est très apprécié par la majorité des webmasters. La vulnérabilité de ce site Web se produit principalement lors du téléchargement du package compressé et de la construction d'un code de décompression malveillant pour faire référence au w dans le package zip.

Qu’est-ce que WebShell ? Au début, Webshell était souvent utilisé comme abréviation d'un type de script utilisé par les administrateurs de serveur Web pour gérer le serveur à distance. Plus tard, avec la naissance de certains outils de gestion Webshell, le processus d'obtention des autorisations Web a été considérablement simplifié, c'est pourquoi on l'a progressivement appelé script d'outil d'intrusion Web. Webshell est différent des vulnérabilités, mais utilise des vulnérabilités d'application ou des vulnérabilités de serveur (vulnérabilités de téléchargement de fichiers, vulnérabilités d'inclusion de fichiers, etc.) pour télécharger des fichiers de script sur le serveur en vue d'une exploitation ultérieure, qui appartient à l'exploitation ultérieure des tests d'intrusion et du TA0002Execution (exécution ) étape de ATT&CK. Source de référence de la figure 1TA0002 : https

Tout d'abord, je comprends que ce que je dois faire n'est pas de trouver où apparaît l'emplacement téléchargé. Je dois me connecter au serveur pour effectuer une inspection et une inspection du WebShell pour voir s'il a été envahi par d'autres, s'il y en a. une porte dérobée, etc. etc. Bien que l'adresse IP signalée soit l'adresse IP de notre entreprise, si quelques webshells sont manqués et téléchargés avec succès par d'autres mais non détectés, que pouvons-nous faire si le serveur est envahi ? Je suis donc allé inspecter le serveur, j'ai téléchargé cet outil de suppression de webshell, j'ai utilisé netstat-anpt et iptables-L pour déterminer si une porte dérobée avait été établie, j'ai vérifié s'il y avait un programme minier occupant le processeur, etc., je vais n'entre pas dans les détails ici. Heureusement, le serveur n'a pas été compromis, et puis
