GitHub上有许多开源项目可供安全专业人士选择,而且每天都有新的项目出现。不妨将这些项目添加到你的工具库,让你工作起来更得心应手。 说到执行常规维护、化解危机或研究新项目,大多数管理员要么手动执行任务,要么编写让这个过程自动化的脚本。但是那些聪明人在寻找功能强大的工具来完成这项工作。 GitHub上有800多个面向安全的项目,为IT管理员和信息安全专业人士提供了丰富的工具和框架,它们可以用于恶意软件分析、渗透测试、计算机及网络取证分析、事件响应、网络监控及其他众多任务。 下面介绍了一些最出色的开源安全项目,负责保护系统和网络的人都应该仔细看一看。我们按任务性质对它们进行了归类,以便查阅: 渗透测试说到渗透测试,只要看一看Rapid7的Metasploit框架(https://github.com/rapid7/metasploit-framework)。有了庞大的漏洞资料库,安全专业人士可以使用漏洞开发和交付系统,抢在攻击者之前,评估应用程序或网络的安全性。 该平台用途广泛,这源自其模块化结构:插入合适的模块,就可以测试计算机、手机、路由器、交换机、工业控制系统以及嵌入式设备。Metasploit可以在众多平台上运行,包括Windows、Linux、Mac、Android和iOS。 Metasploit很全面,不过将其他项目添加到渗透测试工具包中大有助益。不妨看看浏览器漏洞利用框架(BeEF,https://github.com/beefproject/beef),这种渗透测试工具侧重于Web浏览器。BeEF使用客户端攻击途径,评估企业组织是否容易受到基于Web的攻击、攻击者可能潜入有多深。 Mimikatz(https://github.com/gentilkiwi/mimikatz)是一种出色的后渗透(postexploitation)工具,让渗透测试人员可以在Windows机器或网络上获得更稳固的立足处。Mimikatz功能强大,因为它让测试人员可以从内存提取明文格式的密码、散列、PIN码和Kerberos票证,假冒用户令牌,并导出存放在被感染系统上的证书和对应私钥。Mimikatz可以作为一款独立工具来使用,也可以作为一个meterpreter脚本,添加到Metasploit中。 纵深防御工具CloudFlare的CFSSL(https://github.com/cloudflare/cfssl)可谓是“瑞士军刀”,签名、验证和绑定TLS证书,样样在行。CFSSL既是一个命令行工具,又是一种HTTP API服务器系统,让管理员可以构建自定义TLS/PKI工具,并运行可以使用多个签名密钥的证书管理机构。CFSSL还有一个功能全面的TLS端点扫描工具,可对照最新的安全漏洞和transport程序包来测试服务器配置,处理证书配置和吊销。 无意中暴露密钥和密码之类的敏感数据在软件开发中是个常见问题。Gitrob(https://github.com/michenriksen/gitrob)可帮助安全专业人士扫描其GitHub软件库,查找敏感文件。虽然GitHub有内置的搜索功能可以发现敏感信息,但是Gitrob简化了这个过程:它可以将企业组织的所有公共软件库和成员软件库整理成列表。这个工具可以反复查询该列表,将文件名与不同模式匹配起来,从而找到含有敏感信息的文件。Gitrob将所有信息保存到PostgreSQL数据库,并在简单的Web应用程序中显示搜索结果。 Lynis(https://github.com/CISOfy/lynis)是一种安全审计和加固工具,支持基于Unix的系统,比如Linux、Mac OS X、BSD和Solaris。除了可以执行纵深安全扫描,发现系统上的问题、易受攻击的软件包和配置设置外,Lynis还可以建议如何加固系统。Lynis经常被蓝队使用,便于安全评估、合规测试、安全漏洞检查、配置管理和补丁管理。 美国国家安全局(NSA)的系统完整性管理平台(SIMP,https://github.com/NationalSecurityAgency/SIMP)让安全团队可以定义安全策略及标准,并运用到联网系统上。许多企业组织使用该框架来满足安全合规要求、自动处理操作任务。SIMP要求企业组织购买必要的Red Hat Enterprise Linux许可证,向操作团队和安全团队显示了异常的网络行为。 网络安全监控Bro网络安全监控工具(https://github.com/bro/bro)让防御人员可以深入了解网络上的所有机器,还能够监视网络流量,分析网络数据包,让分析人员可以仔细分析应用层。防御人员可以使用Bro的特定域脚本语言,制定针对特定站点的监控策略。据项目官方网站声称,Bro主要用于科研环境,比如大学、研究实验室和超级计算中心。 OSSEC(https://github.com/ossec/ossec-hids)结合了基于主机的入侵检测系统和日志监控及SIEM(安全信息和事件管理)功能,支持众多平台,包括Linux、Mac OS、Solaris、AIX和Windows。安全团队可以使用OSSEC,用于日志分析、文件完整性检查、策略监控、rootkit检测、实时警报和主动响应。企业组织可以配置OSSEC,发送未授权文件系统改动和嵌入在服务器日志中的恶意行为方面的警报,以满足合规要求。 Moloch(https://github.com/aol/moloch)是一种大规模的全数据包捕获、索引和数据库系统,可以在事件处理、网络安全监控和数字取证分析等方面帮助安全团队。Moloch为管理员浏览、搜索和导出所有捕获的网络流量提供了一种方法,因而可以补充现有的入侵检测系统。该系统包括捕获流量数据的单线程C应用程序、处理用户界面的Node.js应用程序和Elasticsearch数据库。 事件响应和取证分析Mozilla防御平台(MozDef,https://github.com/mozilla/MozDef)为防御人员提供了一个平台,他们可以实时监控、响应和关联安全事件,从而使事件处理实现自动化。MozDef使用Elasticsearch、Meteor和MongoDB,借助事件响应和可视化机制,增强SIEM的传统功能。MozDef是目前用于Mozilla的一种成熟平台。 OS X Auditor(https://github.com/jipegit/OSXAuditor)可分析内核扩展、系统代理及后台程序、第三方代理、已下载文件以及运行系统(或副本)上的已安装应用程序,并计算散列。这款取证分析工具可提取众多用户信息,比如隔离的文件、浏览器历史记录及cookie、下载文件、LastSession、HTML5数据库及本地存储区、登录数据、社交及电子邮件帐户,以及保存的无线连接。OS X Auditor可对照多个来源来核实每个文件的声誉,作为取证分析调查的一个环节。 Sleuth Kit(https://github.com/sleuthkit/sleuthkit)是为微软和Unix系统定制的,它让调查人员可以识别并发现来自活动系统的证据,以及作为事件响应一部分而创建的图像。调查人员可以分析文件内容、使特定程序实现自动化,并执行MD5图像完整性检查。该套件更像是一个命令行工具库,调查人员应使用Autopsy(面向Sleuth Kit的图形化界面)来访问及使用这些工具。 GRR Rapid Response(https://github.com/google/grr)是一种事件响应框架,专注于对Linux、OS X和Windows客户端远程执行实时取证分析。调查人员将Python代理安装到目标系统上后,可以远程实时分析内存,以便收集用于取证分析的数据证据,并执行详细的系统监控,监控CPU、处理器和输入/输出使用情况。GRR还使用SleuthKit让调查人员可以访问原始文件系统。 研究工具和安全漏洞扫描工具Radare项目(https://github.com/radare/radare2)是一种类似Unix的反向工程框架和命令行工具,除了支持32位和64位的Windows外,它还支持Android、Linux、BSD、iOS、OS X、Solaris、Haiku、FirefoxOS和QNX。该项目起初是一种取证分析工具和可编写脚本的命令行十六进制编辑工具,不过此后添加了用于分析二进制代码、反汇编代码、调试程序以及连接到远程gdb服务器的库和工具。Radare支持一系列广泛的架构:基于英特尔的架构、ARM、Sparc和PowerPC等。 Brakeman(https://github.com/presidentbeef/brakeman)是一种安全漏洞扫描工具,面向Ruby on Rails应用程序,让信息安全专业人士可以分析从应用程序一部分到另一部分的数据流。Brakeman可帮助管理员发现Web应用程序中的问题,比如SQL注入攻击、SSL验证旁路以及信息泄露安全漏洞。Brakeman应结合网站安全扫描工具使用。 Quick Android Review Kit(Qark,https://github.com/linkedin/qark)可查找Android应用程序的安全漏洞,或者是源代码中的漏洞,或者是APK程序包中的漏洞。该工具可以发现诸多问题,比如无意中导出的组件、不合适的x.509证书验证、数据泄漏、嵌入在源代码中的私钥、弱密码或使用不当的密码以及触屏劫持(tap-jacking)等等。Qark提供了已发现的安全漏洞性质方面的信息,还能够创建可利用这些漏洞的概念证明APK。 恶意软件分析方面则有Cuckoo Sandbox(https://github.com/cuckoosandbox/cuckoo),这种自动化恶意软件动态分析系统始于2010年,当时只是一个Google Summer of Code项目。Cuckoo让安全团队可以在隔离的虚拟环境中引爆可疑文件,并监控因而出现的行为。Cuckoo转储内存并分析数据,比如跟踪API调用,将创建和删除的所有文件记入日志,从而确定某个可疑文件在系统上到底在干什么。 Jupyter(https://github.com/jupyter)不是一个专门针对安全的项目,但是可以共享的笔记本环境对任何安全工具包来说不可或缺。安全专业人士可以用单个的笔记本环境(随带嵌入式外壳),共享活动代码、可视化图表和说明文本。有额外的工具可以改善该项目,包括Jupyterhub、多用户服务器、比较工具、Docker堆栈和OAuth程序包。 |