CTFHubのスキルツリー-Web-は、ファイルのアップロードを切り捨て-00


あなたはcnblog著者でcarr0t2記事としてこれを表示されない場合、それは元のページのレイアウトへのより良いアクセスを取得することが推奨され、画像の経験

タイトル



ここでは、Webページのコードがあります

if (!empty($_POST['submit'])) {
    $name = basename($_FILES['file']['name']);
    $info = pathinfo($name);
    $ext = $info['extension'];
    $whitelist = array("jpg", "png", "gif");
    if (in_array($ext, $whitelist)) {
        $des = $_GET['road'] . "/" . rand(10, 99) . date("YmdHis") . "." . $ext;
        if (move_uploaded_file($_FILES['file']['tmp_name'], $des)) {
            echo "<script>alert('上传成功')</script>";
        } else {
            echo "<script>alert('上传失败')</script>";
        }
    } else {
        echo "文件类型不匹配";
    }
}

思考

  • 00切り捨てられたコンテンツを検索
  • C言語の中等学校は、同じトークン、文字列の終わりの終わりの印として00の文字列を持っていた$des接続は前面に接続されている$_GET['road']、しかし$_GET['road']、この引数は、私たちが指定した編集できるということですが、00切り捨てを構築することが可能ですこれは、URLエンコードされたコンテンツを含み
  • 推奨読書
    https://zhuanlan.zhihu.com/p/27739315
    https://www.seebug.org/vuldb/ssvid-89630

ツール

1.中国のアリ剣
2.bp

ソリューション

1、bpのオープンプロキシ、アップロードの写真や、インターセプト馬

図2に示すように、構造00カットアップロード

3.中国の剣接続アリ、GETフラグ

追伸

これらの変数は、アップロードした後、自身のPHPコードになりにくいがあるので、自分自身のデバッグに、私は状況を発見しました

自分のコンピュータをデバッグ、それは00パーセントが、その後、ほとんどの紙を知って、\ 0に解析されます発見された上で説明されています

私たちは今、2つの条件が少ない5.3.4より前のバージョンのPHPとmagic_quotes_gpcのがオフ状態であるためにオフ00パーセントカットを使用していることを知っています。magic_quotes_gpcのならば、私たちは、00パーセントが、magic_quotes_gpcの設定をオフにした後、バックスラッシュでエスケープされますので、それは、カットオフすることができないで変更されます

おすすめ

転載: www.cnblogs.com/carr0t/p/12622236.html