对于中小企业(SME)来说,网络安全成本往往非常高,因为所需的 IT 技能必须由拥有多年经验、经过密集培训并持有多项认证的专业人士来提供,而且通常还需要购买昂贵的软件、工具和订阅服务。
矛盾在于,企业又绝对不能在网络安全上无所作为,因为勒索软件、数据泄露等各类网络攻击正在全球商业环境中肆虐。网络安全不再是中小企业可以“事后再说”的问题——他们必须从现在起就把网络安全做好。
那企业该怎么办呢?某些投入是不可避免的,但就像 IT 领域的很多方面一样,如果选择得当,开源解决方案可以节省大量成本。仍然需要经过培训的网络安全专业人员 ,不过我们下面列出的许多工具可以帮助中小企业在“几乎不管网络安全”和“根据自身风险状况部署足够安全防护”之间架起桥梁。
下面我们列出主要的开源类别和解决方案:
漏洞扫描
每家企业都应该先开展一次网络安全风险评估,全面梳理自己所有的重要资产,包括本地和云端、物理和数字资产。在此基础上,再对全部资产和网络进行一次初始及定期的漏洞扫描,以清楚了解当前安全状况。
Nessus 和 Qualys 等商业工具往往是业界常用方案,但由于扫描工作非常关键,因此也有很多开源选项,且不少是面向特定任务或资产类型的专业工具。我们在这里的列表只是挑出了一些可以满足大多数环境需求的主流项目,更多工具可以参见 OWASP 的收集列表:https://owasp.org/www-community/Vulnerability_Scanning_Tools :
OpenSCAP - https://www.open-scap.org/ - 安全内容自动化协议(SCAP)是由美国国家标准与技术研究院(NIST)维护的国家标准。该项目是一组用于开展漏洞评估并落实相关标准的开源工具集合。
OpenVAS - https://www.openvas.org/ - 由 Greenbone 维护,是后来发展出 Nessus 的开源基础。
Nessus - https://www.tenable.com/products/nessus/nessus-essentials - Nessus 主要是商业产品,但需要特别指出的是,它仍然提供功能受限的免费版本,值得考虑使用,尤其是因为 OpenVAS 有时会不太稳定。
Web 应用漏洞扫描
这里我们单独列出更专注于网站和 Web 应用,而不是更广义网络环境的工具。由于 Web 应用往往是关键资产,这些工具非常有用:
OWASP Zed Attack Proxy (ZAP) - https://www.zaproxy.org/ - Web 应用漏洞扫描器。
Burp Suite Community Edition - https://portswigger.net/burp/communitydownload - 深受欢迎的 Web 应用扫描器,专业版功能更完善,也是我们在 Seirim 日常使用的首选工具之一。
Arachni - https://www.arachni-scanner.com/ - 可支持高度复杂 Web 应用的漏洞检测,例如大量使用 JavaScript、HTML5、DOM 操作和 AJAX 的应用。
Wapiti - https://wapiti.sourceforge.io/ - Wapiti 作为“黑盒”漏洞扫描器工作,也就是说它不会分析 Web 应用的源代码,而是像模糊测试工具一样,扫描已部署应用的页面,提取链接和表单并对脚本发起攻击,发送载荷并寻找错误信息、特殊字符串或异常行为。
Nikto - https://cirt.net/nikto2 - Web 服务器扫描器,可对 Web 服务器执行多项全面测试,包括危险文件/程序、过期版本以及配置问题等检查。
w3af - http://w3af.org/ - w3af 是一个 Web 应用攻击与审计框架,通过发现并利用 Web 应用中的所有漏洞来帮助提升安全性。
漏洞报告与管理
发现了漏洞之后,就需要对其进行长期跟踪和管理,以确保修复措施真正落实:
Dradis - https://dradisframework.com/ce/ - 用于协作和报告的安全项目框架。可以整合 19+ 种不同安全扫描工具的输出、人工发现和备注,生成一致的报告。
ArcherySec - https://www.archerysec.com/ - 不如上面的 Dradis 那样强大且社区庞大,但也是一个可选方案。
网络扫描与工具:
下面这两个在评估和监控你的网络及资产时几乎是不可或缺的:
Nmap - https://nmap.org/ - 网络发现和安全审计的首选工具。可用于网络资产盘点、服务升级计划管理以及主机或服务运行状况监控。如果不想使用命令行,可以使用其图形界面 Zenmap:https://nmap.org/zenmap/
WireShark - https://www.wireshark.org/ - 最常用的网络协议分析器。可以让你查看网络中发生的情况,实时抓取数据包并对数百种协议进行深度分析,从而全面了解并操作你的网络环境。
防火墙
保护你的服务器、网络和 Web 应用!
pfSense - https://www.pfsense.org/ - 最受欢迎的项目之一,可以把它看作不止是防火墙:它还扩展支持网络地址转换、负载均衡、路由、VPN 连接、动态 DNS、DHCP 等功能。虽然有付费版本,但基础软件本身就非常灵活,具备许多高级特性。
OPNsense - https://opnsense.org/ - 由 pfSense 和 m0n0wall 分支而来,功能类似的防火墙,可以额外添加 Web 应用防火墙以及部分入侵检测与防御功能。
IPFire - https://www.ipfire.org/ - 开源防火墙,提供入侵防御系统、网络分段、VPN 连接等多种功能。
Endian - https://www.endian.com/community/features/ - 一款 Linux 安全发行版,集成防火墙、Web 安全、VPN、部分杀毒功能等。
Iptables - https://www.netfilter.org/projects/iptables/index.html - 最知名的 Linux 开源防火墙之一,用于配置和管理网络访问控制。
入侵检测与防御系统(IDS 和 IPS)
这些工具非常实用!:-)
Zeek - https://zeek.org/ - 广受好评且使用广泛的 IDS 型传感器,可部署在硬件或软件设备上,观察并记录网络流量,例如供 SIEM 使用。
Snort - https://www.snort.org/ - 使用 Community Ruleset(付费订阅用户可获得 Cisco Talos 提供的规则集)来检测并拦截实时恶意网络活动,构成一套主动 IPS 解决方案。同时还能抓取和记录数据包,用于网络流量调试。
Suricata - https://suricata.io/ - Snort 的顶级替代方案,是一个开源威胁检测引擎,将入侵检测、入侵防御、网络安全监控和 PCAP 处理整合在一起,用于识别、阻止和分析攻击。
OSSEC - https://www.ossec.net/ - 主机型 IDS,具备日志监控、部分 SIEM 功能、文件完整性检查、Rootkit 检测等。
Kismet - https://www.kismetwireless.net/ - 无线网络和设备探测及嗅探工具,这里将其列为无线入侵检测系统的有用选择。
Sguil - http://bammv.github.io/sguil/index.html - 提供一个图形界面,可访问实时事件、会话数据和原始数据包捕获。Sguil 有助于实践网络安全监控和事件驱动分析。
防病毒 / 反恶意软件
防病毒和反恶意软件更多是以订阅服务的形式提供,其中很多有免费版本,因此在本文中仅略作提及。可以参考这里收集的一些商业防病毒软件免费版:https://www.pcmag.com/picks/the-best-free-antivirus-protection ,至于开源方案,我们只提到:
ClamAV - https://www.clamav.net/ - 开源防病毒引擎,用于检测木马、病毒、恶意软件及其他恶意威胁。ClamAV 包含多线程扫描守护进程、按需文件扫描命令行工具以及自动特征库更新。可用于邮件扫描、Web 扫描及终端安全等多种场景。
云服务安全
云计算和云存储的使用对企业来说是一大助力,可以在不显著增加复杂度和管理开销的情况下获得更多资源,但与此同时也显著扩大了企业的攻击面和风险暴露。下面这些开源工具可帮助你检查云环境中的漏洞:
Scout Suite - https://github.com/nccgroup/ScoutSuite - 一款开源安全审计工具,可对 AWS、Azure、Google Cloud、阿里云和 Oracle Cloud 环境进行安全评估。通过调用云服务商公开的 API,Scout Suite 收集配置数据供人工检查,并突出显示风险区域、错误配置等。
Prowler - https://github.com/toniblyx/prowler - 用于 Amazon Web Services(AWS)的审计工具,可依据 AWS 基准、GDPR 合规和 HIPAA 合规来评估云基础设施。可以执行 AWS 安全最佳实践评估、审计、事件响应、持续监控、加固和取证准备等工作。
Pacu - https://rhinosecuritylabs.com/aws/pacu-open-source-aws-exploitation-framework/ - 一款开源渗透测试工具,用于测试 AWS 账户的安全配置。
安全信息与事件管理(SIEM)
SIEM 可以将所有日志集中到一个地方进行统一监控、告警和分析,通过对设备与网络中各类事件进行关联,实现全面视图。
ELK 或 Elastic Stack - https://www.elastic.co/what-is/elk-stack - “ELK” 是三个开源项目的首字母缩写:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是搜索和分析引擎;Logstash 是服务端数据处理管道,可同时从多个来源采集数据、进行转换并发送到 Elasticsearch 等“存储”;Kibana 则用于通过图表和图形可视化 Elasticsearch 中的数据。与本文中提到的许多软件一样,ELK 也有付费版本,且命名和开源版本非常相似,需要认真挑选。
Alien Vault 和 OSSIM(AT&T Cybersecurity) - https://cybersecurity.att.com/products/ossim - 可以集成其他开源工具(如 Snort IDS 和 OpenVAS 漏洞扫描器),并提供集成的 Web 管理界面,用于统一管理整个安全环境。
Graylog - https://www.graylog.org/products/open-source - SIEM 工具,企业版侧重于合规,并支持 IT 运维和 DevOps 场景。
Web 应用防火墙 / 反向代理
在网站或 Web 应用无法做到“完美编码”和配置的现实前提下,增加一层 Web 应用防火墙(WAF)可以在“纵深防御”的思路下再加一道保护,以防某一层防护失效。
ModSecurity - https://github.com/SpiderLabs/ModSecurity - ModSecurity 是一个开源、跨平台的 WAF 引擎,支持 Apache、IIS 和 Nginx,由 Trustwave 的 SpiderLabs 开发。它拥有强大的基于事件的规则语言,可以防御多种针对 Web 应用的攻击,并支持 HTTP 流量监控、日志记录和实时分析。建议同时使用 OWASP Core Rule Set(CRS)。
Shadow Daemon - https://github.com/zecure/shadowd - Shadow Daemon 是一组用于检测、记录和阻断针对 Web 应用攻击的工具集合。它会拦截请求并过滤恶意参数,采用将 Web 应用、分析组件和界面分离的模块化设计,以提升安全性、灵活性和可扩展性。
多工具发行套件:
这些发行版中包含了文中提到的许多工具以及更多内容,是许多网络安全专业人员开展工作的关键起点:
Kali Linux - https://www.kali.org/ - 漏洞扫描、渗透测试及相关“攻防演练”工具的首选套件,主要以“进攻方”视角为主。
Security Onion - https://securityonionsolutions.com/software - 该领域的“老牌”发行版,可视作防御侧的 Kali Linux。包含 Elasticsearch、Logstash、Kibana、Suricata、Zeek、Wazuh、Stenographer、TheHive、Cortex、CyberChef、NetworkMiner 等众多安全工具。Security Onion 可以基本覆盖 SIEM、IDS 等需求。
密码管理器:
这一类推荐比较微妙,因为密码极其重要且具长期价值,不应仅仅为了省一点钱而冒更大的风险。这些开源密码管理器仍然非常值得关注:
Passbolt - https://www.passbolt.com/ - 相对较新,开源、自托管、可扩展,基于 OpenPGP。
KeePass - https://keepass.info/ - 多年备受信赖的优秀开源方案,免费使用。
Bitwarden - https://bitwarden.com/ - 我们非常推荐 Bitwarden。个人和两人小团队可以使用免费的开源版本,而企业版定价也相对合理。
快速在线网站安全扫描
你公司的数字资产中几乎肯定会有网站,这些在线扫描器可以对网站的安全状态做一个快速体检。需要说明的是,它们只是粗略、表层的检查,不能替代更深入的漏洞扫描,但仍然非常有帮助。
Web Page Test - https://webpagetest.org/ - 针对速度、安全性等多方面的综合扫描工具。
Mozilla Observatory - https://observatory.mozilla.org/ - 专注安全配置的在线扫描工具。
取证工具
当安全事件已经发生,需要收集证据、回溯分析或恢复被删除文件时,以下工具就派上用场了:
Sleuth Kit 与 Autopsy - https://www.sleuthkit.org/ - 一组命令行工具和 C 库,可用于分析磁盘镜像并从中恢复被删除的文件。
dd 工具 - https://www.baeldung.com/linux/dd-command - Linux 中功能强大的命令行工具,用于复制和转换文件,常用于制作取证级别磁盘镜像等场景。
FTK Imager - https://accessdata.com/product-download/ftk-imager-version-4-5 或 https://www.exterro.com/ftk-imager - FTK(Forensics Toolkit,取证工具包)的主套件提供试用版,但其磁盘镜像工具是开源且免费的,非常值得使用。它会自动为原始和拷贝生成并校验哈希值,有助于确认取证过程是否按要求完成。
网络安全培训
位于上海的 SEIRIM 网络安全团队 正在制作一套免费的在线网络安全培训课程。全部完成后我们会正式发布,目前先分享一节以钓鱼攻击为主题的示例课程——主要培训用户如何识别钓鱼邮件、不被欺骗,以及在遭遇钓鱼攻击时该如何应对:
VIDEO
结语
请记住,这些解决方案中很多都不只限于它们所属的分类,往往还会延伸覆盖更多功能。
虽然在很多安全软件领域都可以选择开源工具,但在不少情况下,开源选项需要投入更多时间进行配置和排错,因为它们可能缺少某些商业产品那样“开箱即用”的易用性。
在大多数场景中,只要有专职 IT 人员花些时间,就能让这些工具发挥很高的价值。而在某些类别中,例如偏“进攻侧”的 Kali Linux 等开源工具,本身就是行业首选,而不是一种妥协。
SEIRIM 的目标是帮助中小企业以更低成本实现网络安全。如果你在企业安全扫描和防护方面需要支持,我们非常乐意提供帮助!欢迎联系位于上海的 SEIRIM 网络安全服务团队 了解更多信息。