第3章 列举
贡献者:Hamza Mhirsi 翻译者 BugMan
介绍
攻击目标之前最重要的阶段是“侦察”。越努力
攻击者在此阶段投入攻击,成功的可能性就更大。之前
武器化阶段(获取权限),侦察分为四个阶段:
足迹
扫描
列举
漏洞评估
在枚举阶段,攻击者与目标建立活动连接并尝试获得有关它的实时信息。这些信息将有助于识别系统攻击这将有助于完成漏洞评估阶段。我们不要混淆这个在这个阶段,我们进行有关服务器和操作系统的信息收集在他们身上奔跑.枚举定义为帮助攻击者收集有关以下信息的过程:
- 网络资源
- 分享
- 用户和/或组
- 机器名称
- 路由表
- 应用程序和标语
- 审核和服务设置
- SNMP和DNS详细信息
为什么要枚举?
如上一节所述,枚举是最重要的步骤之一。它对我们有帮助
以确定目标系统中存在的漏洞。这些信息将帮助我们设置我们的
策略,使攻击更轻松,更有效。
枚举技术
枚举有许多不同的技术。我们将探索最多
常用的。在“扫描”阶段之前,我们已经知道打开了哪些端口,因此 我们知道我们将要枚举的内容:
使用电子邮件ID提取用户名
如果攻击者可以提取电子邮件ID,则可以像大多数公司一样自动获取用户名 其用户匹配电子邮件地址。例如,以公司名称“ XYZ”和一个工人的名字“ David Alex”,他的电子邮件很可能是:david.alex@XYZ.com。自动地,所有工作人员电子邮件将采用相同的格式,因此我们可以提取用户名 使用默认密码提取信息
现在我们有了用户名,是时候尝试使用默认密码了。许多用户是懒惰的,并且不会每三个月创建一次新密码的工作,因此他们会自动使用其用户名并仅添加其出生年份,这些信息可以在社交媒体上找到。尝试识别时,我们不应忘记路由器,服务器和交换机等网络设备
默认密码。
文件夹
Active Directory是攻击者的重要主要目标之一。Active Directory是 集中式LDAP服务,可为网络设备提供标识和身份验证 使用Windows。可以使用此服务可以涵盖枚举阶段的很大一部分。安全设备可能会阻止对服务器的暴力攻击。这就是为什么 进攻应有预见性;在大多数情况下,攻击者会蛮力 Active Directory使用字典。 从LDAP中提取信息(TCP / UDP 389) 轻型目录访问协议是一种允许共享以下内容的应用协议 网络上的信息;该协议可以用作存储用户名和 帮助不同应用程序连接到LDAP以便验证用户的密码。这样协议将帮助我们收集有关用户,系统,网络,服务和整个网络中的应用程序。在我们发现了几个Active Directory服务的网络中,全局编录服务是 根据各种信息的部分副本自动建立中央目录 目录。全球编录服务可以提供用户信息,并且是最容易搜索的 每个域中所有对象的目录。 使用SNMP(UDP 161)和SNMP陷阱(UDP 162)提取用户名 简单网络管理协议是用于收集和组织的互联网标准 有关网络中所有受管设备的信息。攻击者可以找到所有日志数据 存储在SNMP管理服务器上,或者他可以扫描通过SNMP陷阱发送的警报消息 网络。SNMP收集用户名,受管设备和网络等信息
管理系统。
使用DNS区域传输(TCP 53)提取信息 DNS区域传输是主要和辅助DNS服务器之间的一项操作,目的是同步域的记录。这些传输可以使攻击者获得有关网络的内部拓扑。使用SMTP(TCP 25)提取信息简单邮件传输协议是电子邮件传输的互联网标准,可以在大多数基础架构,这将有助于我们枚举用户名。使用SMB(TCP 139)提取信息服务器消息块是一种协议,可以帮助我们在Windows之间共享LAN中的文件设备。该协议还有助于枚举可用的IP地址,NetBIOS计算机名称服务,登录的用户名和MAC地址。使用Microsoft RPC端点映射器(TCP 135)提取信息
Microsoft远程过程调用管理与网络协议有关的大多数过程和通讯,这将有助于我们枚举所有已注册程序的列表RPC 程序号,受支持的版本号,端口号和协议以及程序名。使用NetBIOS名称服务NBNS(TCP 137)提取信息 NBNS是Windows Internet名称服务使用的服务,它负责建立网络上不同Windows设备之间的会话连接。该服务维护一个 数据库,其中包含主机名和相应的IP地址。NBNS不支持 IPv6。使用NTP枚举(UDP 123)提取信息
网络时间协议负责计算机系统与计算机之间的时钟同步。受信任的时间服务器。该技术可以提供有价值的信息,例如主机列表
连接到NTP服务器,客户端IP地址及其系统名称和操作系统,和/或内部 NTP服务器位于DMZ(非军事区)中的IP。Linux和Windows上的枚举工具 在本节中,我们将讨论常用的枚举工具,并确定它们的用途。
SMTP枚举
NetScanTools Pro 是具有图形用户界面的Windows工具,它是一封电子邮件 生成器和电子邮件中继测试工具。SMTP-用户-枚举是一种枚举Solaris(UNIX)上的OS级用户帐户的工具 通过SMTP服务。Metasploit 提供了“辅助/扫描仪/ SMTP / smtp_enum”模块,可帮助您 枚举用户名。
NetBIOS枚举
Nbtstat 是Windows中的工具,可显示协议的统计信息,NetBIOS名称表和
名称缓存
SuperScan 是Windows中的工具,可扫描端口并解析主机名。
Hyana 是显示Windows服务器和域的用户登录名的工具控制器。
Netview 是用于识别网络上共享资源的命令行工具。
SNMP枚举
Rory McCune的snmpwalk 包装器脚本有助于自动执行用户名枚举 SNMPv3的过程。OpUtils 是适用于Windows和Linux的工具,可帮助监视,诊断和 对IT资源进行故障排除。SNMP检查允许枚举SNMP设备,并以 人类可读的格式。
LDAP枚举
LDAP管理工具或JXplorer 是跨平台的LDAP浏览器和编辑器,可以 用于搜索,阅读和编辑任何标准LDAP目录。它可以在Linux上使用, Windows和许多其他操作系统。Windapsearch 是一个Python脚本,可帮助枚举来自以下位置的用户,组和计算机:
Windows域通过LDAP查询。
NTP枚举
ntptrace 是Linux上可用的实用程序,用于跟踪NTP服务器链。
ntpdc 和ntpq 是Linux上可用的实用程序,用于监视NTP的运行
守护程序。
DNS枚举
nslookup 是最古老的DNS查询工具之一,用于获取IP地址的域名
映射和其他DNS详细信息。host 或dig (域信息groper)是Linux上可用的实用程序,可帮助查询 DNS服务器并执行DNS查找。
SMB枚举
SMBMap 允许用户枚举整个域中的共享驱动器。Kali提供的其他有用的枚举工具 theHarvester 收集电子邮件,子域,主机,员工名称,开放端口和来自不同公共来源的横幅,例如PGP密钥服务器和SHODAN。Enum4linux 是从Windows和Samba系统枚举信息的工具.Devploit 是用于信息收集的简单python脚本。Red Hawk v2 是用于信息收集的多合一工具。Metagoogil 是一种工具,它利用Google搜索引擎从 目标域中可用的文档。
摘要
本章概述了枚举过程。我们首先介绍
枚举的重要性,然后我们继续列出不同的枚举技术。后来,我们深入研究了可用于实现目标的特定工具。