2k 2 分钟

# 简介 HTTP 请求走私是一种干扰网站处理 HTTP 请求序列方式的技术,最早在 2005 年的一篇 文章 中被提出。 # 成因 请求走私大多发生于前端服务器和后端服务器对客户端传入的数据理解不一致的情况。这是因为 HTTP 规范提供了两种不同的方法来指定请求的结束位置,即 Content-Length 和 Transfer-Encoding 标头。 # 分类 CLTE:前端服务器使用 Content-Length 头,后端服务器使用 Transfer-Encoding 头 TECL:前端服务器使用 Transfer-Encoding 标头,后端服务器使用 Content-Length...
1.8k 2 分钟

# 简介 网站通常都会通过如 CDN、负载均衡器、或者反向代理来实现 Web 缓存功能。通过缓存频繁访问的文件,降低服务器响应延迟。 例如,网站 htttp://www.example.com 配置了反向代理。对于那些包含用户个人信息的页面,如 http://www.example.com/home.php ,由于每个用户返回的内容有所不同,因此这类页面通常是动态生成,并不会在缓存服务器中进行缓存。通常缓存的主要是可公开访问的静态文件,如 css 文件、js 文件、txt 文件、图片等等。此外,很多最佳实践类的文章也建议,对于那些能公开访问的静态文件进行缓存,并且忽略 HTTP...
1.9k 2 分钟

# IIS # IIS 6.0 后缀解析 /xx.asp;.jpg 服务器默认不解析 ; 号及其后面的内容,相当于截断。 目录解析 /xx.asp/xx.jpg (xx.asp 目录下任意解析) 默认解析 xx.asa xx.cer xx.cdx PROPFIND 栈溢出漏洞 RCE CVE-2017-7269 # IIS 7.0-7.5 / Nginx <= 0.8.37 在 Fast-CGI 开启状态下,在文件路径后加上 /xx.php ,即 xx.jpg/xx.php 会被解析为 php 文件。 # PUT 漏洞 开启...
160 1 分钟

# 认证策略 # 密码策略 未限制密码最低位数 未限制密码必须包含字符集 为常用密码 个人信息相关 手机号 生日 姓名 用户名 未检测常见弱密码 已泄露的常用密码 键盘模式 # 加密实现 在客户端存储私钥 # 权限配置 运维人员权限粒度过大 客服人员权限粒度过大 # 供应链安全 # 三方认证 利用被攻击的第三方服务账号登录其他平台账号 # 三方库 / 软件 公开漏洞后没有及时更新
1.1k 1 分钟

# 简介 逻辑漏洞是指由于程序逻辑不严导致一些逻辑分支处理错误造成的漏洞。 在实际开发中,因为开发者水平不一没有安全意识,而且业务发展迅速内部测试没有及时到位,所以常常会出现类似的漏洞。 # 安装逻辑 查看能否绕过判定重新安装 查看能否利用安装文件获取信息 看能否利用更新功能获取信息 # 交易 # 购买 修改支付的价格 修改支付的状态 修改购买数量为负数 修改金额为负数 重放成功的请求 并发数据库锁处理不当 # 业务风控 刷优惠券 套现 # 账户 # 注册 覆盖注册 尝试重复用户名 注册遍历猜解已有账号 # 密码 密码未使用哈希算法保存 没有验证用户设置密码的强度 #...
1.2k 2 分钟

# Xpath 定义 XPath 注入攻击是指利用 XPath 解析器的松散输入和容错特性,能够在 URL、表单或其它信息上附带恶意的 XPath 查询代码,以获得权限信息的访问权并更改这些信息。XPath 注入攻击是针对 Web 服务应用新的攻击方法,它允许攻击者在事先不知道 XPath 查询相关知识的情况下,通过 XPath 查询得到一个 XML 文档的完整内容。 # Xpath 注入攻击原理 XPath 注入攻击主要是通过构建特殊的输入,这些输入往往是 XPath 语法中的一些组合,这些输入将作为参数传入 Web 应用程序,通过执行 XPath...
2.2k 3 分钟

# 简介 模板引擎用于使用动态数据呈现内容。此上下文数据通常由用户控制并由模板进行格式化,以生成网页、电子邮件等。模板引擎通过使用代码构造(如条件语句、循环等)处理上下文数据,允许在模板中使用强大的语言表达式,以呈现动态内容。如果攻击者能够控制要呈现的模板,则他们将能够注入可暴露上下文数据,甚至在服务器上运行任意命令的表达式。 # 测试方法 确定使用的引擎 查看引擎相关的文档,确定其安全机制以及自带的函数和变量 需找攻击面,尝试攻击 # 测试用例 简单的数学表达式, {{ 7+7 }} =>...
1.6k 2 分钟

# XML 基础 XML 指可扩展标记语言(eXtensible Markup Language),是一种用于标记电子文件使其具有结构性的标记语言,被设计用来传输和存储数据。XML 文档结构包括 XML 声明、DTD 文档类型定义(可选)、文档元素。目前,XML 文件作为配置文件(Spring、Struts2 等)、文档结构说明文件(PDF、RSS 等)、图片格式文件(SVG header)应用比较广泛。 XML 的语法规范由 DTD (Document Type Definition)来进行控制。 # 基本语法 XML 文档在开头有 <?xml...
1.4k 2 分钟

# 基础 常见的文件包含漏洞的形式为 <?php include("inc/" . $_GET['file']); ?> 考虑常用的几种包含方式为 同目录包含 file=.htaccess 目录遍历 ?file=../../../../../../../../../var/lib/locate.db 日志注入 ?file=../../../../../../../../../var/log/apache/error.log 利用 /proc/self/environ 其中日志可以使用 SSH 日志或者 Web...
1.4k 2 分钟

# 文件类型检测绕过 # 更改请求绕过 有的站点仅仅在前端检测了文件类型,这种类型的检测可以直接修改网络请求绕过。 同样的,有的站点在后端仅检查了 HTTP Header 中的信息,比如 Content-Type 等,这种检查同样可以通过修改网络请求绕过。 # Magic 检测绕过 有的站点使用文件头来检测文件类型,这种检查可以在 Shell 前加入对应的字节以绕过检查。几种常见的文件类型的头字节如下表所示 类型 十六进制值 JPG FF D8 FF E0 00 10 4A 46 49 46 GIF 47 49 46 38 39 61 PNG 89 50 4E 47 TIF 49...