UISP Fiber - Privacy
This article specifies what data is shared with Ubiquiti via the automatic stability issues reporting.
Introduction
Ubiquiti’s goal is to improve products intelligently, by tracking and prioritizing the most common errors and analyzing device usage scenarios. Issue Reporting enables the team to fix issues quickly and improve product design by having a better understanding of real customers’ use cases. With that in mind, the data shared with the developer team is limited to information and configuration which doesn’t have personal character. That is why all IP addresses, MAC addresses, SSIDs and any unnecessary information is omitted from the reported data. No sensitive configuration files nor memory content that could contain private data is disclosed during the crash report. Please see an example of a real set of reported data in the section below.
Reporting of the stability issues is always disabled by default. When enabled, it can be turned off at any time in the Device Reporting section of the System Settings.
Sample Data Export
The crash report example below is from a real case and is shown unencrypted to reveal the data that is being sent. Please note that in reality, all this data is sent encrypted.
0000: POST /api/v1/core-dump HTTP/1.1
0021: Host: crash.ubncloud.com
003b: User-Agent: curl/7.52.1
0054: Accept: text/plain
0068: Content-Length: 3964
007e: Expect: 100-continue
0094: Content-Type: multipart/form-data; boundary=--------------------
00d4: ----0aaa0dacb6e54579
00ea:
<= Recv SSL data, 5 bytes (0x5)
0000: ....1
<= Recv header, 23 bytes (0x17)
0000: HTTP/1.1 100 Continue
=> Send SSL data, 5 bytes (0x5)
0000: .....
=> Send data, 3964 bytes (0xf7c)
0000: --------------------------0aaa0dacb6e54579
002c: Content-Disposition: form-data; name="device_id"
005e:
0060: 26c45fca6039acfb0b0ee68def7e3b0c
0082: --------------------------0aaa0dacb6e54579
00ae: Content-Disposition: form-data; name="bomrev"
00dd:
00df: n/a
00e4: --------------------------0aaa0dacb6e54579
0110: Content-Disposition: form-data; name="model"
013e:
0140: e601
0146: --------------------------0aaa0dacb6e54579
0172: Content-Disposition: form-data; name="version"
01a2:
01a4: UF-OLT.ER-e600.v4.2.0-beta1.2977.200303.0114
01d2: --------------------------0aaa0dacb6e54579
01fe: Content-Disposition: form-data; name="system_time"
0232:
0234: 2020-02-29T16:49:55
0249: --------------------------0aaa0dacb6e54579
0275: Content-Disposition: form-data; name="kernel_version"
02ac:
02ae: 4.4.169+
02b8: --------------------------0aaa0dacb6e54579
02e4: Content-Disposition: form-data; name="architecture"
0319:
031b: mips
0321: --------------------------0aaa0dacb6e54579
034d: Content-Disposition: form-data; name="load_average"
0382:
0384: 2.59 2.76 2.81
0394: --------------------------0aaa0dacb6e54579
03c0: Content-Disposition: form-data; name="df"
03eb:
03ed: Filesystem 1K-blocks Used Available Use% Mounted on.ubi0_0
042d: 447276 242056 200384 55% /root.dev.overlay
046d: 447276 242056 200384 55% /.devtmpfs 256368
04ad: 0 256368 0% /dev.tmpfs 257072 172 25690
04ed: 0 1% /run.tmpfs 257072 6308 250764 3% /var/
052d: log.tmpfs 257072 12 257060 1% /tmp.none
056d: 51416 124 51292 1% /opt/vyatta/config.overla
05ad: y 257072 12 257060 1% /opt/vyatta/config/tmp/
05ed: new_config_UDAPI
05ff: --------------------------0aaa0dacb6e54579
062b: Content-Disposition: form-data; name="free"
0658:
065a: total used free shared buff/ca
069a: che available.Mem: 514144 58480 138104
06da: 6616 317560 431676.Swap: 0 0
071a: 0
0727: --------------------------0aaa0dacb6e54579
0753: Content-Disposition: form-data; name="ps"
077e:
0780: n/a
0785: --------------------------0aaa0dacb6e54579
07b1: Content-Disposition: form-data; name="uptime"
07e0:
07e2: 68534.23
07ec: --------------------------0aaa0dacb6e54579
0818: Content-Disposition: form-data; name="cmd"
0844:
0846: sleep
084d: --------------------------0aaa0dacb6e54579
0879: Content-Disposition: form-data; name="cmd_fullpath"
08ae:
08b0: !bin!sleep
08bc: --------------------------0aaa0dacb6e54579
08e8: Content-Disposition: form-data; name="cmd_envvars"
091c:
091e: n/a
0923: --------------------------0aaa0dacb6e54579
094f: Content-Disposition: form-data; name="cmdline_params"
0986:
0988: n/a
098d: --------------------------0aaa0dacb6e54579
09b9: Content-Disposition: form-data; name="signal"
09e8:
09ea: 11
09ee: --------------------------0aaa0dacb6e54579
0a1a: Content-Disposition: form-data; name="file_descriptors"
0a53:
0a55: n/a
0a5a: --------------------------0aaa0dacb6e54579
0a86: Content-Disposition: form-data; name="memory_map"
0ab9:
0abb: 55cca000-55cd2000 r-xp 00000000 07:08 72 /bin/sleep.55ce
0afb: 1000-55ce2000 r--p 00007000 07:08 72 /bin/sleep.55ce2000
0b3b: -55ce3000 rw-p 00008000 07:08 72 /bin/sleep.564d3000-564
0b7b: f4000 rwxp 00000000 00:00 0 [heap].76fd4000-77140000 r-
0bbb: xp 00000000 07:08 1288 /lib/mipsel-linux-gnu/libc-2.24.so.
0bfb: 77140000-77150000 ---p 0016c000 07:08 1288 /lib/mipsel-lin
0c3b: ux-gnu/libc-2.24.so.77150000-77153000 r--p 0016c000 07:08 1288
0c7b: /lib/mipsel-linux-gnu/libc-2.24.so.77153000-77156000 rw-p 0
0cbb: 016f000 07:08 1288 /lib/mipsel-linux-gnu/libc-2.24.so.7715
0cfb: 6000-77158000 rw-p 00000000 00:00 0 .77158000-7717b000 r-xp 0000
0d3b: 0000 07:08 1268 /lib/mipsel-linux-gnu/ld-2.24.so.77185000-
0d7b: 77187000 rw-p 00000000 00:00 0 .77187000-77189000 r--p 00000000
0dbb: 00:00 0 [vvar].77189000-7718a000 r-xp 00000000 00:00 0
0dfb: [vdso].7718a000-7718b000 r--p 00022000 07:08 1268
0e3b: /lib/mipsel-linux-gnu/ld-2.24.so.7718b000-7718c000 rw-p 0002300
0e7b: 0 07:08 1268 /lib/mipsel-linux-gnu/ld-2.24.so.7fe96000-7fe
0ebb: b7000 rwxp 00000000 00:00 0 [stack]
0ee9: --------------------------0aaa0dacb6e54579
0f15: Content-Disposition: form-data; name="crash_log"
0f47:
0f49: n/a
0f4e: --------------------------0aaa0dacb6e54579--
<= Recv SSL data, 5 bytes (0x5)
0000: .....
<= Recv header, 17 bytes (0x11)
0000: HTTP/1.1 200 OK
<= Recv header, 31 bytes (0x1f)
0000: Server: nginx/1.14.0 (Ubuntu)
<= Recv header, 37 bytes (0x25)
0000: Date: Wed, 04 Mar 2020 09:07:05 GMT
<= Recv header, 41 bytes (0x29)
0000: Content-Type: text/plain; charset=utf-8
<= Recv header, 19 bytes (0x13)
0000: Content-Length: 2
<= Recv header, 24 bytes (0x18)
0000: Connection: keep-alive
<= Recv header, 25 bytes (0x19)
0000: cache-control: no-cache
<= Recv header, 2 bytes (0x2)
0000:
<= Recv data, 2 bytes (0x2)
0000: OK
Apart from the crash reports, devices also report their basic feature usage statistics and system health metrics periodically. Just like the crash reports, no sensitive information is present in these reports. See an example of such report content below:
{
"device": {
"bom": "21002",
"family": "olt",
"fwMeta": "UF-OLT.ER-e600.v4.2.0-beta1.2977.200303.0114",
"fwStage": "release",
"fwVersion": "4.2.0-beta1",
"identifier": "26c45fca6039acfb0b0ee68def7e3b0c",
"model": "UF-OLT4"
},
"gpon": {
"activeOnus": 1,
"activePons": 1,
"distance": {
"avg": 0,
"max": 0,
"min": 0
},
"models": {
"instant": 0,
"loco": 0,
"nanog": 2,
"wifi": 1
},
"oltConfig": {
"clientIsolation": true,
"igmp": true,
"inbandMgmt": true
},
"onuConfig": {
"count": 3,
"lanProvisioned": 3,
"router": 2,
"wifiProvisioned": 1
},
"signal": {
"avg": -8,
"max": -8,
"min": -8
},
"uptime": {
"avg": 54,
"max": 54,
"min": 54
}
},
"interfaces": {
"count": 1,
"link": {
"connectedCount": 0,
"interfaces10G": 0
}
},
"network": {
"interfaces": {
"loadBalancing": 0
},
"switching": {
"vlanCount": 1
}
},
"reporter": {
"schema": "0.1.1",
"version": "1"
},
"system": {
"loadAvg15": 4,
"memUsage": 14,
"memUsedKB": 74555392,
"rebootReason": "cold",
"uptime": 16563
}
}