← Back to Explore
splunk_escuAnomaly
Protocols passing authentication in cleartext
The following analytic identifies the use of cleartext protocols that risk leaking sensitive information. It detects network traffic on legacy protocols such as Telnet (port 23), POP3 (port 110), IMAP (port 143), and non-anonymous FTP (port 21). The detection leverages the Network_Traffic data model to identify TCP traffic on these ports. Monitoring this activity is crucial as it can expose credentials and other sensitive data to interception. If confirmed malicious, attackers could capture authentication details, leading to unauthorized access and potential data breaches.
Detection Query
| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time) as lastTime FROM datamodel=Network_Traffic
WHERE NOT All_Traffic.action IN ("blocked", "block")
AND
All_Traffic.transport="tcp"
AND
(All_Traffic.dest_port="23"
OR
All_Traffic.dest_port="143"
OR
All_Traffic.dest_port="110"
OR
(All_Traffic.dest_port="21"
AND
All_Traffic.user != "anonymous"))
BY All_Traffic.user All_Traffic.src_ip All_Traffic.dest
All_Traffic.dest_port All_Traffic.rule
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `drop_dm_object_name("All_Traffic")`
| `protocols_passing_authentication_in_cleartext_filter`Author
Rico Valdez, Splunk
Created
2026-04-15
Data Sources
Cisco Secure Firewall Threat Defense Connection Event
References
Tags
Use of Cleartext ProtocolsCisco Secure Firewall Threat Defense AnalyticsScattered Lapsus$ Hunters
Raw Content
name: Protocols passing authentication in cleartext
id: 6923cd64-17a0-453c-b945-81ac2d8c6db9
version: 12
date: '2026-04-15'
author: Rico Valdez, Splunk
status: production
type: Anomaly
description: The following analytic identifies the use of cleartext protocols that risk leaking sensitive information. It detects network traffic on legacy protocols such as Telnet (port 23), POP3 (port 110), IMAP (port 143), and non-anonymous FTP (port 21). The detection leverages the Network_Traffic data model to identify TCP traffic on these ports. Monitoring this activity is crucial as it can expose credentials and other sensitive data to interception. If confirmed malicious, attackers could capture authentication details, leading to unauthorized access and potential data breaches.
data_source:
- Cisco Secure Firewall Threat Defense Connection Event
search: |-
| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time) as lastTime FROM datamodel=Network_Traffic
WHERE NOT All_Traffic.action IN ("blocked", "block")
AND
All_Traffic.transport="tcp"
AND
(All_Traffic.dest_port="23"
OR
All_Traffic.dest_port="143"
OR
All_Traffic.dest_port="110"
OR
(All_Traffic.dest_port="21"
AND
All_Traffic.user != "anonymous"))
BY All_Traffic.user All_Traffic.src_ip All_Traffic.dest
All_Traffic.dest_port All_Traffic.rule
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `drop_dm_object_name("All_Traffic")`
| `protocols_passing_authentication_in_cleartext_filter`
how_to_implement: This search requires you to be ingesting your network traffic, and populating the Network_Traffic data model. For more accurate result it's better to limit destination to organization private and public IP range, like All_Traffic.dest IN(192.168.0.0/16,172.16.0.0/12,10.0.0.0/8, x.x.x.x/22)
known_false_positives: Some networks may use leverage clear text protocols such as kerberos, FTP or telnet servers. Apply the necessary exclusions where needed.
references:
- https://www.rackaid.com/blog/secure-your-email-and-file-transfers/
- https://www.infosecmatter.com/capture-passwords-using-wireshark/
drilldown_searches:
- name: View the detection results for - "$src_ip$"
search: '%original_detection_search% | search src_ip = "$src_ip$"'
earliest_offset: $info_min_time$
latest_offset: $info_max_time$
- name: View risk events for the last 7 days for - "$src_ip$"
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$src_ip$") | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
earliest_offset: 7d
latest_offset: "0"
rba:
message: Allowed Traffic from $src_ip$ to $dest$ over port $dest_port$. Which might indicate a potential authentication attempts over a cleartext protocol.
risk_objects:
- field: user
type: user
score: 20
- field: dest
type: system
score: 20
threat_objects:
- field: dest
type: ip_address
tags:
analytic_story:
- Use of Cleartext Protocols
- Cisco Secure Firewall Threat Defense Analytics
- Scattered Lapsus$ Hunters
asset_type: Endpoint
product:
- Splunk Enterprise
- Splunk Enterprise Security
- Splunk Cloud
security_domain: network
tests:
- name: Cisco Secure Firewall True Positive Test
attack_data:
- data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/cisco_secure_firewall_threat_defense/connection_event/connection_events.log
source: not_applicable
sourcetype: cisco:sfw:estreamer