链接到所有部分:第1部分。获得初始访问权限(Initial Access)第2部分。执行第3部分。紧固(持久性)第4部分。特权提升第5部分。逃避防御第6部分。获取凭据(凭据访问)第7部分。发现第8部分。横向运动第9部分。数据收集(Collection)第十部分渗透第11部分。命令和控制由于最初的妥协,对手已经获得了使用该系统的权限,因此应该“环顾四周”,了解他现在可以控制自己拥有的机会以及当前是否有足够的权限来实现战术目标或最终目标。 攻击的这一阶段称为“发现”(例如,
发现 -“科学发现”,“披露”,“暴露”)。
作者对使用本文中包含的信息可能造成的后果不承担任何责任,并对某些表述和术语中可能存在的不准确性表示歉意。 发布的信息是对MITER ATT&CK内容的免费转载。操作系统具有许多内置工具,攻击者可以利用它们内置的工具来研究被攻击网络的内部边界。 在Windows中,可以使用与Windows API,WMI和PowerShell功能的直接交互来收集信息。
攻击者在研究被攻击环境时会使用检测方法,因此,应将识别此类活动视为攻击链的一部分,然后尝试通过网络推进敌人。
作为旨在识别受保护系统中上述活动的一种措施,建议监视可用于收集有关系统或网络的信息的进程和命令行参数。 防止对受保护系统和网络进行未经授权内部调查的一般建议是审核是否存在不必要的系统实用程序和可用于研究受保护环境的潜在危险软件,并使用工具来阻止其启动,例如AppLocker或软件限制策略(软件限制)。政策)。
系统: Windows,Linux,macOS
权限:用户
描述:攻击者可能试图获取本地系统或域上的帐户列表。
窗户要获取帐户信息,可以使用
Net或
Dsquery实用程序:
net user
net group
net localgroup
dsquery user
dsquery group
攻击者可以使用“
系统所有者/用户发现”来搜索主要用户,系统的当前用户或通常使用该系统的一组用户。
Mac电脑在Mac上,可以使用
groups和
id命令获得用户组。 用户组和用户也可以使用以下命令列出:
dscl . list /Groups
dscacheutile -q group
的Linux在Linux上,可以从
/ etc / passwd文件获得本地用户,所有用户都可以读取该
文件 。 在Mac上,除了
/etc/master.passwd文件之外,该文件仅在单用户模式下使用。 此外,
groups和
id命令在Linux上也可用。
保护建议:通过UAC提升特权时,避免列出管理员帐户的可能性,因为这将导致管理员帐户名称的泄露。 可以使用GPO禁用相应的注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\CredUI\
EnumerateAdministrators
GPO: Computer Configuration > [Policies] > Administrative Templates > Windows Components > Credential User Interface: Enumerate administrator accounts on elevation.
系统: Windows,macOS
权限:用户
描述:攻击者可能试图获取应用程序打开的窗口列表。 这样的列表可以指示在那里如何使用系统或发现按键记录器收集的信息的上下文。 在Mac上,这可以通过一个小的AppleScript脚本来完成。
系统: Windows,Linux,macOS
权限:用户
描述:为了尽可能多地找到有关受感染系统的信息,攻击者可以检查用户的浏览器书签。 书签可以揭示有关用户的个人信息(例如,银行站点,个人兴趣,社交网络等),以及有关网络内部网络资源(服务器,工具,仪表板和其他基础结构元素)的信息。 攻击者可以使用缓存在浏览器中的凭据来访问其地址存储在浏览器书签中的用户服务。 书签的存储位置取决于平台以及应用程序和OS的具体情况。 浏览器书签通常存储为本地文件或数据库。
保护建议:鉴于将信息存储在文件中是操作系统的一项标准功能,因此抑制这种活动的尝试将是不合适的。 例如,限制对浏览器书签文件的访问可能会导致意外的副作用并破坏合法软件。 防御工作应针对防止在攻击的早期阶段启动攻击者的工具。
系统: Windows,Linux,macOS
权限:用户,管理员,系统
描述:攻击者可以列出文件和目录,或者在主机上或共享网络资源上的特定位置搜索特定信息。
窗户用于获取有关文件和目录信息的实用程序示例为
dir和
tree 。 通过与Windows API直接交互的自定义工具也可以用于收集有关文件和目录的信息。
Linux和macOS在Linux和macOS上,使用
ls,find和
locate命令完成文件和目录的浏览。
保护建议:鉴于以文件和目录形式显示信息是操作系统的标准功能,因此禁止这种活动的尝试是不合适的。 防御工作应针对防止在攻击的早期阶段启动攻击者的工具。
系统: Windows,Linux,macOS
权限:系统管理员
描述:攻击者可能会尝试获取在远程主机上运行的服务的列表,包括可能容易受到远程访问工具攻击的服务。 获取此类信息的方法包括使用下载到系统的工具扫描端口和漏洞。
安全提示
:使用IDS / IPS系统检测并阻止远程扫描。 确保关闭不必要的端口,关闭未使用的服务,并遵守适当的网络分段措施,以保护关键的服务器和设备。
系统: Windows,macOS
权限:用户
说明:在局域网中,通常有共享的网络驱动器和文件夹,这些文件夹和文件夹允许用户访问位于不同系统上的文件目录的网络目录。 攻击者可以在远程系统上搜索共享的网络文件夹和驱动器,以搜索目标数据源并识别潜在的系统,以便在网络上进一步移动。
窗户Windows网络上的文件共享是使用SMB协议完成的。
Net实用程序可用于从远程系统获取有关其中存在共享网络驱动器的信息:
net view \remotesystem
或获取有关本地系统上共享网络驱动器的信息:
net share
。
Mac电脑在Mac上,可以使用以下命令查看本地安装的网络共享:
df -aH
。
系统: Windows,Linux,macOS
描述:攻击者可以在
混杂模式 (“听不清”模式)
下使用网络接口,在该模式下,网卡将接受所有数据包,而不管其寻址的对象是谁,也可以使用跨接端口(镜像端口)捕获通过有线传输的大量数据或无线网络。
嗅探过程中捕获的数据可能包含通过不安全连接发送的凭据,而不使用加密协议。 通过重定向流量对网络名称服务(例如LLMNR / NBT-NS中毒)的各种攻击也可用于收集网站,代理和内部系统上的凭据。 攻击者在收听网络时,还可以显示网络上进一步移动和/或绕过安全功能所需的各种配置信息(运行服务,版本号,IP地址,主机名,VLAN ID等)。
安全提示:确保无线通信已正确加密。 如果可能,请使用Kerberos,SSL和多因素身份验证。 监视网络交换机的跨接端口,ARP / DNS中毒以及未经授权的路由器配置更改。 使用工具识别和阻止可用于拦截和分析网络流量的潜在危险软件。
系统: Windows,Linux,macOS
权限:用户
描述:网络上的密码策略是一种保证用户使用复杂密码的方法,这些密码很难被暴力破解或破解。 攻击者可能试图访问有关被攻击网络的密码策略设置的信息,以便创建满足该策略要求的常见知名密码列表(例如,如果该策略的最小密码长度为8个字符,则不要尝试使用诸如pass123之类的密码,或者不要检查超过3个密码如果未成功尝试的次数等于6,则每个帐户有4个密码,并且随后开始字典选择密码。 可以在Windows,Linux和macOS上应用和检测密码策略。
窗户net accounts
net accounts /domain
的Linuxchage -l
cat /etc/pam.d/comman-password
操作系统pwpolicy getaccountpolicies
保护建议:不建议尝试直接防止检测到密码策略,因为密码策略设置应为网络的所有系统和用户所知。 确保您使用的密码策略使密码难以暴力破解,并且不允许使用过轻的密码。 在公司网络上应用密码策略的最常见方法是实施Active Directory。
如果存在检测恶意活动的任务,请监视用于指示试图识别密码策略的工具和命令行参数的过程。 将此活动与源系统的其他可疑活动进行匹配,以减少发生与用户或管理员的操作有关的错误事件的可能性。 攻击者很可能会在攻击的早期阶段尝试尝试识别密码策略的参数,或者结合使用识别和审核阶段的其他技术。
系统: Windows
权限:用户,管理员,系统
描述:攻击者可能试图收集有关连接到被攻击网络中计算机的外围设备的信息。 此信息可用于增强对受攻击环境的了解,并可用于计划进一步的恶意操作。
系统: Windows,Linux,macOS
权限:用户
描述:攻击者可以尝试找到本地或域访问组并检查其权限设置。
窗户您可以使用
Net实用程序列出访问组:
net group /domain
ner localgroup
的Linux在Linux上,可以使用
groups命令domain-
ldapsearch命令来枚举本地组。
操作系统在Mac上,您可以使用以下命令执行相同的操作:
dscacheutil -q
用于域组;
dscl . -list /Groups
dscl . -list /Groups
-用于本地组。
系统: Windows,Linux,macOS
权限:用户,管理员,系统
描述:对手可能会尝试获取有关从系统运行的进程的信息,以便获取有关在受攻击网络的系统上运行的软件的信息。
窗户如何获取有关Windows中进程的信息的一个示例是
Tasklist系统实用程序。
Mac和Linux在Mac和Linux上,这是使用
ps命令完成的。
系统: Windows
权限:用户,管理员,系统
描述:攻击者可以与Windows注册表进行交互,以收集有关系统,配置和已安装软件的信息。 注册表包含有关操作系统,配置,软件和安全性的大量信息。 一些信息可以帮助对手在被攻击的网络中执行进一步的操作。 可以使用各种实用程序(例如
Reg)或运行使用Windows API的第三方工具与注册表进行交互。
系统: Windows,Linux,macOS
权限:用户,管理员,系统
描述:对手可能会尝试获取被攻击网络中的系统列表。 可以通过IP地址,主机名或其他标识符来检测远程系统,然后可以将其用于从当前系统通过网络将攻击者提前。 相应的功能可以包含在远程访问工具(RAT)中,也可以使用嵌入式系统实用程序。
窗户Ping或
网络视图命令。
Mac电脑Bonjour协议用于检测广播域内的Mac系统。 诸如
ping之类的实用程序也可以用于收集有关远程系统的信息。
的Linux诸如ping之类的实用程序也可以用于收集有关远程系统的信息。
系统: Windows,macOS
权限:用户,管理员,系统
描述:攻击者可能试图获取系统中安装的安全软件,配置和传感器的列表。 对手的目标可能是诸如本地防火墙规则,防病毒和虚拟化工具之类的东西。 这些检查可以嵌入到攻击早期阶段使用的远程访问工具(RAT)中。
窗户可以用来获取有关安全工具信息的命令的示例是
netsh,reg查询,dir和
任务列表实用程序 ,但是,其他更特定的工具也可以用来识别对手正在寻找的某些安全系统。
Mac电脑检查恶意软件的常用方法是使用
LittleSnitch和
KnockKnock 。
系统: Windows,Linux,macOS
权限:用户
描述:对手可能会尝试获取有关操作系统和硬件的详细信息,包括体系结构,版本,修补程序和已安装的Service Pack。
窗户用于获取系统信息的实用程序的示例是
ver,systeminfo和
dir,用于根据现有文件和目录来标识系统信息。
Mac电脑systemsetup命令提供了详细的系统信息,但需要管理特权。 另外,
system_profiler提供了无需特权升级的配置,防火墙规则,已安装的卷,硬件以及许多其他内容的详细细分。
系统: Windows,Linux,macOS
权限:用户
描述:攻击者很可能会寻找有关其可以访问或通过研究远程系统访问的网络配置和系统参数的详细信息。 某些用于管理操作系统的实用程序可以用来收集上述信息。 此类实用程序的示例:
arp,ipconfig / ifconfig,nbtstat,route,tracert / tracerout等。
系统: Windows,Linux,macOS
权限:用户,管理员
描述:攻击者可能试图获取他们有权访问的受感染系统或远程系统的入站和出站网络连接列表,以通过网络请求信息。
窗户用于获取有关网络连接信息的实用程序和命令:
Netstat
net use
net session
Mac和LinuxNetstat和
lsof可用于显示当前连接。 类似于“
net session ”,
who和
w实用程序可以显示当前登录的用户。
系统: Windows,Linux,macOS
权限:用户,管理员
描述:攻击者可以尝试识别系统的主要用户,当前登录的当前用户,通常使用系统的一组用户或确定该用户使用系统的数量。 对手可以通过使用帐户发现方法(请参阅“帐户发现”技术)或使用
凭据转储方法来获得上述信息。 关于用户及其名字的信息分布在整个系统中-它们包含在有关进程,文件和目录的所有者的信息中,在有关会话和系统日志的信息中,因此攻击者可以使用各种检测方法。
在Mac中,可以使用实用程序
用户w和
who来标识当前用户。 在linux系统上,仅与
w和
who一起使用 。
系统: Windows
权限:用户,管理员,系统
描述:攻击者可能试图获取有关注册服务的信息。 为了收集数据,攻击者可以使用各种工具,包括可以接收有关服务信息的内置实用程序:
sc
tasklist /svc
net start
系统: Windows
权限:用户
描述:系统时间是在域中设置的,并由Windows Times Service存储,以确保企业网络上系统和服务之间的时间同步。 攻击者可以从本地或远程系统获取系统时间和/或时区。 可以通过以下几种方式收集此信息:
net time \\hostname
-获取主机系统时间;
w32tm /tz
获取时区。
关于系统时间的信息对于敌人使用各种攻击方法可能很有用,例如使用预定任务执行文件,或者基于有关时区的信息来揭示受害者的位置。
保护建议:高质量软件使用合法进程来收集系统时间。 保护工作必须针对防止执行系统中不需要或未知的代码。 为了防止未经授权从远程系统检索时间信息,诸如
Net Utility之类的工具可能会被安全策略阻止。 命令行监视对于检测Net.exe实例或其他用于收集系统时间和时区的实用程序很有用。 由于API通常被合法软件使用,因此监视用于这些目的的API调用的用处不大。