网络共享发现是攻击者通过枚举网络共享资源定位敏感数据存储位置和潜在横向移动路径的关键技术,主要依赖SMB、NFS等协议的特性实施探测。传统检测手段通过监控异常共享查询请求(如短时间内大量net view命令)、分析SMB协议流量模式(如非常规树连接操作)以及审计安全日志中的可疑账户行为来实现威胁识别。防御方通常采用网络分段、共享访问权限最小化和协议深度检测等策略进行防护。
为应对日益精细化的检测体系,攻击者进化出多种隐蔽式共享发现技术,通过工具滥用、协议混淆和分布式架构等手段,将恶意探测行为深度嵌入正常网络操作流程,显著降低了传统基于行为特征或规则匹配的检测机制效能。
当前隐蔽式共享发现技术的核心实现逻辑聚焦于三个层面:合法上下文构建、加密通信滥用和时空特征重构。合法工具隐蔽枚举技术充分利用系统白名单机制,通过精准复现管理员操作模式,使得恶意行为在进程树、命令行参数和日志记录等维度与正常运维完全一致;低频分布式嗅探采用复杂的时间序列控制算法,使探测节奏动态适配目标网络流量基线,同时通过地理分散架构破坏行为空间关联性;加密通道探测则通过协议栈重构和加密增强,使得网络层仅能观测到加密会话特征而无法获取实质性协议交互内容。三类技术的共性在于突破传统协议特征对抗范式,转向对网络行为上下文环境、系统信任机制和加密通信生态的深度利用,实现了从"协议异常检测"到"行为合法性认证"的防御体系突破。
匿迹技术的发展迫使防御方必须构建多维度行为基线分析能力,结合用户实体行为分析(UEBA)技术识别异常资源访问模式,同时加强加密流量元数据分析,并实施严格的网络共享最小化原则。需建立协议级交互建模能力,通过机器学习识别加密会话中的隐蔽探测特征。
| 效应类型 | 是否存在 |
|---|---|
| 特征伪装 | ✅ |
| 行为透明 | ❌ |
| 数据遮蔽 | ✅ |
| 时空释痕 | ✅ |
攻击者通过协议模拟和工具滥用,将共享发现行为伪装成合法管理操作。例如使用系统内置命令执行查询,使安全设备难以通过进程特征或命令行参数识别恶意意图。将SMB协议封装在加密隧道中,使得网络流量表现出与合法加密业务相同的协议特征,实现攻击行为的深度隐藏。
采用端到端加密通道传输共享探测指令和响应数据,利用SMB over QUIC或自定义加密协议对通信内容进行强加密。这使得防御方无法通过流量解密获取共享查询的具体参数和目标路径,仅能观测到加密会话的建立与维持,有效隐藏攻击的关键元数据。
通过分布式节点协同和自适应频率控制,将集中式探测任务分解为低频次、长周期的离散请求。利用全球代理网络动态切换源IP地理位置,使探测流量在时空维度呈现高度分散特征,破坏传统检测系统基于请求密度和IP聚类的分析模型,显著延长攻击行为的潜伏周期。
| ID | Name | Description |
|---|---|---|
| S1129 | Akira | |
| G0006 | APT1 | |
| G0050 | APT32 |
APT32 used the |
| G0082 | APT38 |
APT38 has enumerated network shares on a compromised host.[4] |
| G0087 | APT39 |
APT39 has used the post exploitation tool CrackMapExec to enumerate network shares.[5] |
| G0096 | APT41 |
APT41 used the |
| S0640 | Avaddon |
Avaddon has enumerated shared folders and mapped volumes.[8] |
| S1053 | AvosLocker |
AvosLocker has enumerated shared drives on a compromised network.[9][10] |
| S0638 | Babuk | |
| S0606 | Bad Rabbit |
Bad Rabbit enumerates open SMB shares on internal victim networks.[12] |
| S1081 | BADHATCH |
BADHATCH can check a user's access to the C$ share on a compromised machine.[13] |
| S0534 | Bazar | |
| S0570 | BitPaymer |
BitPaymer can search for network shares on the domain or workgroup using |
| S1068 | BlackCat |
BlackCat has the ability to discover network shares on compromised networks.[16][17] |
| C0015 | C0015 |
During C0015, the threat actors executed the PowerView ShareFinder module to identify open shares.[18] |
| G0114 | Chimera |
Chimera has used |
| S0660 | Clambling | |
| S0611 | Clop | |
| S0154 | Cobalt Strike |
Cobalt Strike can query shared drives on the local system.[22] |
| S0575 | Conti |
Conti can enumerate remote open SMB network shares using |
| S0488 | CrackMapExec |
CrackMapExec can enumerate the shared folders and associated permissions for a targeted network.[25] |
| S0625 | Cuba |
Cuba can discover shared resources using the |
| G0105 | DarkVishnya |
DarkVishnya scanned the network for public shared folders.[27] |
| S0616 | DEATHRANSOM |
DEATHRANSOM has the ability to use loop operations to enumerate network resources.[28] |
| S0659 | Diavol |
Diavol has a |
| G0035 | Dragonfly |
Dragonfly has identified and browsed file servers in the victim network, sometimes , viewing files pertaining to ICS or Supervisory Control and Data Acquisition (SCADA) systems.[30] |
| S1159 | DUSTTRAP |
DUSTTRAP can identify and enumerate victim system network shares.[31] |
| S0367 | Emotet |
Emotet has enumerated non-hidden network shares using |
| S0363 | Empire | |
| G1016 | FIN13 |
FIN13 has executed net view commands for enumeration of open shares on compromised machines.[34][35] |
| S0618 | FIVEHANDS |
FIVEHANDS can enumerate network shares and mounted drives on a network.[36] |
| S0696 | Flagpro |
Flagpro has been used to execute |
| S0617 | HELLOKITTY |
HELLOKITTY has the ability to enumerate network resources.[28] |
| S0483 | IcedID |
IcedID has used the |
| G1032 | INC Ransom |
INC Ransom has used Internet Explorer to view folders on other systems.[39] |
| S1139 | INC Ransomware |
INC Ransomware has the ability to check for shared network drives to encrypt.[40] |
| S0260 | InvisiMole |
InvisiMole can gather network share information.[41] |
| S0250 | Koadic | |
| S1075 | KOPILUWAK |
KOPILUWAK can use netstat and Net to discover network shares.[43] |
| S0236 | Kwampirs |
Kwampirs collects a list of network shares with the command |
| S1160 | Latrodectus |
Latrodectus can run |
| S1141 | LunarWeb |
LunarWeb can identify shared resources in compromised environments.[47] |
| S0233 | MURKYTOP |
MURKYTOP has the capability to retrieve information about shares on remote hosts.[48] |
| S0039 | Net |
The |
| S0365 | Olympic Destroyer |
Olympic Destroyer will attempt to enumerate mapped network shares to later attempt to wipe all files on those shares.[50] |
| C0012 | Operation CuckooBees |
During Operation CuckooBees, the threat actors used the |
| C0014 | Operation Wocao |
During Operation Wocao, threat actors discovered network disks mounted to the system using netstat.[52] |
| S0165 | OSInfo | |
| S0013 | PlugX | |
| S0192 | Pupy |
Pupy can list local and remote shared drives and folders over SMB.[55] |
| S0650 | QakBot |
QakBot can use |
| S0686 | QuietSieve |
QuietSieve can identify and search networked drives for specific file name extensions.[58] |
| S0458 | Ramsay |
Ramsay can scan for network drives which may contain documents for collection.[59][60] |
| S1073 | Royal |
Royal can enumerate the shared resources of a given IP addresses using the API call |
| S1085 | Sardonic |
Sardonic has the ability to execute the |
| S0444 | ShimRat |
ShimRat can enumerate connected drives for infected host machines.[63] |
| S0692 | SILENTTRINITY |
SILENTTRINITY can enumerate shares on a compromised host.[64] |
| G0054 | Sowbug |
Sowbug listed remote shared drives that were accessible from a victim.[65] |
| S0603 | Stuxnet |
Stuxnet enumerates the directories of a network resource.[66] |
| G0131 | Tonto Team |
Tonto Team has used tools such as NBTscan to enumerate network shares.[67] |
| S0266 | TrickBot |
TrickBot module shareDll/mshareDll discovers network shares via the WNetOpenEnumA API.[68][69] |
| G0081 | Tropic Trooper |
Tropic Trooper used |
| S0612 | WastedLocker |
WastedLocker can identify network adjacent and accessible drives.[71] |
| S0689 | WhisperGate |
WhisperGate can enumerate connected remote logical drives.[72] |
| G0102 | Wizard Spider |
Wizard Spider has used the "net view" command to locate mapped network shares.[73] |
| S0251 | Zebrocy |
Zebrocy identifies network drives when they are added to victim systems.[74] |
| ID | Mitigation | Description |
|---|---|---|
| M1028 | Operating System Configuration |
Enable Windows Group Policy "Do Not Allow Anonymous Enumeration of SAM Accounts and Shares" security setting to limit users who can enumerate network shares.[75] |
| ID | Data Source | Data Component | Detects |
|---|---|---|---|
| DS0017 | Command | Command Execution |
Monitor executed commands and arguments that may look for folders and drives shared on remote systems as a means of identifying sources of information to gather as a precursor for Collection and to identify potential systems of interest for Lateral Movement. |
| DS0009 | Process | OS API Execution |
Monitor for API calls that may look for folders and drives shared on remote systems as a means of identifying sources of information to gather as a precursor for Collection and to identify potential systems of interest for Lateral Movement. |
| Process Creation |
Monitor for newly executed processes that may look for folders and drives shared on remote systems as a means of identifying sources of information to gather as a precursor for Collection and to identify potential systems of interest for Lateral Movement. |