0


《Web 安全漏洞:SQL 注入、文件上传漏洞与 XSS 攻击详解及防护》

在网络安全日益重要的今天,了解常见的 Web 安全漏洞及其防护方法至关重要。本文将深入探讨 SQL 注入、文件上传漏洞以及 XSS(跨站脚本攻击)这三种常见的安全漏洞,并介绍相应的绕过方法和防护措施。

一、面试背景

面试官在开始时澄清了之前有人冒充面试官的情况,随后针对 SQL 注入、文件上传漏洞和 XSS 漏洞进行了面试提问。

二、SQL 注入绕过方法与防护

(一)绕过方法

  1. 白盒绕过:通过代码审计找到绕过方法。这需要对应用程序的源代码进行深入分析,以发现潜在的安全漏洞和绕过点。
  2. 黑盒绕过: - 架构层面绕过:在使用云画幅等场景中,寻找原站点地址,利用同网段的主机或服务器进行内网渗透或内网注入,从而绕过 WAF(Web 应用防火墙)防御。- 资源限制角度绕过:发送大文件,因为在线的 web 设备通常考虑运行速度,一般不会对大文件进行过滤。- 协议层面绕过:利用未覆盖的漏洞进行绕过,例如页面只对 GET 方式进行过滤而未对 POST 方式过滤,或者对某一格式的文件类型进行过滤而未对其他格式过滤。还可以通过参数污染的方式,携带多个参数,让 web 只识别第一个参数,在第二个参数中代入 SQL 语句实现绕过。- 规则层面绕过:包括注释符绕过、空白符绕过、函数分隔符绕过、浮点数方式绕过、利用 error base 进行 SQL 注入或 MySQL 特殊语法绕过。目前,规则层面绕过方法应用较为广泛。

(二)防护措施

  1. 输入验证:对用户输入的数据进行严格的验证和过滤,确保输入的数据符合预期的格式和范围。
  2. 参数化查询:使用参数化查询可以有效地防止 SQL 注入攻击。参数化查询将用户输入的数据作为参数传递给数据库,而不是将用户输入的数据直接拼接在 SQL 语句中。
  3. 权限控制:限制用户对数据库的访问权限,确保用户只能访问其需要的数据和功能。
  4. 定期更新和维护:及时更新数据库软件和应用程序,以修复已知的安全漏洞。同时,定期进行安全审计和漏洞扫描,以确保系统的安全性。

三、文件上传漏洞绕过方法与防护

(一)绕过方法

  1. 修改文件后缀:通过修改文件的后缀名,使其看起来像是合法的文件类型,从而绕过文件上传的限制。
  2. 修改 content type 类型:修改文件的 content type 类型,使其与服务器期望的文件类型相匹配,从而绕过文件上传的限制。
  3. 00% 截断:在链接位置后面加入 00% 字段伪造合法文件头,或者在文件中加入某些文件格式的前十个字节幻数头,绕过 WAF 检查。

(二)防护措施

  1. 前端 JS 代码过滤:设置白名单对上传文件的后缀进行严格检查。白名单比黑名单更安全,因为黑名单可能被大小写等方式绕过。
  2. 限制上传文件大小:避免上传过大的恶意脚本,防止因内存或磁盘耗尽造成拒绝服务攻击。
  3. 将文件上传目录设置为不可执行:使 web 容器无法解析目录下的文件,即使上传恶意脚本,服务器也不受影响。
  4. 将文件放置在独立存储上做静态文件处理:一方面方便使用缓存加速,降低性能损耗;另一方面杜绝脚本被执行的可能性。
  5. 采用随机数改写文件名:让攻击者无法获取上传脚本的文件名,从而无法访问恶意代码。

四、XSS 攻击原理、存在原因与防护方法

(一)原理

攻击者在存在 XSS 漏洞的 web 页面存放恶意攻击代码,普通用户访问时自动执行。反射型 XSS 漏洞会有弹窗警告,存储型 XSS 漏洞可能在用户不知情的情况下将账户 cookie 信息发送到攻击者伪造的服务器,从而泄露用户信息。

(二)存在原因

对用户输入提交给 web server 的内容,尤其是 URL 参数中的内容过滤不充分。攻击者可以通过各种编码方式绕过检查。

(三)防护方法

  1. 对 HTML 标签及特殊字符进行过滤:在不需要 HTML 输入的地方,对 HTML 标签及特殊字符进行过滤,转化为不能被浏览器直接识别或执行的字符。
  2. 白名单过滤 HTML 标签及属性:对用户输入的 HTML 标签及属性做白名单过滤,对存在漏洞的标签和属性专门进行过滤。
  3. 使用内容安全策略(CSP):设置白名单规定客户端可加载和不可加载的资源。即使发现 XSS 漏洞,不符合 CSP 策略的外部资源也不会被加载,可有效防御 XSS 漏洞。

总之,了解 SQL 注入、文件上传漏洞和 XSS 攻击的原理、绕过方法和防护措施,对于保障 Web 应用的安全至关重要。在开发和维护 Web 应用程序时,应采取有效的安全措施,防止这些常见的安全漏洞被攻击者利用。

标签: 前端 sql xss

本文转载自: https://blog.csdn.net/m0_57836225/article/details/142446178
版权归原作者 阿贾克斯的黎明 所有, 如有侵权,请联系我们删除。

“《Web 安全漏洞:SQL 注入、文件上传漏洞与 XSS 攻击详解及防护》”的评论:

还没有评论