Update: UniFi Phone Home/Performance Data Collection
community.ui.com
community.ui.com
The good news is that in both cases, the community has been clear in its reprimand, and the companies have reversed course (or promised to do so, in the case of Ubiquiti). I'd like to see more companies realize this is an opportunity rather than a threat: an opportunity to create products and services that deeply respect privacy and market this advantage over the competition.
"I don’t understand. This should not be an opt in or an opt out. It is a condition of using our product. There is an acceptance of terms and the use of this data should be included in that." [1]
In the previous thread people were referring to the HiPPO problem (Highest Paid Person's Opinion). I'm willing to bet that it's the same story at Ubiquity. But despite occasional backpedaling, there are rarely any real consequences for the irredeemably stupid managers who push for crap like this. Unfortunately, that's probably the only way to make it stop.
In my opinion, if the outcry is bad enough for a company to backpedal on a decision like this, then it's already bad enough that they should fire the manager responsible for making the decision in the first place. These aren't line employees. The company doesn't pay them more than everybody else for fun -- they're paid to understand the business well enough to know better. People in these positions tend to be natural risk takers. If there are never real consequences, they're going to continue to bet anything they can get their hands on for a shot at personal gain, and the company and their customers are going to foot the bill.
[1] https://gitlab.com/gitlab-org/gitlab/merge_requests/14182#no...
> but not really worse than I would expect from any misc C-level in any industry.
This is my take as well, unfortunately, but I think it needs to change. There are loads of competent people who can perform these executive jobs. The bar should be higher.
I don’t think it’s unnatural for an OSS product dev team to think this way. I don’t like that they implemented it, but I think it’s positive they rolled it back.
Firing a CEO for such a situation will result in worse software, I think. It won’t make the next CEO less likely to make a dumb mistake. But it will make them less likely to be public or to roll back changes. If the consequence of a fairly minor mistake (given GitLab’s history of super smart decisions in the past 10 years) is firing, then management will make sure nothing is ever considered a mistake again.
but it's ultimately the customers who decide if something was a mistake by switching to different products... hence company foots the bill
I recommend their products. I have them installed at work and at home. A few weeks ago I sent an email to them about getting an RMA for something that is clearly their issue. The support person was unhelpful. Lucky someone else reviewed my quite strong reply and said, please RMA it. I plan to do so tomorrow (I have been traveling for 30 days so..). Lets see what happens. No company is perfect. Most suck. So far over the last 5 years I have been over all happy with Ubiquity.
https://news.ycombinator.com/item?id=21432134
They might offer good products, but they're benefiting from the work of thousands of other people, improve on it and don't give back. If you think this is fine then I guess so is Chinese companies stealing western IP.
That doesn't shock me though, and I would say is expected. After all, it's their job to know what's legal and watch over the decisions the company makes.
These statements endanger the success of the whole company. I would think a CFO should keep that in mind. At that paygrade I would expect nothing less.
It’s less obvious with GitLab given the nature of the business, but in most cases the vendor has the power in the relationship and can basically tell the customer to fuck off. Where are you going to go, Github?
Same deal with Ubnt. Their core consumer market is WiFi. The competitors are Google, Amazon, Spectrum/Comcast/etc, and a bunch of random companies. Backpedaling is dumb — they are better off letting the angry internet people spew for a few weeks. If you care about privacy, you’re not buying Google WiFi or Eero.
Then there are companies like GitLab and Ubiquity. Most of their customers give them money because someone on the engineering team is discerning, persuasive, and trusted by management. These companies are not capable of pulling an Oracle without losing a significant amount of business, and everybody in the C-suite needs to understand this. Deciding to implement telemetry because everybody else is doing it is not going to fly here.
> Starting with GitLab 12.4, existing customers who use our proprietary products (that is, GitLab.com and the Enterprise Edition of our self-managed offerings) may notice additional Javascript snippets that will interact with GitLab and/or third-party SaaS telemetry service (such as Pendo). [...] as we roll out this update you will be prompted to accept our new Terms of Service. Until the new Terms are accepted access to the web interface and API will be blocked. So, for users who have integrations with our API this will cause a brief pause in service via our API until the terms have been accepted by signing in to the web interface.
At least Ubiquiti had the basic courtesy of not breaking people's paid service/devices to roll out their questionable telemetry. Even if it should be opt in, not opt out.
For me it's still not solve here. I'm sad, because now I have to find another hardware provider that I can trust.
But I consider an opt-out a workable option in this case, as long as they realize this mistake should not be repeated, which remains to be seen.
Is there any alternative that provides the elegance and affordability of UniFi SDN?
Maybe they will end up making it opt in. In the mean time, would an open source tool to automate ubiquiti opt outs be useful?
Even Debian has popcon.
Chances are, if you are reading this, you are working at a company that does this very thing! For much more meaningless things than enterprise hardware with custom OS.
By pulling stunts like this you force all operators to review the contents of every update. You actually reduce security across the ecosystem because you reduce the likelihood individuals will update.
> For any further questions related to this, please review our EULA, Terms of Service and Privacy Policy.
May as well be: "For more information, please re-read."
Come on.
As someone who was literally about to order a whole set of Ubiquiti gear for his business this month, having never been a customer before: no, I don't think I will.
Ubiquiti, you blew it once by trying to push this out in the first place. Now you've blown it again, by thinking some token opt-out button was enough to fix the problem, instead of realising that what you're dealing with here is a major trust issue and you're fundamentally on the wrong side of it. You don't get a third shot. I need to protect the security of my business data, and I need to be confident that the professional gear we're buying isn't going to actively undermine that.
Here's what I don't get: Ubiquiti has always been a bit of a dumpster fire. From the wilful GPL violation that introduced security vulnerabilities to shipping a product based on an end-of-lifed version of Debian to shipping known vulnerable OSS software. Yes, I know that they've (recently) shipped a new version of "EdgeOS" that is based on a supported version of Debian.
From what I can tell the love affair with Ubiquiti was more about the cost than the quality.
The problem here is only partly the original decision. It's actually much more concerning that they don't really seem to understand why that decision was a problem for some people or that they did anything wrong. How can anyone trust an organisation that would pull a stunt like this and then think a simple opt-out added under protest was sufficient to address the issue?
I bet is phones home as well, and probably does not even have a opt-out at all.
I've already outlined the many ways in which Ubiquiti was not a reasonable player on this and other posts, their deliberate GPL violations that exposed users to added vulns was covered in the initial post about their spyware. I'll take it a step further and posit that Ubiquiti has done little to nothing in good faith.
Their offerings are largely thin veneers over open source software with minimal engineering effort (likely because Ubiquiti has little to no actual engineering staff). Look at the packet corruption bugs in the switches, the overheating, or the RADIUS issues that their WiFi gear has (and Ubiquiti has zero knowledge on how to debug). For fucks sakes Ubiquiti shipped their EdgeRouter lineup with an EOL'd version of Debian for ages (specifically the MIPS support had been EOL'd and Ubiquiti largely didn't build or ship security updates). EdgeOS, of course, is merely a thin HTML based wrapper on top of Vyatta (and an exceedingly buggy one for a while).
I don't think there are a ton of great options (although NetBSD on the Oceteon hardware seems like a good solution) once you've restricted yourself to that price point. Lack of better options doesn't mean that Ubiquiti is good or reasonably behaved.
Until you enable hardware acceleration and it corrupts your traffic mysteriously. Or maybe you don't want your network gear to phone home. Maybe you don't want to overheat and kill its internal storage. Maybe you want the PoE to be configured in a way that you're going to fry things accidentally.
I had to look up what the fuck Oceteon even is and it looks like an embedded platform. I can't see any ready-made solution for the things Uni-Fi does, so that means it's roll-your-own. No thanks.
If you don't know what the fuck I'm talking about maybe instead of swearing and whining like a jackass you should look it up.
Edit: If anyone else out there is interested in defending Ubiquiti without knowing anything about their products - Cavium's Oceton is a MIPS64 SoC for network appliances that Ubiquiti uses in their EdgeRouter Lite lineup (and potentially others). It's also found in a variety of hardware from vendors like D-Link and SonicWall. It's a bit power hungry (you can cook an egg on an ERL), but is supported by NetBSD and OpenBSD just fine.
Ubiquiti is like the Mongo of networking appliances. They have a lot of checkboxes on their datasheets, but not all of the features are well developed.
The option to disable it was absolutely the right move for them to make and it should’ve been there from the start. Everyone claiming they should not have any phone home at all hasn’t spent much time in the enterprise hardware world...
No, they don't. We work with some clients who are in a very similar area, on the development side. Anyone who thought this was a good idea would get bounced out of the room so fast their feet wouldn't touch the floor until they were in the corridor. It is absolutely not the norm to upload data from within the customer's network without their knowledge or consent.
Almost all of your enterprise vendors do this today. Some of them even give Sales Engineers real-time access to performance and utilization metrics. It’s a great way to get competitive intelligence about other companies.
IBM
Cisco
Dell/EMC
HPe-Aruba
Arista
All phone home. Who is this magical enterprise company that has no phone-home?
This farcical: claiming there are issues with healthcare and finance is complete rubbish. They aren't phoning home patient data, they're phoning home telemetry and health status of the hardware. I can tell you with 100% certainty that both segments have literally hundreds of thousands of hardware devices phoning home to their respective manufacturers without ANY issue.
I’ve worked with basically every vendor in the space and phone-home is table stakes which is why your story doesn’t really hold water...
You might have been, but the comment that I'm replying to is the first one in this thread to include the word "wireless". Ubiquiti make various other kinds of network equipment as well, and enterprise networking is a vast industry all of its own, of which wireless is only a small part.
Yea it really is, All the major Players in WiFi do it, most even need to talk to a licensing server at regular intervals (which include Telemetry data) and there is no Opt-Out (looking at you Meraki )
I have run into this at literally every job I've ever had. Make notes, gather evidence, and file bug reports is just a foreign concept to some people.
Shouldn't you be doing that anyway?
> This Regulation does not therefore concern the processing of such anonymous information, including for statistical or research purposes.
Crash data does not mean it contains memory dumps; it could just be assertions and stack traces.
Recital 26 says:
> The principles of data protection should therefore not apply to anonymous information, namely information which does not relate to an identified or identifiable natural person or to personal data rendered anonymous in such a manner that the data subject is not OR NO LONGER identifiable. [emphasis mine]
So as long as the data becomes no longer identifiable, recital 26 seems to apply.
The Usage Data that we collect may include information such as ...... Internet Protocol address ......
Then again, they had it when you downloaded the update, and when your devices check for auto update, so, you’re not getting away from this data collection with an opt out button.
--------------------------
A person is identified, if the ID references only one user in the whole dataset[1]. This also makes any information linked to the ID PII.
the ID would be pseudo-anonymous if one would need some extra data, to which they don't have access to, for linking the ID to one specific user in the whole dataset[2].
So to answer your question, RTB ID is not pseudo-anonymous as it only references a single user out of all of them.
[1] It's also important to understand the definition of PII in GDPR context. Which is any data that relates to an identified or identifiable person. Identifiable is the same as distinguishable. Knowing this helps to understand where the line is. https://www.lexico.com/en/definition/identifiable
[2] Definition of pseudonymisation, 5'th bullet-point: https://gdpr-info.eu/art-4-gdpr/ sheds some light on this.
I don't want any data to be sent to Ubiquiti. This forces me to now treat my network hardware as an untrusted device.
And the idea that they force everyone in, and will add an opt out button later seems like they are gaming the system.
If they don't opt everyone out they didn't ask to opt in as a default, their actions to me seem hollow.
Furthermore, if they transmit crash logs, and those contain partial memory contents (core dumps), chances are actual content from network packets are transmitted to UBNT as well, and those contents may contain PII (IP addresses, MAC addresses, usernames, passwords, real names, addresses, credit card information, etc.), meaning they’re most certainly violating the GDPR by making it opt out.
Maybe some company somewhere runs an internal server, and because it's internal they might think that encryption is not needed. Hell, it might even use GET arguments for username/passwords in the URL.
The crash dumps would contain these data as well.
Next time you come across a core file, use strings on it - you'll be surprised what it will find!
IANAL, but as far as I know, companies can collect anonymous data ("what versions are our customers running?") without involving the GDPR.
> This Regulation does not therefore concern the processing of such anonymous information, including for statistical or research purposes.
----------------
The Usage Data that we collect may include information such as your device data, including your mobile devices, sensor data, device signals, device parameters, device identifiers that may uniquely identify your devices, including your mobile device, web request, Internet Protocol address, browser type, browser language, referring/exit pages and URLs, platform type, the date and time of your request, and one or more cookies that may uniquely identify your devices or browser.[1]
----------------
This data is certainly not anonymous by GDPR standards. Identifiers that uniquely identify a device will in some cases(ex, single-user devices) also be unique identifiers to a single person. That is enough for the data to be considered Personal Data in the context of GDPR.
‘personal data’ means any information relating to an identified or identifiable natural person (‘data subject’); an identifiable natural person is one who can be identified, directly or indirectly, in particular by reference to an identifier such as a name, an identification number, location data, an online identifier or to one or more factors specific to the physical, physiological, genetic, mental, economic, cultural or social identity of that natural person[2]
[1] - https://ec.europa.eu/info/law/law-topic/data-protection/refo...
[2] - https://community.ui.com/questions/UI-official-urgent-please...
They may be basing their collection on ‘legitimate interest’ for instance.
I don’t think anyone is in a position to predict these things but I’d bet they have a pretty good justification there for IP collection given the product they provide.
Also in the original thread someone quoted this cool tidbit from their ToS .[1]
> Special Note to International Users. If You are accessing the Services from the European Union, Asia or any other region with laws or regulations governing personal data collection and disclosure that differ from United States laws, please be advised that Your continued use of the Services will be governed by United States law
this makes it seem even more likely.
And of those who do actually offer an op-out: Who is annoyed about not being able to debug an issue because the crash they know is happening only seems to be happening on clients who have opted out?
And my second question to all the non-developers out there: Who here is annoyed about crashes on their machine that "never seem to get fixed" as if the vendor "didn't care about getting crashes fixed" in software that offered and explicit opt-in and they didn't opt into "spying" by the vendor? Who remembers not opting in and remembers to rectify that when the crash happens?
It's very easy to stand on the hill of righteousness and yell at a vendor implementing crash reporting, but before doing so ask yourself: Are you collecting crash reports? Do you wish you had crash reports? Are you unhappy about crashes on your machine not being fixed?
If any of those are true, then you better not complain about a vendor adding crash reporting to their products.
Do I think this should be opt-outable? Of course. Do I think crash reporting needs to be opt-in? No. Absolutely not because next to nobody will opt in and when crashes happen, nobody will remember their decision.
Make the report readable by a simple text editor. Let the users have a look at the content inside. If you do need the report, ask them to check it then send it through trusted and encrypted ways like Firefox Send.
There is no need to make an crash report automatically sent to you. No need to fix crashes for users that never cared for reporting them to you. Orient your bandwidth to users that care.
how do you explain the concept of a backtrace to an end-user so they can make an informed decision whether it's fine to submit the data or not? How do you do the same with a a full memory dump (if you need one?). How do you expect users to analyze the memory dump for potentially compromising data?
> If you do need the report, ask them to check it then send it through trusted and encrypted ways like Firefox Send.
this works for you and me. It doesn't work even for my coworker. Also: What is the advantage of going through the extra hoop of Firefox Send compared to over plain SSL when you intend the recipient to be able to read the dump anyways?
> No need to fix crashes for users that never cared for reporting them to you
Judging from metrics available to an app I'm working on I would say that users are much more likely to stop using my app completely rather than even bothering to press the "report this issue" bug.
It really depends on your target audience.
But in case of UniFi (as opposed to their AmpliFi line), asking for individual reports to be reported could possibly be feasible given the product audience.
Yes. Getting this right is that simple.
How do you handle users not familiar with the concept of a crash? How do you make sure you get their crash reports? How much are you willing to spend on dealing with edge-cases (like crashing loops and reporting fatigue)?
But yes. I agree that your proposed solution is the friendliest for the subset of total users who are also frequenting HN.
> If you do not wish to participate/provide this data, we will add an opt-out button in upcoming versions that will make it easy to opt-out of providing this data. In the meantime, you can block traffic from UniFi devices to trace.svc.ui.com.
Wonder what the hurry was to launch such a "feature" that couldn't wait for the opt-out button to be ready. In the meantime they will definitely be able to collect some data from users that still wait for the opt-out button.
(Either that, or hosts will have to be configured without a default route and will need to use a proxy server for all outgoing connections.)
When every piece of hardware and software you use is spying on you, blocking everything by default and only allowing explicitly whitelisted traffic will be your only option to stop it.
Site I manage run separate VLANS for admin (switches, APs, etc) and Internet-of-Things, and both of those VLANS are default deny on outbound. That rule blocks a fair amount of traffic.
I wonder if part of the answer is better tools in firewalls for this sort of thing. Easily tagging "unstrusted device" or something perhaps.
If the thing needs the internet to work, we should be able to whitelist just the data that's essential to its function and have the firewall automatically strip the remaining data from the packet.
It's called Embedded Ethics. And it is crystal clear many of you need to watch it.
If it’s clearly indicated and has an opt out I’m fine with it. I’d go so far as preferring it over opt-in, because I want my product to have the improvements of as many crash reports as possible.
Obviously, by “crash log” I hope they gather call stacks - not memory content, since memory content could contain data that I wouldn’t want collected.
Now this. What is a good alternative for AP's and cameras?
This is really dumb, these are the kind of shenanigans that people buy non-consumer gear to get away from.
But the other thing is, since UNMS devices like EdgeMAX and AirMAX are intended for mass deployment by ISPs, there's a decent chance UNMS will reveal and aggregate that telemetry data and allow UNMS users to see it themselves for their own troubleshooting and diagnostic purposes.
There is no option to remove the dead/unplugged devices from the device list. The only way to remove is to reset and reconfigure everything from scratch.
The Cloud Key 2 has a battery inside it and shuts down gracefully if you pull the power.
So that's a kind of fix. Although it does involve buying a new device.
If they transmit crash logs, and those contain partial memory contents (core dumps), chances are actual content from network packets are transmitted to UBNT as well, and those contents may contain PII (IP addresses, MAC addresses, usernames, passwords, real names, addresses, credit card information, etc.), meaning they’re most certainly violating the GDPR by making it opt out.
The GDPR doesn’t care how you came by the PII, it only dictates how you should behave when you handle it.
Edit: I should clarify before somebody trips over their pitchfork and sets the house on fire, the GDPR cares a lot about how you come into possession of PII, and also if you should have that information in the first place, and also cares about how long you hold on to it.
When it comes to protection of those data though, it doesn’t care if it was collected through telemetry, emailed to you (yes, also the spam folder), or it’s an old archive of core dumps on an old server somewhere. The same rules apply to how those data are handled.
Legitimate interest is the obvious way to not require opt-in and while I’m sure the regulators are getting tired of seeing ad networks claim that exception a router company claiming it for crash support seems like something that will likely be deemed in bounds. Especially if that company has made a good faith effort to show its not repurposing that data.
And yet, Article 32 (https://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=CELE... the GDPR states:
Silence, pre-ticked boxes or inactivity should not therefore constitute consent.
Consent should cover all processing activities carried out for the same purpose or purposes.
When the processing has multiple purposes, consent should be given for all of them.
If the data subject's consent is to be given following a request by electronic means,
the request must be clear, concise and not unnecessarily disruptive to the use of the service for which it is provided.
It is of course also possible that UBNT is fully GDPR compliant if they can guarantee that the don't send PII. The problem is we don't know.There are several other basis as well including ‘legitimate interest’. You can see all of the basis in article 6(1).
If you use a different basis you don’t need to collect consent at all whether opt in or otherwise.
Hardware data from crashes used just for cause analysis and properly stored/secured is a fairly straightforward ‘legitimate interest’ argument.
Technically correct but sounds either ignorant or misleading.
How do you anonymise a dump with user info especially for a routing device? Like that requires some sophistication, you'd imagine they'd love to talk about it to generate blog clicks.
But it seems that some keen user will have to try reverse engineering their data collection to actually give the users information of what is leaving their network.
As a user of their products, it has really soured me on their product. When supposedly if they're so "GDPR compliant" they just need to explain themselves to win people over.
I would say they should first get their basic support to work in a top-notch manner, carefully reading, thinking about, and responding to every bug report. Then get into automated data collection, and then ASK FOR USER CONSENT. This isn't difficult. No "opt-out" crap or corporate lingo, TELL ME CLEARLY WHAT YOU NEED, WHY YOU NEED IT, AND ASK ME IF I AGREE.