网络安全学习笔记(web-文件上传)

本人事先声明,这些知识只是为一些想从事网络安全工程师的小伙伴,提供体系化的学习思路。

如果学习者学习后,进行非法行为,与本人无关。

告诫:对于一些兴趣学习者,低调学习,别瞎搞,容易喜提免费住宿大礼包。

如果有错误的地方欢迎指正,作者在收到信息后会及时修正,欢迎与作者共同学习进步。

目录

1. 基础知识补充

文件上传漏洞

危害

查找及判断

验证/绕过

2. WAF绕过补充

WAF绕过方法

Content-Disposition修改:

文件名修改:

Content-Type修改:

数据溢出:

符号变异:

fuzz测试

HTTPS绕过

0-day漏洞利用

IP地址变换

WAF规避

3. 漏洞/修复补充

解析漏洞补充

CMS漏洞补充

编译器漏洞补充

CVE等漏洞补充

安全修复

4. 文件上传漏洞

文件类型检测绕过

MIME类型检测绕过

双重扩展名

5. WAF绕过

绕过SQL注入防护

绕过XSS防护

绕过CSRF防护

6. 漏洞/修复

补丁的应用

避免硬编码敏感信息

安全开发实践

文件上传安全配置


1. 基础知识补充

文件上传漏洞

文件上传漏洞是指应用程序对用户上传的文件执行不足或不正确的安全检查,导致攻击者可以上传恶意文件,从而执行任意代码、获取系统权限或实施其他攻击。

危害

上传恶意文件,执行任意代码。

提升攻击者权限,甚至获取服务器权限。

存储恶意文件,用于后续攻击或传播恶意软件。

篡改网站内容,传播虚假信息。

查找及判断

黑盒查找:目录、敏感文件扫描,检查网站提供的上传功能,如会员中心、后台系统等。

白盒查找:代码审计,检查文件上传的相关代码是否进行了适当的安全检查。

验证/绕过

前端防护:JavaScript类防护,常用于提高安全性,但可以通过禁用JavaScript来绕过。

后端防护:黑名单、白名单、内容检查等,可以绕过一些简单的安全检查,但需要注意对特殊字符和编码的处理。

2. WAF绕过补充

WAF绕过方法

Content-Disposition修改:

        修改Content-Disposition头信息,可能绕过WAF检测。

文件名修改:

        修改文件名,有时可以绕过WAF检测。

Content-Type修改:

        修改文件的Content-Type,有时可以绕过WAF检测。

数据溢出:

        在请求中加入垃圾数据,使WAF无法正确解析请求,达到绕过效果。

符号变异:

        使用不同的符号、换行等进行变异,绕过WAF的匹配规则。

fuzz测试

        使用工具如Burp Suite结合字典进行fuzz测试,尝试不同的输入组合以发现WAF可能存在的绕过点。

HTTPS绕过

        有些WAF可能只检查HTTP流量而不检查HTTPS流量,攻击者可以尝试使用HTTPS来绕过WAF。

0-day漏洞利用

        攻击者可以尝试利用尚未被修补的0-day漏洞来绕过WAF的保护。

IP地址变换

        攻击者可以通过更改IP地址或使用代理服务器来绕过WAF的限制。

WAF规避

        攻击者可以尝试了解WAF的规则并避免触发这些规则,例如避免使用特定的攻击模式或关键词。

3. 漏洞/修复补充

解析漏洞补充

        解析漏洞利用中间件或服务器对文件扩展名的解析规则漏洞,可以导致恶意文件被当作其他类型文件执行,进而实现攻击。

CMS漏洞补充

搜索已知CMS漏洞时,可以结合CMS版本信息,寻找相应的漏洞利用代码或方法。

编译器漏洞补充

编译器漏洞可能存在于富文本编辑器,利用这些漏洞可以执行恶意代码或者实现攻击。

CVE等漏洞补充

CVE漏洞是公开的、特定漏洞的标识符。可以通过学习特定CVE漏洞的利用方法,了解安全漏洞的原理和攻击手法。

安全修复

修复漏洞可以通过添加补丁、升级中间件版本、修改配置等方式来提高系统的安全性。

4. 文件上传漏洞

文件类型检测绕过

有些应用程序只依赖于文件扩展名来确定文件类型,可以通过修改文件扩展名来绕过这种检测机制,例如将.php文件改为.jpg.php。

MIME类型检测绕过

类似于文件扩展名检测,有些应用程序只依赖于MIME类型来检测文件类型。攻击者可以通过修改请求头中的Content-Type来绕过这种检测。

双重扩展名

上传文件时,使用双重扩展名来绕过检测,例如file.php.jpg。有些应用程序只对最后的扩展名进行检测。

5. WAF绕过

绕过SQL注入防护

WAF通常会尝试阻止SQL注入攻击,攻击者可以尝试使用不同的编码、大小写、SQL函数等方式来绕过WAF的SQL注入防护。

绕过XSS防护

类似SQL注入,攻击者可以尝试使用各种编码、HTML实体编码等方式来绕过WAF的XSS防护。

绕过CSRF防护

攻击者可以尝试使用不同的请求方法、绕过Referer检查、构造合法请求等方式来绕过WAF的CSRF防护。

6. 漏洞/修复

补丁的应用

安全修复时,应及时应用官方提供的安全补丁,这些补丁通常会修复已知的漏洞。

避免硬编码敏感信息

开发人员应避免在代码中硬编码敏感信息,如数据库密码、API密钥等,而应该使用安全的配置管理机制。

安全开发实践

开发人员应当具备安全编码实践,避免常见的安全漏洞,如SQL注入、XSS、CSRF等。

文件上传安全配置

服务器应配置合适的文件上传规则,限制文件类型、大小,并确保上传的文件存放在安全的目录下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习路上的bug

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值