渗透测试中如何找漏洞和写安全报告

漏洞挖掘是渗透测试中最重要的环节,主要有以下方法。

outputo-20210807-081059-534-izzx.png

1、使用通用扫描工具进行扫描。包含AWVS,Nessus等工具,其中AWVS主要用于网站的漏洞扫描,Nessus除了扫描网站的漏洞之外,还可以扫描系统的漏洞。第二,使用特殊的扫描工具进行扫描。其中包括Sqlmap,Xsser等工具,Sqlmap主要针对数据库中的漏洞,Xsser主要针对跨站漏洞。第三,代码扫描。使用代码扫描软件,检查代码关键节点(如输入框、上传文件位置)是否有漏洞。

2、找出系统和中间件的漏洞。

第一,检查旧版本的漏洞。根据前期信息收集的版本信息,通过CVEDetail找到相应版本的漏洞,找出是否有相关漏洞使用代码。第二,检查系统和中间件是否使用弱密码。用Hashcat等工具检查系统、数据库等中间件是否有弱密码。

3、挖掘业务逻辑漏洞。

即使使用各种工具,也要挖掘关键业务流程中是否存在业务逻辑漏洞。首先,使用各种工具。包括浏览器。开发工具,Wireshark,Fiddler,Burpsuite等抓包工具。第二,挖掘关键业务流程。重点业务流程包括信息修改,密码修改,支付流程,手机或邮箱验证流程等。第三,发现商业逻辑上的漏洞。常见的商业逻辑漏洞包括重放攻击、数据篡改、流程绕过、验证模块暴力破解、越权漏洞等。对于涉及资金的业务来说,商业逻辑漏洞的危害更大。在上述漏洞挖掘过程中,漏洞扫描可以发现大部分安全问题。但是,如果不能使用扫描工具,需要通过抓取和修改软件来测试业务逻辑,或者进一步通过代码审计来测试白盒。

4、报告。

一、描述过程。

描述产生业务影响的漏洞攻击过程,包括发现、使用和验证漏洞的全过程。

二、风险评估。

综合考虑发现的所有漏洞,评估可能发生的业务风险。如果系统交易数据库存在密码弱、网络访问控制不严格的漏洞,攻击者可以远程修改数据,威胁资金安全。

三是评估影响。

对于发现的漏洞,从日志层面评估相关数据是否被泄露或篡改。当前,国家法规和行业规范都对日志提出了要求,例如《网络安全法》规定,网络日志不少于6个月,因此可根据日志评估漏洞所造成的影响。

四.提出改进。

从防御的角度分析安全防御系统的弱点,提出修补和升级的方案。

分享: