- 博客(23)
- 收藏
- 关注
原创 xd_day32-day40
HashMap是 Java 中最常用的集合类之一,它基于哈希表实现,提供了快速的键值对(key-value)存储和查询能力。本地测试用读写文件,真实攻击用直接传字节数组。${}语法的官方定义:在 Log4j 2 的Lookups 文档里,是 Log4j 2 的核心扩展特性。Log4j 1.x 不支持:没有完整的 Lookups 机制,仅支持极简单的系统属性占位符。安全关联${jndi:}是漏洞利用点,而${java:os}是安全的系统属性查询语法。环境版本限制。
2026-03-27 14:45:00
402
原创 ssrf redis 未授权
dir端口号→ 指定应用Flags→ 控制连接状态和数据推送SEQ/ACK→ 保证可靠、顺序传输窗口大小→ 流量控制→ 扩展功能(时间戳等)Payload→ 上层应用数据(Redis 命令)Length: 3Length: 6Length: 3Length: 3Frame (信封)└─ Ethernet II (MAC 地址)└─ IPv4 (源/目标 IP)└─ TCP (源/目标端口, SEQ/ACK, Flags)每一层都有自己的职责,最终应用层才能处理业务数据。
2026-02-28 14:04:29
777
原创 shctf2026
sudo 验证的是当前普通用户(ctf)的密码,不是 root 密码 —— 这是 sudo 的默认规则;靶场脚本生成的NEWPASS是 ctf 的密码,你用这个密码通过 sudo 验证,就能以 root 身份读 flag;root 密码在这个场景里完全用不到,因为 sudo 的设计就是 “用普通用户密码获取 root 权限”,避免直接接触 root 密码。sys.addaudithook(函数)把你的函数注册为回调函数,Python 发生敏感操作时自动调用,参数是固定格式。文件上传逻辑缺陷。
2026-02-23 12:34:30
929
原创 unictf2026
问题答案这是啥?FNV-1a 32位哈希加密吗?不加密,只是完整性校验能破解吗?不需要破解,直接复刻算法为什么用?快、简单、够用的校验攻击注意?改任何字节都要重新算 checksum!opId↓ xor K1↓ 加 nonce 扰动↓ xor K3↓ 强制最高位1= opcode步骤作用引入 nonce让每次生成的 opCode 都不同(防重放)三层密钥混淆(K1/K2/K3)防止静态分析出原始 opId强制最高位为 1。
2026-02-08 13:03:44
1155
原创 basectf2024
本质差异:JSON 数组是「文本字符串」(用于传输),PHP 数组是「内存数据结构」(用于代码内部处理);使用流程:JSON 数组 →→ PHP 索引数组(才能遍历 / 取值);PHP 数组 →→ JSON 数组 / 对象;语法差异:JSON 数组严格要求双引号、无多余逗号;PHP 数组灵活,支持单 / 双引号、索引 / 关联混合。但是网络传的都是字符串,所以是json格式。所以现在php// die("某站崩了?肯定是某忽悠干的!😡😡😡");
2026-01-24 14:53:49
856
原创 xd_day47文件上传-day55xss
且没有对file参数做严格过滤,那么你就可以让服务器包含任意文件(比如 session 文件、上传的临时文件)。一旦包含了带有恶意 PHP 代码的文件,代码就会被执行。
2026-01-22 15:58:31
639
原创 xd_day44WEB攻防-PHP应用&SQL盲注&布尔回显&延时判断&报错处理&增删改查方式
找insrt注入,直接全局搜insert它的访问不是只files/submit.php直接访问显示找到这里提交 数据插入语句有@mysql_query($query) or die('新增错误:'.mysql_error());就有报错注入的可能1. 先明确闭合逻辑代码里的VALUES中,所有变量(比如$content)都被(比如'$content'所以注入的关键是,让我们构造的 SQL 语句能被执行。2. 具体闭合方式(以$content为例)假设$content。
2026-01-17 11:09:10
751
原创 xd_day28js原生开发-day31 day41asp.net
联系:都是原生 JS 获取 DOM 的方法,querySelector 兼容了 get 系列的所有功能;核心区别:querySelector 遵循 CSS 选择器规则(加 #/.),返回单个元素;get 系列按单一规则选(id/class/ 标签),部分返回类数组;新手推荐:除了纯选 id 用 getElementById,其余场景优先用 querySelector,少记规则少踩坑。你说得完全没错!就是按照标签名来获取页面中的元素,具体到你这个例子里,它会选中页面里第一个<h1>
2026-01-14 14:47:53
847
原创 xd_day22_php应用开发_php留言板 day_23_phpsession day24_php文件上传 day25文件操作 day27thinkphp
获取要下载的文件路径 → 设置下载相关的 HTTP 响应头 → 读取文件并输出给浏览器。任意文件下载漏洞会为 PHP 脚本划定一个 “文件操作白名单目录”,PHP 脚本只能对这个(或这些)目录及其子目录进行文件操作(包括下载、编辑、删除、读取、写入等所有文件相关操作),超出该目录范围的文件操作会被 PHP 环境直接拒绝,并抛出错误,无法通过代码绕过。
2026-01-09 11:53:33
1083
1
原创 应急响应思路
常规木马的启动项通常会包含本体名称(或伪装名),但具备隐蔽性的木马可能通过间接调用、注入等方式,让启动项不直接显示其本体名称。这三个其实是木马 “自动运行链条” 里的不同环节启动项文件(File)→ 启动命令(perl进程)→ 木马本体(.nginx)这条命令是木马的 “隐蔽启动指令”:用系统自带的 Perl 解释器做掩护,通过伪装的启动脚本 + 配置文件,偷偷启动.nginx木马,同时最大限度隐藏恶意行为的痕迹。学到了用没错!
2025-12-27 19:22:55
5237
原创 ?ctf2025_week4_Apple or android
不需要在实例化时执行任何初始化逻辑$_SERVER是 PHP 的超全局数组,存储了 Web 服务器的环境变量和 HTTP 请求的信息。对应客户端发送的自定义 HTTP 请求头(PHP 的自动转换规则):。HTTP_+ 大写的请求头名(横线换成下划线),即。简单说:这部分是获取用户自定义的二维码服务 URL。
2025-12-23 22:34:46
944
原创 ?ctf2025
所有函数中,handle_client()是核心中的核心(请求走私的触发点),start_flask_server()是漏洞的目标(代码执行入口),其他函数都是辅助功能。理解了这两个函数的逻辑,就理解了整个漏洞的原理是一个 **「逐段编码」** 头,用于标识消息体(请求体 / 响应体)的传输格式。该头的唯一标准化值是chunked(注意是小写,HTTP 头字段值大小写不敏感,但语义唯一)。只有当请求头中写(或ChunkedCHUNKED)时,才代表请求体是分块传输格式;任何其他值(如xxxabc。
2025-12-22 20:07:37
853
原创 第十六届极客大挑战 web 复现
EJS是一个javascript模板库,用来从json数据中生成HTML字符串功能:缓存功能,能够缓存好的HTML模板;<% code %>用来执行javascript代码/dev/fd/是 Linux 系统的 “原生功能”,所有运行在 Linux 上的程序(包括 PHP)都能直接用;php://fd/是 PHP 为了统一协议语法(比如和等保持一致)做的封装,更贴合 PHP 的使用习惯,且跨系统兼容性更好(比如 Windows 下 PHP 也能通过php://fd/
2025-12-18 22:19:10
1699
原创 isctf
参考ISCTF2025 misc web部分解_isctf2025web-CSDN博客提示CVE-2024-12233是个cms系统,在网上找到漏洞就是文件上传,但是这是个cms,要找到也是不容易的虽然这个的连过滤都没有,但是找不到文章的话还要找文件上传后的上传地址就是isctf下午刚想起来打然后下完源码发现网站崩了,只能自己搭建看看。自己搭建了一下复现index.php include了registration.php文件上传地址这里的$e这段代码开头用了,这个函数会把数组里的键值对转换成独立变量 ——
2025-12-17 22:41:16
690
原创 jndi fastjson学习
本质关系:Fastjson 不主动支持 JNDI,只是它的反序列化流程(实例化类 + 调用 setter),触发了某些 Java 类(如)自带的 JNDI 逻辑;漏洞根源:早期 Fastjson 对@type没有限制(允许指定危险类),对 setter 方法的 “副作用” 没有拦截,导致攻击者能通过恶意 JSON 诱导它触发危险的 JNDI 注入;后续修复。
2025-11-22 14:06:40
826
原创 js逆向之入门
核心围绕你在DES 加密请求代码学习中遇到的fetch找加密入口:看到+ 回调函数→立刻打断点,后续必藏加密逻辑;解析响应:根据选方法(HTML 用text(),JSON 用json()),且必须return解析结果;链式调用:后一个then的参数 = 前一个then的返回值,缺return必出undefined;JSON.stringify({ key: 加密值 })是接口约定,逆向时需确认服务器要求的字段名(如data。
2025-11-04 12:18:12
1565
原创 无数字字母rce
在中文 Windows 环境中,系统命令(如whoamidir)的输出默认是 GBK 编码,而 PHP 默认输出编码多为 UTF-8,两者不一致会导致中文乱码。通过手动指定编码,即可解决乱码问题。测试一下无字母数字rcephpecho $a;eval($a);?这里就是相当于eval($_=~%88%97%90%9E%92%96;$_赋值完就是whoami,然后反引号就是执行命令,echo输出到浏览器,因为反引号默认不会输出到浏览器的,所以要加echo。其他方法以后再看吧。php'];
2025-10-28 16:50:22
1006
原创 [ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-2 通关详解
vi之所以能绕过 rbash,是因为它利用了“程序内部命令执行不受父 shell 限制”rbash 限制的是 “用户直接交互的 shell 环境”;vi作为被允许执行的程序,其内部可以启动新的、不受限的 bash 子 shell;最终通过修复环境变量,获得完整的命令执行能力,实现对 rbash 的逃逸。这也是为什么在 DC-2 中,tom用户被限制使用cat等命令,但通过vi仍能突破限制 —— 本质是借助第三方程序的权限绕过了初始 shell 的限制。翻译。
2025-10-26 21:06:05
1048
原创 长城杯2025wp
场景my的实际类型命令 / 路径的需求最终处理逻辑软链接(指向目录)打包 “指定路径的文件”,不需要层级创建按软链接本身的类型处理,只打包链接软链接(指向目录)路径含,需要 “父路径是目录” 才能创建子文件自动解引用软链接,用其指向的实际目录作为父路径my始终是软链接,只是不同命令会根据 “是否需要路径层级”“是否需要实际内容”,决定是否去读它指向的目标 —— 需要层级 / 实际内容时,就用指向的目录;不需要时,就用链接本身。PATH是一个环境变量,它存储了系统在哪些目录中查找可执行文件。
2025-10-26 17:23:08
897
原创 [ vulnhub靶机 ] 渗透测试综合靶场 DC-1 通关记录
本文详细记录了DC-1靶场渗透测试的完整过程。首先介绍了环境搭建步骤,包括Kali虚拟机和DC-1靶场的安装配置。随后重点描述了渗透过程:使用nmap扫描发现目标开放的22、80、111等端口,识别出运行Drupal 7的Web服务;通过Metasploit框架利用Drupalgeddon2漏洞获取初始shell;进一步通过查找Drupal配置文件获取数据库凭证;最后利用SUID提权技术获取root权限。文章不仅提供了详细的操作命令和截图,还深入分析了各漏洞原理,包括Drupal表单API属性注入、数据库配
2025-10-26 15:28:34
1277
原创 nepctf 2025 sql注入 我难道不是sql注入天才吗
看到表的字段名 id name email age输入' 报错看到查询语句 select * from users where id =得到表名是user题目提示后端数据库是clickhouse,黑名单字符串如下preg_match('/select.*from|\(|or|and|union|except/is',$id)测试了一下用不了&&这样直接的报错注入好像不行了。直接的布尔注入也不行。然后过滤了select 任意 from。而且union也不行。这样的话。大脑枯竭了。去查资料了。
2025-08-01 19:32:36
1274
原创 pwn二进制入门记录
其实入门之前我入门过逆向方向所以ida会用,大家可以学一下子关于pwn方面ida的使用,然后学栈溢出之最好先了解一下函数调用时栈帧的变化,了解一下基本的汇编,其实星盟视频讲的挺好的,我就讲下我学栈溢出遇到的难点把。pop eip 就是把栈顶的值从栈弹出赋值给eip,然后esp加4(32位)。首先是是搭环境遇到的坑,我安装的的是ubuntu24的版本,然后安装pwndbg遇到各种报错,最后下的是portable包,pwndbg_2025.05.30_x86_64-portable.tar.xz。
2025-07-20 10:05:50
314
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅