Last updated: 9 Sep 26 10:23:02 (UTC)
Samsung TV Telemetry Analysis
Samsung TV Telemetry Analysis
Device
Model: Samsung TV (firmware SWU-OU_T-JZL6AKUC_01260_220615, build 2022-06-15)
TL;DR
The TV phones home every 5 seconds over plaintext HTTP with a connectivity beacon. It also broadcasts its MAC address and local API endpoints on the LAN every 2 seconds. Netflix push notifications arrive over unencrypted WebSocket on port 80. Firmware update checks leak exact model and firmware version in the URL. When “off,” the TV goes completely silent — no standby beacons.
Power-On Sequence (repeats every boot)
Always the same order:
| Time (relative) | Activity | Protocol | Plaintext? |
|---|---|---|---|
| T+0s | SSDP alive beacon on 224.0.0.7:8001 — JSON with MAC, API URIs |
UDP | YES |
| T+0s | Samsung BSDP search on port 15600 | UDP | YES |
| T+1s | HTTP GET / to 172.66.43.19:80 (Cloudflare connectivity check) |
TCP/HTTP | YES |
| T+3s | TLS to osb-krsvc.samsungqbe.com (Korea service) |
TLS | No |
| T+3s | TLS to osb-v1-ussvc.samsungqbe.com (US service) |
TLS | No |
| T+3s | TLS to gpm.samsungqbe.com (global profile manager) |
TLS | No |
| T+5s | HTTP GET firmware headers from otn1.samsungcloudcdn.com |
TCP/HTTP | YES |
| T+5s | TLS to configprd.samsungcloudsolution.net |
TLS | No |
| T+5s | TLS to lcprd1.samsungcloudsolution.net (analytics upload) |
TLS | No |
| T+5s | Netflix WebSocket reconnect to nrdp.push.prod.netflix.com:80 |
TCP/HTTP | YES |
| T+35s | TLS to osb-v1-alb.samsungqbe.com (ALB health) |
TLS | No |
The firmware check hits the same path every time:
/firmware/tv/448/SWU-OU_T-JZL6AKUC_01260_220615/OUITHeaders.dat
/firmware/tv/448/SWU-OU_T-JZL6AKUC_01260_220615/OUITHeaders.datLeaks: platform code (448), firmware ID, build date.
Continuous Background Telemetry
1. Samsung Cloud Connectivity Beacon — every 5 seconds
GET http://cdn.samsungcloudsolution.com/Public/network/files/check.xml → 200 OK, 53 bytes, text/xml <?xml version="1.0" encoding="UTF-8"?> <rsp>ok</rsp>
GET http://cdn.samsungcloudsolution.com/Public/network/files/check.xml
→ 200 OK, 53 bytes, text/xml
<?xml version="1.0" encoding="UTF-8"?>
<rsp>ok</rsp>- Runs constantly while TV is on — 4,879 requests observed in one capture
- Plaintext HTTP to Akamai CDN IPs (
23.221.236.x) - Response is always the same 53-byte
<rsp>ok</rsp> - Purpose: connectivity liveness check. If response changes, TV likely triggers re-registration or config refresh
- No User-Agent, no cookies, no identifying headers — but the IP identifies the household
2. Samsung BSDP Discovery Beacon — every 3 seconds
SEARCH BSDP/0.1 DEVICE=0 SERVICE=1
SEARCH BSDP/0.1
DEVICE=0
SERVICE=1- Sent to both
239.255.255.250:15600(multicast) and10.x.y.255:15600(broadcast), alternating - Samsung proprietary Broadcast Service Discovery Protocol
- LAN-only, does not leave the local network
3. SSDP/SmartThings Alive Beacon — every 2 seconds
{
"type": "alive",
"ttl": 8000,
"remote": "1.0",
"sid": "5C:49:7D:64:7D:D5",
"data": {
"v1": {"uri": "http://10.x.y.z:8001/ms/1.0/"},
"v2": {"uri": "http://10.x.y.z:8001/api/v2/"}
}
}{
"type": "alive",
"ttl": 8000,
"remote": "1.0",
"sid": "5C:49:7D:64:7D:D5",
"data": {
"v1": {"uri": "http://10.x.y.z:8001/ms/1.0/"},
"v2": {"uri": "http://10.x.y.z:8001/api/v2/"}
}
}- Sent to
224.0.0.7:8001(multicast) - Exposes: MAC address, local IP, two unauthenticated API endpoints
v1= Samsung Remote Control protocol (used by SmartThings app)v2= Samsung REST API (can read/write TV state, launch apps, inject keystrokes)- LAN-only but any device on the network can control the TV
4. Netflix Push WebSocket — every ~28 minutes
GET http://nrdp.push.prod.netflix.com:80/ws
GET http://nrdp.push.prod.netflix.com:80/ws- Plaintext HTTP on port 80 — all WebSocket frames unencrypted
- Maintains persistent connection; reconnects on ~28-minute cycle
- On power-on, fires 4 rapid reconnects in ~300ms (retry storm)
- Also: TLS connections to
nrdp.logs.netflix.com(logging),appboot.netflix.com(app init),secure.netflix.com(auth)
5. Samsung Analytics Upload — every 10 minutes
TLS → lcprd1.samsungcloudsolution.net:443 (34.160.212.185)
TLS → lcprd1.samsungcloudsolution.net:443 (34.160.212.185)- Encrypted — cannot inspect payload without an intercept proxy
- Consistent 10-minute interval suggests batched telemetry upload
- Companion TLS to
sas.samsungcloudsolution.com(Samsung Account Service) on power-on
6. Disney+ Config Polling — every ~10 minutes
TLS → config-cd-dmgz.bamgrid.com (config) TLS → disney-curated-partner-feeds-prod.bamgrid.com (content feeds)
TLS → config-cd-dmgz.bamgrid.com (config)
TLS → disney-curated-partner-feeds-prod.bamgrid.com (content feeds)- Always paired — config check + feed refresh together
- Even when Disney+ is not actively in use
7. Samsung Ad Tracking — sporadic
TLS → cdn-stv.adgrx.com (Samsung's ad platform, hosted on CloudFront) TLS → tvx.adgrx.com TLS → rtb.adgrx.com (real-time bidding)
TLS → cdn-stv.adgrx.com (Samsung's ad platform, hosted on CloudFront)
TLS → tvx.adgrx.com
TLS → rtb.adgrx.com (real-time bidding)- AdGear is Samsung’s owned ad-tech subsidiary
rtb.adgrx.com= real-time bidding endpoint — TV is participating in ad auctions- Observed on Sep 5 and Sep 7
8. Samsung Profiling Endpoints — on power-on
All TLS, all to samsungelectronics.com:
| Endpoint | Likely Purpose |
|---|---|
ypu.samsungelectronics.com |
“Your Profile Upload” — user profiling |
xpu.samsungelectronics.com |
Cross-platform profiling |
kpu.samsungelectronics.com |
Key/usage profiling |
dpu.samsungelectronics.com |
Device profiling |
zpu.samsungelectronics.com |
Zero/household profiling |
Naming convention suggests different telemetry dimensions. All resolve to Akamai. All TLS — payload unknown.
Plaintext Exposure Summary
| What | Where | Protocol | Risk |
|---|---|---|---|
| check.xml heartbeat | cdn.samsungcloudsolution.com:80 |
HTTP | Household IP tracked every 5s |
| SSDP alive + MAC + API URIs | 224.0.0.7:8001 |
UDP | LAN: any device can discover & control TV |
| BSDP discovery | 239.255.255.250:15600 |
UDP | LAN: device fingerprinting |
| Netflix push WebSocket | nrdp.push.prod.netflix.com:80 |
HTTP/WS | Viewing metadata in cleartext |
| Cloudflare connectivity probe | 172.66.43.19:80 |
HTTP | Minimal — just a probe |
| Firmware check URI | otn1.samsungcloudcdn.com:80 |
HTTP | Model + firmware version in URL path |
| Time sync | time.samsungcloudsolution.com:80 |
HTTP | NTP-equivalent, low risk |
Traffic Volume (TV outbound, per hour)
| Events | Packets | Bytes | State |
|---|---|---|---|
| Event 01 | 14,968 | 2.0 MB | On (active viewing) |
| Event 02 | 5,582 | 752 KB | On (idle) |
| Event 03 | 19,882 | 2.6 MB | On (power-on burst) |
| Event 04 | 17,868 | 2.5 MB | On |
| Event 05 | 13,071 | 1.8 MB | On |
| Event 06 | 0 | 0 | Off |
| Event 07 | 12,181 | 1.6 MB | On (power-on) |
| Event 08 | 7,398 | 950 KB | On (power-on burst) |
| Event 09 | 17,716 | 2.3 MB | On |
| Event 10 | 12,756 | 1.7 MB | On |
Key finding: TV goes completely silent when off. No standby beacons, no periodic wake-ups. All telemetry is strictly “while powered on.”
DNS Query Counts (from latest capture)
| Domain | Queries | Port | Protocol |
|---|---|---|---|
cdn.samsungcloudsolution.com |
9,768 | 80 | HTTP (beacon) |
nrdp.logs.netflix.com |
1,260 | 443 | TLS |
nrdp.push.prod.netflix.com |
676 | 80 | HTTP/WS |
nrdp.nccp.netflix.com |
180 | 443 | TLS |
www.youtube.com |
144 | 443 | TLS |
lcprd1.samsungcloudsolution.net |
122 | 443 | TLS (analytics) |
api-global.netflix.com |
88 | 443 | TLS |
appboot.netflix.com |
84 | 443 | TLS |
| Disney+ bamgrid endpoints | 160 | 443 | TLS |
www.samsungotn.net |
54 | 80 | HTTP (firmware) |
tvpnlinupepgpus.samsungcloud.tv |
50 | — | EPG data |
osb-*.samsungqbe.com |
60 | 443 | TLS |
adgrx.com endpoints |
38 | 443 | TLS (ads) |
*.samsungelectronics.com |
28 | 443 | TLS (profiling) |
Recommendations
-
Block
cdn.samsungcloudsolution.comat the firewall — stops the5-second plaintext beacon. TV will still function; it just won’t report “ok” to Samsung’s CDN every5 seconds. -
Block
*.samsungqbe.comand*.samsungelectronics.com— stops profiling and QBE telemetry. May disable some SmartHub features. -
Block
adgrx.com— stops ad tracking and RTB participation. May break ad-supported Samsung TV Plus. -
Netflix on port 80 — blocking port 80 outbound forces Netflix to use TLS. Or block
nrdp.push.prod.netflix.comspecifically and Netflix will fall back to TLS push. -
VLAN isolation — the SSDP/BSDP beacons on ports 8001 and 15600 expose the TV’s MAC and API to the entire LAN segment. Put IoT devices on a separate VLAN.
-
The 5-second check.xml is the odd pattern — no legitimate reason for a TV to poll a CDN every 5 seconds. This is a presence/telemetry beacon masquerading as a connectivity check. The fixed response means Samsung can change it to trigger device behavior (forced update, remote config push, etc.).