网络安全测试:方法与思维的全面指南
1. 基础能力要求
在网络安全测试领域,我们需要掌握一系列技术、系统、环境、编程语言、安全编码实践、漏洞知识和工具使用等方面的技能。以下是现代 Web 应用架构中涉及的关键组件:
- 防火墙/代理/负载均衡器/Web 应用防火墙 :这些系统位于我们与目标应用之间,会对请求和响应进行交互。我们需要识别它们的存在及其对请求的影响,并掌握绕过 WAF 的方法。
- Web 服务器和 Web 应用服务器 :Web 应用通常通过应用服务器将请求转发到代码解释器。不同类型的服务器可能存在不同的攻击面,如知名的 Tomcat 管理页面,还可能有可利用的特殊行为,如 HTTP 参数污染。
- 专有或第三方应用代码 :专有 Web 应用常使用第三方库或框架,其中可能存在有趣的漏洞,或者提供需要正确使用的防御 API。
- 数据库 :如今的应用使用各种类型的数据库,可直接访问或通过对象关系映射(ORM),如 NoSQL、数据湖和云存储。
- 虚拟化系统 :现代可扩展的 Web 架构常使用 Docker、Podman 等虚拟化技术。基础设施即代码有其架构特点,例如秘密值的处理和泄露风险。
- 操作系统 :处理影响文件系统的漏洞(如路径遍历)时,了解操作系统特定文件系统的工作原理、命令执行和 shell 逃逸方法至关重要。在后期利用阶段,操作系统知识对于进一步发现和权限提升也非常关键。
- 基础设
超级会员免费看
订阅专栏 解锁全文
3569

被折叠的 条评论
为什么被折叠?



