CTF (Cature The Flag) 起源于1996年 Global Hacking Conference
是较量网络安全知识与能力的竞赛
CTF 涉及的领域与知识繁多, 随着资安技术发展的加速
题目也越来越难, 入门门槛越来越高
虽然没有参赛过, 但有幸听过有经验的参赛者分享
才知道台湾这方面挺强的, 也了解到相关知识不但有趣而且重要
在这边记录讲者提供的3个体验题目与解题资讯
目标: cature the flag, 也就是要想办法取得 flag 的值
假设题目放在 10.20.104.3 这台机器
[Q1] yoyoadmin
<?php
highlight_file(__FILE__);
//get ip
$ip = 'unknown';
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} else if ( !empty($_SERVER['HTTP_X_FORWARDED_FOR']) ) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
if ($ip === '127.0.0.1') {
require_once 'flag.php';
echo $flag;
}
else {
echo 'hi normal user';
}
?>
[Q2] test connection
<?php
highlight_file(__FILE__);
$url = isset($_POST['url']) ? $_POST['url'] : "";
if ($url != "" ) {
$pu = parse_url($url);
if (isset($pu["host"]) && isset($pu["scheme"])) {
if ($pu["host"] === "10.20.104.1"
&& ($pu["scheme"] === "http" || $pu["scheme"] === "https")
) {
require("flag.php");
exec("curl