- 博客(33)
- 收藏
- 关注
原创 codeql从入门到入土
见github官方指南:用于编写自定义 CodeQL 查询的新数据流 API以下是新旧迁移对照表旧 API(将被弃用)新 API(2024 以后推荐)或特征字符串不再需要直接写统一为isBarrier统一为实例化直接用以下部分是codeql通过(匹配函数检测JNDI注入安全漏洞)的自定义扫描规则示例以下插播一下JNDI注入的概念基本概念JNDI是 Java 平台的一项技术,用于在应用程序中查找和访问命名和目录服务,通过 JNDI,应用程序可以以统一的方式访问各种资源。
2025-07-28 02:11:03
1750
原创 SSRF(ctfshow)
各种指向127.0.0.1的地址http://localhost/ # localhost就是代指127.0.0.1http://0/ # 0在window下代表0.0.0.0,而在liunx下代表127.0.0.1http://[0:0:0:0:0:ffff:127.0.0.1]/ # 在liunx下可用,window测试了下不行http://[::]:80/ # 在liunx下可用,window测试了下不行http://127。0。0。1/ # 用中文句号绕过。
2025-07-10 15:25:13
335
原创 XSS(ctfshow)
为从URL的GET参数获取cookie值,并且把当前时间格式化追加到cookie.txt文件。payload,基本思路就是利用js文件进入管理员页面,并直接把相关信息带出。过滤了script,img,iframe,xss,空格,分号,逗号。根据上题的思路再次尝试,发现不行,应该是cookie立即失效了。,一种无需重新加载整个网页的情况下,能够更新部分网页的技术。这里的收件人要是admin,payload是一样的。返回了admin账号的密码,登录拦截就可以得到。新增了修改密码的功能,抓包看一下,想到构造。
2025-07-10 15:21:49
1126
原创 有缺陷的访问控制
访问上题得到的/access-control/users路由,并添加Content-Type: application/json,返回hash数据。/IDOR/profile/{userId},userId可以由前面抓包的时候看到,也可以爆破。是输入的cookie值在有效会话列表中,所以根据会话id递增的规律,可以爆破解题。直接对象引用是指应用程序使用客户端提供的输入参数来访问数据或对象的一种设计方式。的概率自动授权新对话,把它加入有效会话列表,而题目。查看其他人的profile,根据id号爆破。
2025-07-10 14:35:03
334
原创 CSRF(跨站请求伪造)
另一种防御方式是给每个请求都添加自定义头部只有在所有与服务器的交互都通过JavaScript进行时才有效服务器只需检查这个头是否存在,不存在则拒绝请求这种方法也会被绕过(例如通过Adobe Reader PDF的客户端请求注入等方式)所以不应完全依赖此方式。
2025-07-10 14:33:03
422
原创 身份认证缺陷
JWT声明滥用)指的是对JSON Web Token中的声明(payload)部分进行不当或未经授权的操纵行为。但是注意到这里的有效时间只有一分钟,要不就快速的,要不就要最后把时间戳换一下。把admin改成true,再输入密钥为上文提到的victory,再放回去。这里是Jerry想删掉Tom的账户,那可能就要构造一个Tom的token。JKU是JWT规范的一部分,允许通过URL动态获取验证签名所需的公钥。生成claims,jwt,cookie,并返回。题目给了一个文件,解码发现是Tom的token。
2025-07-10 14:32:31
377
原创 XXE漏洞
是一种针对XML处理应用程序的安全漏洞,当应用程序使用配置不当的XML解析器处理包含外部实体引用的输入时发生。evil.dtd 中定义了一个名为 send 的参数实体,用于执行恶意操作(如窃取数据)。的机制,当XML文档被解析时,这些实体引用会被替换为实际内容。逐行解析 XML,再通过 JAXB 反序列化为 Comment 对象。由于 unmarshaller在执行过程中解析了xml,导致xxe注入。定义了一个基础实体 &lol;XML实体(Entity)是XML中用来定义。上传一个正常的发现是有提示的。
2025-07-10 14:31:50
308
原创 目录遍历漏洞
这里是把test文件传到了 C:\Users\Lenovo\.webgoat-2023.5\PathTraversal\cindahy。为特定用户清理并创建上传目录,大意是根据webgoat的主目录和用户名拼接好路径之后,检查此路径是否为空,若不为空则调用。uploadedFile是一个指向目标位置的文件对象,创建一个空文件再把传入的文件复制进空文件。这里只从前端传入了一个参数(文件),把原来要输入的文件上传地址变成了自己提取的原始文件名(返回文件的规范路径(绝对且唯一的路径)可以看到这里调用了父类中的。
2025-07-10 14:31:10
424
原创 SQL注入
employees表单写一个简单的查询语句就行了然后看一下源码从数据源获取一个数据库连接:创建一个Statement对象,用于执行SQL语句。表示结果集可以滚动,表示结果集是只读的。:执行传入的SQL查询语句,返回一个ResultSet对象,包含查询结果。:将结果集的游标移动到第一行,如果结果为空,抛出SQLExcepion错误之后就是查询结果与Marketing比对,如果正确返回正确信息(包括查询语句和查询结果)无回显-不会返回数据库中的详细信息侧面回显。
2025-07-10 14:30:02
854
原创 ctfshow菜狗杯题集
Game._walk(Game.food) // 触发得分逻辑。hex打开发现是png,改png后缀,图片上就有flag。strings 两个图片得到这两串字符,很明显的栅栏。一个前端的贪吃蛇游戏,直接查看代码。注意这里溢出太多也不行,因为有上限。异或winhex里面就能直接异或。查看调试器,寻找有关分数的变量。// 在控制台临时修改分数阈值。得到一个图片,kali里面。按照字符出现次数输出字符。图片宽高修改+盲水印提取。
2025-07-10 14:26:58
308
原创 Apache HTTPD 换行解析漏洞(CVE-2017-15715)
总结:在apache在2.4.0~2.4.29的环境下上传1.php,在hex中在php后面插入字符“0a”,即可绕过。Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。这里可以在hex中在php后面插入“0a”。在1.php后面插入一个\x0A(注意,不能是。版本中存在一个解析漏洞,在解析PHP时,访问刚才上传的1.php%0a,可以解析。上传一个1.php,被拦截。
2024-11-01 16:50:37
699
原创 Apache HTTPD多后缀解析漏洞
那么,在有多个后缀的情况下,只要一个文件含有.php后缀就会被识别成PHP文件,且没必要是最后一个后缀。这个特性就会形成一个可以绕过上传白名单的解析漏洞。由于Apache HTTPD支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。所以如果运维人员给.php后缀增加了处理器。该漏洞和apache版本和php版本无关,属于用户配置不当造成的解析漏洞。例题: [UUCTF 2022 新生赛]ez_upload。将php文件构造成1.php.jpg的形式。
2024-11-01 16:49:06
666
原创 ctf文件上传题小总结与记录
如果攻击者传入的文件名参数为”/a/b/c.txt“,那么 file_path 会是一个绝对路径(/a/b/c.txt)。即 os.path.join 会忽略掉”var/lib“部分,攻击者可以不使用“.”字符就读取到任何文件。然而,如果拼接的路径以/开头,那么包括基础路径在内的所有前缀路径将会被删除,该路径被视为绝对路径,造成任意文件读取漏洞。总结:遇到可上传压缩文件的文件上传题,可将php文件压缩后上传,用phar读取来执行后门。的putin.php文件压缩成zip文件,上传。
2024-11-01 16:40:30
1184
原创 web安全系统学习-信息收集
由于邮箱服务器大部分是内部访问,很少开cdn,从此获取真实IP地址。子域名可能和主网站同一IP,也可能在1-254或在不同网段。可以通过对方邮件服务器给我们发送邮件查询对方邮件服务器地址。m.sp910 子域名小技巧/采集/国外请求(同类型访问)sp910 DNS历史记录=第三方接口(接口查询)邮件源码测试对比第三方查询(地区分析)在cdn部署地以外访问,获取真实IP。cdn:内容分发网络,提高访问效率。xueersi 子域名上面的小技巧。#目前常见的CDN绕过技术有哪些。便于发现相关测试目标的资产。
2024-10-14 18:56:45
282
原创 PHP学习笔记③
命名空间通过关键字namespace来声明。如果一个文件中包含命名空间,它必须在其它所有代码之前声明命名空间。定义有两种方式(加大括号或不加)php // 定义代码在 'MyProject' 命名空间中 namespace MyProject {// ... 代码 ... }或php // 定义代码在 'MyProject' 命名空间中 namespace MyProject;// ... 代码 ...<html>php。
2024-07-17 17:19:54
1163
原创 PHP学习笔记②
优先顺序是当前类中的方法会覆盖 trait 方法,而 trait 方法又覆盖了基类中的方法。当用户点击链接 “Test $GET”, 参数 “subject” 和 “web” 将发送至"test_get.php",你可以在 “test_get.php” 文件中使用 $_GET 变量来获取这些数据。变量函数是指在PHP中,将一个变量作为函数名来调用的函数,相当于这个变量为函数类型,可以指向任何一个函数。变量的名字就是数组的键。文件的完整路径和文件名,如果用在被包含文件中,则返回被包含的文件名。
2024-07-14 20:12:14
1011
原创 PHP学习笔记①
PHP 提供了一些预定义常量,可以在脚本中直接使用。这些常量通常用于获取 PHP 的配置信息、版本信息等。PHP_VERSION:当前 PHP 解析器的版本。PHP_OS:服务器的操作系统。PHP_INT_MAX:最大的整数值。E_ERROR、E_WARNING、E_PARSE 等:错误报告级别。
2024-07-10 21:47:12
670
原创 《白帽子》点击劫持笔记
点击劫持是一种视觉上的欺骗手段。攻击者使用一个透明的,不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上操作,在不知情的情况下点击透明的iframe页面,点击一些功能性的按钮。
2024-05-08 18:54:39
861
3
原创 《白帽子讲Web安全》第四章学习笔记(Cookie)
Cookie是Web服务器发给用户的一小段数据,浏览器会存储这些数据,并在后续发往浏览器的请求中带上它们。因为HTTP协议本身是无状态的 ,底层的TCP连接会断开,用户的IP地址也会发生变化,但是Web应用的服务端需要记住每个访问者的状态,例如登录一次后就无需再登录,所以这个过程中就需要存储一份数据来标识用户。我们可以通过Cookie将用户标识存储再客户端,但此时用户可以查看和篡改这些数据。因此,安全起见,可以将Cookie中的数据加密或者将数据存储在服务端。
2024-03-17 11:04:29
1924
3
原创 《白帽子讲web安全》第二三章学习(HTTP,Web应用、浏览器安全)
HTTP协议是一种Client-Server协议,所以只能由客户端单向发起请求,服务端再响应请求。这里的客户端也叫用户代理(User Agent),在大多数场景下是一个浏览器。
2024-03-14 15:49:53
2389
3
原创 CTF基本知识
代码执行,上传漏洞,SQL注入等,也有一些简单的关于网络基础知识的考查,如返回包,TCP/IP,数据包内容和构造,可以说题目环境比较接近现实环境。所需知识:PHP,Python,TCP/IP,SQL。在CTF比赛中,它代表着溢出类的题目,常见的类型有整数溢出、栈溢出和堆溢出等,主要考察对漏洞的利用能力,所需知识:C,OD+IDA,数据结构,操作系统。密码学类题目考察各种加解密类题目,包括古典加密技术,现代加密技术甚至出题者自创的加密技术,以及一些常见的编码解码,主要考察密码学,会与其他题目结合。
2024-03-10 21:48:47
1835
1
原创 ACM中问题的简单记录(自留)
STL(Standard Template Library,标准模板库),提供了六大组件:容器、算法、迭代器、仿函数、适配器、空间配置器。类模板:template struct pair实际上就是把大化小,把大问题转化成小问题,且小问题之间通常可以用递推关系表示。通常用来求解最值(最优、最大、最小、最长)问题。步骤为拆分子问题,把子状态记录在dp中,找到递推关系,在子状态的基础上求解之后的问题。相关例题。
2024-03-02 13:44:48
488
原创 metasploit,msfvenom(生成木马后门)初步学习
msf是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行的shellcode,并持续保持更新。(可以让复杂的漏洞攻击流程变的非常简单)
2024-02-01 22:29:49
1051
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅