ホームページ  >  記事  >  バックエンド開発  >  PHP シリアル化/オブジェクト インジェクションの脆弱性分析、PHP シリアル化インジェクションの脆弱性_PHP チュートリアル

PHP シリアル化/オブジェクト インジェクションの脆弱性分析、PHP シリアル化インジェクションの脆弱性_PHP チュートリアル

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

PHP シリアル化/オブジェクト インジェクションの脆弱性分析、PHP シリアル化インジェクションの脆弱性

この記事は、PHP のシリアル化/オブジェクト インジェクションの脆弱性分析に関する短い記事で、ホストのリモート シェルを取得する方法を説明します。

この脆弱性を自分でテストしたい場合は、XVWA と Kevgir を介してテストできます。

この脆弱性を悪用する最初のステップでは、ターゲット アプリケーションに PHP シリアル化があるかどうかのテストを開始します。テストを支援するために、Burpsuite の SuperSerial プラグインを使用しました。ダウンロード アドレスはここにあります。 PHP および Java シリアル化の存在を受動的に検出します。

分析
アプリケーションで PHP シリアル化の使用が検出されたため、アプリケーション コードにリモート コード実行の脆弱性が含まれているかどうかの特定を開始できます。シリアル化されたオブジェクトはパラメーター「r」から取得されることに注意してください:

$var1=unserialize($_REQUEST['r']);
次に、逆シリアル化して評価します:

eval($this->inject);
次に、次を実行します:

エコー "
".$var1[0]." - ".$var1[1];
これにより、パラメータ r の PHP シリアル化オブジェクトをバイパスすると、コード実行の脆弱性が発生する可能性があります。

リーリー

悪用
この脆弱性を悪用するために、PHP シリアル化ペイロードを自動的に生成し、ターゲットのリモート ホスト上で目的のコマンドを実行する単純な PHP スクリプトを作成しました。次に、一般的な PHP リバウンド シェルを作成しました。ダウンロード アドレスは次のとおりです:

http://pentestmonkey.net/tools/php-reverse-shell/php-reverse-shell-1.0.tar.gz
注: このファイルを Web サーバーに転送し、リバウンド シェル スクリプトでローカル IP とポートを変更し、次のエクスプロイト コードを変更する必要があります:

リーリー

デモ
アプリケーション スクリプトの準備ができたので、それを実行してリモート ホスト上でコマンドをリモート実行するためのリバウンド シェルを取得できます。

以上がこの記事の全内容です。PHP プログラミングを学習する皆さんのお役に立てれば幸いです。

www.bkjia.com本当http://www.bkjia.com/PHPjc/1122179.html技術記事 PHP シリアル化/オブジェクト インジェクションの脆弱性分析、PHP シリアル化インジェクションの脆弱性 この記事は、PHP シリアル化/オブジェクト インジェクションの脆弱性分析に関する短い記事であり、ホストのリモート シェルを取得する方法について説明します。 たとえば...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。