# T1590 - Gather Victim Network Information

## SOC Recommendation
Investigate Gather Victim Network Information activity in the context of Reconnaissance: confirm scope, affected host/identity, and whether it matches expected administrative behaviour before deciding this is benign.

## D3FEND Mappings
| D3FEND Technique | Relationship | Practical SOC Action |
|---|---|---|
| Network Traffic Analysis | Detect | Monitor for Network Traffic Analysis indicators relevant to this technique. |

## Investigation Steps
1. Review Defender for Endpoint / Defender XDR alerts and timeline for the affected host or identity.
2. Check Sentinel analytics rules and incidents correlated with this technique.
3. Review Entra ID sign-in and audit logs if the technique involves an identity or cloud resource.

## Evidence to Collect
- Host or resource affected
- Account or identity involved
- Timestamp of the activity
- Related process, file, or network artifact
- Any preceding or follow-on alerts

## Response Actions
| Action | Risk | Automation Safe | Approval Required |
|---|---|---|---|
| Block zone transfers at DNS server configuration | Medium | No | Yes |
| Submit recon IP to threat intel for tracking | Low | Yes | No |
| Review exposed DNS records — remove any that reveal internal | Low | Yes | No |

## KQL
```kql
DnsEvents
| where TimeGenerated >= ago(1h)
| where SubType == "LookupQuery"
| where (QueryType in ("AXFR", "IXFR") and ResultCode != 0)
    or ClientIP !startswith "10." and ClientIP !startswith "192.168."
| summarize
    QueryCount = count(),
    UniqueNames = dcount(Name),
    SampleNames = make_set(Name, 10)
    by ClientIP, bin(TimeGenerated, 5m)
| where QueryCount > 100
| extend timestamp = TimeGenerated, IPCustomEntity = ClientIP
| order by QueryCount desc
```
```kql
ContrastADRAttackEvents_CL
| where result =~ "EXPLOITED" and rule =~ "SQL-INJECTION"
| project-rename hostname = host_hostname
//please add your DLP logs table in place of ContrastWAFLogs_CL and hostname colomun in place of hostname below and uncomment the queries below
//| join kind= inner (ContrastWAFLogs_CL | where TimeGenerated >= ago(5m)) on hostname
```
```kql
let lookback = 1h;
let threshold = 20;
_Im_NetworkSession(starttime=ago(lookback),endtime=now())
| where NetworkDirection == "Inbound"
| summarize make_set(DstIpAddr,100) by SrcIpAddr, DstPortNumber
| where array_length(set_DstIpAddr) > threshold
```

## Escalation Criteria
- Gather Victim Network Information activity observed on a privileged account or critical system.
- Activity follows or precedes other suspicious behaviour in the same investigation.
- Automated triage cannot confidently rule out malicious intent.

## False Positive Considerations
- Legitimate administrative or maintenance activity matching this pattern.
- Approved security testing or red team exercise.
- Known benign software producing similar telemetry.

Generated by SOC Response Atlas by Basyrix.
