渗透测试是指在获取用户授权后,通过真实模拟黑客使用的工具、分析方法来进行实际的漏洞发现和利用的安全测试方法。这种测试方法可以非常有效的发现最严重的安全漏洞,尤其是与全面的代码审计相比,其使用的时间更短,也更有效率。
在测试过程中,用户可以选择渗透测试的强度,例如不允许测试人员对某些服务器或者应用进行测试或影响其正常运行。通过对某些重点服务器进行准确、全面的测试,可以发现系统最脆弱的环节,以便对危害性严重的漏洞及时修补,以免后患。
1) 实施方案制定,客户授权
合法性即客户授权委托,并同意实施方案是进行渗透测试的必要条件。渗透测试首先必须将实施方法、实施时间、实施人员等具体的实施方案提交给客户,并得到客户的相应委托和授权。
应该做到客户对渗透测试所有细节和风险都知晓,所有过程都在客户的控制下进行。这也是专业渗透测试服务与黑客攻击的本质不同。
2) 风险规避
渗透时间和策略
为减轻渗透测试对网络和主机的影响,渗透测试时间应尽量安排在业务量不大的时段或晚上。为了防止渗透测试造成网络和主机的业务中断,在渗透测试中不应使用拒绝服务等策略。
系统备份和恢复
为了防止在渗透测试过程中出现意外情况,所有评估系统最好在被评估之前做一次完整的系统备份,以便在系统发生灾难后及时恢复。
在渗透测试过程中,如果被评估系统没有响应或中断,应立即停止测试工作,与客户人员配合一起分析情况。确定原因后,及时恢复系统,并采取必要的预防措施,确保对系统没有影响,并经客户同意后才可继续进行。
沟通和监测
在测试实施过程中,测试人员和客户方人员应当建立直接沟通渠道,并在出现难题的时候保持合理沟通。
在评估过程中,由于渗透测试的特殊性,用户可以要求对整体测试流程进行监控。
3) 信息收集分析
信息收集是每一个渗透攻击的前提,通过信息收集可以有针对性的制定模拟攻击测试计划,提高模拟攻击的成功率,同时还可以有效降低攻击测试对系统正常运行的不利影响。
4) 工具收集分析
使用nslookup.exe,superscan,x-scan,tracert,nmap等探测收集目标主机环境及其所在的网络环境。
使用ISS、GFI、SSS等漏洞扫描器,对目标网络中的主机进行漏洞扫描,并对扫描结果进行分析。
使用ethereal、sniffer pro等工具嗅探分析目标网络数据和私有协议交互。
5) 手工收集分析
对目标主机环境及其所在网络环境,在工具分析基础上进行手工深入分析。判断是否存在远程利用漏洞和可以利用的敏感信息。
6) 其他手段收集分析
可以由客户提供一些特定的资料,以便于我们查找漏洞。或者利用社会工程学或木马、间谍软件等收集有用信息。
7) 攻击阶段
根据客户设备范围和项目时间计划,并结合前一步信息收集得到的设备存活情况以及扫描得到的服务开放情况、漏洞情况制定计划,确定无误后实施。
攻击手段大概有以下几种:
主机存在重大安全问题,可以远程获取权限。但是这种可能性不大。
应用系统存在安全问题,如SSH系统可能存在溢出、脆弱口令等问题,严重的可以获取系统权限,轻则获取普通控制权限。
网络通信中存在加密薄弱或明文口令。
同网段或信任主机中存在脆弱主机,通过sniffer监听目标服务器远程口令。
8) 取得权限、提升权限
通过初步的信息收集分析和攻击,存在两种可能,一种是目标系统存在重大安全弱点,测试可以直接控制目标系统,但是可能性很小;另一种是目标系统没有远程重大的安全弱点,但是可以获得普通用户权限,这时可以通过普通用户权限进一步收集目标系统信息,并努力获取超级用户权限。
9) 生成报告
渗透测试之后,测试者将会提供一份渗透测试报告。报告将会详细的说明渗透测试过程中得到的数据和信息,并且将会详细的记录整个渗透测试的全部操作。
做渗透测试一般需要3-5天。市面上收费一般都是收费在8-10K左右,还不包括复测。
实际上我们做的话,市场行情价格的一半就可以,还包括复测2-3次,现在确实各行各业内卷太严重,我们不求一哥客户的利润,而是希望有更多的合作伙伴!
我们专注高端建站,小程序开发、软件系统定制开发、BUG修复、物联网开发、各类亚星官网API接口对接开发等。十余年开发经验,每一个项目承诺做到满意为止,多一次对比,一定让您多一份收获!