初创公司的创始人常常会误以为黑客不会在他们创业的公司身上浪费时间,因为他们还不够大,不够有名,没有什么价值。
你的规模小、知名度小并不意味着你不会成为攻击者的目标。初创公司的规模并不能使其免于网络攻击。因为黑客们会不断扫描互联网,寻找他们可以利用的一切漏洞。
幸运的是,用户也越来越意识到网络安全的重要性,并经常询问初创公司他们用来保护数据的流程。
所以,如果你是一名CTO,正在考虑提高网页或手机应用的网络安全状况,那么你已经走上了正确的道路,但网络安全有很多选择,你应该从哪里开始呢?
为了帮助你开始,我们创建了这个指南,其中涵盖以下关键点:
◼理解“什么是安全测试?”;
◼理解执行安全测试的原因;
◼界定网络安全测试的范围;
◼知道何时执行渗透测试;
什么是安全测试?
安全测试是一个广义的术语,它指的是检查系统、网络或软件是否存在黑客和其他威胁者可以利用的漏洞的过程。它可以以多种形式出现,所以在本文中,我们将探讨它的两个主要组成部分:
漏洞评估:使用工具扫描系统或应用程序以找出安全问题的自动安全测试。这些工具被称为“漏洞扫描器”,它们执行自动测试来发现应用程序或基础设施中的漏洞。漏洞的类型可能是应用程序级的漏洞、云配置问题,或者仅仅是缺少安全补丁的软件(网络安全漏洞最常见的原因之一)。
渗透测试:主要是由网络安全专家进行的手动评估(尽管通常由漏洞扫描工具支持),并确定攻击者利用漏洞的程度。
渗透测试是在某个时间点找到尽可能多的漏洞的好方法,但是你应该考虑在渗透测试人员回家后你尽快收到新漏洞的警报。
漏洞扫描器还使组织能够在进行更深入、通常更昂贵的手动测试之前了解更多关于其安全状态的信息。这在许多情况下是显而易见的,因为渗透测试人员通常会通过运行相同的自动化工具来开始他们的测试。
为什么要执行安全性测试?
Veracode的软件安全状况报告显示,83%的研究样本(包括全球2300家公司使用的85000个软件应用程序)在最初的安全测试中至少发现了一个安全漏洞。如果没有测试,这些漏洞就会被发布到产品中,使软件容易受到网络攻击。
如果出于这个原因,你决定开始进行安全性测试,只是为了在黑客之前找到自己的漏洞,那很好。你可以灵活地决定自己的需求,直接跳到下一节。否则,执行安全测试的其他常见原因是:
1.第三方或客户请求。如果合作伙伴或客户特别要求你执行安全测试,以确保他们的客户数据免受网络攻击,你可能有更严格的要求。然而,仍然有解释的空间。客户通常会要求进行“渗透测试”,但他们很少具体说明这意味着什么。
2.合规认证和行业法规。许多行业法规或合规性认证还要求组织定期进行安全测试。常见示例包括 ISO 27001、PCI DSS 和 SOC2。这些标准详细说明了所需的测试,但即使是最具体的也没有具体说明测试的方式或内容,因为这取决于具体的工作。出于这个原因,人们通常认为,接受测试的公司最适合确定哪种级别的安全测试在他们的场景中有意义。因此,你可能会发现以下指南在确定测试内容和方式方面仍然很有用。
风险评估
每个公司都是独一无二的,因此,你的风险对你来说也是独一无二的。然而,很难知道什么是正确的测试级别。你可以使用以下内容作为我们在该行业所看到的粗略指南:
1. 如果你不存储特别敏感的数据
例如,你可能会提供网站正常运行时间监控工具并且不存储特别敏感的数据。在你成长到足以成为特定目标之前,你可能只需要担心那些寻找轻松选择的人会不加区分地进行黑客攻击。如果是这样,你更有可能只需要自动漏洞扫描。
专注于任何暴露在互联网上(或可能暴露在外)的系统,如任何远程访问(VPN、远程管理员登录)、防火墙、网站或应用程序、API,以及可能偶然发现自己在线的系统(云平台中的任何东西都很容易被意外地放到互联网上)。
2. 如果你存储客户数据
也许你是一个营销数据分析平台,所以你可能面临较少来自内部人士和犯罪团伙的威胁,但你肯定需要担心客户访问彼此的数据或一般的数据泄露,例如,你有一个应用程序,但任何人都可以在线注册一个帐户,你将要考虑从普通用户的角度进行“经过身份验证”的渗透测试,你还需要确保员工的笔记本电脑都安装了最新的安全更新补丁。
3.如果你提供金融服务
如果你是一家四处转移资金的金融科技初创公司,你将需要担心恶意客户甚至恶意员工,以及针对你的网络犯罪团伙。
如果是这样,你将需要考虑对所有这些场景进行持续的漏洞评估和定期的全手动渗透测试。
4.如果你没有任何暴露在互联网上的东西
也许你根本没有任何东西暴露在互联网上,或者没有开发面向客户的应用程序,因此你的主要攻击面是员工笔记本电脑和云服务。在这种情况下,对你自己的笔记本电脑进行自动漏洞扫描是最有意义的。
每个企业都是独一无二的,没有任何一种网络安全策略可以适用于所有初创公司。这就是为什么你需要从了解你自己的风险在哪里开始。
你需要保护什么?
理想情况下,在计划安全测试本身之前,你应该考虑你拥有哪些资产,包括技术资产和信息资产,这个过程称为“资产管理”。
一个非常简单的例子可能是:“我们有 70 台员工笔记本电脑,主要使用云服务,并将我们的客户数据存储和备份在 Google Cloud Platform 中,以及一个允许管理员和客户访问的应用程序。
我们最重要的数据是代表客户存储的数据,以及我们在人力资源系统中的员工数据。”考虑到这一点,然后帮助你开始形成确定测试范围的基础。例如:
我们的人力资源系统是一个云服务,所以我们只是要求他们提供安全测试证明(因此无需自己测试)。
我们在 Google Cloud 中有哪些 IP 地址,注册了哪些域(有一些工具可以帮助解决此问题)。
我们的工程师不下载生产数据库,但可以访问我们的云系统,因此他们的笔记本电脑、云和电子邮件帐户也是我们攻击面的一部分。
执行资产管理将帮助你跟踪属于你的组织的系统,并确定需要测试哪些IP地址和域名。
初创公司应该多久执行一次安全测试?
这取决于测试的类型!显然,自动化测试的好处是它们可以根据需要定期运行。而渗透测试的成本更高,需要频繁运行。
至少每月进行一次例行漏洞扫描可以帮助加强你的IT基础设施,这是国家网络安全中心(NCSC)的建议。这种做法有助于公司密切关注无休止的新威胁清单;每年有超过10000个新的漏洞被报告。除了定期的漏洞扫描外,还建议在每次系统更改时运行扫描。
漏洞扫描程序类型
你可以从基于网络、基于代理、Web 应用程序和基础架构等多种类型的漏洞扫描程序中进行选择,选择取决于你要保护哪些资产。
网络扫描程序的一些经典例子是Nessus和Qualys,这两家公司都是市场领导者,并提供了强大的安全性和漏洞覆盖率。如果你想要一个容易上手的工具,你可以考虑的一个现代替代方案是 Intruder 。
这种在线漏洞扫描器是专门为非安全专家开发的,同时提供高质量的检查,以及对新出现的威胁的自动扫描。
Intruder 使用一种独特的算法来确定使你的系统暴露在外的问题的优先级,从而特别容易找出具有最高风险的问题。
漏洞评估的好处是什么?
漏洞评估旨在自动发现尽可能多的安全漏洞,以便在攻击者找到它们之前缓解这些漏洞。它还有助于使渗透测试(相比之下,渗透测试是一个手动过程)更加有效。事实上,正如NCSC所解释的,“通过定期进行漏洞扫描来处理‘容易实现的目标’,渗透测试可以更有效地专注于更适合人类的复杂安全问题。”
何时运行渗透测试?
渗透测试人员模仿现实生活中的网络攻击者,但与攻击者不同,他们遵循预定义的范围并且不会滥用组织的资产和数据。与漏洞扫描相比,他们更有可能发现复杂或高影响力的业务层弱点,例如操纵产品定价、使用客户帐户访问另一位客户的数据,或从一个初始漏洞转向整个系统控制。缺点是,相比之下,它很贵,那么何时运行渗透测试?
考虑上述风险评估的关键时间表,例如,在你的产品开发之后,但在你开始接受真正的客户数据之前。或者在你掌握了一些不敏感的客户数据之后,但在你开始掌握工资或健康相关信息之前。
一旦你启动并运行,渗透测试应该在重大更改之后执行,例如改变你的身份验证系统,发布一个主要的新特性;或者在6-12个月的小改变之后。因为从理论上讲,每一个改变都可能意外地引入一个漏洞。
同样,这取决于你的风险水平。如果你每三个月转移一次资金也是可取的,但如果你处于风险范围的低端,则每 12 个月一次是普遍接受的时间表。
渗透测试应在实施重大系统更改之前或每隔 6-12 个月进行一次。
存在几种类型的渗透测试,渗透测试可以寻找技术中的安全漏洞,例如在你的外部和内部网络以及 Web 应用程序中。但是,它也可以发现组织人力资源中的漏洞,例如在社会工程的情况下。
你选择的渗透测试公司取决于你要测试的资产类型,但也应考虑其他因素,例如认证、价格和经验。
总结
安全测试是一个关键的网络安全过程,旨在检测系统、软件、网络和应用程序中的漏洞。它最常见的形式是漏洞评估和渗透测试,但其目标总是在恶意攻击者利用它们之前解决安全漏洞。
请记住,攻击者还执行例行安全测试,以查找它们可以滥用的任何漏洞。一个安全漏洞就足以让他们发动大规模的网络攻击。虽然这可能令人恐惧,但你的公司可以通过定期执行网络安全测试来获得更好的保护。
实施此策略可能具有挑战性,因为没有一刀切的安全测试解决方案。如今,许多工具提供免费试用,这为小企业提供了一个很好的机会,可以在投入更大的投资之前找到正确的解决方案。
本文翻译自:https://thehackernews.com/2021/07/getting-started-with-security-testing.html如若转载,请注明原文地址