プロンプトによると、バックアップファイルが漏洩したと考えられ、バックグラウンドスキャンでindex.php.bakのダウンロード可能なファイルが取得され、インデックスホームページのソースコードが開かれました。
<?php
include_once "flag.php";
ini_set("display_errors", 0);
$str = strstr($_SERVER['REQUEST_URI'], '?');
$str = substr($str,1);
$str = str_replace('key','',$str);
parse_str($str);
echo md5($key1);
echo md5($key2);
if(md5($key1) == md5($key2) && $key1 !== $key2){
echo $flag."取得flag";
}
?>
- 最初の$ str:URLをインターセプトしますか?最後までコンテンツ
- 2番目の$ str:位置1から開始して、傍受されたコンテンツを再度傍受します。目的は、「?」を削除することです。
- 3番目の$ str:2番目のステップの処理後にstrを再度処理し、strのキーを空に置き換えます
- parse_str()
str_replace関数はキーをフィルタリングするため、
ペイロードをバイパスするために二重書き込みを行うことができます。http:// target / web16 /?kkeyey1 [] = s878926199a&kekeyy2 [] = s155964671a
MD5バイパスはここに表示されます:MD5バイパス