Reconnaissance
T1590 — Gather Victim Network Information
Adversaries may gather information about the victim's networks that can be used during targeting. Information about networks may include a variety of details, including administrative data (ex: IP ranges, domain names, etc.) as well as specifics regarding its topology and operations...
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.
Platforms
PRE
Priority / status
low / complete
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
D3-NTA · detect
Network Traffic Analysis
Monitor for Network Traffic Analysis indicators relevant to this technique.
Tooling: Sentinel, Defender for Endpoint
| ATT&CK Technique | D3FEND Technique | Practical SOC Action | Tooling |
|---|---|---|---|
| T1590 Gather Victim Network Information | Network Traffic Analysis | Monitor for Network Traffic Analysis indicators relevant to this technique. | Sentinel, Defender for Endpoint |
T1590 Gather Victim Network Information → D3FEND → SOC action
Investigation steps — Microsoft
- Review Defender for Endpoint / Defender XDR alerts and timeline for the affected host or identity.
- Check Sentinel analytics rules and incidents correlated with this technique.
- Review Entra ID sign-in and audit logs if the technique involves an identity or cloud resource.
Investigation steps — generic
- Confirm whether the observed gather victim network information activity matches expected administrative or application behaviour.
- Identify the host, account, or resource where the activity occurred and its business criticality.
- Check for related alerts before and after this activity to reconstruct the broader intrusion timeline.
- Real detection reference: "External DNS Reconnaissance" -- Flags systematic DNS enumeration of the organisation's domain from an external source - zone transfer attempts or rapid subdomain enumeration - often preceding phishing infrastructure setup or external exploitation.
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
GEN-RC-004 — External DNS Reconnaissance
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 1aac7737-d52f-483d-b225-6a27c1b29a9e — Contrast ADR - DLP SQL Injection Correlation
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 cd8faa84-4464-4b4e-96dc-b22f50c27541 — Network Port Sweep from External Network (ASIM Network Session schema)
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.
# 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.
Want to push this directly to Confluence? Upgrade to Basyrix Pro.
- /api/techniques/T1590.json
- /api/recommendations/T1590.json
- /api/d3fend/T1590.json
- /api/mappings/T1590.json
- /api/confluence/T1590.md
Example curl:
curl https://atlas.basyrix.com/api/recommendations/T1590.json Response:
{
"technique_id": "T1590",
"name": "Gather Victim Network Information",
"priority": "low",
"status": "complete",
"version": "0.1.0",
"last_reviewed": "2026-07-23",
"generated_by": "SOC Response Atlas by Basyrix",
"tactics": [
"Reconnaissance"
],
"platforms": [
"PRE"
],
"summary": "Adversaries may gather information about the victim's networks that can be used during targeting. Information about networks may include a variety of details, including administrative data (ex: IP ranges, domain names, etc.) as well as specifics regarding its topology and operations...",
"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": [
{
"id": "D3-NTA",
"name": "Network Traffic Analysis",
"relationship": "detect",
"practical_action": "Monitor for Network Traffic Analysis indicators relevant to this technique.",
"tooling": [
"Sentinel",
"Defender for Endpoint"
]
}
],
"investigation_steps": {
"microsoft": [
"Review Defender for Endpoint / Defender XDR alerts and timeline for the affected host or identity.",
"Check Sentinel analytics rules and incidents correlated with this technique.",
"Review Entra ID sign-in and audit logs if the technique involves an identity or cloud resource."
],
"generic": [
"Confirm whether the observed gather victim network information activity matches expected administrative or application behaviour.",
"Identify the host, account, or resource where the activity occurred and its business criticality.",
"Check for related alerts before and after this activity to reconstruct the broader intrusion timeline.",
"Real detection reference: \"External DNS Reconnaissance\" -- Flags systematic DNS enumeration of the organisation's domain from an external source - zone transfer attempts or rapid subdomain enumeration - often preceding phishing infrastructure setup or external exploitation."
]
},
"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": [
{
"name": "Block zone transfers at DNS server configuration",
"category": "Response",
"risk": "Medium",
"automation_safe": false,
"approval_required": true,
"tool": "See investigation guide"
},
{
"name": "Submit recon IP to threat intel for tracking",
"category": "Response",
"risk": "Low",
"automation_safe": true,
"approval_required": false,
"tool": "See investigation guide"
},
{
"name": "Review exposed DNS records — remove any that reveal internal",
"category": "Response",
"risk": "Low",
"automation_safe": true,
"approval_required": false,
"tool": "See investigation guide",
"notes": "Review exposed DNS records — remove any that reveal internal infrastructure"
}
],
"queries": {
"kql": [
{
"name": "GEN-RC-004 — External DNS Reconnaissance",
"description": "Flags systematic DNS enumeration of the organisation's domain from an external source - zone transfer attempts or rapid subdomain enumeration - often preceding phishing infrastructure setup or external exploitation. (Source: Bell Integration baseline detection library, mapped via sub-technique T1590.002.)",
"query": "DnsEvents\n| where TimeGenerated >= ago(1h)\n| where SubType == \"LookupQuery\"\n| where (QueryType in (\"AXFR\", \"IXFR\") and ResultCode != 0)\n or ClientIP !startswith \"10.\" and ClientIP !startswith \"192.168.\"\n| summarize\n QueryCount = count(),\n UniqueNames = dcount(Name),\n SampleNames = make_set(Name, 10)\n by ClientIP, bin(TimeGenerated, 5m)\n| where QueryCount > 100\n| extend timestamp = TimeGenerated, IPCustomEntity = ClientIP\n| order by QueryCount desc"
},
{
"name": "1aac7737-d52f-483d-b225-6a27c1b29a9e — Contrast ADR - DLP SQL Injection Correlation",
"description": "Detects successful SQL injection attacks identified by Contrast ADR and correlates them with WAF/DLP logs. This rule identifies critical database security breaches that have bypassed initial defenses and may result in data exfiltration or unauthorized database access.' (Source: Microsoft's official Azure-Sentinel Detections (MIT licensed).)",
"query": "ContrastADRAttackEvents_CL\n| where result =~ \"EXPLOITED\" and rule =~ \"SQL-INJECTION\"\n| project-rename hostname = host_hostname\n//please add your DLP logs table in place of ContrastWAFLogs_CL and hostname colomun in place of hostname below and uncomment the queries below\n//| join kind= inner (ContrastWAFLogs_CL | where TimeGenerated >= ago(5m)) on hostname"
},
{
"name": "cd8faa84-4464-4b4e-96dc-b22f50c27541 — Network Port Sweep from External Network (ASIM Network Session schema)",
"description": "This detection rule detects scenarios when a particular port is being scanned by multiple external sources. The rule utilize [ASIM](https://aka.ms/AboutASIM) normalization, and is applied to any source which supports the ASIM Network Session schema.' (Source: Microsoft's official Azure-Sentinel Detections (MIT licensed).)",
"query": "let lookback = 1h;\nlet threshold = 20;\n_Im_NetworkSession(starttime=ago(lookback),endtime=now())\n| where NetworkDirection == \"Inbound\"\n| summarize make_set(DstIpAddr,100) by SrcIpAddr, DstPortNumber\n| where array_length(set_DstIpAddr) > threshold"
}
],
"spl": [],
"esql": []
},
"automation": {
"safe": [
"Add recommendation as Sentinel incident comment.",
"Run enrichment queries.",
"Create ServiceNow SecOps task."
],
"approval_required": [
"Contain or disable the affected host/account.",
"Any change to production configuration."
]
},
"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."
],
"confluence": {
"title": "T1590 - Gather Victim Network Information Response Guidance",
"labels": [
"mitre",
"attack",
"d3fend",
"secops",
"basyrix"
],
"sections": [
"summary",
"d3fend_mappings",
"investigation_steps",
"response_actions",
"queries",
"automation",
"escalation_criteria",
"false_positive_considerations"
]
}
}