官方微信视频号
渗透测试(Penetration Testing),是指经授权的动作绕过某一系统安全机制的方式,模拟黑客攻击对业务系统进行安全性测试,检查数据处理系统的安全功能,以发现信息系统安全问题的手段,降低系统安全风险
一般渗透流程
下面让上海机器人产业技术研究院来为您讲解一下渗透测试
▍明确目标
(1)确定范围:测试目标的范围、ip、域名、内外网、测试账户、机器人设备、充电设施等。
(2)确定测试需求:Web应用程序安全测试项、APP应用程序安全测试项、机器人设备安全测试项、充电设施安全测试项(具体测试项见附表1)。
(3)确定依据: 被测件检测依据,撰写测试用例、测试记录、测试计划、检测报告、软件测评作业指导书(信息安全类)。
▍信息收集
(1)方式:主动扫描,开放搜索等。
(2)开放搜索:利用搜索引擎获得:后台、未授权页面、敏感url、等等。
(3)基础信息:IP、网段、域名、端口。
(4)应用信息:各端口的应用。例如web应用、邮件应用、等等。
(5)系统信息:操作系统版本。
(6)版本信息:所有这些探测到的东西的版本。
(7)服务信息:中间件的各类信息,插件信息。
(8)人员信息:域名注册人员信息,web应用中发帖人的id,管理员姓名等。
(9)防护信息:试着看能否探测到防护设备,并尝试搜索设备的弱口令。
▍漏洞探测
利用上一步中列出的各种系统、应用等使用相应的漏洞。方法:
(1)漏扫,awvs,IBM appscan等。
(2)结合漏洞去exploit-db等位置找利用。
(3)在网上寻找验证poc。
▍漏洞验证
将上一步中发现的有可能可以成功利用的全部漏洞都验证一遍。结合实际情况,搭建模拟环境进行试验。成功后再应用于目标中。
(1)自动化验证:结合自动化扫描工具提供的结果。
(2)手工验证:根据公开资源进行验证。
(3)试验验证:自己搭建模拟环境进行验证。
(4)登陆猜解:有时可以尝试猜解一下登陆口的账号密码等信息。
(5)业务漏洞验证:如发现业务漏洞,要进行验证。
▍信息分析
为下一步实施渗透做准备
(1)精准打击:准备好上一步探测到的漏洞的exp,用来精准打击。
(2)绕过防御机制:是否有防火墙等设备,如何绕过。
(3)定制攻击路径:最佳工具路径,根据薄弱入口,高内网权限位置,最终标。
(4)绕过检测机制:是否有检测机制,流量监控,杀毒软件,恶意代码检测等(免杀)。
(5)攻击代码:经过试验得来的代码,包括不限于xss代码,sql注入语句等。
▍获取相关资源、权限
实施攻击:根据前几步的结果,进行攻击
(1)获取内部信息:基础设施(网络连接,vpn,路由,拓扑等)。
(2)进一步渗透:内网入侵,敏感目标。
(3)持续性存在:一般我们对客户做渗透不需要。rookit,后门,添加管理账号,驻扎手法等。
(4)清理痕迹:清理相关日志(访问,操作),上传文件等。
▍信息整理
(1)整理渗透工具:整理渗透过程中用到的代码,poc,exp等。
(2)整理收集信息:整理渗透过程中收集到的一切信息。
(3)整理漏洞信息:整理渗透过程中遇到的各种漏洞,各种脆弱位置信息。
▍形成报告
(1)按需整理:按照之前第一步跟客户确定好的范围,需求来整理资料,并将资料形成报告。
(2)补充介绍:要对漏洞成因,验证过程和带来危害进行分析。
(3)修补建议:当然要对所有产生的问题提出合理高效安全的解决办法。
表1 测试项目表