关于xss
一、 浏览器底层机制与安全基石理解XSS的执行逻辑,必须建立在充分掌握浏览器渲染流程与同源策略的基础之上。 1. 浏览器渲染过程与 DOM 构建浏览器接收到HTML字节流后,需要将其解析为可供渲染和交互的结构。XSS代码的执行正是发生在这个解析阶段。 分词与打标签 (Tokenizing):HTML解析器逐字读取字符序列,进行词法分析,识别出标签(如 <html>, <body>)并生成对应的Token。 生成节点对象 (Lexing/Node Generation):将Token转化为具有DOM属性和方法的节点对象。 构建 DOM 树 (Tree...
npm使用和vm沙箱
nmp使用这里去看官网的详细指令还有民间大佬的精髓总结NPM (Node Package Manager) 不仅仅是 Node.js 的包管理工具,用于安装、共享和管理项目依赖。CTF中,它更是我们进行依赖环境配置、历史漏洞复现以及供应链安全审计的必备武器。 1. 基础环境与配置NPM 会随着 Node.js 自动安装。 环境自检: * node -v 检查 Node.js 版本。 npm -v 检查 NPM 版本。 npm doctor 检查 NPM 环境的健康状态。 网络加速(国内环境): 由于网络问题,可以配置镜像。 安装并使用淘宝镜像:npm install -g...
计算机网络
网络世界的坐标系 MAC地址与IP地址一、 核心架构:为什么需要物理与逻辑两套寻址体系?在网络工程架构中,MAC 地址与 IP 地址的共存并非冗余,而是为了解决网络规模扩展时的寻址效率与物理硬件解耦问题。 MAC 地址(物理寻址,平面架构):工作在数据链路层。MAC 地址是扁平化的(Flat Addressing),它仅唯一标识网络节点的硬件接口(网卡 NIC),不包含任何拓扑位置信息。如果互联网仅依赖 MAC 地址进行路由,全球所有的路由器必须维护一张包含数十亿条目的转发表,这在内存寻址和路由收敛上是完全不可行的。 IP 地址(逻辑寻址,层次化架构):工作在网络层。IP 地址是层次...
Hgamectf
web 魔法书根据提示 抓包改阅读时间 得到弹窗 密码 Classic最后一行密文VUHHX{Tti Julxmzooz sm zhq Rlc azh ane Apk}然后明文VIDAR 123456计算偏移量:- V -> V: 偏移 0 (A)- U -> I: 偏移 12 (M) (U=20, I=8, 20-12=8)- H -> D: 偏移 4 (E) (H=7, D=3, 7-4=3)- H -> A: 偏移 7 (H) (H=7, A=0, 7-0=7)- X -> R: 偏移 6 (G) (X=23, R=17, 23-6=17) 密文...
docker
Docker是什么在没有Docker之前 如果你要在电脑上跑一个别人写的 CTF Web 题目 要在自己电脑上装一堆符合的环境 Docker 就是一个极其轻量级的“虚拟机”替代方案 两个最核心的概念镜像 (Image) 它是一个只读的文件,里面打包好了操作系统基础、运行环境(比如 PHP)和题目代码容器 (Container) 容器是一个隔离的沙箱,题目就在这个沙箱里运行 基础操作 镜像 docker images 作用:查看本地所有镜像(看看你的武器库里都有啥)。 docker search <关键词> 场景:你想找个现成的靶场,比如输入 docker se...
sql
搭完了个人博客 做ivory学长下发的任务 重新做sql靶场 加上补充知识点 sql是最开始学的 刚开始学的时候就只是问ai 基本语法都不是很了解就在写 这里相当于重新开始吧 基础语法也就是最基础的技巧吧 order by ORDER BY测列数是SQL 注入中最基础的技巧 核心原理ORDER BY的语法支持两种排序方式: 按列名 / 别名排序(如ORDER BY username); 按结果集的列索引排序(如ORDER BY 1表示按结果集第 1 列排序,ORDER BY 2按第 2 列,以此类推)。 如果n ≤ 结果集的列数:语句执行正常(无报错); 如果n ...
HTTP 请求走私
HTTP请求走私的原理HTTP 请求一个接一个地发送,接收服务器必须确定一个请求在哪里结束,下一个请求在哪里开始。需要保证前端和后端系统必须就请求之间的边界达成一致 否则,攻击者可能发送含义模糊的请求 后端会将其解释为两条不同的HTTP请求 belike使得攻击者能够在下一个合法用户的请求开头添加任意内容 在这个图片里面 也就是橙色内容 形象一点的例子前端优先处理第一个内容长度头部,后端优先处理第二个前端会将蓝色和橙色数据转发到后端,后端在发出响应前只会读取蓝色内容注入的“G”会破坏绿色用户的请求,他们可能会收到类似“未知方法 GPOST”的响应前端与后端不一致 是我理解的走私的根本 上...
反序列化
一般的反序列化入口 方法名 触发时机 / 定义 触发方式极简示例 __construct 创建对象时初始化 new User(); __destruct 销毁对象时 (如脚本结束) $obj = null; 或 脚本执行完毕 __sleep 序列化前 serialize($obj); __wakeup 反序列化后 unserialize($str); __serialize 序列化时 (PHP 7.4+) serialize($obj); __unserialize 反序列化时 (PHP 7.4+) unserialize($str); __...
LFI
先写靶场 直接用get访问即可,这里对文件没有任何限制。 用upload那里学到的00截断来做,如果你要传php文件的话,可以不用管,因为他是加上后缀.php(其实我这里没有看懂这个防御方式),如果要穿其他文件的话,就在末尾用00截断 从后往前数四个,如果是.php就直接错,不是的话就直接访问,绕过的方式就很多了,可以大写绕过。也可以加点绕过。 ·addslashes()函数,addslashes()是 PHP 内置的字符串转义函数,核心作用是:在字符串中的 ** 单引号(')、双引号(")、反斜线(\)、NUL(NULL 空字符)** 这四类 “预定义特殊字符” ...
无标题
CampusOneStudent Store一个接口/api/debug/sessions 爆不出来 一个字典里面几百万个都没法 虽然感觉这个组合也不是很难 但是一般的爆破都是递归的 也就是说/api能访问 然后才会向下 这个不一样… 所以没法了假设知道了吧… 得到了管理员session id抓包去改 然后去访问/admin接口 进行只过滤了空格的sql注入这样 sql注入就是最基础的列数q='/**/order/**/by/**/5--+不一样的地方 然后看表名'/**/union/**/select/**/1,2,3,name,5/**/from...
