- Should a password manager warn me about reused passwords without sending things out without opt in? yes
- Should a password manager send even one byte of my data to any service, regardless of whether it is for a good intention and mathematically proven to be "safe" without opt in? I'd say no.
- So would any other product out there, be it a smart home manager or a toaster, send any of of my data, hashed or not to any 3rd party without opt in? even if it's just the byte "1" to a page called "donothing.com"? I say hell no.
- Should open source developers who are not Linus Torvalds be a bit nicer on a public issue?
- And should open source users should be less heated because "let us know if you plan to fix this or we will uninstall and fork it" deserves the "go ahead, this is open source, threats don't really help here"
We all can sometimes write a reply at the heat of the moment that we later regret. Frenk definitely realized it after the fact and I respect him owning it, apologizing, and keeping the old messages. He is right it's open source, and he doesn't owe anyone anything, but still, I believe a phoning home of any kind is violating The Principle of Least Astonishment.
Their response attitude reminds me of basil from fawlty towers (paraphrasing):
I'm trying to run a business here. I can't get things done with you stupid customers bugging with me problems all the time. Go find something to do.
In the 80s and 90s customer satisfaction was important primarily in manufacturing. Today software treats customers like nyc realtors who know they have the balance of power:
that's too damn bad: the price is the price. Take it or i'll sell it to somebody else for wasting my time.
I think it matters a lot here if you can mathematically prove that it is "safe":
The only reason I'm comfortable transmitting sensitive over the internet is that we've got a bunch of proven systems like "encryption" that can guarantee my ISP, etc. doesn't learn much about my actual traffic.
Fundamentally, if you're giving an application your passwords, it is precisely so that the application can transmit those passwords, in full, to the relevant services. If you don't trust "mathematically proven safe" then it's already unsafe - and it's unsafe to a ton of third parties used to route the internet.
It's important because that means this is a harmless issue - there's a linked 3rd party mathematic proof by a credible authority on security (CloudFlare), and other password managers have similar features.
"I'd like clearer documentation" is still a reasonable request, but I don't think the OP is at all justified in acting like this is some outrageous trespass.
If you care about a harmless issue this intensely, you should be taking some responsibility to actually inspect the code. Given there was a feature flag to disable it, even a cursory scan with a cheap LLM probably would have found the "issue"
> Fundamentally, if you're giving an application your passwords, it is precisely so that the application can transmit those passwords, in full, to the relevant services.
This is about secrets in general. Those could just as well be used to encrypt local data or sign session cookies for the internal web page. And sending the secret to the service it is for is different than sending it (or at least a part of its hash) to another service the user might not trust.
No matter how you encrypt the data, transmitting it unavoidably leaks the fact that you're running software that transmits that data. There's no way to mathematically prove this is harmless, because there's no way to know how that information could be used against in the future in ways you didn't predict.
No software should ever make network requests without your consent.
> deserves the "go ahead, this is open source, threats don't really help here"
Depending on how serious you think the privacy breach is, you can report them on github, do a campaign against them on any website they don't control (HN/reddit/etc), also you can convince other participants of open source to block their software if they detect it (e.g. GNOME blocks binaries of certain hash etc).
If they run a malware/spyware or something that level, open source will make them stop or go irrelevant.
Also frenck explained how the feature works and why this is save.
On the other side Viss basically just said "trust me bro, it is not save and by the way, I'm THE expert and I'm so very smart, that I don't even need to list some facts why this could be unsafe, just fix it NOW", which I find exhausting, unhelpful and boring.
Thats the thing though, it's not safe [1] and puts trust in a third party - HIBP.
To do that automatically without any notice to the user breaks the fundamental value proposition of a local home assistant which over and over again preaches keeping things local and private.
As someone who relies on home assistant every day, I'm quite disappointed to hear Frenck's response to this.
Frenck here, I'm the one who replied on that issue.
My replies there were more dismissive than they should have been. My apologies. I've posted a follow-up on the issue.
As it turns out, the check can already be turned off after all:
ha security options --pwned=false
It has been part of the Supervisor for years and checks app options that are marked as passwords. A recent release fixed the warning that surfaces it, which is why people are noticing it now.
I do get the sense that you're not malicious, just that maybe you're not seeing this from the standpoint of someone that assigns a higher value to some elements of privacy. In this case, your user base expects a home automation system. They do not expect that system to scan their computer for passwords, regardless of how "safely" the home automation system were to behave.
You might have a heart of gold, and just be having an off day due to reasons, so I hope people cut you some slack, but if I were you I'd update this feature to be opt-in and conspicuous, immediately
I've not seen the claim that it is scanning their computer for passwords. My understanding is the ones it checks are those that are used in HA's config (I assume, for different devices it connects to in your home).
There are a lot of problems with poor security practices devices of this type. Maybe the feature is a bit too paternalistic but it is not malicious.
I still agree its not the right default but thats quite a lot less invasive than you are making it sound.
It's not just a home automation system though. People setup HA for a lot of reasons, but one of them is that they don't want other people/companies in control of what goes on in their home, spying on them, etc. The sort of people who go to the trouble to set up a server, deal with all of the integration issues, etc so that they can get something that they have control over of.
Anyhow that sort of person might not take kindly to having a hash of their password sent to some random web server without being asked first.
Trust is hard won and easily lost. The entire reason I use Home Assistant is because I trust it to be the local, privacy focused home automation system. Things like this is a huge surprise that gives me pause to wonder what else it's doing that I wouldn't approve of. If I feel like I need to start setting up firewalls between HA and my internet to protect my privacy and data, I'm more likely to look towards alternatives and push my family members towards something else as well. This is the first time I've wondered if the project's ethics and culture matches what I expect out of the software.
I've been considering home assistant, and yeah this gives me pause.
IMHO it's just not the kind of behavior that is expected by the people that use the software.
The fact that it didn't occur to anyone that this isn't a good idea makes me question other design decisions. When local-only isn't local-only, that's a problem.
Just to add to your point, I’ve deliberately avoided home-assistant since this kerfuffle where frenck was quite rude to the NixOS maintainers. https://news.ycombinator.com/item?id=27505277
Hey dude, I don't get the sense you're being malicious, but you might want to consider the following...
I'm a Home Assistant user because I don't like my devices reaching out to random cloud services more than they need to. I suspect quite a number of fellow HA users feel similarly.
Although your intent was probably good, this feature certainly falls into the "more than they need to" bucket and feels hella icky. And yes, I'm very familiar with HIBP and cryptography in general. This simply isn't an opt-out feature I expect in a privacy positioned home automation product.
Cloud-optional: Any functionality that requires data or control signals to leave your home must be transparently explained, opt-in by default via a simple workflow
Asking basically the same thing as the sibling replies, but hopefully in a less aggressive way: can you elaborate on what led you to reply like that in the first place? As someone with no horse in the race (I don't use Home Assistant), the first reply you gave genuinely does seem like it was intended in good faith, even if it was not satisfying to the user, and I can understand that angry users are not fun to interact with, but I'm struggling to wrap my head around why your second reply was "This issue is closed as won't fix" without any elaboration about why. The explanation that seems most likely to me is that you were annoyed at the user and decided not to spend any time looking into the issue, which would be unfortunate but maybe understandable if that's what you're apologizing for. Without any explanation about why you quickly dismissed and then suddenly turned around and changed your mind later though, I think you've risked the apology coming across more as damage control than genuine regret.
> Our documentation should have explained all of this, including how to turn it off. We'll get that updated.
Do you mean "how to turn it ON"? It should be off by default, just look at the replies you're getting by people that are seriously considering not using HA because of this. Is it worth it? It doesn't matter if it's secure by your standards, what matters is that it gives people the security "ick" and will then second-guess every other security decision in the rest of the software. That matters.
People accusing others of lying all the time is a major problem in current societal discourse.
It’s not a lie if the speaker believes it to be true; it’s just a mistake. A lie must have the intention to mislead behind it.
I don’t dispute that there is a lot of, perhaps way more, lying going on, especially in politics now, but let’s not both inflame opinions and cheapen the word ‘lie’ by just using it for non-deliberate falsehoods.
Not a lie, but I was wrong on that one. I'm happy to admit that.
I've used 1Password's Watchtower for so many years that I assumed the breached password check was just part of it. After your reply I looked it up and learned it's actually a setting in their privacy preferences, so my comparison was off.
As someone reading this with no dog in the fight, you came across as rude and patronizing. I'm sure you are not like that in real life, but those responses were ..ooof, not pleasant.
I'm just a rando stranger, don't mean to pile on to you. But as someone that has also launched products and talk to customers every day.. that's not a good look.
Again, no hate here, I'm sure you're great to talk to in real life, but just the way you wrote that was not pleasant at all.
Hey Frenck, longtime HA user here. I know this feature feels pretty safe but I hope you can give http://cablej.io/blog/k-anonymity/ a read on how this ultimately still puts trust in HIBP, a third party cloud service. In my opinion this might help with understanding why people are rightfully worried, especially when they thought they are running a very local and private HA instance.
You should fix your fabrication in the 1st response. I have deployed 1Password in my organisation, and I'm also using it personally, and the "Check for vulnerable passwords" option (under Privacy) is opt in.
By suggesting that 1Password is doing the same you're lying to water down the gross abuse of trust.
"my replies were dismissive" non-apology after the initial "This issue is closed as won't fix." show pretty clear you're simply in the damage control mode, actually either not understanding or not caring why someone caring about security or privacy would be shocked and request opt-in you flatly rejected anyway.
I can’t speak for him, but I regularly reword replies after a minute of consideration or if I manage to think to myself “is this as kind as I intend to be to others” during it’s formation.
Problem is not solved. Why was this turned on by default behind our backs? What else is being contacted and with what purpose behind our backs? This is a serious breach of trust from Home Assistant.
interesting that the crux of the Nix dispute was about how he wanted to self-modify the HA after install, and the crux of the current dispute is how HA should be able to scan your secrets and upload truncated hashes
I doubt the guy is malicious, but it should really be obvious why people are nervous about this stuff. If I put a password into a home automation tool, is my default expectation that it's going to phone home and send any information (even if it's just a bit of information about a hash) about my passwords?
Which option will minimize the feelings of betrayal and violation: making this feature opt-in or opt-out?
Any level of understanding of humans will produce the right answer.
Was thinking of setting my own assistant using Home Assistant to replace the Google Home device I got rid of. Looks like I should slow down and take a closer look at this.
As someone whose smart home need is minimal -- I just use it to turn on/off lights with voice -- I'd rather have nothing than support such behavior.
Nothing and no one is perfect, but Home Assistant is orders of magnitude better than any other home automation suite. The fact that there's enough transparency for this to be discovered, for this conversation to happen, and for the maintainer to publicly apologize is evidence of that.
Holy shit, what a read. How do people not understand open source licensing? In every license I'm aware of, you don't get to decide whether or not someone else can use your stuff. Nothing stops you from asking, of course, but it just looks bizarre. If you want to control distribution, design a license to do so, or don't release it in the first place.
Odd; the first comment I see from them explicitly mentions that he can't actually stop it due to the license, and it's just a request; per GitHub, that text existed in the first revision of that comment.
> As the author of the package that is being re-packaged here. I'm against it being repacked into here.
> While licensing wise I cannot stop you, I do hope you can honor my request.
My experience is that people don't typically change their behavior. Even if they do, I don't see any issue with bringing up this GitHub issue on HN which is a very suitable place to discuss technical topics (and others)
It is absolutely not OK to participate in this scheme on a users behalf without their affirmative consent. You simply cant know the context of people's situations.
Even the information that there likely ARE some hits from my IP is a huge signal leak, to me.
Iv been using HA for a very long time and it feels like a betrayal of trust to me.
The arrogance of developers who think that they have to understand every threat model before they can address a problem is responsible for so many exploited vulnerabilities.
Please if you develop software, acknowledge that you do not know what you do not know, and take every opportunity to reduce attack surface area and potential information leaks. This is what computer security experts do.
The flip side of this argument is that often times as a developer, you might be asked to implement a "security" change that is actually worse, but the people asking you think it's better. How many people still work with system that require regular password rotations, or arbitrary complexity measures even though that is no longer considered good practice by organizations like NIST?
For that matter, and speaking of NIST, their new guidelines apparently require checks against known breach databases when registering passwords. So if the goal is to "take every opportunity to reduce attack surface area and potential information leaks", if you're following the latest NIST recommendations it sounds like integrating with HIBP is actually the correct thing to do. Obviously they could also do things like offline checking with a downloaded DB (though are you potentially leaking information if HA requests an up to date offline DB?) or make the feature opt in. And I do think they should do both of those things, to be clear. But I don't think it's arrogant to want to understand the proposed threat model before making a change to your application's default security posture. Especially if you chose that posture with the intention of making the system more secure in the first place, and it does reasonably do so.
You may find this unasked for scan humiliating, but we can mathematically prove we're not humiliating you. Any feelings of discomfort or humiliation are therefore invalid and should be set aside.
Edit: I'm sure a greater good argument can be made. I just don't think they are making it in a way that justifies the invasiveness.
Is it inappropriate? Not really. Is it a threat? Yeah, it really is. “I’m going to stop using your software if you don’t change this” is a threat. “I’m going to fork it and ship a competing product” is a stronger threat.
It was a clear attempt to sway with intimidation. It was done politely but that doesn’t change what it was. (The dev had already closed as won’t fix, too, so they had preemptively answered.)
“hey, X is a dealbreaker for me, if this is not fixed please let me know so I can look for someone else”
“how dare you threaten me?”
I understand how one might feel attacked by an ultimatum, but a policy of rejecting ultimatums altogether only has the benefit of keeping pride intact, on the other hand it discourages people in your life from giving you a last chance, from communicating why they are leaving, and for letting them come back if the parting was amicable
best response is to just communicate you are not fixing X and parting ways amicably, no hard feelings. not only is it beneficial for the ultimated party, but it’s fair for the ultimating party, who is absolutely in their own right to rescind their voluntary relationship, in no way is it a threat to communicate that possibility, because a threat implies violence or damage.
How is "_I really like your software but I the way X is solved bothers me, so I'm going to modify it thanks to your prior permission_" a threat?
"a competing product", perhaps for these pissed with the deb's human skills or those who want to use it in the unique environment he refuses them to adapt them to, contrary to his own licence?
No, seriously, intimidation? "Your position is untenable for us, we'll find another way forward" is a "let's agree to disagree", not more.
Giving the home assistant core developers the benefit of the doubt, I am sure there are good intentions here. But if they are interested in adding new security features, adding support for phishing-resistant multi factor authentication (passkeys) would be much more valuable. Users have been asking for it for some time, and even submitted patches, which were rejected.
That makes it even worse. A leak is still a leak even when you haven't notice it.
Personally I use HIBP but I would still be annoyed to learn a system I installed mainly for privacy was sending private data to a third party by default.
This is not an issue if you are running Home Assistant Core in a self hosted container; the relevant "supervisor" service that does the scanning is only part of "HA OS" and "HA Supervised."
This feature should be opt-in, but can someone explain how this is a security concern? I don't understand how it would be an actual security risk to share the first 5 digits of the sha256 of my passwords.
I might be misunderstanding, but if the first 5 digits is a unique hash in the HIBP database then an attacker can replay that request, then lookup the hash. But "When hashes are grouped together by a Hash Prefix of 5 characters, we find the median number of hashes associated with a Hash Prefix is 305." {ibid}.
If you've acquired leaked passwords as HIBP have, you then just make hash lookup tables, then you have 305 potential passwords to try, or try and whittle down. If the bucket of hashes has "hunter2" in it, for example, then that's perhaps a good one to try - https://blog.cloudflare.com/validating-leaked-passwords-with... is worth reading.
according to that sharing a part of the hash is a risk. it could for example end up in logged urls somewhere. it's a pity that the argument revolves around absolutes ("this is bad", "no, it's not") instead of actually investigating and explaining why they see a problem here.
It's a "severe invasion of privacy" to send anything to the Internet without the user's permission, period. Privacy is about having control over what information you disclose, how much, and to whom. Developers shouldn't be allowed to make that decision on behalf of the users.
because why should my electric light scheduler be in the business of inspecting my passwords and furthermore involving third parties in inspecting my passwords?
If your password is normally protected by a KDF that is hard enough that 1x SHA-1 is negligible in comparison then someone attacking your securely hashed password gets at a million-fold speedup in their search from knowing 5 characters of its sha1. (I'm assuming '5 characters' is hex, if it's 5 bytes then the speedup is a trillion-fold).
Even if the SHA1 isn't totally negligible in cost, if they're attacking many users at once they can share the SHA1 work across all of them (as it's not salted) making it marginally negligible. So someone attacking a sha-1 salted password database with a million users where they have the 20 bit unsalted sha1's still gets a similar speedup, even though the 'hard' hash is just as fast as the easy one.
Security aside, -- if you use some old crap password on internet isolated IOT devices that HA can reach (as some people I know do)-- then the 5 characters is a one in a million identifier which probably uniquely identifies you. The database sees your IP address and so you've probably connected to identity (via old leaks) to your IP to them and anyone surveilling your traffic. You've also connected your old weak passwords to that IP, so someone that gets access to it would have a ready database of plaintext passwords to use to initialize a password search against any exposed endpoints.
Even just making the request at all exposes information about the software you're running, that there are devices at that IP (which otherwise might be inbound blocked), etc.
I think the privacy concern is much worse than the security one: For security you can change any exposed passwords, presuming they didn't get you hacked yet. The privacy loss is far more irreversible.
Many people use home assistant in order to avoid security and privacy violating cloud services, so this is a significant disappointment.
Because free (as in freedom) software should not betray the trust of its users by adding connected integrations that they haven't asked for or consented to. I expect software like HA to be fully offline.
I think the main issue is that you don't expect a service to send anything related to your data without letting you know. Even if it's a ping "alive" sent to a server they own.
Imagine if your smart toilet would just send a small anonymized message to a urine sampling analysis service so it can let you you know your cholesterol levels are a bit high, totally anonymous, totally for your benefit. Maybe it's a great feature, but would anyone expect this to happen without consent / opt in?
It's probably overzealous of HA to do this, but ultimately it isn't. The context missing from this HN thread so far is that the reporter, Viss, has been frankly not credible on security in general for a really long time, despite being a big name in the community on stuff like OSINT. A lot of people in the OSINT sphere basically believe any information being public at all is a security risk and prefer you to pay them exorbitant consulting fees to come up with numerous ways of rephrasing their circular reasoning about why.
(For missing context from this bare link to an issue with no context provided by the submitter — Home Assistant apparently integrated the same Have I Been Pwned safe scanning process that many other password managers have.)
I have a great deal of sympathy for them refusing to engage; decisive software creators are far less palatable to an entitled swarm of disagreement, and that same decisiveness is what makes the best software. Perhaps in U.S. culture, refusal with a smile and a reassurance that “We’re Listening” is something folks feel entitled to, but in other areas of the world, demanding a stranger change their mind once it’s made up earns only mockery or pity. To those cultures, this GitHub is a comedy-farce, and I laughed out loud upon reading it — not because I necessarily agree with the project’s decision, but because I agree culturally with their tone and handling of what some view as blatant immaturity: a final flat refusal, closing the door, and getting back to work.
I wouldn't be surprised if that integration is outright illegal in EU due to GDPR, thus putting HIBP in trouble for ingesting PII without any legal legitimacy.
And the first reply being "It is not an invasion of privacy" just shows incompetence on privacy topics. It is never a valid answer.
Which is really concerning, for the lead developer of a home automation system that "fights for the fundamental principle of privacy" as per their mission statement.
Here we have the classic if you want something to happen in the corporate world, make it go viral on the internet. Except, humans will be humans and it played out in open source.
In this case, frenck most certainly backtracked because they realized they were on the front page of HN and did not want the heat.
To be fair, nabu casa comms kinda leave not many other options than stuff like this happening, as the general strategy they employ could be described with the single word "tarpit".
It sounds like the dev's reason for rejecting the issue is that the issue was opened on the documentation repo rather than the code repo.
On the one hand, it's understandable. No amount of documentation changes will fix the issue.
On the other hand, it's a pretty abrasive response. It wouldn't have taken any more effort to be a little more helpful and direct OP to the right repo: "Sorry, this is the wrong place for this to be addressed. Please bring it up here instead [link]."
If you actually read through, the option to disable the functionality was already present… just not documented. So it seems the documentation repo was the correct place to open it
I think it's reasonable to argue that this should be an opt-in feature. The HIBP k-anonymity method is rather limited. It's not like homomorphic encryption, which perfectly shields information as long as the encryption is not broken. If an attacker wants to brute-force a password on a server, they have the advantage of only having to try one in a million passwords.
If you tell me a piece of software that is not a password manager wants to send the first five characters of the hashes of my password to a third-party, without my explicit opt-in, I will say no without hesitation and without the need to hear more details. Not even if it's a random bit in the hash.
People here act like HA includes a script that collects every password on your computer and sends them all over plaintext HTTP. I'm disappointed to be honest.
I would like to see the write-up from the red teamer and white hat hacker that claim they could break into thousands of systems with five characters of a SHA hash of a password. Should be a fun read.
Yeah. The use of the word "scan" in the original article and the title is misleading. It doesn't scan your system looking for passwords and testing them. It appears to take the password you give to HA (either as your HA Password to login to HA, or for an integration) and check those. That is a much smaller impact than is being assumed by many here.
I have another tab open where I am about to buy a home assistant green and start a journey of probably-pointless automations. This is giving me pause. Not about sending hashes to haveibeenpwned, but about the response this got on github.
His reasoning is sound. See the infamous Xscreensaver saga for just one of many examples, or the abuse Stenberg receives for merely making curl available.
The triage person incorrectly used the word "threat" when the user said that they were contemplating mitigating their concerns by moving away from this software, and it's technically not a threat. Dictionary.com to the rescue.
So, the triage person is misstating the circumstance, reframing it to introduce pain -- thank you dictionary.com -- pain via calling it a threat.
Speculatively, perhaps the triage person has evolved a defensiveness that includes hostility from historically being harassed directly or indirectly through their free support to the public position, and having some identity wrapped up in the software, and then feeling pain that way. That's just speculation. They do talk about going and drinking a beer, elsewhere in this chat, and alcohol use is associated with emotional dysregulation, bidirectionally.
So, to help out in this circumstance, perhaps an AI could be used to triage some of these issues.
Like, an AI that knows everything about the product in question, and says
a) this is the documentation repo, would you like me to move this issue to the main repo where we can discuss this properly, and
b) that feature already exists in the form of blah blah blah.
That would ease some of the more tedious triage workload the person doing the triage, hopefully give them space so that there are a few of these incidents deriving from this specific set of causes.
What, do you not include links to every single one of your social media accounts in every single post you make on GitHub? I think this is a very cool and normal thing, and not a concerning red flag about narcissistic tendencies at all.
It's pretty clear that the maintainer should've handled it better but I'd be lying if I said I never felt like telling a petulant user off. The problem is he didn't handle it professionally.
- Should a password manager warn me about reused passwords without sending things out without opt in? yes
- Should a password manager send even one byte of my data to any service, regardless of whether it is for a good intention and mathematically proven to be "safe" without opt in? I'd say no.
- So would any other product out there, be it a smart home manager or a toaster, send any of of my data, hashed or not to any 3rd party without opt in? even if it's just the byte "1" to a page called "donothing.com"? I say hell no.
- Should open source developers who are not Linus Torvalds be a bit nicer on a public issue?
- And should open source users should be less heated because "let us know if you plan to fix this or we will uninstall and fork it" deserves the "go ahead, this is open source, threats don't really help here"
We all can sometimes write a reply at the heat of the moment that we later regret. Frenk definitely realized it after the fact and I respect him owning it, apologizing, and keeping the old messages. He is right it's open source, and he doesn't owe anyone anything, but still, I believe a phoning home of any kind is violating The Principle of Least Astonishment.
Their response attitude reminds me of basil from fawlty towers (paraphrasing):
I'm trying to run a business here. I can't get things done with you stupid customers bugging with me problems all the time. Go find something to do.
In the 80s and 90s customer satisfaction was important primarily in manufacturing. Today software treats customers like nyc realtors who know they have the balance of power:
that's too damn bad: the price is the price. Take it or i'll sell it to somebody else for wasting my time.
Because free open source software isn’t a business and its users aren’t paying customers.
1 reply →
I think it matters a lot here if you can mathematically prove that it is "safe":
The only reason I'm comfortable transmitting sensitive over the internet is that we've got a bunch of proven systems like "encryption" that can guarantee my ISP, etc. doesn't learn much about my actual traffic.
Fundamentally, if you're giving an application your passwords, it is precisely so that the application can transmit those passwords, in full, to the relevant services. If you don't trust "mathematically proven safe" then it's already unsafe - and it's unsafe to a ton of third parties used to route the internet.
It's important because that means this is a harmless issue - there's a linked 3rd party mathematic proof by a credible authority on security (CloudFlare), and other password managers have similar features.
"I'd like clearer documentation" is still a reasonable request, but I don't think the OP is at all justified in acting like this is some outrageous trespass.
If you care about a harmless issue this intensely, you should be taking some responsibility to actually inspect the code. Given there was a feature flag to disable it, even a cursory scan with a cheap LLM probably would have found the "issue"
> Fundamentally, if you're giving an application your passwords, it is precisely so that the application can transmit those passwords, in full, to the relevant services.
This is about secrets in general. Those could just as well be used to encrypt local data or sign session cookies for the internal web page. And sending the secret to the service it is for is different than sending it (or at least a part of its hash) to another service the user might not trust.
2 replies →
No matter how you encrypt the data, transmitting it unavoidably leaks the fact that you're running software that transmits that data. There's no way to mathematically prove this is harmless, because there's no way to know how that information could be used against in the future in ways you didn't predict.
No software should ever make network requests without your consent.
1 reply →
> deserves the "go ahead, this is open source, threats don't really help here"
Depending on how serious you think the privacy breach is, you can report them on github, do a campaign against them on any website they don't control (HN/reddit/etc), also you can convince other participants of open source to block their software if they detect it (e.g. GNOME blocks binaries of certain hash etc).
If they run a malware/spyware or something that level, open source will make them stop or go irrelevant.
Also frenck explained how the feature works and why this is save.
On the other side Viss basically just said "trust me bro, it is not save and by the way, I'm THE expert and I'm so very smart, that I don't even need to list some facts why this could be unsafe, just fix it NOW", which I find exhausting, unhelpful and boring.
Thats the thing though, it's not safe [1] and puts trust in a third party - HIBP.
To do that automatically without any notice to the user breaks the fundamental value proposition of a local home assistant which over and over again preaches keeping things local and private.
As someone who relies on home assistant every day, I'm quite disappointed to hear Frenck's response to this.
[1] http://cablej.io/blog/k-anonymity/
3 replies →
Sending out even a ping without explicit user consent makes it unsafe.
3 replies →
They have always been like that
Frenck here, I'm the one who replied on that issue.
My replies there were more dismissive than they should have been. My apologies. I've posted a follow-up on the issue.
As it turns out, the check can already be turned off after all:
It has been part of the Supervisor for years and checks app options that are marked as passwords. A recent release fixed the warning that surfaces it, which is why people are noticing it now.
Only the first 5 characters of a SHA-1 hash go to HIBP, and the matching happens locally: https://github.com/home-assistant/supervisor/blob/main/super...
Our documentation should have explained all of this, including how to turn it off. We'll get that updated.
I do get the sense that you're not malicious, just that maybe you're not seeing this from the standpoint of someone that assigns a higher value to some elements of privacy. In this case, your user base expects a home automation system. They do not expect that system to scan their computer for passwords, regardless of how "safely" the home automation system were to behave.
You might have a heart of gold, and just be having an off day due to reasons, so I hope people cut you some slack, but if I were you I'd update this feature to be opt-in and conspicuous, immediately
I've not seen the claim that it is scanning their computer for passwords. My understanding is the ones it checks are those that are used in HA's config (I assume, for different devices it connects to in your home).
There are a lot of problems with poor security practices devices of this type. Maybe the feature is a bit too paternalistic but it is not malicious.
I still agree its not the right default but thats quite a lot less invasive than you are making it sound.
5 replies →
Security issues rarely arise from explicitly malicious behavior. It's usually careless attitudes until the holes in the swiss cheese align
4 replies →
It's not just a home automation system though. People setup HA for a lot of reasons, but one of them is that they don't want other people/companies in control of what goes on in their home, spying on them, etc. The sort of people who go to the trouble to set up a server, deal with all of the integration issues, etc so that they can get something that they have control over of.
Anyhow that sort of person might not take kindly to having a hash of their password sent to some random web server without being asked first.
How is a provably anonymous operation a violation of privacy?
I value my privacy quite highly, but I don't mind harmless, anonymous use of my data
21 replies →
Trust is hard won and easily lost. The entire reason I use Home Assistant is because I trust it to be the local, privacy focused home automation system. Things like this is a huge surprise that gives me pause to wonder what else it's doing that I wouldn't approve of. If I feel like I need to start setting up firewalls between HA and my internet to protect my privacy and data, I'm more likely to look towards alternatives and push my family members towards something else as well. This is the first time I've wondered if the project's ethics and culture matches what I expect out of the software.
Just my $0.02.
I've been considering home assistant, and yeah this gives me pause.
IMHO it's just not the kind of behavior that is expected by the people that use the software.
The fact that it didn't occur to anyone that this isn't a good idea makes me question other design decisions. When local-only isn't local-only, that's a problem.
Just to add to your point, I’ve deliberately avoided home-assistant since this kerfuffle where frenck was quite rude to the NixOS maintainers. https://news.ycombinator.com/item?id=27505277
3 replies →
Yeah.
Seeing this, I don't think I'm going to set up Home Assistant any time soon.
Hey dude, I don't get the sense you're being malicious, but you might want to consider the following...
I'm a Home Assistant user because I don't like my devices reaching out to random cloud services more than they need to. I suspect quite a number of fellow HA users feel similarly.
Although your intent was probably good, this feature certainly falls into the "more than they need to" bucket and feels hella icky. And yes, I'm very familiar with HIBP and cryptography in general. This simply isn't an opt-out feature I expect in a privacy positioned home automation product.
Hey, how many opt-out features like this violate the openhome foundation supposed privacy stance ?
https://www.openhomefoundation.org/papers/privacy/
That's the point right there, it feels like people who wrote that and people who added this "feature" are not the same people (any more).
Asking basically the same thing as the sibling replies, but hopefully in a less aggressive way: can you elaborate on what led you to reply like that in the first place? As someone with no horse in the race (I don't use Home Assistant), the first reply you gave genuinely does seem like it was intended in good faith, even if it was not satisfying to the user, and I can understand that angry users are not fun to interact with, but I'm struggling to wrap my head around why your second reply was "This issue is closed as won't fix" without any elaboration about why. The explanation that seems most likely to me is that you were annoyed at the user and decided not to spend any time looking into the issue, which would be unfortunate but maybe understandable if that's what you're apologizing for. Without any explanation about why you quickly dismissed and then suddenly turned around and changed your mind later though, I think you've risked the apology coming across more as damage control than genuine regret.
> Our documentation should have explained all of this, including how to turn it off. We'll get that updated.
Do you mean "how to turn it ON"? It should be off by default, just look at the replies you're getting by people that are seriously considering not using HA because of this. Is it worth it? It doesn't matter if it's secure by your standards, what matters is that it gives people the security "ick" and will then second-guess every other security decision in the rest of the software. That matters.
"You can just opt out" is the worst possible response for something the user doesn't want, and didn't know about in the first place.
[flagged]
From my understanding, they seem to be under a lot of stress/pressure lately.
I'm not exactly sure why, but the stuff that happens tells that story (to me at least).
Barking at frenck on a Friday at 11.30PM like this is probably not the right thing to do.
3 replies →
People accusing others of lying all the time is a major problem in current societal discourse.
It’s not a lie if the speaker believes it to be true; it’s just a mistake. A lie must have the intention to mislead behind it.
I don’t dispute that there is a lot of, perhaps way more, lying going on, especially in politics now, but let’s not both inflame opinions and cheapen the word ‘lie’ by just using it for non-deliberate falsehoods.
3 replies →
Not a lie, but I was wrong on that one. I'm happy to admit that.
I've used 1Password's Watchtower for so many years that I assumed the breached password check was just part of it. After your reply I looked it up and learned it's actually a setting in their privacy preferences, so my comparison was off.
../Frenck
As someone reading this with no dog in the fight, you came across as rude and patronizing. I'm sure you are not like that in real life, but those responses were ..ooof, not pleasant.
I'm just a rando stranger, don't mean to pile on to you. But as someone that has also launched products and talk to customers every day.. that's not a good look.
Again, no hate here, I'm sure you're great to talk to in real life, but just the way you wrote that was not pleasant at all.
> Only the first 5 characters of a SHA-1 hash go to HIBP
Some would consider the first five characters being sent over the internet to be 'your secret leaving your system'.
Some would consider phoning home to a remote server to be worrisome. It's home assistant not cloud assistant.
I would consider a single byte sent to any server without my explicit permission a breach of trust.
1 reply →
It is already enough to prove the existence of a password or that another password is not disclosed for example.
It was far beyond “more dismissive than they should have been”.
And I believe it is far less than what could be.
Too many OSS projects die because authors are too afraid to tell demanding users in which direction they could proceed and instead burn out.
1 reply →
Hey Frenck, longtime HA user here. I know this feature feels pretty safe but I hope you can give http://cablej.io/blog/k-anonymity/ a read on how this ultimately still puts trust in HIBP, a third party cloud service. In my opinion this might help with understanding why people are rightfully worried, especially when they thought they are running a very local and private HA instance.
You should fix your fabrication in the 1st response. I have deployed 1Password in my organisation, and I'm also using it personally, and the "Check for vulnerable passwords" option (under Privacy) is opt in.
By suggesting that 1Password is doing the same you're lying to water down the gross abuse of trust.
"my replies were dismissive" non-apology after the initial "This issue is closed as won't fix." show pretty clear you're simply in the damage control mode, actually either not understanding or not caring why someone caring about security or privacy would be shocked and request opt-in you flatly rejected anyway.
Thanks for being here. Who made the decision to enable this by default without consent and without a GUI setting to disable it?
> My replies there were more dismissive than they should have been.
What would have been an appropriate amount of dismissiveness in your view?
Maybe consider HIBP’s offline tool as the default?
https://haveibeenpwned.com/Passwords (“Download & Integrate”)
> My replies there were more dismissive than they should have been. My apologies.
I’m curious what made you change your mind, perhaps seeing this getting traction on hn?
I can’t speak for him, but I regularly reword replies after a minute of consideration or if I manage to think to myself “is this as kind as I intend to be to others” during it’s formation.
2 replies →
let me get this straight, the complaining user had "--pwned=true"? that option could be better named in my opinion.
I don't understand why this is a hill to aggressively die on.
> My apologies
You shouldn't have to apology to anyone.
>As it turns out, the check can already be turned off
Problem solved!
>My replies there were more dismissive than they should have been
What about this one?
Problem is not solved. Why was this turned on by default behind our backs? What else is being contacted and with what purpose behind our backs? This is a serious breach of trust from Home Assistant.
Toxic developers turned me off Home Assistant. The same developer is the star of this issue: https://news.ycombinator.com/item?id=27505277
interesting that the crux of the Nix dispute was about how he wanted to self-modify the HA after install, and the crux of the current dispute is how HA should be able to scan your secrets and upload truncated hashes
It's not a good look taken together
I doubt the guy is malicious, but it should really be obvious why people are nervous about this stuff. If I put a password into a home automation tool, is my default expectation that it's going to phone home and send any information (even if it's just a bit of information about a hash) about my passwords?
Which option will minimize the feelings of betrayal and violation: making this feature opt-in or opt-out?
Any level of understanding of humans will produce the right answer.
1 reply →
Was thinking of setting my own assistant using Home Assistant to replace the Google Home device I got rid of. Looks like I should slow down and take a closer look at this.
As someone whose smart home need is minimal -- I just use it to turn on/off lights with voice -- I'd rather have nothing than support such behavior.
Nothing and no one is perfect, but Home Assistant is orders of magnitude better than any other home automation suite. The fact that there's enough transparency for this to be discovered, for this conversation to happen, and for the maintainer to publicly apologize is evidence of that.
5 replies →
Holy shit, what a read. How do people not understand open source licensing? In every license I'm aware of, you don't get to decide whether or not someone else can use your stuff. Nothing stops you from asking, of course, but it just looks bizarre. If you want to control distribution, design a license to do so, or don't release it in the first place.
Odd; the first comment I see from them explicitly mentions that he can't actually stop it due to the license, and it's just a request; per GitHub, that text existed in the first revision of that comment.
> As the author of the package that is being re-packaged here. I'm against it being repacked into here. > While licensing wise I cannot stop you, I do hope you can honor my request.
5 replies →
Hah, his profile sure has a lot of bullshit about being human and positivity...
[flagged]
My experience is that people don't typically change their behavior. Even if they do, I don't see any issue with bringing up this GitHub issue on HN which is a very suitable place to discuss technical topics (and others)
1 reply →
I found it helpful and informative.
15 replies →
Nothing to be ashamed of? The behavior in that issue is petulant and embarrassing.
And it’s not bad faith to call out bad behavior. That’s some twisted logic.
As I understand it. There is research published which suggests HIBP type password checking schemes DO give meaningful signal to potential attackers. EG https://d0nut.medium.com/attacks-on-applications-of-k-anonym... and http://cablej.io/blog/k-anonymity/
It is absolutely not OK to participate in this scheme on a users behalf without their affirmative consent. You simply cant know the context of people's situations.
Even the information that there likely ARE some hits from my IP is a huge signal leak, to me.
Iv been using HA for a very long time and it feels like a betrayal of trust to me.
The arrogance of developers who think that they have to understand every threat model before they can address a problem is responsible for so many exploited vulnerabilities.
Please if you develop software, acknowledge that you do not know what you do not know, and take every opportunity to reduce attack surface area and potential information leaks. This is what computer security experts do.
The flip side of this argument is that often times as a developer, you might be asked to implement a "security" change that is actually worse, but the people asking you think it's better. How many people still work with system that require regular password rotations, or arbitrary complexity measures even though that is no longer considered good practice by organizations like NIST?
For that matter, and speaking of NIST, their new guidelines apparently require checks against known breach databases when registering passwords. So if the goal is to "take every opportunity to reduce attack surface area and potential information leaks", if you're following the latest NIST recommendations it sounds like integrating with HIBP is actually the correct thing to do. Obviously they could also do things like offline checking with a downloaded DB (though are you potentially leaking information if HA requests an up to date offline DB?) or make the feature opt in. And I do think they should do both of those things, to be clear. But I don't think it's arrogant to want to understand the proposed threat model before making a change to your application's default security posture. Especially if you chose that posture with the intention of making the system more secure in the first place, and it does reasonably do so.
Thanks for this comment. The links were very helpful to understand the argument here.
You may find this unasked for scan humiliating, but we can mathematically prove we're not humiliating you. Any feelings of discomfort or humiliation are therefore invalid and should be set aside.
Edit: I'm sure a greater good argument can be made. I just don't think they are making it in a way that justifies the invasiveness.
I just didn’t expect my HA to be talking to any external services without me explicitly setting it up.
[dead]
Are you representing the project?
Where did you get your public relations skills? In the school for ants?
Why don't you just ask someone who understands the _whole_ of the original issue instead of _mathematically proving_ we're just stupid?
If you're talking for HA - you guys are undoing _a lot_ of goodwill under this one post and it's interesting you either don't see it or don't care.
[dead]
[flagged]
Please don't comment like this on HN. The guidelines make it clear we're trying for something better here. https://news.ycombinator.com/newsguidelines.html
[dead]
>>please let us know so we can uninstall and fork
>Sorry, these are not statements we can work with. Doing such threats and trying to intimidate it not going to bring you anywhere. If you want to do a
just wanted to add an outsider perspective here, not trying to add wood to the fire
but i don’t think it’s inappropriate or ‘a threat’ to let the dev know the user can stop using the software.
Is it inappropriate? Not really. Is it a threat? Yeah, it really is. “I’m going to stop using your software if you don’t change this” is a threat. “I’m going to fork it and ship a competing product” is a stronger threat.
It was a clear attempt to sway with intimidation. It was done politely but that doesn’t change what it was. (The dev had already closed as won’t fix, too, so they had preemptively answered.)
“hey, X is a dealbreaker for me, if this is not fixed please let me know so I can look for someone else”
“how dare you threaten me?”
I understand how one might feel attacked by an ultimatum, but a policy of rejecting ultimatums altogether only has the benefit of keeping pride intact, on the other hand it discourages people in your life from giving you a last chance, from communicating why they are leaving, and for letting them come back if the parting was amicable
best response is to just communicate you are not fixing X and parting ways amicably, no hard feelings. not only is it beneficial for the ultimated party, but it’s fair for the ultimating party, who is absolutely in their own right to rescind their voluntary relationship, in no way is it a threat to communicate that possibility, because a threat implies violence or damage.
15 replies →
Is “I won’t buy this car if you don’t give me a discount” a threat too?
3 replies →
How is "_I really like your software but I the way X is solved bothers me, so I'm going to modify it thanks to your prior permission_" a threat?
"a competing product", perhaps for these pissed with the deb's human skills or those who want to use it in the unique environment he refuses them to adapt them to, contrary to his own licence?
No, seriously, intimidation? "Your position is untenable for us, we'll find another way forward" is a "let's agree to disagree", not more.
1 reply →
It is not a threat.
Threatening is expressing an intention to cause pain or harm.
This is not that.
2 replies →
Giving the home assistant core developers the benefit of the doubt, I am sure there are good intentions here. But if they are interested in adding new security features, adding support for phishing-resistant multi factor authentication (passkeys) would be much more valuable. Users have been asking for it for some time, and even submitted patches, which were rejected.
This feature has been around for 5 years... https://github.com/home-assistant/home-assistant.io/blob/cur...
That makes it even worse. A leak is still a leak even when you haven't notice it. Personally I use HIBP but I would still be annoyed to learn a system I installed mainly for privacy was sending private data to a third party by default.
The feature is not the problem.
This is not an issue if you are running Home Assistant Core in a self hosted container; the relevant "supervisor" service that does the scanning is only part of "HA OS" and "HA Supervised."
This feature should be opt-in, but can someone explain how this is a security concern? I don't understand how it would be an actual security risk to share the first 5 digits of the sha256 of my passwords.
It's a SHA-1, per https://github.com/home-assistant/supervisor/blob/main/super....
Their docs link to this explanation, in which the link I give uses an example that appears to be identical to the HA implementation - https://blog.cloudflare.com/validating-leaked-passwords-with...
I might be misunderstanding, but if the first 5 digits is a unique hash in the HIBP database then an attacker can replay that request, then lookup the hash. But "When hashes are grouped together by a Hash Prefix of 5 characters, we find the median number of hashes associated with a Hash Prefix is 305." {ibid}.
If you've acquired leaked passwords as HIBP have, you then just make hash lookup tables, then you have 305 potential passwords to try, or try and whittle down. If the bucket of hashes has "hunter2" in it, for example, then that's perhaps a good one to try - https://blog.cloudflare.com/validating-leaked-passwords-with... is worth reading.
this exact problem is mentioned further down in the cloudflare article: https://blog.cloudflare.com/validating-leaked-passwords-with...
according to that sharing a part of the hash is a risk. it could for example end up in logged urls somewhere. it's a pity that the argument revolves around absolutes ("this is bad", "no, it's not") instead of actually investigating and explaining why they see a problem here.
It's a "severe invasion of privacy" to send anything to the Internet without the user's permission, period. Privacy is about having control over what information you disclose, how much, and to whom. Developers shouldn't be allowed to make that decision on behalf of the users.
because why should my electric light scheduler be in the business of inspecting my passwords and furthermore involving third parties in inspecting my passwords?
Absolutely. Couldn't agree more.
If your password is normally protected by a KDF that is hard enough that 1x SHA-1 is negligible in comparison then someone attacking your securely hashed password gets at a million-fold speedup in their search from knowing 5 characters of its sha1. (I'm assuming '5 characters' is hex, if it's 5 bytes then the speedup is a trillion-fold).
Even if the SHA1 isn't totally negligible in cost, if they're attacking many users at once they can share the SHA1 work across all of them (as it's not salted) making it marginally negligible. So someone attacking a sha-1 salted password database with a million users where they have the 20 bit unsalted sha1's still gets a similar speedup, even though the 'hard' hash is just as fast as the easy one.
Security aside, -- if you use some old crap password on internet isolated IOT devices that HA can reach (as some people I know do)-- then the 5 characters is a one in a million identifier which probably uniquely identifies you. The database sees your IP address and so you've probably connected to identity (via old leaks) to your IP to them and anyone surveilling your traffic. You've also connected your old weak passwords to that IP, so someone that gets access to it would have a ready database of plaintext passwords to use to initialize a password search against any exposed endpoints.
Even just making the request at all exposes information about the software you're running, that there are devices at that IP (which otherwise might be inbound blocked), etc.
I think the privacy concern is much worse than the security one: For security you can change any exposed passwords, presuming they didn't get you hacked yet. The privacy loss is far more irreversible.
Many people use home assistant in order to avoid security and privacy violating cloud services, so this is a significant disappointment.
Because free (as in freedom) software should not betray the trust of its users by adding connected integrations that they haven't asked for or consented to. I expect software like HA to be fully offline.
I think the main issue is that you don't expect a service to send anything related to your data without letting you know. Even if it's a ping "alive" sent to a server they own.
Imagine if your smart toilet would just send a small anonymized message to a urine sampling analysis service so it can let you you know your cholesterol levels are a bit high, totally anonymous, totally for your benefit. Maybe it's a great feature, but would anyone expect this to happen without consent / opt in?
It's probably overzealous of HA to do this, but ultimately it isn't. The context missing from this HN thread so far is that the reporter, Viss, has been frankly not credible on security in general for a really long time, despite being a big name in the community on stuff like OSINT. A lot of people in the OSINT sphere basically believe any information being public at all is a security risk and prefer you to pay them exorbitant consulting fees to come up with numerous ways of rephrasing their circular reasoning about why.
Don't shoot the messenger....
3 replies →
[dead]
There seems to be a pull request now to make this feature opt-in: https://github.com/home-assistant/supervisor/pull/7382
It'll be interesting to see whether that gets accepted or not.
(For missing context from this bare link to an issue with no context provided by the submitter — Home Assistant apparently integrated the same Have I Been Pwned safe scanning process that many other password managers have.)
I have a great deal of sympathy for them refusing to engage; decisive software creators are far less palatable to an entitled swarm of disagreement, and that same decisiveness is what makes the best software. Perhaps in U.S. culture, refusal with a smile and a reassurance that “We’re Listening” is something folks feel entitled to, but in other areas of the world, demanding a stranger change their mind once it’s made up earns only mockery or pity. To those cultures, this GitHub is a comedy-farce, and I laughed out loud upon reading it — not because I necessarily agree with the project’s decision, but because I agree culturally with their tone and handling of what some view as blatant immaturity: a final flat refusal, closing the door, and getting back to work.
I wouldn't be surprised if that integration is outright illegal in EU due to GDPR, thus putting HIBP in trouble for ingesting PII without any legal legitimacy.
And the first reply being "It is not an invasion of privacy" just shows incompetence on privacy topics. It is never a valid answer.
Which is really concerning, for the lead developer of a home automation system that "fights for the fundamental principle of privacy" as per their mission statement.
this rubbed me the wrong way.
absolutely no one but me gets to decide what is an invasion of my privacy.
What PII do you think is being sent to HIBP?
The user's IP address.
It's certainly an overstep, but just the hash they're sending wouldn't be PII.
The hash itself is irrelevant.
The question is what PII does HIBP collect on submission (eg IP address), and with whose consent, and for which purposes?
All that should be explained in excruciating detail in the ticket and in the documentation, to begin with.
I am curious thought that how it would be illegal according to GDPR. They are hashed after all, and the same hash is not used for authentication.
Undoing personal information for a purpose different than the purpose for which it was collected.
Here we have the classic if you want something to happen in the corporate world, make it go viral on the internet. Except, humans will be humans and it played out in open source.
In this case, frenck most certainly backtracked because they realized they were on the front page of HN and did not want the heat.
To be fair, nabu casa comms kinda leave not many other options than stuff like this happening, as the general strategy they employ could be described with the single word "tarpit".
I'm torn. And sad.
Tough one. I get the intention but this should've been opt-in.
It sounds like the dev's reason for rejecting the issue is that the issue was opened on the documentation repo rather than the code repo.
On the one hand, it's understandable. No amount of documentation changes will fix the issue.
On the other hand, it's a pretty abrasive response. It wouldn't have taken any more effort to be a little more helpful and direct OP to the right repo: "Sorry, this is the wrong place for this to be addressed. Please bring it up here instead [link]."
If you actually read through, the option to disable the functionality was already present… just not documented. So it seems the documentation repo was the correct place to open it
Yep, that reply was posted after my comment here, so it turns out the documentation really was the right place for the issue.
I think it's reasonable to argue that this should be an opt-in feature. The HIBP k-anonymity method is rather limited. It's not like homomorphic encryption, which perfectly shields information as long as the encryption is not broken. If an attacker wants to brute-force a password on a server, they have the advantage of only having to try one in a million passwords.
A rare occasion where the AI response was an improvement on the human-written ones.
So, wait, these are secrets that are already given to h-a, hashed, and just the first five characters of the hash sent up..?
Yeah, I agree with the maintainer, this strikes me as outrage theater over any actual problem, no?
If you tell me a piece of software that is not a password manager wants to send the first five characters of the hashes of my password to a third-party, without my explicit opt-in, I will say no without hesitation and without the need to hear more details. Not even if it's a random bit in the hash.
Most of people here probably would say the same.
So it should be clear if you look back at this.
People here act like HA includes a script that collects every password on your computer and sends them all over plaintext HTTP. I'm disappointed to be honest.
I would like to see the write-up from the red teamer and white hat hacker that claim they could break into thousands of systems with five characters of a SHA hash of a password. Should be a fun read.
Yeah. The use of the word "scan" in the original article and the title is misleading. It doesn't scan your system looking for passwords and testing them. It appears to take the password you give to HA (either as your HA Password to login to HA, or for an integration) and check those. That is a much smaller impact than is being assumed by many here.
Seriously they did not need to handle this like this and it should be privacy first by default.
I have another tab open where I am about to buy a home assistant green and start a journey of probably-pointless automations. This is giving me pause. Not about sending hashes to haveibeenpwned, but about the response this got on github.
Read the NixOS drama for another datapoint.
The dev comes as self-serving. Not what you’d expect to see. Calls it heated when he himself caused it with their tone deaf response… it’s next level.
The same dev doesn't even like others packaging his open source libs.
https://github.com/NixOS/nixpkgs/pull/126326
His reasoning is sound. See the infamous Xscreensaver saga for just one of many examples, or the abuse Stenberg receives for merely making curl available.
The triage person incorrectly used the word "threat" when the user said that they were contemplating mitigating their concerns by moving away from this software, and it's technically not a threat. Dictionary.com to the rescue.
So, the triage person is misstating the circumstance, reframing it to introduce pain -- thank you dictionary.com -- pain via calling it a threat.
Speculatively, perhaps the triage person has evolved a defensiveness that includes hostility from historically being harassed directly or indirectly through their free support to the public position, and having some identity wrapped up in the software, and then feeling pain that way. That's just speculation. They do talk about going and drinking a beer, elsewhere in this chat, and alcohol use is associated with emotional dysregulation, bidirectionally.
So, to help out in this circumstance, perhaps an AI could be used to triage some of these issues.
Like, an AI that knows everything about the product in question, and says
a) this is the documentation repo, would you like me to move this issue to the main repo where we can discuss this properly, and
b) that feature already exists in the form of blah blah blah.
That would ease some of the more tedious triage workload the person doing the triage, hopefully give them space so that there are a few of these incidents deriving from this specific set of causes.
> The dev comes as self-serving
What, do you not include links to every single one of your social media accounts in every single post you make on GitHub? I think this is a very cool and normal thing, and not a concerning red flag about narcissistic tendencies at all.
../Frenck
This common among Dutch culture.
The rule for a decent software should be, not a single packet sent without user authorization. I wonder if such software even exists.
This should definitely be opt-in.
> If this is all reason for you to uninstall and fork... So be it, it is open source after all.
what a petty answer. "just fork it bro".
Working on a fork already: Lets spend some tokens! :)
In context, I think that's a valid response to:
> please let us know so we can uninstall and fork.
So he's letting them know
Frenck is the worst part of Home Assistant. He shits on so many things with just a hand wave and no attempt at justification.
Awfully tone deaf responses
And that kids is a clear example of how not to interact with people online.
The developer's reply was very reasonable and measured. The user, on the other hand, was very rude.
Yeah not a good look. This is probably the worst way to handle community feedback.
I mean, none of them behaved like an adult.
It's pretty clear that the maintainer should've handled it better but I'd be lying if I said I never felt like telling a petulant user off. The problem is he didn't handle it professionally.
2 replies →
[flagged]
[dead]
[dead]