渗透测试是对网络、硬件或软件系统进行有计划的攻击,目的是揭露可能破坏系统完整性并危及有价值数据的安全缺陷。虽然渗透测试的类型不同,但它们都旨在利用漏洞和弱点来测试现有安全措施的有效性。
渗透测试
不同类型的渗透测试取决于人们希望在特定系统上探索的操作类型。安全测试人员必须准确了解他们想要测试的内容或测试目标,以便决定使用最相关的测试。
渗透测试的目的是什么?
渗透测试人员使用此测试来密切关注 IT 基础设施中的弱点。渗透测试工具可确定安全软件、硬件和网络安全策略的有效性。这些测试旨在确定黑客是否能够成功逃避 IT 安全防御。
渗透测试可以在内部或外部进行。一旦测试发现任何弱点或风险,测试人员可以选择安全地利用系统中的弱点并对其进行处理,或者向相关方提供详细报告。
渗透测试的类型
渗透测试有多种类型,并非所有类型都相同。使用每种测试的结果根据测试人员获得的信息量而有所不同。一些测试包括云渗透测试、Web 应用程序测试、外部和内部网络渗透测试、物理渗透测试和在线网站渗透测试。
进行不同的测试可以让你清楚地了解网络或系统的安全性。这将使你能够评估黑客可以用来查找或访问安全信息的每个网关。
以下是一些您可以使用的渗透测试类型。
1.社会工程测试
网络安全系统的强度取决于最薄弱的环节。不幸的是,员工或用户很容易犯下可能危及安全的错误。社交工程是内部黑客入侵系统的常用方法之一。
社会工程学
这些测试包括远程测试,旨在诱骗员工通过电子方式泄露组织的数据,以及物理测试,即直接接触员工以试图从他们那里获取机密信息。
测试人员可以使用网络钓鱼电子邮件活动进行远程测试,也可以使用恐吓、窃听、操纵、翻找垃圾、模仿或其他策略进行物理测试。在进行社会工程测试之前,通知管理团队至关重要。
如果员工未能通过社会工程测试,管理层可以提供网络安全和政策培训,让他们意识到此类风险,并让他们意识到自己在网络安全中的作用。
2.网络渗透测试
这种渗透测试是最流行的渗透测试方法之一,部分原因是它可以远程和现场进行。这种测试旨在发现网络基础设施中的弱点。由于网络既有内部接入点,也有外部接入点,因此很容易受到网络攻击。
值得注意的是,如果不保护这些漏洞,可能会导致灾难性的破坏。此测试包括:
• FTP 客户端/服务器测试
• 路由器测试
• SSH 攻击
• 应用程序渗透测试
• 网络漏洞
• 绕过防火墙
• 代理服务器
• 开放端口扫描与测试
• DNS 足迹
• IPS/IDS 逃避
测试人员可以利用语言、Oracle、Java、Web 应用程序、MySQL、PHP、XML、.NET、连接、CRM 系统、API、移动应用程序、财务和人力资源系统等应用程序来测试现有防火墙的有效性。
测试人员识别黑客可以利用的面向互联网的资产,并评估未经授权的用户是否可以通过外部网络访问系统。
3.无线网络测试
此测试检查组织内所有无线设备的安全性。测试详细且有针对性,可能涉及笔记本电脑、智能手机和平板电脑等多种设备。无线测试中涉及的方法用于:
• 发现无线嗅探和会话劫持等加密弱点
• 识别所有信号泄漏、WI-Fi 网络和无线指纹
• 识别用户配置文件和用于访问专用网络的凭据
• 查找无线协议、管理员凭据和无线接入点中的弱点
• 确定黑客可以使用 WLAN 访问控制或无线访问侵入系统的方法
• 查找默认密码或不当使用的密码
• 查找未经授权的热点
• 识别拒绝服务 (DoS) 攻击
• 识别跨站点脚本
测试人员会寻找这些及更多的漏洞,并使用正确的方法来确保强大的安全系统。
4.网站测试
网站测试是详细、有针对性和密集的渗透测试类型。它们适用于浏览器、Web 应用程序及其组件(如插件、ActiveX 和小程序)等领域。
预防欺诈
网站测试检查用户经常与之交互的 Web 应用程序的端点。因此,测试需要大量的规划和时间。网络安全和威胁的增加也影响了网站测试的增长。
5. 物理渗透测试
物理安全协议可能成为漏洞和网络攻击的入口。此测试有助于确定网络犯罪分子访问或尝试访问设施的难易程度。物理测试包括:
• 冒充供应商或人员
• RFID 和门禁系统
• 运动传感器
• 撬锁
在物理渗透测试期间,渗透测试人员可以操纵或欺骗员工以获取对设施的物理访问权限。
6.云渗透测试
如今,公共云服务非常流行。私人用户、员工和组织使用云系统在云中存储或备份所有类型的数据。不幸的是,这使得云服务成为网络犯罪分子非常青睐的目标。
处理法律障碍和云安全问题非常复杂。一些公共云服务提供商在数据安全方面不作为,这迫使用户或组织对其数据安全负全部责任。
在进行云渗透测试之前,最好将渗透测试安全系统的意图告知云服务提供商。
提供商会告知渗透测试人员哪些区域是禁止进入的。
例如,某些云提供商仅允许在 RDS、CloudFront、Lamba、EC2 或 Aurora 上进行测试,并限制在小型、微型和纳米 EC2 上进行测试。
云渗透测试可以包括:
• 应用程序和 API 访问
• 密码使用不当
• 加密
• 防火墙使用不当
• 计算机安全
• SSH 和 RDP 远程管理
• 数据库和存储访问
• 虚拟机和未打补丁的操作系统
使用白盒测试并在测试前对环境有更多的了解可能会有所帮助。
如果客户是 Microsoft Azure 客户,则测试人员必须遵守 Microsoft Cloud 统一渗透测试交战规则。
7.客户端测试
这些测试用于识别本地发生的安全威胁。例如,这可能是用户工作站上运行的软件应用程序中的缺陷,网络犯罪分子可以轻松利用该缺陷。测试可以包括以下应用程序和程序:
• Sniffers
• Putty
• Safari、Chrome、Opera、IE 和 Firefox 等浏览器
• 演示和内容创建软件包,如媒体播放器、MS PowerPoint、Photoshop 和 Adobe Page Maker
• Git 客户端
由于威胁可以是自主开发的,因此寻找未经认证的 OSS 至关重要,因为犯罪分子可以使用它来扩展或创建自制应用程序并造成严重的意外威胁。
执行这些不同类型的渗透测试将帮助您缩小任何弱点的范围,并帮助改进现有的网络安全策略和政策。
因此,理想的做法是定期进行渗透测试,以了解系统网络的强度,并根据需要进行调整或改进。