おそらく多くの古い PHPer は「PHP Easter Egg」という言葉をすでに知っているか聞いたことがあるでしょう。PHP4 のバージョンからイースターエッグはあったようですが、近年では徐々に忘れ去られているかもしれません。実際、イースターエッグ関数 PHP スクリプト エンジンはデフォルトで有効になっています。
phpinfo(); を記述してアクセスし、次の GET 値を追加して表示します
公式の Discuz フォーラムを使用してテストしてみましょう:
http://www.discuz.net/?=PHPE9568F34-D428 -11d2-A769-00AA001ACF42
http://www.discuz.net/?=PHPE9568F35-D428-11d2-A769-00AA001ACF42
http://www.discuz.net/?=PHPE9568F36-D428-11d2 -A769-00AA001ACF42
http://www.discuz.net/?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000
上記の 4 つのリンクの赤い部分は、PHP ソース コード /ext/standard/info です。 h 定義された GUID 値は次の図に示されています
PHP イースターエッグに関して、このメソッドは、スキャンされた Web サイトが何を使用しているかを検出するために、一部の外国の Web 脆弱性スキャナー (例: HP WebInspect) によって使用されています。ウェブ開発言語。実際、一部の Web サイトでは動的スクリプトを使用して純粋に静的な HTML ページを生成したり、URL 書き換えを使用して疑似静的ページを実装したりしているため、ペネトレーション テストのプロセス中に、一部の Web サイトでどの Web 開発言語が使用されているかを特定することが困難になることがよくあります。 Web サイトは PHP を使用しています。開発している場合は、イースターエッグ機能が php.ini でデフォルトで有効になっているため、多くの場合、イースターエッグを特定することができます。他の人がイースターエッグを通じて Web サイトを取得することを望まないでください。機密情報については、php.ini で Expose_php = Off を設定してください!
上記を読んだ後、php.ini で Expose_php = On なので、パケットをキャプチャして http ヘッダー情報を見れば問題ない、と言う人もいるかもしれませんが、一部の大規模なサイトでは、サイトの前にリバース プロキシ サーバーが設置されています。そのため、http ヘッダー内の情報のキャプチャに完全に依存することはできません。