Let's guess what Google requires in 14 days or they kill our extension
blog.pushbullet.com
blog.pushbullet.com
> As I looked at the permissions and what our extension actually needs to operate, I noticed a great opportunity to reduce our permissions requests. We do not need to request access to data on https://*/* and http://*/*. Instead, we can simply request data access for https://*.pushbullet.com/*, http://*.pushbullet.com/*, and http://localhost/*. This is a huge reduction in the private data our extension could theoretically access. A big win!
While I agree with the larger part about the lack of transparency of what they want you to fix, this is an amazingly huge oversight, and the fact that the extension review process got an established, popular extension to go "Wait, we don't actually need to request access to every website ever" is a point in favor of the review process - and, unfortunately, a (weak) argument in favor of the review process taking the attitude that they get lots of crap and don't have the time to explain to all the authors of crap what they're doing wrong. How did the extension ever ask for this in the first place?
Also why do you need http://localhost/? Is the extension running a web server on localhost with native code? If so, can you use the specific mechanism/permission for communicating with native code via a subprocess (because it turns out communicating with a web server on localhost is very hard to do securely)? If not, what's it for?
I'm sympathetic to the broader argument here, but given the provided information, all of this is consistent with an extension that should be kicked off the app store within 14 days.
(Among other things, if you have an approved extension with https://*/* permissions and active users, malware authors will offer to buy your extension for a very high price. So it's definitely in the public interest to make sure there are as few of those as possible and that they're only in the hands of people who have the ability to understand why the friendly person offering them way too much money for their extension isn't just being nice.)
Agreed I wish we could send everyone that thinks this kind of response from a megacorporation is good to a kafkaesque alternate universe.
You can sleep well tonight knowing a few of them will attempt to build a house in California.
Say you have an extension that implements spelling check or grammar check. That need access to every single website to find the text fields it want to add functionality too.
Same thing with a password manager extension, can't find the login boxes without the https://*/* permission.
You want to read data off any page users are on, or add ui elements to every page users are on, or modify style shares to any page, you need that global permission.
About the only extensions that don't need global https permissions are extensions that are designed to only work on a finite set of websites (facebook improvement extensions, or reddit improvement extensions), or things like push-bullet that don't really need to be a chrome extension in the first place, they could be implement as a system tray applet.
This isn't the fault of extensions, this is the fault of chrome for not providing ways to do things without full wildcard https://*/* permissions.
- EditThisCookie
- ResourceOverride
- Ad blocker
- Grammarly
- LastPass
I absolutely expect these to work regardless of website. It seems perfectly reasonable for this to be the default behavior.
You could go the approach Firefox is going on mobile where there are currently six vetted extensions. As it turns out, they all need access to every website (or fine-grained APIs, perhaps). But... there are six of them. https://blog.mozilla.org/addons/2020/04/14/april-extensions-...
The LastPass issues are all pretty old at this point - I mostly mention it to drive in the point that getting this stuff right is hard. (For what it's worth, the researcher who found those issues has good things to say about LastPass: https://twitter.com/taviso/status/1167311357957435392 and also fairly negative things to say about 1Password, which is what I happen to use.)
If localhost is the issue, Google could literally respond exactly the way you did and the problem is gone, "why do you need http://localhost/?"
This isn't about permissions at all. This is about communication and whether it's worth putting effort and trust into a company that acts like this as SOP.
But given that they had the bug, Chrome was absolutely in the right to deny them the first time. And while I don't like Chrome's position that they're too busy to explain to everyone what they're doing wrong, if extensions that go "oh hey, we don't actually need access to literally every website, imagine that, oops!" is what you expect out of good, competent, non-malicious extension authors, I have a lot of trouble disagreeing with their conclusion, in practice.
(Would it be better if Chrome said "There are 200,000 extensions on the Chrome store, each and every one of them deserves attention, we need to spend at least 30 minutes looking at each one and composing a response, we have a ten-person team, we'll get back to you within 5 years?")
The fact that it took four years in your example implies that permission shaving isn't hugely risky for devs.
It's the honest developers that get their meaningful accounts banned.
At this point I'm really starting to become unsympathetic to the idea that they can't tell you what you're doing wrong because it'll enable people to figure out ways to work around the flagging algorithm. I kinda just don't care anymore. If you're going to run a platform like this and capriciously threaten to kick people off of it, it's pretty antisocial to hide the reasons why.
(And yes, I know, Google has no obligation to do anything differently here. But I can perfectly well think they suck for their current practices.)
I think it's a very interesting question. Who is more deserving of a good experience - uninformed users who might get taken advantage of by malicious extensions, or developers for the platform, who definitely do get taken advantage of by virtue of running afoul of rules they can't read?
Even if the average damage to a user is very low, the ratio of users to developers is massive.
Security through obscurity is no security at all. Google is not doing its user a favor by hiding the criteria it uses to determine whether an extension is malicious or not. Also, just because Google won't publish the criteria, it does not mean that it can't be discovered by someone with enough determination. I think that a malicious actor is more likely to spend the necessary time and effort to do so than a developer who is more interested in creating an extension that will serve its users well. If anything, these types of policies drive away developers who act in good faith and leave the marketplace with more developers who are looking to exploit the users.
A reputable developer has a reputation to maintain (by definition), which makes Google's threat to permaban them a threat indeed.
A disreputable developer doesn't care about their reputation (again, by definition). They can create a new throwaway account every day and apply using the same (or slightly, easily, altered) code with different permissions every hour until they get permabanned, and start again tomorrow.
So the "obscurity" can be discovered easily through experimentation by the bad guys, but is still obscure for the good guys. This is not a good outcome.
Reputation can be bought too btw.
Malicious actors don't care about expenses nearly as much as benign ones do. So the point ought to be, if you want me to fix something, tell me what's broken.
1. age < 180 days
2. dau < 1000
3. some rule around user reports of malice on uninstall?
and this gets a bright warning banner on the top of the page, and it can't be discovered through the chrome store until crossing these thresholds.
Unless it's a black box machine learning model that just says yes/no but can't tell you why
Telling people that they are going to be severely punished within days by a very powerful global entity, without telling them which specific rules they are in breach of or what they have to change is a dystopian nightmare.
Well, if the reason is the "https://*/*" permission or something like that, and it is flagged and reported automatically, and everyone learns not to use it, it's a win-win. Benign extensions will have smaller targets on their backs, and malicious extensions will become less malicious OR will have to jump through hoops to achieve what they're trying to achieve (and will become easier to detect).
Recently there's been some interest in Explainable Artificial Intelligence (XAI) which addresses the problem of "black box" machines. There are techniques such as SHAP and LIME that can help the ML designers provide explanations for why any specific observation has been "rejected". That said, I'm not sure if that's what Google uses here.
It's a finite list of app permissions.
Unless it's a random number generator that just says yes/no but can't tell you why -- is just as valid of a non-excuse for using the entirely wrong solution to a problem, and surprise the solution doesn't work very well.
(FWIW, I appreciate the idea that eventually it would be useful to be able to ban a bad actor entirely from something to exclude the possibility of future harm: the past tense of "correctable" was "avoidable", and it needs to be very clear exactly what was done wrong and what could have been done differently for someone to end up in the situation of being banned from the usage of a platform, service, or business: the alternative where people get to apply secret and obscure reasons to refuse service is madness.)
If you say "personal attacks aren't allowed", they'll say "I wasn't attacking him personally, I just suggested that anyone who says [the thing he said] should consider getting evaluated by a doctor for mental retardation."
At some point you just have to say "I know what you're doing, you're clearly not acting in good faith, and I have to ban you." Are all of those people now potential lawsuits?
1) That pretty clearly qualifies as a personal attack
2) There is a significant difference between a forum and a business critical software distribution platform.
Okay, let's take the obscurity up one level: I used to moderate a very small internet forum, where there was one user who had certain mannerisms in his writing. I also had reason to suspect this user was mildly suicidal.
A troll began to mimic these mannerisms as a way to make fun of that user, and talk about how horrible their life was. The troll wasn't overt about it, but if you knew the history between these two, you could tell what was going on. The troll of course feigned innocence, but as he'd been given warnings before, I made the call to ban him.
I firmly believe I was acting within the forum's stated policies—but I am not 100% confident a judge would agree. If these types of actions could lead to lawsuits, I don't know what I would have done.
---
> There is a significant difference between a forum and a business critical software distribution platform.
Great—but where's the line? Is Youtube critical, for example?
This is especially important given google's market power in the browser industry. What if the extension is from Google's competitor? Google could ban the extension without a legitimate reason to hurt their competition.
There isn't. Take a quick look at stupid popular apps on the Play Store, almost all of them require completely unnecessary permissions literally in conflict with the bullet points that Google listed in their email to PushBullet.
Also note that almost all of them have 10-50x the amount of downloads compared to PushBullet.
The odds just spell bullshit.
Their "automated scanning process" didn't just happen to pick the popular app that gives users more control and platform independence from Google.
Because really that's what it's about, PushBullet is dangerous to a closed ecosystem like Google wants.
(also, I believe that given the permission system, and if an automated scanning system was in fact in place, it should be super easy to exactly point out what is wrong, like compiler errors. and being granular permissions, there's no "gaming the system" about it, you either get the permission or you don't)
> If you're going to run a platform like this and capriciously threaten to kick people off of it, it's pretty antisocial to hide the reasons why.
I don't believe Google gets to be "antisocial", they're not a person. They exist since ~20 years and are made of shifting people, none of whom really control it. As far as it can be "antisocial", I wonder if it even vaguely "realises" that its interchangeable parts are the same entities as its consumables.
(I get various compliance spam and ignore it and among things with small numbers of users and/or owners who lost interest a small percentage a year fall out of the stores. The only differences are that we don't care enough to forward the threats Google sends us and no one would bother to amplify them.)
That may not have been the bug, your guess is as good as literally anyone's right now. That's the issue at hand.
I have some trouble following this. These are real, exploited capabilities. How are they theoretical and also hypothetical?
As for the redundancy, I blame my lack of coffee for that, apologies.
I think the communication is worse than the potential problem
In that I think the communication is really bad but the 'potential' problem is more than potential and also really bad.
Sure, but if that bug gets fixed, why reject the fix?
Also, if that's the bug that was the concern, it would certainly be nice to have something in the email along the lines of "We don't want extensions to ask for access to every website anywhere on the Internet, so please narrow your http and https permission request."
> they're too busy to explain to everyone what they're doing wrong
If a human flagged this, how much longer would it have taken to add the sentence above to the email? Or even write that instead of the useless generic boilerplate that's in the email?
If, OTOH, an automated bot flagged this (which is what I suspect, and what others seem to suspect too), why didn't whoever wrote the automated bot put at least some kind of clue in the script that writes the email? Something like "if bad thing #6 is found, add text XYZ to the email".
Well therein lies the problem. We don't even know that's what they had a problem with in the first place. It's not clear that it IS "the bug".
- automate this with a message that tells you what thing is dangerous
or at least:
- automatically push to a human that will spend 30 real minutes on it for extensions that have many users/popular (that sounds like the basic thing any business would do!)
Yeah, but with 100 people it would take only a few months and after that it would take far less people to maintain everything. Also, they could just have their algorithm do the flagging and then have a team of 10/20 people to handle users. It's just that they don't care (enough) Not all 200.000 extensions are being killed in the next 14 days. Also if this is done for security reasons then put this responsibility with your security team and make that team bigger.
Also, from 200k extensions probably most have less than five users, so they could prioritize those that have traction.
In general, Safari's extension system is more restricted than Chrome's, and changes that Chrome is attempting to make to be more similar to Safari's approach result in fierce backlash exactly like this thread (e.g. https://www.wired.com/story/google-chrome-ad-blockers-extens...).
Why not give the information to the user? There is no need to use any manual labor here.
It is TOTALLY not OK to have a ten person team (and I have no way to know if they even have that).
Considering the fact that the browser platform is now a real service required by billions of people, they should be responsible to have enough staff to handle extensions properly.
Aside from the amount of money the Chrome extensions make them, the amount of influence it buys them, and the amount of damage it can do, it should be required of them to have a real team to handle it.
Imagine if the I ran a private airlines that provided service for 4 billion people around the world, and the entire team that inspects, approves, and monitors the pilots and co-pilots had ten people. Would you think that is acceptable, or would you expect multiple governments to intervene?
Extentions don't have to exist at all. At least for a very long time, there were no extensions for Chrome on Android (not sure about now but that may still be the case).
I suspect google would love to just deprecate all extensions entirely, they're probably a massive headache for them (as this thread shows).
A lot of things Google used to do that attracted geeks like us are really a problematic thing when the average masses of people are using them. Google is learning that the hard way, and the process of fixing that pisses off us geeks.
Apple took a different path of locking things down more aggressively earlier, and a lot of geeks (myself included) hated them for it. Now, after we're seeing how the modern world is so incredibly tech illiterate and how security issues are affecting the world, I think Apple got this right and Google got it wrong, and Google knows it and is trying to fix it, which is pissing us off in the same way Apple used to piss us off (but we apparently got over it).
This feels like an empty statement. Browsers don't have to exist at all. Computers don't either.
If Chrome dropped all extension support, I would drop Chrome. It's a valuable feature for me and millions of users.
I'm of the opinion that a company with revenues > 30 billion dollars per quarter could afford to increase the ten person team ten-fold to get the response time to a reasonable number.
This is not a given at all.
Google's communication was and is absolutely unclear on what is their problem.
And if you'd take their communication on their word (dumb idea), they have been pretty clear that this was in fact not, "the bug", and that is has in fact not "been fixed".
Regardless of your (and my) opinion about apps requiring access to every site on the www -- Google did exactly the opposite of indicating that this was the problem why PushBullet is threatened to get kicked off the Play Store.
Except they didn't and the extension was sitting at the store for a long time now.
> And while I don't like Chrome's position that they're too busy to explain to everyone what they're doing wrong
Maybe not, but after a couple of instances of back and forth they should take 1 minute to write a couple of sentences. There are limits to automation.
Imagine using a build system that doesn't give any error messages, except to say at the end "build failed, there was a syntax error". This sucks as a tool. Everyone would avoid it if they could, even if it found real bugs.
We shouldn't accept this level of information from services either.
This seems like a rosy interpretation. It's not actually clear whether http permissions really are the reason the extension got flagged, and the fact that fixing them didn't affect the review feedback implies that the process isn't working the way you're imagining.
No, it absolutely isn't. You can't take someone's livelihood off the app store within 14 days when they have every interest in complying with your policy but you just don't feel the need to even tell them what all the policy is. The fact it was approved in the first place is Google's fault, not the app developer, so is totally irrelevant to this saga.
If you can hit the Reject button you can fill in a text box that says why. There's no excuse for that.
1. should Google provide more context to the developer? Of course.
2. if the extension is a genuine danger to users, should they remove it immediately? Of course
I agree that Google should do #1 as well as #2, but I absolutely believe it's better to do #2 (even without #1) than to do neither.
Why would anyone think it is appropriate for google to reveal their hand, and allow blackhat operators to build apps up to the max limit of permissions? (If they were revealed by google via white glove customer service).
If goog did provide guidance on permissions, goog would literally have to audit every app in the store, or come up with a way to separate bad actors from good ones.
So, Im sorry. No. If its between 1 hacker's inconvenience or in extreme case , livelyhood....and the retirement savings bank account of many grandmas, i am going to side with grandmas.
Google is doing many things wrong. Keeping the "red line" of allowable permissions secret, from data-hungry developers.... is not one of them.
This makes no sense. For the sake of the grandmas, Google already needs to audit every app in the store and separate bad actors from good ones.
How in the world would making it more clear how to write more secure extensions possibly worsen the extension store's malware problem?
Unfortunately, information that helps the good guys get their extensions past the audit check is exactly the same information that helps the bad guys get their extensions in too. The bad guys simply move onto the next security flaw that Google hasn't anticipated.
Maybe the bad guys use some common tactics to get their scam extensions in the store which good guys don't, which is easy for Google to detect and flag. If you release a list of known no-no's, the bad guys just get smarter and avoid them.
This obviously skews in favour of refusing some good extensions to keep most bad ones out.
In terms of Google already auditing every app, check out the source code for Dark Reader https://github.com/darkreader/darkreader. It's fairly complex. I can only imagine how many extensions are as, or more, complex than that. I wonder how much auditing is done manually vs automated.
This is just an assertion I'm wrong. It can't possibly persuade me or the people upvoting me. Would you be persuaded by me just asserting you're wrong?
In terms of Google already auditing every app, [e.g.] the source code for Dark Reader [is] fairly complex.
Firstly, Apple is able to do it, there's no reason to make excuses for Google. See anecdotes elsewhere in the thread about how Apple attaches screengrabs, explains rejections by phone conversation, even decompiles apps to point to exact methods/lines of code in apps they reject from the iOS App Store, even small free ones: https://news.ycombinator.com/item?id=23170498
And anyway, without reading a single line of Dark Reader's source code, I can deduce plenty of permissions it shouldn't need, e.g. "cookies" (which it doesn't ask for). Without reading a single line of PushBullet's source code, one can easily deduce it shouldn't need access to "https://*/*", and indeed, it doesn't, yet it asked for it.
Can you explain concretely (not just by pointing to unnamed "no-no's") how could harmful side-effects result from Google telling PushBullet that "https://*/*" specifically was in violation?
If you release a list of known no-no's, the bad guys just get smarter and avoid them.
Firstly, isn't bad guys avoiding no-no's exactly what we want?
If you're saying that there may be some, probabilistic red flags that Google uses to find possible bad guys—sure, that could be true, I have no idea and you don't either, you admitted it was speculation. But in this case, "Request access to the narrowest permissions necessary to implement your product’s features or services." is not a probabilistic red flag, it's a hard rule.
Again, concretely how could harmful side-effects result from Google pointing out the specific violation?
You’re talking about vetting suppliers and products in order to ensure they’re selling safe products that consumers want. That sounds like an ordinary part of every retailer’s job to me.
When devs start signing their apps with their full name and information where they live, lets talk.
At least that's what I remember from the time I used it.
And to know they went from https://* to just one domain, yikes indeed. Then they left localhost. Hell, that probably made the case worker’s knee jerk even harder because of such a dramatic change, I can’t imagine they spend much time on each case.
Yes, 14 days is not a lot of time, but this is the ecosystem that needs to change. So the maintainer should have started out being more transparent on their architecture: period.
The fun is over, Google doesn’t care about loyalty or gestures of effort, this is an emotionless process. They care about provable, auditable compliance.
When you think about it, for Google, this is just a little sad story about an extension that didn’t make the cut. But it’s a small price to pay in exchange for evidence they are “enduring self-inflicted wounds” and using it as ammunition in avoiding billions of dollars in fines they face for violating user privacy laws.
I took my extension down instead, as I didn't have time to figure out how I had painted a target on my back.
I only published my extension as a fork of an open source project that started injecting malware, presumably from a similar offer...
Very good thing app store may nudge people changing permission scope.
Hope extension authors manage to meet the deadline and get their extension re-approved.
This is interesting, and I didn't realize this was a thing.
Are there any lists of extensions with these permissions, or ways that as an average consumer could easily audit my list of extensions for this?
Google is trying to do "half ass" approach. Which does not help users, does not help developers, and it also does not help Google.
The right approach is to do these reviews fully and that human is involved at some point. Of course, these things are are not free. So they can require $1000 or more per year subscription if extension require more than basic permissions. They anyway require at least 60K per year for using an API. Or something like that.
But it could be also that Google does not care about real security: just appearance of security. They need to sell ads and all other things they do (Chrome, Android, G Suite, etc.) is just a smoke screen.
https://groups.google.com/a/chromium.org/forum/#!forum/chrom...
It's a systematic issue that isn't specific to anything Pushbullet is doing and it's been like this before the pandemic:
- Reviews can take up to 3 weeks. This in alone would be crazy enough if you have an urgent bug to fix.
- Rejection emails are vague and don't tell you what to fix.
- After you guess at what to fix, you've then got to join the up to 3 weeks review queue again.
- If you try too many times, your extension gets pulled.
- On top of this, they've recently disabled new Chrome Web Store paid items, and user reviews.
Can anyone from Google escalate this and help extension developers? I can't speak for everyone but there's lots of complaints in the forum and little action beyond "we hear you and are looking to improve things".
Joking aside, isn't this just what people should come to expect from the company that has always tried to normalize the "no support and no service" model?
If these antics start causing GOOG to lose share in the browser market then they may review these policies, but I highly doubt it. At the end of the day GOOG is an ad company and publicly-traded at that. They have a bottom-line and a lot of shareholders watching it.
Support channels/forums are probably not the way to go, in other words. Stop using their browser, stop using their search. That's probably the only way they will be incentivized to change.
The more people that do this in general, the better. We've given Google entirely too much power to control what people see and read (and it follows, control over what they say and think).
They don't have our best interests at heart, they have financial interests at heart, and everything else flows from there. I'm not saying this is evil, but it's certainly not _good_.
I actually prefer DDG in a few fronts, like configuration of language and region.
this is one of the reasons why Google cloud will lose to AWS in the long run.
AWS is customer obsessed, Google is not.
If you need to pre-arrange expenses with the finance department, it's much faster to test drive with credits.
its not like ice cream.
if you messaged random people it's quite reasonable that they didn't bother answering you. i wouldn't have done it either.
you should get in contact with sales people via the proper channels and arrange testing (whether paid or not) with them.
If you message random "people that work at gcp" then "not caring" is probably one of the most polite things they could do.
"Google deleted my X" posts always rise to the top on HN because they elicit a strong emotional response from developers. I think it's worthwhile to reflect on why that happens. For me, it's because I absolutely despise seeing an algorithm have control over an individual's livelihood. This may be part of the Google mythos? Or it may simply be that they make their real money selling ads, and allocate support resources accordingly.
They officially dropped the "don't be evil" motto some time ago, so yes.
> they make their real money selling ads, and allocate support resources accordingly
Of course. Every company allocates support resources the same way: to their paying customers.
As result, you get a whole company of yes-men who have no spine.
It has happened again and again and again. Building for FB or Google is you making yourself their serf, and you will be allowed to exist at their whim.
Not everything can be a website that just needs basic browser capabilities.
You can't. It seems like if you're in business of mobile/web-apps which are not large enough to have paid, direct contacts with your relevant platforms, you should have more than one business.
I'm not saying it's a reasonable expectation or a good thing. But if you can pull off either 2 ok apps, or 1 main app and some set of simple things, it may be preferable to one perfect product from the business continuity perspective.
You might think, "Ah-ha, web apps!" But no, Google can still casually destroy you there. Or you might think, "Ah-ha, desktop apps!" But the OS vendor can casually destroy you there.
That's unfortunate, but it is how the software market has worked thus far. Platform owners have massive power over those who build on them. For it to change, the market fundamentals will have to change. People thought the internet would change things, and it did - instead of one monster, we now have several, each with much more reach and control.
As far as actionable advice, well, starting a company isn't easy or formulaic. All I can recommend is look for niches where you'll be hard to dislodge and avoid situations where you have asymmetrical dependence on an entity that has no reason to care about you.
That won't matter if 60–70 % of the users are on that single browser.
Casually? The amount of effort and goodwill, say, Microsoft would need to spend to prevent me from installing $PROGRAM on my computer is significantly higher than the amount of non-effort a single extension reviewer would need to expend to click "no" arbitrarily because they are having a bad day.
How would Microsoft do it? Add legit software to Defender? Ship a Win10 update that disables a key API call $PROGRAM uses? Add "if program == $PROGRAM then exit" to the CreateProcess code? All possible, none casual. To the best of my knowledge they've never done something like this. I'm less deep into Apple land but I expect something similar holds on macos.
My point is not that they can't do it, my point is that they can't casually do it. It would be Real Work and it would risk major backlash.
To its credit (though not everyone agrees), MS has spent a lot of effort making compatibility shims, basically doing other people's work for them, but they have no such obligation.
This is a different class of problem. In this case, a gatekeeper is asking you to use their service to distribute software through their channel, and that channel is governed by vague rules that may, in fact, be enforced on a whim. Further, the gatekeeper isn't being clear with the rules, and why you may have run afoul of them.
You sound like someone who's made the mistake of supporting Apple
Well, considering how hard Apple tries lately to make sure every piece of macOS software goes through them one way or another...
At the moment the issue is the app store concept; it is designed to be a choke point, it is designed to be obscure, and it is designed to casually destroy software the store owner doesn't approve of.
(What is the status of Microsoft's app store, by the way?)
1. I agree as to the need to get off the Google lands.
2. Being able to create business relationships to build on other people’s property and work without fear of their yanking the rug out is an incredibly important part of a working society.
The other side of the issue is tough, though: Chrome extensions are regularly purchased & have ads embedded into them ( https://superuser.com/questions/1551266/how-to-track-down-wh... ), so Google's chrome extension team (couple of ~hundred person?) is essentially held accountable by ~1 billion users to the behavior of ~10s of thousands of extensions.
When you are building for an extensible platform it's entirely reasonable to be surprised when the vendor sabotages you. Platforms like this are good because they help both parties, so there is an expectation that one side won't sabotage the other in general. When it happens it's surprising, and usually not a great outcome for the platform provider.
The issue is the outdated permission spec for browser extensions (I've gone into more detail on another comment on this thread)
The very core of the issue here is less about the manual review process (although that sucks) and more about how the review process is necessary due to how extension permissions work in browsers to-date. The current process works similar to how Android and IOS permissions worked back in the day by requiring the user to grant all permissions up front (equivalent to giving an extension sudo permission to your browser).
The feedback you'll most likely get from Google on this isue is that the solution to this is to narrow down what URLs your extension works on... but that comes with a pretty big assumption that an extension can declare that information up front. Many extensions (including developer tooling) don't need to run on EVERY page - they need to run on specific pages where some extension-specific code is running (this is the case with Urql, Preact, React, Rexux devtools). Narrowing down by URL just isn't possible and an ad-hoc solution where extension-specific code on the webpage can trigger permission requests (similar to how a website requests access to your camera) is needed.
I've written up a proposal for this case which I think addresses 90% of use cases where "sudo permissions" are being requested up front and in reality, could be requested on an ad-hoc basis. Whether it's an agreement or some criticism, anyone who is able to get involved in this discussion - please do! Every other platform is using ad-hoc permissions and we need to push for the same with browser extensions.
Here's the proposal: https://groups.google.com/a/chromium.org/forum/#!topic/chrom...
Here's my rant on Twitter about this problem (see retweeted comment): https://twitter.com/andyrichardsonn/status/12529205656960040...
- Extension review times have gone from 1 hour to a variable amount of time ranging from 1 minute to 3 weeks or longer (try to plan a release or spot fix an issue when you have no idea how long it will take for a deploy to reach users)
- User reviews of extensions have been disabled (how are you supposed to build an audience or build up trust without reviews?)
- Manifest v3 was announced (this was actually longer than a year ago) which will completely break many types of extensions. Over a year later, it is still on the horizon but the beta releases of it are buggy so it is hard to even try to adapt to it at this point.
- Persistent extension related bugs in Chrome are not being fixed and new regressions are being introduced breaking previously working extensions (which you then need to rush out a fix for but good luck with that when the reviewers may take weeks to approve the update)
- Chrome is exploring hiding extensions by default so they no longer will show up automatically by the omnibar when you install them (say hello to a huge amount of confused users who don't know where your extension went)
I understand the Chrome team is trying to address a user trust and fraud issue with extensions and we are grateful for that. However, the Google extension team appears to be massively understaffed and are having huge issues managing and evolving the ecosystem.
Haven't heard about this change (more info at [1] for anyone interested) - wow! I really wonder if those are the first steps of the roadmap to get rid of extensions altogether.
[1] https://www.theregister.co.uk/2020/04/07/chrome_hiding_exten...
If enough users do this I think Google will review their policy on extensions and specifically adblockers. Can't browse without one anymore after having used it for a while.
Submitted an update in late February and decided to update my screnshots. Remove the screenshots and add new ones only for Google to tell me "you can't add screenshots while you app is in review", fine, add them later after the review.
3-4 weeks go by and I check the approval status. Status has been rejected because....no screenshots provided. I've since updated the screenshots and resubmitted for review. Currently still waiting on approval.
I've been planning on doing a Product Hunt Launch but that's been put on hold until I can get an updated version in the chrome web store (the current version is very old and buggy). I've even looked into distribution outside the store but turns out chrome will no longer let you do that.
This is potentially a huge security issue, because the natural way to "fix" the problem is to download and run arbitrary code as an end-run around the review process.
In my case I settled for having a remote configuration file that I could use to disable features in an emergency (and had to use it a couple times), as a compromise since I didn't want to pull down arbitrary code but was tired of getting burned by it taking a week to push a bug fix.
The thing which really pushed me over the edge was their new developer dashboard, it was a step in the right direction but what missing some key features which were present in the old dashboard. Googles solution? Make us use both dashboards for almost a year.
No what is really going on is that Google wants the ability to reject an app for any reason without actually having to give the reasons. To for example protect a business interest.
The only reason for not making a transparent decision process is because you want to keep the ability to make decisions that don't follow the rules you set.
To the people saying that we should keep rules secret so that malware authors can't work around the rules, I ask: the same argument applies to laws, but most people agree that we want transparency. So what makes this different in principle? (I understand that Google might not have an obligation, but you are saying that they do the right thing)
At the very least, Google should provide a way to contact an actual human - especially if the developer has 1M+ users.
an oss example here: https://github.com/dosyago/22120
and an idea I have for a browse controllers store here.
This forces developers to GUESS as to what is wrong. Want to try and develop according to a roadmap or timeline- forget about it. There is no "app store" approval process that conducts itself in this way.
Fact is Chrome is 80% of the market so Google doesn't worry about competition. If Google Chrome is broken- then the internet is broken. It harms new entrants trying to develop and innovation.
After the 2nd or 3rd rejection- have a HUMAN intervene. Explain what is wrong. Devs are more than happy to make the changes. But you can't do this "make you guess" bullshit.
DOJ and EU need to get involved. Someone at Google with their wits about them and revamp the whole process. It's a travesty against the developer community and should be fixed ASAP. Also from what I hear they need to start with new LEADERSHIP.
The answer is not human interaction, the answer is automation tool to give more details as what was detected and didn't pass.
And then Google will have to hire half the earthlings to write all the special-case code into the automation tool...
No other hiring required for this
You know that Firefox is Google right? Like, literally, Google is the main company paying Firefox's developers, and if they don't do what Google says, Google can just cut the funding, and they all end up unemployed, right ? Of course, to avoid a monopoly, Google would need to fund a different browser instead, but still, people have families to feed.
If you want to cut dependencies on Google, Firefox is not the answer, and neither is Tor or any other Firefox derived web-browser.
I think stating that Google controls Firefox is vastly overstating the degree of influence.
I think the default for some time was DuckDuckGo, and that helped raise them out of complete obscurity, but it didn't reshape the internet landscape.
Then we're doomed...
[1] https://github.com/extesy/hoverzoom [2] https://github.com/extesy/hoverzoom/issues/512
If only Google would mind its own business instead of playing mommy-knows-best and dictating its morality on grown adults.
This line and others like this, are probably the issue.
I’m so glad to not have to rely on chrome extensions.
Google is a bully, and they use their size and the threat of permanently removing access to your Google Account (and family photos) to terrorize small players without cause.
How many people would Google need to hire to provide email support for extension review for extensions above a certain size? It can't be a huge dent in their budget.
A more productive approach would be to focus on web browsers that allow you to do what you need to and let Google fix what they need to encourage you back. I know, most extension developers will say 'we can't do that because it's where the users/customers/whoever are'. But as long as you encourage their bad behavior by supporting the platform, expect the bad behavior to continue since it's not hurting Google. As a result, it's just a cost of doing business on Google's platform which is unlike to change for the better.
They have something like 70% market share dude...
As it is, it sounds like Google’s doing this itself by breaking popular extensions.
It's all very convenient, until you lose access 10 years of e-mail because of a Chrome extension review.
Google ripped my Chrome extension off the app store about a month ago.
I got a similar cryptic message, and then I scrambled to fix it, like you're doing now. Somehow my extension reappeared the next day.
Email me pat [at] trypigeon [dot] co and I can send you some of the things I did that maybe have helped.
Tweeting my support as well: https://twitter.com/thepatwalls/status/1260638967793242113
Please post here so everyone else can learn too.
Weeks or months from now, I'm sure someone will get their extension removed from the store, and may come across this post scrambling for a solution. If that's you, please reach out to me and I can send you the support emails and everything I tried.
Unrelated, but you got multiple ids with value 'feature-1' on your landing page.
https://medium.com/@lazherrera/that-one-time-google-made-it-...
If you use any of the words related to the COVID-19 pandemic, they will pull your app, suspend you and ding your account.
This policy by Google is hurting people and businesses.
Meanwhile, Apple has a similar policy but all they do is just take extra care when reviewing your app. I suggest you port your app to iOS and submit it to the App Store. Apple will accept it and approve it.
Which includes helping people print warning labels. Gotta protect people from that. But the malware is fine.
Seems like you hit the wrong button or something, when trying to publish it.
Would it be possible to restrict the extension to accessing a specific port or endpoint that is used by PushBullet?
Also, isn't allowing access to the app's website the same as allowing access to any website? Can't you just redirect?
In general, for any resources that don't require credentials to access, pushbullet could hypothetically serve them at like pushbullet.com/proxy/gmail.com/favicon or something. But resources requiring credentials are another thing entirely.
In general, the thing that prevents a third-party server from MITM'ing your interactions with a target server is a combination of domain names and SSL certificate. That doesn't prevent a site from trying to get you to let it act as a MITM, but it prevents the site from acting as the MITM while claiming it's something else.
As a concrete example, let's imagine pushbullet.com wanted to act as MITM for your GMail account. If it has your username and password, then (handwaving here; GMail's authentication model is complex) it could do that; it could forge well-crafted requests that look like they come from your browser, and get proper responses back.
But if it doesn't have your username and password, there's not a lot it can do. Your browser won't give pushbullet.com cookies scoped to gmail.com, and if pushbullet tries to ask you for your password, they can only do so much to make it look like GMail's the one asking (SSL certs make it hard for pushbullet to try and forge a GMail front-page with a gmail.com domain). It can still happen, but "user was tricked into ignoring the domain name and gave their password to another service" isn't something web security models can fix.
My understanding is that if an extension has a wildcard 'https://*' origin listed in its manifest, then it can make cookie-populated requests to any domain that matches the wildcard. That's actually pretty scary from privacy and security perspectives. But I suppose that's part of the reason CWS has moderation in the first place.
I hope the author sees thorum’s comment!
An example of how we use this communication channel is preventing both our extension and desktop apps from showing notifications on the same computer. Our apps are all about notifications so this would get unacceptable very fast. We ping our local desktop app via localhost to see if it can manage the notification, and show it with our extension if it isn't running.
Maybe if we limit it to just the local port we use? Seems like it can't hurt to try that too.
I initially assumed I was doing something wrong but after a week or so experimenting with simple test cases I could not get it to work. Maybe it works fine on Linux and Mac but not Windows.
We should probably have a weekly HN column with that title.
But actually 127.0.0.1 seems unaffected:
$ host 127.0.0.1.xip.io
127.0.0.1.xip.io has address 127.0.0.1
$ host 192.168.1.1.xip.io
# no resultMight be better than nothing I guess, but on the long term you'd need to add the port in settings and request the permission for localhost+port dynamically? But that's got another issue, e.g. last time I tried it [0] for my extension, Firefox didn't support dynamic URL permissions for URLs with ports.
[0] https://github.com/karlicoss/grasp/blob/f24378ebae68c22bea03...
I doubt it is at all common in end user environments, but unbound for instance can be configured to prevent local IPs from being resolved in other domains. It's a good practice to follow in a datacenter environment if you're connecting out to hostnames you resolve from DNS you don't control.
We have the same problem, but on the Google Play Store.
We have an brand name app used by millions of people. We uploaded an update where the only change was a new Firebase library.
Google rejected the update for vague reasons (“violation of Google Play policies” but not telling us which one).
Appealing the rejection, the CSR just pasted the vague policy thing back at us. We asked for more information and they just closed the ticket.
So we took the exact build that was accepted, incremented the version number, and uploaded that. Rejected again.
And there’s no real human to talk to.
No idea what’s going on at Google.
It's like trying to troubleshoot a machine learning algorithm.
/joke
I’ve made a new account and their AI black box still doesn’t realize it’s me...
it constantly amazes me that so many HN people put their ENTIRE LIVES/BUSINESSES in a free account that [has been proven, countless times] can be taken away from them at any time.
i mean what do folks expect for free?
google is an asshole company, sure. but so many HN'ers expect to be treated like "customers" with associated "customer rights" when in actual fact, they are a free user, a total nobody.
pay a company a small bit of money, and hey, whaddyaknow, you can suddenly call them up and talk to someone, figure out why they removed access to your account, and get it sorted out.
To get back to the store I created a new account with a different name. But then google took down my apps because their bots said I was impersonating “Joe Hinkle” (which is me). So then I made this blog post to “verify” that Joe Hinkle gave permission for Impact Studios (my new account name) to host my content, and it worked...somehow...
The blog post that somehow convinced them is here. https://blog.joehinkle.io/2017/04/proving-impact-studios-is-...
This sort of behavior from Google really is infuriating. How they can just decide to boot an app from the Chrome Store that is installed by over a million users is mind-boggling.
It's a pity that Chrome doesn't allow extensions to be installed from the new Edge store, like Microsoft allow Edge to install extensions from the Chrome store. With both built on Chromium, that could've potentially been a workaround (though you may want to consider adding this extension to the Edge store anyway).
Hopefully someone from Google will see this and stop the madness or be able to provide more details on exactly what needs to be done, though I wouldn't bet on it.
Why would anyone want to do that? What's a real pity is that they make every effort to block users from installing their own extensions. App stores are terrible.
Contrast this with their sales strategy of aggressively making a human call me every quarter to try to up my budgets. I’m not sure why they are so against helping people succeed with their products...
It’s like they are allergic to manual human processes (unless it’s sales).
I don't know if it is an artifact of overusing machine learning "our neural network trained on a variety of malware gives your app a score of 4.3, you have 15 days to get it down to 4.0". How is that calculated? No one knows, maybe you shouldn't use the location permission if your icon is red and your domain is not in .org, or something like that.
Or maybe it is a form of security by obscurity. Or maybe they just don't want to pay for people to support you. Who knows?
As long as Chrome isn't killing extensions "everyone cares about," their system can bias pretty far towards making it had to get an extension accepted and maintained in the store without killing the whole ecosystem.
You could say the same about some machine learning algorithms.
So far I have not been able to locate this form nor have I been able to find any Android developers who have.
If anyone here knows where it is or what the deal is, please let me know.
[0] https://android-developers.googleblog.com/2020/02/safer-loca...
Nobody at Google gave a shit and it was never fixed.
The correct way to respond to those rejection emails is to ask for a "human being" (this is the keyword that works) to review the case. Also explain in the email why there isn't anything more you can do (if you have done every possible fix already).
As a side note, when AI systems get more common, this will be a common nightmare for regular people. When an AI makes an incorrect decision regarding you, no-one can check the code why it happened because the code doesn't exist. All we may have are some weighted matrices and neural network data as bunch of numbers.
We usually simply call those bots (there can be AI bots too, but there seems to be no indication that this is one).
I'm not sure. We've had automated phone customer service systems forever, but companies that in any way care about their customers still let you escalate to a human.
Which extensions? Especially now that Firefox has moved to WebExtensions, it should (in theory at least) be straightforward for someone to port them over.
Like, if anything it's usually the other way around (Chrome not supporting extensions that Firefox supports).
Where I work uses Office 365, which is a horrible, horrible technology compared to Google Suite, but I can't, in good faith, argue for switching to Google. It's not a company I'd ever rely on in a business setting.
https://cloud.google.com/billing/docs/how-to/invoiced-billin...
Once we figured out the source of the problem, I was on the phone with someone from Microsoft who knew exactly what I was talking about, and the available workarounds, within the hour.
My clients continue to use Office 365.
I managed to get reinstated because I know people on Chrome’s accessibility team who promote my extension, but even with that assistance it was still months before I could push a new version without going into purgatory.
FWIW, I’ve had even more issues on Firefox. It’s like they’re in a competition with the App Store for “most opaque review process”.
Simeon on the mailing list was quite re-assuring, and I would recommend reaching out to him, though there are limits to what he can help with.
That said we found that the review process is quite arbitrary, resubmitting may work simply because you get a different reviewer. (We've seen identical copies of the extension with different version numbers where one was approved and one rejected).
We've also observed that they use some kind of automated code-analysis to tell whether or not you're making use of the permission; so you may want to check that it's obvious from the code included in the extension bundle that you need the permissions you're asking for.
We've also hypothesized that they apply different standards to extensions depending on the number of users – our staging extension (~50 users) usually gets approved quickly, but our production extension usually takes a while and is less likely to be approved. (This may just be luck of the draw coupled with arbitrariness though)
Dunno why they can't be more explicit which part of the code is the issue
They are the most inhuman tech company I have dealt with out of the big 3 clouds.
I have a similar experience. I am trying to get an oauth consent screen approved. It’s a simple thing. It takes up to a week for someone on their side to reply and it’s mostly one vague sentence. They don’t give a full list of what needs to be done. I’ve been at it for more than a month. It’s like they really don’t give a shit about how much time you’re sinking to make things work with their services.
I have a love/hate relationship with Google. On one side they know how to keep things reliable like google search, on the other side they need to stop doing a 100 million things and do 10 things really well and maintain it for eternity.
If someone eats Google’s Search lunch, they are done for.
Sent them sooo much proof, answers, cname changes, invoices, emails, etc etc, but still get the same canned response back.
The weird thing is I never got a single notification on the recovery mail that unauthorized access was attempted and that the account got locked.
Honestly I feel like such a dumb ass for making our company use gsuite now. I don't think I'll ever recommend a google product to anyone again.
I use Pushbullet every day, and would be gutted if it were killed for such a ridiculous reason as this.
But with what, it does not say ¯\_(-_-)_/¯
Seriously, fuck google. I'm just done with them.
No, that "small sacrifice" sounds super annoying! I don't use Pushbullet, but if I did and this got removed in an update, I'd be pissed off! At least leave it behind an optional checkbox.
An optional permission seems 100% reasonable.
Oh, for sure! Just to be clear, I didn't intend my comment as a criticism.
It's nuts that you, as the developer, actually went so far as to remove features in your first pass, and Google still rejected that attempt without additional instruction.
Still not clear why localhost (which can mean root access to the local machine since it may have localhost-only services that enable that) and cookies access is needed, also http://*.pushbullet.com is unnecessary since they should always use HTTPS.
If they had properly implemented the extension they may not have this problem now.
[1] https://en.wikipedia.org/wiki/Thirty-Six_Stratagems#Stomp_th...
I don't have empathy for companies, I (try to) have empathy for people. Small companies are made up of people. Large companies are made up of people. I try (and often fail, alas) to have empathy for the people in both cases.
As said in other comments it is trivially easy to switch to Firefox (or any other browser you feel that fits your needs better).
3 were approved. 5 were rejected - all for different reasons.
Re-submitted the 5 with no changes; 2 more got approved. Two were rejected again. One was rejected with a firm reprimand for making an identical submission (must have hit the same reviewer).
Shuffled some words, re-recorded a couple videos - 2 more approvals, 1 rejection.
Re-submitted the last outlier without changes - Approved.
We are very weary of playing Facebook App Review whack-a-mole.
Suddenly, 20% meant half-assed. Google Labs was shut down. App Engine fees were raised. APIs that had been free for years were deprecated or provided for a fee. As the trappings of entrepreneurship were dismantled, derisive talk of the “old Google” and its feeble attempts at competing with Facebook surfaced to justify a “new Google” that promised “more wood behind fewer arrows.”
…The old Google made a fortune on ads because they had good content. It was like TV used to be: make the best show and you get the most ad revenue from commercials. The new Google seems more focused on the commercials themselves.
— James Whittaker, Why I left Google
Developing extensions for Google Chrome is a particular form of masochism. They really don't seem to care. And things took a turn for the worst last December when the approval process went from hours to weeks.
Check out the Chrome Google group for a sample of the lost souls who hitched their wagon to the Chrome platform and now cry futilely into the abyss for support: https://groups.google.com/a/chromium.org/forum/#!forum/chrom...
It seems like all extension developers play the same game of guess-and-check to find out which permissions they should remove, and the unlucky ones get banned for trying too often.
These extensions don't make any money at all for Google, in fact some of them lose money for Google (privacy oriented extensions, ironically.)
They are a security nightmare for Google, capable of side channel browser attacks or direct abuse via a permission (all_urls permission can read your emails to grandma.)
Google doesn't want extensions to exist, and they also can't outright kill them without creating a new foothold for their competitors in the browser wars. So we get this intentionally masochistic process change. Jump this high or we'll ban you. Now jump higher but with your eyes closed. Okay, now backflip or you're banned. The extension developers have absolutely no power to fight back.
- Create a new whatsgroupp called 'ping self' and add your friend to it.
- Then kick your friend out from this group
- Open web.whatsapp.com and now you can access your messages, files, photos across any device anywhere, anytime! (telegram also does this and allows file up to 1gb)
I’m not linking to any specific QR code extension because I haven’t audited them for privacy but it’s easy to find one that claims to generate the QR code locally.
wl-paste | qrencode -s 20 -o - | display -
for this purpose. Shows the contents of the current Wayland clipboard as a QR code. For X11, replace `wl-paste` with `xsel -b`. qrencode -t ansiutf8 google.com
Looks identical. In WSL, you can use 'powershell.exe Get-Clipboard': powershell.exe Get-Clipboard | qrencode -t ansiutf8Telegram's built-in "Saved Messages" is where I share links, files, text snippets, photos, etc. for follow up and archiving; seamlessly between my devices and the Telegram desktop app.
Telegram also has an export feature, so I can backup all (thousands) of saved URLs, messages, media files, and so on for offline safe keeping; both in human and machine-readable formats.
In all of the notices, Apple is usually quite explicit in what the problem is, including attaching screengrabs, and they will respond, if I ask them for further clarification.
Over the years, I've had over twenty apps in the store, but most are retired.
I'm down to seven: https://littlegreenviper.com/AppDocs/
In a couple of cases, they actually found crashes that I missed in my testing.
Trademark use.
I have had apps rejected because I used a trademark (usually Apple's) in my app name or description.
For example, I had submitted an app called "Bluetooth 8-Ball for tvOS".
I was told that "tvOS" was not allowable. I had to use "TV".
This kind of thing has happened a few times. I casually use Apple trademarked terminology a lot, but I can't be as sanguine about it when I submit apps.
Full Disclosure: They also had a problem with the app being a "demonstrator" app. They don't want us releasing apps that they don't think we're "serious" about. They had a point, and I ended up withdrawing the app.
They sure aren't looking at developer account fees to hold their bottom line up.
It's low enough that I can easily keep two organizational accounts going.
If the goal is to prevent piracy, well, as with other forms of DRM I as a paying customer don't appreciate being treated like a thief. Dedicated pirates can and do just buy stolen enterprise certs on the black market anyway.
I don't think that's their goal.
I suspect that it's all about "brand reinforcement."
Apple is (arguably) the world's most valuable brand. Those don't come in Cracker Jack boxes.
They don't want some knucklehead running around, showing some crapplet that makes the brand look bad, and they certainly don't want them installing said crapplet on their friends' phones, so there's a bunch of folks running around, making them look bad.
This makes that a lot less likely. If they restrict it to paid accounts, then they have an assumption that the people writing the apps are "serious" about developing decent software.
I suspect that a big part of them buying up TestFlight was because they didn't want a company out there, making it easy to install un-vetted crapplets into a wide range of devices (which the old TestFlight allowed).
I have some experience with this. I used to work for a world-renowned corporation that made photographic equipment. Their brand is right up there, with Apple.
They would go nuts about sample photos getting out of the company. It was really difficult to report bugs, or even share test results, because the sample photos couldn't make our cameras look bad.
There's a great deal of controversy about Apple's iron-fisted control issues, but I do understand. I'm not always happy about it, but you can't argue with the results.
Basically, I support Apple’s “walled garden.” It’s a pain to deal with, but it makes their App Store a lot more valuable.
There is a lot of loud, vocal, opposition to it, but the vast majority of regular (as in non-geek) people like it just fine.
The fact that they took the time to explain and justify the rejection made all of the difference. I have been on the receiving end with Google and it's much more difficult to deal with.
I'll contact PushBullet with a possible way forward (PB, if you're reading this -- contact me). Anyone else in this situation: my email is in my profile.
[0] https://news.ycombinator.com/item?id=20186915
[1] https://chrome.google.com/webstore/detail/dictation-for-gmai...
I haven't ever had to deal with a Google person regarding Android development, but when I built stuff for Blackberry (miss that company), they always provided nice and detailed feedback. Blackberry famously let legal influence design, so I would be surprised if it was a cover your ass thing.
They have also turned off all reviews in the Chrome Web Store: https://news.ycombinator.com/item?id=22935092
Do you have a source or link for this at all for further reading? A quick search doesn't turn up anything, but it sounds like a great read
An intern who I went to school with told me about how legal once chose the colors for a dashboard he worked on as they did not want to seem to be copying some other company.
A co-op complained about them being in every meeting and constantly shooting stuff down.
The one written reference to it I know about was in a 2011 open letter.
https://bgr.com/2011/06/30/open-letter-to-blackberry-bosses-...
If we really want to fix this. 1. Use Survey Monkey to collect info from other developers having issues (which is like all of them). 2. Isolate instances of severe delays, inability to innovate, harm to business, negligence etc. 3. Send to DOJ and EU Antitrust
Absent blaring warnings like “you understand that if you build any type of business on this platform we reserve the right to destroy it at any time for any reason”, it’s pretty hard to see how users had any ability to understand the implicit and explicit contracts they were entering into.
This isn’t much different than “Nathan for You” style hiding of onerous terms deep in hilariously small fine print, and judges tend not to look fondly on such games.
Anyone at Google who is listening- this kind of behavior kills my desire to continue using your products dead. I need functionality, of the type PushBullet has provided for years, to do my work. The recent nerfing of ublock origin has already had me feeling iffy on things. Behavior like this is simply unacceptable. If you want people to use your services, you need to have some way to communicate. Period. "If you use our tools, we can kill your livelihood at any time for any reason and tough shit if you want a why" doesn't exactly inspire, you know?
Not sure whether the functionality is the same.
I'm sure Apple has had that too for a long time and I saw something like that from Microsoft a few days ago.
[1] https://play.google.com/store/apps/details?id=org.kde.kdecon...
Mozilla is becoming more and more Google Like as time progresses, where a few years ago I would have believed it would be unthinkable for Mozilla do so something like this to an extension, today I am not so sure I would trust them either
That alone makes me use Firefox over Chrome.
Google has apparently paid Mitchell Baker personally multiple millions of dollars too.
Seems Google know how to manage their risks.
Mozilla seem perhaps even more beholden to ad revenue than Google.
What are you talking about?
Or did you mean to contradict me rather than ask a question?
We all know about FF Quantum. Yeah it sucks what happened. Maybe there was an alternative, but any one saying Firefox should’ve just stuck to not being compatible with Chromium extensions is kidding themselves on how badly that would’ve continued hurting Firefox’s market share. The XUL powered extension I’m sure were powerful so the outcry in certain places was huge. Vocal minority.
The Pocket integration got lots of outcry which seemed pretty silly to me. It’s one product they own. Mozilla doesn’t have a ton of products. Yes that is Google like. Much like any synergy or integrating is Google like. Which is really just being a modern internet corporation. If this is one of the reasons. Why would Mozilla of 5 years ago not have done that vs the Mozilla of today and whenever they did do it. 1-2 years ago I think?
An ecosystem where all extensions need to be channelled through one central power broker is pretty much the main requirement to allow them to do what Google is doing in the linked Pushbullet case.
edit: this is all factual, sadly downvotes won't change it.
But that's not what they do. Instead we do have a clear announcement on a feature removal and a vague hint that they might add it again in the future.
It's absolutely not sure that disabling non-store extensions is only a temporary defect.
If you have evidence that suggests otherwise, feel free to add it.
It does not help that their marketing language feels designed to consistently avoid any meaning whatsoever.
The update is going ahead because the new Firefox for Android is such a dramatic improvement along all other axes, and because, from a development perspective, the incarnation it's replacing is saddled with legacy and technical debt. It never received most of the benefits from Quantum, for example.
...and even the extension axis, from a power-aware Mozilla position. That's what makes it suspicious in the first place.
A few years ago they had a bug that added seconds to every page load that they didn't fix for half a year, but once an update coincidentally consolidates power at Mozilla it needs to be pushed for all its supposed benefits and despite all its known drawbacks asap.
We wouldn't buy that if it were Google or Microsoft and we shouldn't buy it in Mozillas case either. ... If they even announced that they plan to reopen the extension system, which they (to my knowledge) did not.
Personally I don't notice any grave difference between Firefox and preview. Apparently scrolling should be different, but my mid-range phone scrolls just fine in both apps.
What are you talking about?
For me personally, Privacy Badger and uBlock Origin are already there. I don't think I need a third one at all.
You seem to be more confident on their reestablishment of the extension ecosystem but didn't explain how you arrived at that conclusion.
The analogy I've used is the Amiga operating system design versus Unix when it comes to multi-core / multi-processor versus multiprocessing. Amiga welds everything to the hardware, the Unix design has a "system call" mechanism cleanly separating your programs from the OS and vice versa.
Because Unix has this relatively thick layer between the OS kernel and the rest of the world, you can just pick up your entire kernel, wrap it in a lock (in Linux this was called the Big Kernel Lock in some BSDs it was Giant Lock and other Unix systems gave it different names) and you've got a multi-processor capable system. Linux did this in about a year IIRC. For purely CPU bound software this minimal work gets you 99.9% of the performance of a custom built OS designed from the outset for multiple processors. Subsequent work to get rid of the BKL further improves performance on more sophisticated workloads, but you're off to a great start.
Amiga couldn't do that, every part of their system could interact with every other part as it liked, so if you tried to just add one lock to protect things the resulting system might randomly deadlock, maybe only on systems with specific hardware or software combinations, and you basically needed to reconsider everything from the ground up.
You need a degree of abstraction like this, the Chromium-style web extensions have it, the XUL extensions didn't, adding it to the latter would have been years of work only to deliberately be incompatible with both existing software on Firefox AND everybody else, madness.
There are definitely things we want in extensions. For example Firefox has a copy of the Public Suffix List baked inside it (all browsers should have this, in its absence you'll get weird security behaviour around how domains and sub-domains work) and I'd like to access their copy from inside an extension to make it behave how users expect. But obviously the extension can just ship its own copy of the PSL, and then keep that up-to-date it's just a waste of resources.
There is no evidence for this at all. Extensions can't modify the rendering engine.
https://drewdevault.com/2017/12/16/Firefox-is-on-a-slippery-...
> For a long time, it was just setting the default search provider to Google in exchange for a beefy stipend. Later, paid links in your new tab page were added. Then, a proprietary service, Pocket, was bundled into the browser - not as an addon, but a hardcoded feature. In the past few days, we’ve discovered an advertisement in the form of browser extension was sideloaded into user browsers. Whoever is leading these decisions at Mozilla needs to be stopped.
> Here’s a breakdown of what happened a few days ago. Mozilla and NBC Universal did a “collaboration” (read: promotion) for the TV show Mr. Robot. It involved sideloading a sketchy browser extension which will invert text that matches a list of Mr. Robot-related keywords like “fsociety”, “robot”, “undo”, and “fuck”, and does a number of other things like adding an HTTP header to certain sites you visit.
https://www.theverge.com/2018/5/7/17326184/firefox-ads-spons...
> Mozilla’s motto is “internet for people, not profit,” however the realities of having to fund all of its ventures are forcing the company into adopting one of the web’s less human-friendly aspects: sponsored content. Having acquired read-it-later service Pocket last year, Mozilla has been populating new tabs in Firefox with Pocket reading suggestions — and those are now going to include links that an advertiser has paid for.
Not to mention that stuff like stupid redesigns of logos as well as the Pocket issue made me basically lose all trust in Mozilla. Privacy is a huge deal here after all. Those who switched regularly complain about design issues (apparently the desktop browser is becoming somewhat "mobile-like") and most recently the address bar problem which upset everyone except for one person who didn't care about that. (Meanwhile, I'm happy with my address bar being my address bar and my search bar (being just right of it) being my search bar.[1]) If you would ask the people still using Firefox here whether they would recommend it...they would most likely say "no" but then would go on that while it isn't good, the alternatives aren't either.
So the question of change in direction (which is obviously there) regarding Firefox begs the question which people they are actually targeting? It's certainly not your average Joe because Firefox will never be able to out-Google Google. They are also annoying the more advanced users who just want privacy as well as useful things (add-ons, proper baked-in features etc) with their shenanigans, so it can't be them either. The only people I see actually celebrating new releases all the time (regardless of negative changes) are the crowd on HN. So, to me, it seems like they are targeting some kind of tech bubble (no offense) while basically ignoring the users out there. This is, of course, also reflected in them continuously losing marketshare while all the back-patting is happening.
They actually managed to implement a policy that respects user choice and freedom less than Chrome, which only implements DoH if your set DNS provider supports it.
Betrayal indicates some intent to harm users; the intent of DoH is clearly to safeguard users. However, the rollout was absolutely hamfisted & shortsided.
It's notable that the DoH deployment is about the only example here of Firefox harming users. Compare that with Google rewriting Chrome's code to hobble uBlock Origin & leave users more vulnerable to nefarious ad tech.
The former was Mozilla putting user safety first (in a poorly handled way) while the latter was clearly Google doing the opposite.
I switched to Firefox after the Pocket thing happened, so I didn't follow the "outcry" and can't say if the tenor was justified.
However, as a new Firefox user not familiar with the history, the pocket integration just felt "icky", particularly in combination with the new tab page. Regardless of Mozilla's intentions, it seemed like another instance of Software A trying to push me toward unwanted unrelated Service B, as so many modern tech products are wont to do. Mozilla should be a sanctuary from that crap.
Luckily, I found out about the about:config flag to disable Pocket, and I've been happily ignoring it ever since. I just think it's an unfortunate experience for new users. Hopefully I'm wrong and Mozilla is right about what most new users want.
Why not? Chromium (= Blink, plus some other stuff like a network request stack) development happens in the open, just like WebKit development. It might be steered by Google to such an extent that there's always the possibility of it going in a bad direction; but it's not like you're not going to hear about it if something privacy-violating is introduced into the Chromium codebase (rather than the downstream Chrome codebase.) And you can switch away from the browsers that use it if/when that happens.
For that matter, if upstream Chromium ever did start "going bad", those browsers that rely upon it would also likely switch away from it, either cooperatively forking it into a new community-maintained project, or switching over to WebKit (with which it is still mostly ABI-compatible.)
> browsers with such tiny market share that they'll never be tested against, and sites will routinely be broken for you
Even if you don't want to use anything based on Blink, WebKit is also a large ecosytem, and minor WebKit-based browsers can "inherit compatibility" from developers targeting (mostly Mobile) Safari. Several Linux browsers (GNOME Web, Falkon, Midori) use WebKit, for example. They render everything just fine (i.e. just like Safari does.)
> The browser also sends unique hardware identifiers to Microsoft, which is a "strong and enduring identifier" that cannot be easily changed or deleted.
https://www.bleepingcomputer.com/news/microsoft/research-fin...
Yes, I can see why you'd avoid Edge specifically, same as avoiding Chrome specifically.
But that's not an argument against using upstream Chromium (which is, in fact, a browser all on its own, stadnalone downloadable and shipping with several Linux distros); or against other Blink/Chromium-based browsers (e.g. Brave), no? Either choice would get you compatibility with anything Chrome itself is compatible with (in terms of websites; not necessarily in terms of extensions—though the difference is just in the legacy Chrome extension APIs; WebExtensions work fine everywhere.)
I have temporary containers extension plus an extension to manage google and Facebook containers and the whole thing has become such a pleasurable experience. Combined with pihole it feels like I’m reclaiming the web back again. Such a blissful experience.
1: Start up new email (for me it was Fastmail) and preferably get your own domain
2: Forward all mail from gmail to your new account
3: Create a rule that flags messages that are still delivered to gmail, go through them at your leisure and swap to the new address
Also, make sure you take backups of your old emails every once in a while. Google Checkout should be able to provide those.
Renew your doman for 10 years now, and then every next year do 1 year renewal. If you forget it then you still have 9 years of buffer.
Another alternative is using one that accept recurring payments through PayPal; that way you would have to handle card expiration only with Paypal.
Beyond this, I've had a few pretty good ones over the years... right now, I've got about 30 of them, and just keep thinking I should let most of them go.
Source: it happened to me last month (the provider being OVH).
Most registrars are going to send you multiple emails leading up to the expiration, when it expires, and after it expires reminding you it expired. You'd have to miss a lot of emails.
And once it has expired, you have (depending on the TLD) over a month of grace period where it's not available for general registration where you can still renew it. You'd have to miss the fact that all of your services were offline for over a month.
It’s actually hard to lose a domain if you have a good registrar. There is 90 day quarantine period even if you cross the renewal treshold. You can also domain lock, which means you need to manually unlock a domain before moving.
Even if you decide to keep Gmail, you should switch your email to your own domain.
Here's a blog post about this nightmare happening to someone: https://medium.com/@N/how-i-lost-my-50-000-twitter-username-...
The security of your identity will depend on your registrar, your DNS provider, and your email provider.
The domain registrars are generally a race to the bottom and focused on "add-on" sales as most people are shopping on price and that's going to reflect in the overall quality of the things that most people don't really notice like, y'know, security and validation.
You don't hear a lot of stories about Amazon/GCP/Azure handing over someone's entire account based on a couple digits of a credit card number and it would be a PR nightmare if they did (hell, look at the flak they catch just for the data that people leave public on their services that ends up released... imagine if they handed it to someone). An active account with 2FA/etc enabled and a secure recovery email is probably safe enough for most people.
Spend the extra couple bucks to register through one of those guys instead of JimbosDiscountDomains.
Doesn't that bring us back to the same potential problem though?
I recently trialed hosted email with AWS and while it is very basic it only costs 4/user/month - cheaper than my google apps service. I was also able to register a new domain at market rates and get dns automatically setup (I think?) on AWS as part of the service. Now because I tie my monthly AWS spend with my registrar I'm more confident I can get some customer service as well.
staying inside a vendor's ecosystem for very selective services can actually work out quite well, as long as the seller/customer incentives align and they are relatively commodity services.
The main issue raised several comments up is portability. No provider locks you to only using their email offering/cloud offerings if you register their domain through them. Even if they did, transferring domains is trivial and well-supported everywhere.
As far as any other objections people usually raise around using hosted email and the like, a domain really has no comparable privacy implications in the real world (you're not handing Google or Microsoft a huge corpus on your life). It's also through their enterprise offerings where as long as your bill is paid they're generally not going to have some automated review suspend your account with no reason, and if they did they have actual support you can get in touch with.
This solves basically all of the problems with using an @gmail.com/@outlook.com/etc email address.
(Disclaimer: I work at such a small registrar. No, I’m not going to tell you which one; we aren’t targeting the global market, anyway, only our local area.)
The requirement is being able to switch email providers, especially google, when they lock your account. You don't secure your flow of email with a domain if that domain is managed by google, too.
To attempt to actually answer your question, I believe the nature of the governance around registrars would ensure you have recourse to transfer your domain in the case that Google be Google. It might not be slick. I don't know. But, it's unlikely they can override the overarching policies for such things and continue being a registrar.
While I am aware that Google tends to have quite a few false positive account bans, it is one of the most extremely unlikely things to happen, if all you do with it is pay for your domain registration.
EDIT: Oh daaamn it looks like they did it! Huh, faith restored. jgc, CloudFlare should follow!
EDIT 2: I'm just full of failures today, CloudFlare supports U2F as well. This is great news all around.
There's also the risk of Google shutting down your account because you do something they don't like. This will lead to a similiar outcome and you won't have any recourse.
I've started using @mydomain where the is the website/service I've registered for... doesn't help with my existing stack though.
Unless a client wants to use google docs I‘ve never found an account to add any value anyway. I don’t use google search much any more but when I do it works fine without cookies.
And I try chrome occasionally (it’s needed to use google docs) but it uses too many resources to use as any kind of default. It’s also harder to enforce privacy with it.
As personal servers of course “critical“ is pretty idiosyncratic, though I have used them to start and host various companies overnthe years until it was worth giving them their “own” hardware and identity.
I admit the age of managing a rack full of servers in a colo has largely passed.
Do you pay for Google Domains, or just have some other thing forwarding to gmail, and gmail configured to send with that as a 'from' address, which I think is possible? What's your advice?
https://github.com/ProtonMail/ios-mail/pull/16
As I understand it (and don't quote me on it) they're in the middle of a refactor, so I guess I get it.
replying to emails, I can change <randomtag> to whatever I want.
They also offer random domains that you can setup burners under, though that does involve some ahead of time setup.
Many programs won't even automatically reply from the same alias the message was received at.
No support for U2F (FIDO) keys[2].
No support for sending SMS to phones.
In comparison, my Google account is protected with: (a) three distinct U2F FIDO keys that are stored safely in different countries, (b) three separate phones for SMS authentication (my phone, dad's pone, mom's phone), (c) lastly there's the authenticator app which I rarely use. This is so much more versatile and reassuring that ProtonMail's extremely-mininal 2FA implementation.
Also, ProtonMail has no excuse for not supporting SMS-based 2FA. They can send a SMS to your phone, when you setup a new account -- but for some reason can't do this for 2FA. Despite being a paid service, they trying to save on the SMS charges that SMS-based 2FA would incur?
[1] https://protonmail.com/support/knowledge-base/two-factor-aut...
I see https://news.ycombinator.com/item?id=18008062 from 2018 where the jury seemed to overall favor FastMail.
Nowadays, everywhere gives you plenty of space, but for me personally, it’s just been the fact that I’ve been using it for so long and switching is a hassle. I’m sure it’s the same for a lot of other people, and for the majority, they probably also don’t care enough.
Pretty sure Hotmail (which at the time was like 20% of all web traffic) was still offering a whopping 2MB of space when Gmail launched. It was only after Gmail came out that they started bumping the quota from where it had been since the mid-90s.
Gmail was a HUGE deal. People were going nuts over the invites.
I try Firefox with a fresh install on nearly every major release and I keep it installed as a secondary browser, but I can never manage to use it as my daily browser. For whatever reason, none of my company's (major tech company but not a competitor to Mozilla in any way) internal web pages load in Firefox. No error, no warning, nothing in the console, just zero content. Blank page. I've tried it on two computers with the same result and just nothing. No extensions installed, nothing I've installed on my network or computer to block anything. It just doesn't load anything.
On the other hand I keep Firefox installed because Chrome refuses to load my dev environment with a self-signed certificate. Firefox will let me click "I accept the risk" but Chrome just refuses to load with a self-signed cert.
I'd love to use just one (preferably Firefox) but I guess the web is still hard to get right.
Are you sure you aren't sending HSTS headers that demand the site be TLS in some way?
Also, have you considered the slightly-saner way of doing it, which is making an internal self-signed CA, trusting that internal CA, and then having it sign the rest of your "self dev stuff" certs?
If it was not HSTS you can click through a non-obvious button in both.
macOS operates in a similar way. I really like how the difficulty increases depending on the task:
• Want to allow one app through Gatekeeper? Instead of double-clicking the app icon directly, right click it and select "open".
• Want to turn off Gatekeeper for all apps? You need to open the Terminal and execute a command.
• Want to turn off System Integrity Protection? You need to reboot your computer into recovery mode and execute a Terminal command there.
You probably shouldn't be using an opensource project without at least a cursory glance at the code anyway, especially as a power user.
<key>Disabled</key><true/>
under the first <dict> and then unload each file, e.g. launchctl unload ~/Library/LaunchAgents/com.google.keystone.*
The auto-updating stops and stop them reloading after a reboot/logon.I don't think that's a bad way to go about it either, if it's sufficiently buried.
I'm primarily just thankful there's a workaround, hidden or not, given how many tech companies seem to respond to these things by disallowing them completely.
Just put it in the manual. If experience has taught me anything, it's that "normal users" never read the manual.
Firefox continues to do a good job of just letting me visit the damn website after warning me.
Both examples on latest current, taken right now:
Firefox: https://i.imgur.com/4VMjDZ4.png
Chrome: https://i.imgur.com/YosvXEu.png
For HSTS, both Firefox and Chrome act identically and do not allow clickthrough: https://i.imgur.com/WPCTep1.png
It did work in Chrome. And then after an update it didn’t work anymore. I don’t know why and it seems like no one else here does either.
Have you tried disabling the tracking protection, maybe it's mistakenly blocking some JS?
Other thing they could be doing is adding certificates to the Windows certificate store, that Firefox does not trust. Though I expect you would see an error about invalid certs in that case.
https://security.stackexchange.com/questions/133254/how-does...
It has a full QWERTY keyboard and reasonably well working Sailfish OS port.
One day I noticed that some of the stuff I blacklisted (mostly ads) started showing up again.
Why? Firefox's new DNS over HTTPS was bypassing all my firewall DNS rules.
A misstep by Firefox, though it was done with genuine intent to safeguard users (as opposed to just being spun that way). Though they've walked it back it still needs to be opt-in or be trivially easy for average users to opt-out.
I will very occasionally find a site that's broken in Firefox and works in Chrome though.
See the uBlock Origin author's post: https://github.com/uBlockOrigin/uBlock-issues/issues/338#iss...
This is ironic, because uBlock implements an extremely efficient filter and is even looking into using WASM to speed it up even more. Google's public position is that implementing functionality in JS or WASM is unacceptably slow. They say "[Preventing or weakening ad blockers] is absolutely not the goal. In fact, this change is meant to give developers a way to create safer and more performant ad blockers."[1]
Google's public position is also that WASM is "consistently fast"[2], fast enough to rewrite Google Earth to target it[3], and "It's entirely feasible to build a complex code-base to run performantly in the browser using WebAssembly"[4].
So which is it? Is the Web Request API being deprecated because it's not possible to write performant code in extensions using Chrome's powerful JS and WASM engine, or is it possible but there might be some other, different reason that they're blocking it?
[1] https://blog.chromium.org/2019/06/web-request-and-declarativ...
[2] https://developers.google.com/web/updates/2019/02/hotpath-wi...
[3] https://blog.chromium.org/2019/06/webassembly-brings-google-...
[4] https://developers.google.com/web/updates/2018/08/wasm-av1#f...
Imagine anyone actually believing Google is trying to help ad blockers. What a dumb thing for them to even say.
They promote efficient websites to increase ranking with their search algorithm, while operating ad services that bog websites down. Not to mention the whole AMP business where they looked at Facebook and developed a severe case of walled garden envy after previously being a champion of open web standards.
The online-advertising economy that Google operates in does slow-down websites.
Google's own ads, don't. AdSense ads are loaded asynchronously and I've been happy to run them on my websites. Google Analytics is also fast and light.
It's other scripts that bog things down - right now on my most AdSense-laden webpage the real killer is ZenDesk's chat widget - even when loaded asynchronously it still blocks the page render and pulls in over 600KB of resources, which is ridiculous: https://support.zendesk.com/hc/en-us/community/posts/3600042...
> Not to mention the whole AMP business where they looked at Facebook and developed a severe case of walled garden envy after previously being a champion of open web standards.
I'm not a fan of AMP either, but you don't have to use Google's AMP cache CDN to use AMP - it may surprise you (as it surprised me!) to learn [that Google endorses Bing's AMP cache](https://amp.dev/documentation/guides-and-tutorials/learn/amp...), for example (Google owns and runs amp.dev) - but I won't be happy with AMP until it's possible for people to run their own AMP CDN/caches.
That said, I fully understand why original-content providers aren't keen to adopt AMP: because it restricts the kinds of advertising displayed in a page and restricts monetization, and means you have to trust your CDN to accurately report pageviews.
There's a disconnect in the sense that a lot of people think that adblocking in Safari is fine, even though it is pretty objectively less capable than Firefox/Chrome in this area right now. There's no disconnect in saying that Manifest v3 is going to hurt adblockers, because the same changes in Safari also hurt adblockers, and (as of last time I checked) Chrome's proposed changes go even farther than Safari's did.
But in general, yes, you should already be avoiding Safari today if you want to use the best adblockers on the market. Safari suffers from the exact same problems, that's why I use Firefox even when I'm on a Mac -- because the adblockers and security extensions for Firefox are just a lot better.
What did they do to ublock origin? The single best Chrome extension ever. If it stops working and I must suffer YouTube ads again, it's bye bye Chrome.
Also, this [1] happened.
[0]: https://www.xda-developers.com/google-chrome-manifest-v3-ad-... [1]: https://github.com/uBlockOrigin/uBlock-issues/issues/745
If it goes as planned, you won't see ads on YouTube for sure, but there likely won't be enough space to add rules for less mainstream ad networks and some of the specific sites you visit.
Never let anyone make you feel bad for blocking ads. It's the right thing to do.
With Apple ecosystem that is not a problem because every single cloud tool they have supports “download everything locally” option
If you can use the Apple stack this functionality has been built in for years and is pretty robust.
Just FYI as you say the functionality is needed — I know this won’t help if you can’t switch to Apple
If that is the case, then a much better solution would be for Chrome to implement a secure channel for password managers to use for just that purpose and make access really really explicit. But again, without them saying anything we won't know.
My advice is to watch for a CVE regarding sniffing sensitive data off the clipboard to surface in the next 30 - 90 days.
Having already moved to firefox for over a year since quantum came out, what are you waiting for?
"If you use our tools, we can kill your livelihood at any time for any reason and tough shit if you want a why"
It has always been thus with proprietary tools and platforms.
Back in 2011 I switched careers from developing software on proprietary stacks - at the time C# 4.0, Silverlight, and MS Windows - to developing on open source stacks, starting with Ruby on Rails and JavaScript.
A short time after I switched away from Silverlight, I found a bug in the open source XML library my team was using. I then submitted a PR to fix it, which was merged (with some revision :)) after a few days. The experience was a revelation after the combination of magic 8 ball and years-long wait times for non-critical bug fixes on Visual Studio.
It looks like the younger generation is busy rediscovering the vulnerability and helplessness of proprietary systems themselves.
I’ll never again try to create a business around an environment outside our control. Both Google and Apple are complete black boxes.
Building a business off someone else’s platform is easier because it provides a built-in distribution channel.
However, when you don’t own your distribution, it means your business can be shut down by the decision of one person at X company.
It turns out, all decisions have trade-offs.
If you want to have a real business, don’t do the above, or only do the above while getting started.
Developers hate having to deal with distribution. Platforms exploit this by creating these fantasy worlds where developers don’t have to think about it.
This is a mirage. You have not created an “easier” business. You’ve simply sold your soul to the devil.
https://www.zdnet.com/article/google-removed-813-creepware-a...
I bet that this is it. Clipboard data is extremely sensitive, as it can often contain passwords.
I hope the developer finds another load of permissions they can tighten up, resubmits, and is approved. As long as it results in permissions being more correct this is a very positive thing for users because for every PushBullet there's hundreds of attempts at malicious Chrome extensions that are abusing permissions.
The issue I have is that it's not clear if I'm even addressing the correct issue(s). If I don't make the Correct change, all other changes are irrelevant since they'll never get published.
Ultimately you know your extension, codebase, and use-case, far better than Google does, so it may not really be possible for them to give you the detail that you're looking for – you may be the only person who can do that.
I hope that they provide the support you need in understanding the problem to the point where the extension can continue to live on the Chrome store.
What was the impact of fewer permissions?
Let's assume PushBullet was doing something bad with some of those permissions and gathering data? Do they no longer have access to that data? I'm not sure that's the case, permissions alone don't determine that.
If PushBullet wasn't doing anything bad, did anything change?
Is it a positive thing for users when the extension disappears in a few days?
Is banning someone's entire Google account across all services a proportionate response to a developmer having trouble with Google's confusing permissions API?
Likely there is some automated system running these checks.
Edit - this is a basic principle of security: https://en.wikipedia.org/wiki/Security_through_obscurity
As a metaphor, there’s a damn good reason you can’t just pay an Olympic anti-doping facility to test your urine; it would be trivial to develop protocols that evade the tests if you could do that.
There are certainly less cheaters than if there were no anti-cheat methods. To use OP's example, an open source urine testing procedure would be trivial to game. The same thing goes for open-source multiplayer games.
If it's trivial to evade the tests, then the tests are inadequate in the first place, and should not be trusted to be accurate.
Likewise, if an anti-cheat system relies on obscurity in order to not be bypassed, then it's a crappy anti-cheat system (and, mind you, would be far less necessary if multiplayer games didn't have a fetish for trusting the client to do potentially-exploitable things instead of insisting upon server-side validation, but I digress).
And likewise, if making your policy publicly-known will result in people skirting around the spirit of that policy, then the policy is poorly-written and should be rewritten to better reflect the intent.
Security through obscurity is not security. Full stop.
OK fair enough, but why aren't the big violators held to this? (I realize this example isn't Chrome, but it is Google Calendar -- ever try to add a Zoom meeting invitation to your Google calendar? Zoom wants access to read and write all events ever on your entire calendar!
I love that Google is starting to solve this problem, and from my perspective an extension that is sending and receiving SMS messages should not be requesting the ability to read and change all data on all websites that I access.
I think it's important to remember that while PushBullet is known to many of us, is posting on Hacker News, is a valued part of "the community" in some respect, at Google scale this fact is not know. PushBullet is obviously good to _us_, and maybe just needs to tweak permissions a little, but to a reviewer at Google it probably looks very similar to the hundreds of extensions they may review a day, many of which may contain malware.
They have to use certain metrics to sort the good from the bad, and abuse of the permission system – intentional or not – is a pretty good one when you care about the end user.
They aren't solving the problem. They are making sure only they can get all the user information.
I would rather give all my information to everyone rather than giving all my information to google.
Do You have an android phone? Do You use google for anything? Gmail? Google docs/drive? Youtube? Chrome? ChromeOS? Anything google owns? Then they're selling your data.
Try reading all those fun TOS agreements that come with using any of the aformentioned products, or heck, visiting sites that use google analytics.that won't tell you how much or what data google gets from you, but it'll tell you that you agreed to it.
You're missing the point here. The developer isn't given any guidance on what needs tightening. This shouldn't be guess and check. These rules impact this developer's livelihood. They should be well defined, documented, and communicated.
Let this be the millionth lesson of "the perils of building on a platform instead of on a protocol".
What do you think they should be providing? Honest question, I have some ideas but they all feel very tricky/error prone to implement.
For the record, I actually agree with you that this is a good policy and will be a positive outcome for users. But while you seem to agree that Google could have handled this better, you're not doing a good job of acknowledging just how developer-hostile Google was here, which is why you're getting a lot of pushback.
> At the very, very least, they could identify which of the permissions are in violation
If they've flagged this through user reports of the permissions being too wide then they may not actually know which permissions need to be changed. This is purely speculation though.
How can they not know? They decide whether the update is accepted or rejected, and there's somebody or something at google that makes that decision, so google has to know.
If they didn't know what permissions need to be changed, how is the accept/reject decision made? Something like "accept the fourth try if the developer makes it that far because it is probably an improvement?"
Sure, the first notice may have come from user flags, and the motivation for those flags is unknowable.
But it's been rejected again, after substantial permissions pruning.
Either they know why they rejected the update, in which case they should tell the developer; or they don't know why they rejected the update, in which case they're holding developers hostage to an inscrutable black box.
Both scenarios are shitty.
You are certainly within your rights to state things divisively if it pleases you. I was merely suggesting how you might make your point in a way people will agree with you.
If they've flagged this through user reports of the permissions being too wide then they may not actually know which permissions need to be changed.
Even if this were true,
1) what about the update that narrowed the permissions, surely Google knew which permissions remained in violation? Remember, it was the rejection of that update that prompted this post
2) user reports of permissions being too wide should also be required to identify the specific permission that is in violation. That would not only help the developer, but also help Google make the decision on whether to ultimately ban the extension
3) Google should have clearly stated in the initial message that they hadn't actually verified that the alleged violations are occurring
- if G has the ability to automatically audit necessary permissions, they'd do it when you upload to the plugin store
- if they're doing this manually for popular plugins, then (1) they'd publicly certify safe plugins and (2) the interaction would be way more high touch
Plugins are inherently unsafe + require trusting the developer.
Could be malicious, or G may not even have a reason for this (it may be some forgotten dinosaur instinct to knock over other people's stuff when it gets too big).
If they added it more recently then they are just back-applying it to an already existing extension.
Alternatively, you can report plugins as requesting incorrect permissions – I've done this. Perhaps that's what's happened here, lots of reports triggering an investigation.
> We do not need to request access to data on https://*/* and http://*/*.
Was this not determined before, or they changed their minds now that Google is threatening to pull their product? Either they thought that was appropriate before, or they didn't think about it at all. Inexcusable either way.
Why are they asking for https://*.pushbullet.com/*, http://*.pushbullet.com/*, and http://localhost/* read permissions? I suspect it's the localhost permission request that is currently blocking them.
And why in the world are they asking for the cookies permission? That's a big, fat nope for me. It's as if they don't understand what they are asking for and the potential implications of passing that data around so haphazardly.
These folks need to take another hard look in the mirror before they point the finger, because their own house is way out of order.
These guys went above and beyond what most developers would've done, which would have been to contact support until they get a clear answer.
This only alienates the extension ecosystem. And this was the primary reason I switched to Firefox. Google is the new Microsoft. If I remember correctly, they started Chrome exactly so this very thing wouldn't happen.
Google deserve criticism for the lack of clarity in the communication, they deserve criticism for the lack of human touch, customer support and many other aspects.
They do not deserve criticism for calling out incorrect permissions usage and forcing developers to do better.
The fact that the extension has over broad permission asks isn't good but I think saying their communication lacks clarity is underselling just how opaque they were with their feedback. It also concerns me a bit because it looks like their opaqueness might be an attempt at security via obscurity by trying to cloak what the rules actually are - which is a generally bad approach to trying to fight malevolent actors.
Alternatively it could be vague to restrict the possibility of bad actors circumventing the letter of the rules without adhering to the spirit of them, or even just protecting themselves from legal repercussions (perceived or real).
And, when you get right down to it, any rule that isn't well structured will be exploited by bad actors, people looking to roll out malicious browser extensions have a strong motivation to try and discover those rules with a high level of accuracy by testing them - only the good actors remain uninformed.
> the concealment of relevant information over basic practicality and functionality.
It’s like I tell you get me a book on computer science or Ill fire you you, but I don’t tell you which one. Also I won’t response to any questions from you.
Whether OPs extension made him think about it is simply an entirely different matter.
a) the extension had been operating for years, unmolested by the Googlebot, with the expanded permission set
b) tightening up the permissions did _not_ solve the problem, indicating clearly that whatever the Googlebot was selecting for, it wasn't an incorrect use of permissions.
Did they, though? The email seemed pretty clear that the problem was requesting more permissions than necessary.
I'm no Google fan, by any means, but if it's that hard for the developer to check which permissions their own app is requesting, I don't know if it's Google's fault.
They were completely in the wrong there, and posing a huge security risk to all of their users.
1. The article contains more relevant information that you did not show in your point.
2. Those relevant information made your point void
3. I think your point make no sense on the relevant information.
There, I refuted your claim, you have 14 days to change it and show what you learned.The personal information security concern I had is that it seems that pushbullet shovels all sorts of data from Chrome to the pushbullet server and then routes it to, pushbullet says, my other devices while respecting my privacy. While I don't doubt that pushbullet is an honest broker of my data, it's doing all this outside of google's purview. For somebody to spy on my data, they wouldn't need to break into google's ecosystem, they'd just need to break into pushbullet's.
I'm not disagreeing with all the other comments here about big bad google, I already think they are bigger and badder than everybody else here does.
And I'm not at all sure that what I'm pointing out has anything to do with google's motivation here (I liked the comment that said that this app is a threat to their walled garden), I'm just pointing out my impression to try to be helpful to OP in figuring this out.
[1]https://www.reddit.com/r/PushBullet/comments/eirc1m/not_avai...
> Although I am sure that this is not the correct place to reach out, I have reached out to the Chrome privacy team to see if they can give us some advice for PushBullet.
Though I posted this before this article was on the front page of HN.
Anyone else using InboxSDK in a Chrome extension and didn't get killed off by this change?
My extension hooks up the address book from a SaaS project (school information system) to GMail so faculty/staff can quickly look up parent contact information or send to special group email addresses that broadcast out to part or all of the school. The people using it were very happy to have it but I could conceivably go back to a private chrome extension if that is still allowed.
> - Request access to the narrowest permissions necessary to implement your product’s features or services.
> - If more than one permission could be used to implement a feature, you must request those with the least access to data or functionality.
> - Don't attempt to "future proof" your product by requesting a permission that might benefit services or features that have not yet been implemented.
My first thought was "oh it would be NICE if G actually enforced these". But the truth is that they're not. One glance at the Android Play store, and it's abundantly clear that Google is letting shitty apps request whatever unnecessary permissions left and right.
Literally the top flash light app requires "full network access", GPS precise and approx location, "view network connections" and "receive data from internet".
It's complete bullshit, Google isn't policing these permissions at all, but just using it as an arbitrarily enforced rule.
It's pretty clear what the incentives are. Android already has a flashlight, but this one has ads, harvests and sells your data, and uses Google Play Billing Service. Win for Google. On the other hand, there's PushBullet, which gives users more control and this is key, the option to use a platform that is not controlled by Google. It has nothing to do with user privacy.
And the whole nice thing about these permissions is that they are granular, this means it should be trivial to point out which one is wrong or better and why, like an error message. That is not "gaming the system", it's literally what these permissions are for.
This is also clearly not an automated scanning process that PushBullet accidentally got hit by. Because it would have to have been a very slow running process, given the heaping amounts of trash in the Play Store. And then it just happened to pick PushBullet instead of the Flashlight app that has 50 times more downloads??
> Your draft will then be reviewed for policy compliance. If the outcome of the review is successful, your existing store listing will get replaced by the approved draft. However, if the new draft fails to comply with our policies, both the draft and the existing store listing will be removed. Please note that the rectification window expires the moment a new draft is submitted. After this point, you will not be able to make iterative changes regardless of the days remaining in the warning period.
Holy fuck, that's insane. You get one shot; if you miss, game over.
I realise the GCP API team may not be dealing with as big of a swamp as a consumer-facing apps group, but it was nevertheless one of those few occasions when Google left me with an impression other than overwhelming hubris. It was more like talking to AWS service teams, or Cisco TAC when you have a CCIE on staff.
I was positive that I was in compliance but I could also see that a bot was flagging something. So I kept tweaking code and resubmitting. Eventually what worked was taking the offending code block and hiding it at the server level.
It's such a face palm. I literally call out to the server to run some logic that should be completely safe to run in the app.
Why the hell I can't disable all extensions when I enter my bank account or insurance page? As far as I know Firefox containers are close but still no fine grained control over extensions.
Google might not want to make Chrome the browser into an OS.
If i were Google i would also be skeptical when such standalone apps wants to read my browser cookies or access my http://localhost. Actually i think cookies is the violating permission here.
But I don't believe that thinking applies whatsoever to apps or extensions. There are far fewer of them and parties need to work together. It's unfathomable to me why Google doesn't point out which specific permissions a reviewer has flagged as suspect, or given an option for the developer to give the justification specific to each option.
They sent a vague email, regarding violation and suspended Ad serving. Never ever had any issue before.
I can only suspect that their policies have changed because of the current pandemic. But isn't it disingenuous, in that case. Similar to laying off an employee, and cooking up a shady reason for it.
They will only make me kill the business, which in turn will stop payments (reduce significantly) to AWS. Thereby enabling more slow down.
Very very unhappy with them.
Get all your emails off gmail ASAP, pushbullet developers. It may be more than your extension that gets nuked.
Link: https://chrome.google.com/webstore/detail/mnjggcdmjocbbbhaep...
It only has access to 2 domains, it doesn't have the tabs permission and it uses optional permissions for everything else.
I think it is just an automated issue due to covid-19, and I guess I might just have to wait until then.
And if some apps can have permission X but others can't, there should be clear guidelines.
a) It does work
b) The description is accurate
I have no idea what they want me to do and I don't have time to try and guess.
I don't get paid for my extension, so I'm just going to redirect everyone to the FireFox version now. The Chrome store will be poorer without it and that's on them.
It was only because I had a point of contact at Google with actual influence that I was able to resolve the issue (and they did, miraculously). If you don't know a human, Google's automated systems can more or less destroy your app or business for Google product users, which is pretty much everybody. G is a big, multi-headed beast. Not evil, but worse - indifferent.
I actually already use Firefox and their Firefox extension. But it won't matter that I'm savvy enough to do this if losing enough users from having the Chrome extension killed is enough to kill the larger business.
Consider the counter factual - what if google was highly specific about the changes required? Clarifing the boundaries of what’s allow is prone to abuse. This is the same reason why the search algorithms are not explicitly published, but only the spirit is explained.
I would say this is the best solution when there are no perfect solutions.
Perhaps the 14 day period could be longer, but that’s another point of contention.
If they walk like a duck and call it a duck then talk to the duck hunting authority?
Long time user of pushbullet since I like to be able to text from the desktop. Google has released messages.google.com, which is a nightmare to use among various desktops.
Microsoft released their Phone app, which disconnects so frequently it is unusable.
I have no confidence Google will allow pushbullet back.
Is there a replacement that allows notifications and texts from the desktop?
Do please us sir. Three times you shall try.
I would not consider any company that takes that approach as a reliable business partner.
Maybe it will be possible to please the platform this time. But this is a strong hint the business should not depend on the Google extension platform.
Escape it while you can
Is there anything happening around an all-web app phone? Seems like all the pieces are there..like native functionality in JavaScript with certain extensions.
I use a flavor of Chrome called Ungoogled Chrome (https://ungoogled-software.github.io/) and the only way to install plugins is to manually install the CRX file.
You can still access some on the web.
But your best option is to do a GDPR request to export you all your data.
I can understand why Google is doing this though. They have a "Send to device" feature in Chrome. Killing the top 3rd party app is the perfect way to grow adoption of their new & in-built feature.
"Do no evil"
But if that's what you're doing, don't claim that the extension is being rejected for "overbroad permissions". I understand that Google may not literally come out and say "We've decided to eat your extension's functionality and you can just burn." But don't lie about why it's being rejected... however much you may wrap the result up in marketingspeak, don't actively lie about the reason for rejection, so that someone can burn the candle at both end for two weeks futilely trying to appease the lying error message.
As for the fact it may not look that great no matter how much marketing-speak it gets wrapped up in for Google to just eat some functionality and kill all competition... yeah, well, suck it up Google. Don't lie about it. I mean, you can always spin it as security security blah blah security if nothing else, which ought to be enough of a fig leaf.
(Mind, they're arguably not complying with the "Don't be evil" version either, especially lately.)
Hopefully that will give a signal to google that make them cherish the developers that create great functionality for them a bit more.
Now they limited it to ".pushbullet.com", but even then they don't need that permission since ".pushbullet.com" is a server controlled by them, so they are free to set and read those cookies anyway.
The cookies permission is only needed if you want to read cookies from a domain you don't own. The extension has no need to modify the cookies, and if Pushbullet wants to set or change them, for example to set session cookies, it can do so in a non-extension tab. The extension can then send those cookies in their API request automatically without needing to access them.
Hopefully, many others will follow.
If they do offer something of the sort, or start to shortly, this seems like a perfect antitrust case.
Or are you just pretending you know things to feel good on the internet.
(I think the same about Google Play, the iOs App Store etc.)
EDIT: /me wonders what "contract tracing" is going to be
A lot of these are chrome extensions. If you are honest, then I do feel for your situation. But, I am also happy to see that Google are finally stepping this up and looking after their users by not exposing them to potentially malicious services.
If this were Apple we would be celebrating how privacy-forward they were.
We use localhost to communicate with our desktop application. An example is preventing both our extension and desktop apps from showing notifications on the same computer (our apps are all about notifications so this would get unacceptable very fast). Maybe if we limit it to just the local port we use? Seems like it can't hurt to try that too.
0. https://developer.chrome.com/apps/nativeMessaging.
1. https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Web...
And responding poorly.
What the market wants is for companies to lay out understandable policies that protect their privacy. People I know want more clarity about what's happening in the extension store and on their devices, not less.
As a consumer, it doesn't make me feel any better for Google to say in vague terms, "we booted off an app that doesn't respect your privacy." Okay, what was it doing? Are there other apps I should be concerned about? How bad did the app need to get before you booted it off? Are there exceptions to these standards? Are they being applied to internal apps as well?
My feeling is that Google's inability to communicate with developers and users is its own problem; it's not the market's fault. Tech companies in general have had difficulty with customer support for a while, even before the media started picking up on privacy issues. Nothing has really changed, Google just happens to be notably bad at this.
It's not Google's job to teach someone to how to write good code. Good compiler can tell you what is the error, it won't pop out a solution as well.