背景:小B接到一个渗透测试任务,由于很久没有从乙方视角执行渗透测试的他决定先梳理一下自己的思路。
准备工作
第一个是渗透测试用例:对于技术人员来讲这是一个比较好的知识点沉淀的方式,不但有助于你在每一次的渗透测试中不遗漏掉某个点,并且还可以在团队内部进行共享方便提升团队内部成员的技能。
第二个是工具箱:工欲善其事必先利其器,有一个好的工具箱决定我们在渗透测试时的效率。一个好的工具箱应该包括,不同操作系统(Win、Linux、macOS);各种环境与基础工具(Java、Py2与Py3、Ruby、NodeJS、Go、数据库连接客户端、SSH连接客户端等等);常用的工具(Nessus、AWVS、BurpSuite、SQLMap、各种小工具、CVE漏洞利用POC);
做好准备工作是平时的积累,不要在每一次面对项目时再去做。
前期沟通
对于乙方的渗透测试而言,在开始之前与客户沟通一些相关事宜是非常有必要的:
第一个是渗透测试目的:客户进行本次需求是为了什么?等保、日常安全巡检还是其他目的,不同的目的决定漏洞评判等级的不一样,也觉得测试过程中方法的不一样。
第二个是渗透测试目标:目标通常情况会分为主机和应用系统,这两类目标的渗透方法上是大致相同的。做应用系统的渗透测试,我们需要判断应用系统后端的主机,往往在渗透应用系统无果的时候我们可以从主机层面出发突破,反之亦然。
第三个是目标环境:一般我们渗透测试会在两种环境中进行,一是生产,二是测试。不同的环境对渗透测试的要求也不一样,假设是生产环境,我们需要避免对目标进行DoS拒绝服务、缓冲区溢出等可能导致服务中断或延缓服务响应的攻击&#