News for hackers. Stuff that matters.
Re:Chrome may start restricting requests to private networks by peeters on Tuesday November 16, 2021 @12:45AM (#29237312)
I think the concern is for even clicking a link, which to my knowledge typically hasn't fallen under implicit CORS concerns. The browser will automatically assume that unless a private origin server (i.e. one within a private address space) explicitly allows requests from a public source, then the navigation should be prevented.

It's always a challenge in browser design, but basically this is just another case of killing valid use cases because some servers don't follow the spec (i.e. GETs with side effects).

Re:Chrome may start restricting requests to private networks by londons_explore on Tuesday November 16, 2021 @01:04AM (#29237409)
> killing valid use cases because some servers don't follow the spec

There are probably 25 IoT devices in my home, and more than half of them have a magic GET request with side effects. For example, just by clicking this link, my lights turn on http://lighting.londons_explorer/cm?POWER%20ON

A malicious web page could redirect me to that URL and force my lights on with no input from me. I bet some of the devices allow firmware updates with the same method.

Re:Chrome may start restricting requests to private networks by dotancohen on Tuesday November 16, 2021 @02:19AM (#29237810)

  > just by clicking this link, my lights turn on
Wasn't working for me, so I added an entry to my hosts file directing it to 127.0.0.1.

Now I don't know what's happening with _your_ lights, but when I click that link my own lights come on.

Re:Chrome may start restricting requests to private networks by chessmango on Tuesday November 16, 2021 @04:05AM (#29238444)
No idea why this obvious joke was downvoted tbh :P
Re:Chrome may start restricting requests to private networks by randombits0 on Tuesday November 16, 2021 @04:52PM (#29246787)
A dress-up localhome joke? Hey, at least it was one I hadn’t heard.

(Cracked a localhome joke in for my first IT job interview. Manager laughed, Engineering Manager rolled his eyes.)

Re:Chrome may start restricting requests to private networks by tommek4077 on Tuesday November 16, 2021 @02:06AM (#29237739)
And because you use crap hardware, everyone else has to change his totally legitimate network setup?
Re:Chrome may start restricting requests to private networks by kalleboo on Tuesday November 16, 2021 @02:59AM (#29238056)
I'd wager the ratio of people who have at least one item of IoT junk to the number of people who have a legit setup that requires allowing cross site access to a local resource from a remote one is probably ten million to one. Who are these "everyone else" who are controlling their LAN devices from a public website who are going to suffer an evening setting up CORS?

edit: what I can see breaking is stuff like Synology QuickConnect https://global.download.synology.com/download/Document/Softw...

Re:Chrome may start restricting requests to private networks by vetinari on Tuesday November 16, 2021 @04:58AM (#29238792)
Also services using split horizon DNS: i.e. it is publicly available service, but only when used from outside. When used from inside, it is not routed through public interface, but resolved directly to it's internal IP.
Re:Chrome may start restricting requests to private networks by wink on Tuesday November 16, 2021 @06:37AM (#29239410)
I'm pretty sure I'm lacking experience in administering a huge network to spot the obvious? problem, but for smaller setups I've never understood why you would do this anyway and not treat it as "external first" by putting it in a sort of DMZ and treat your internal users as "quasi-external" ones by routing them into the DMZ via another means...

Of course this has the downside if you have actual 'internal only' stuff, but those could be separated from the split stuff... Just too much work with years (decades) old setups?

Re:Chrome may start restricting requests to private networks by blincoln on Tuesday November 16, 2021 @10:02AM (#29241282)
At bigger, established corporations, I've seen internal web apps that need external access available set up this way, but when accessed via the public IP, a second auth factor is required. IIRC, MS Exchange's web interface was the most smooth, where the only difference to the end user was an additional field for the MFA code.

If an organization is using the "BeyondCorp" approach, it doesn't seem relevant, but that's tough to bolt onto large, complex existing environments IMO.

Edit: just to clarify, the advantage is similar to what "BeyondCorp" gets you - end users just need to remember the one URL, regardless of where they're connecting from.

Re:Chrome may start restricting requests to private networks by wink on Tuesday November 16, 2021 @03:14PM (#29245831)
good point, I hadn't thought of that because I personally never had that. yeah
Re:Chrome may start restricting requests to private networks by vetinari on Tuesday November 16, 2021 @07:15AM (#29239656)
In DMZ, it still has an IP from private range, ergo, still treated as internal -- it doesn't matter whether it is in the same subnet as your users, only whether it falls into the range that the browser considers private.

So it doesn't solve anything here.

Re:Chrome may start restricting requests to private networks by wink on Tuesday November 16, 2021 @08:32AM (#29240338)
Maybe our understanding of DMZ is different, for me it's not necessarily with an internal IP - so to clarify, what I meant was hosting it on-premise, but only accessible via it's public IP (as the service is public anyway), which shouldn't be slower if your physical route isn't any longer.
Re:Chrome may start restricting requests to private networks by inetknght on Tuesday November 16, 2021 @11:33AM (#29242516)
I use split horizon networking to, eg, provide public DNS entries to a public canary server. Then on the private network a different DNS server provides correct (LAN-only) addresses. This way I can see if/when private hostnames are leaked to some entity.

I have about two dozen devices on my private LAN so I wouldn't consider myself to be "big" or "enterprise".

The setup is fairly unusual though because most users (and unfortunately many developers) lack the technical know-how for it.

Re:Chrome may start restricting requests to private networks by johnchristopher on Tuesday November 16, 2021 @12:56PM (#29243873)
> edit: what I can see breaking is stuff like Synology QuickConnect https://global.download.synology.com/download/Document/Softw...

Goooooood. I hate this thing with a passion since I had to set it up for a computer illiterate friend.

Re:Chrome may start restricting requests to private networks by carlhjerpe on Tuesday November 16, 2021 @02:20AM (#29237816)
I don't think it's because of this one person, but rather the masses that has crap hardware and software installed everywhere. It's a global problem, not everyone is capable of securing their own network.
Re:Chrome may start restricting requests to private networks by bawolff on Tuesday November 16, 2021 @03:38AM (#29238289)
Although i agree with this browser change, i highly doubt it will fix all crap hardware. There's a limit to how much you can apply band aid solutions to something that seems to be trying its hardest to be insecure, and non-idempotent GET requests is a bit beyond a minor oversight.
Re:Chrome may start restricting requests to private networks by PeterisP on Tuesday November 16, 2021 @12:04PM (#29243044)
Nothing will fix all crap hardware, so we have to live with it and solutions like this prevent crap hardware from being accessed and abused even if it remains crap forever (since it will remain crap).
Re:Chrome may start restricting requests to private networks by rocqua on Tuesday November 16, 2021 @05:50AM (#29239079)
Note that GET requests should be side-effect free. Not just idempotent. That means a GET request that turns your lights on, or opens your garage door (which is idempotent) is still wrong.
Re:Chrome may start restricting requests to private networks by inetknght on Tuesday November 16, 2021 @11:37AM (#29242583)
> Note that GET requests should be side-effect free.

Not quite. If a GET request is side-effect free then it won't be logged (since that is a side effect).

GET requests aren't supposed to modify state. Logging is a side-effect but it isn't usually considered to be stateful. Changing the state (on/off) of a lightbulb is definitely against the standard requirements for a GET request.

Re:Chrome may start restricting requests to private networks by nybble41 on Wednesday November 17, 2021 @11:15AM (#29254967)
Logging is stateful, though the state usually isn't observable via HTTP requests. Of course the same is true of the light bulb, unless another API is provided to read its status, and a similar API could be provided for the log files. Or a script could toggle a light bulb in response to the logging.

Perhaps a better way to express this is that user agents are permitted to turn one GET request into N GET requests (N >= 1), and can also issue GET requests without user interaction (e.g. for preloading). When this happens the system should still meet its (customer / end-user) requirements. The requirements related to logging are that every request is logged, so it makes sense to record each GET request separately. The requirements for the light bulb are that one user interaction (not one GET request) equals one state change, so updating the state in response to each GET request doesn't meet the requirements. Even if the API were explicitly "turn on" or "turn off" rather than "toggle" you still wouldn't want the state to be affected by preloading, and you could get odd results if opposing requests were repeated (interleaved).

Re:Chrome may start restricting requests to private networks by bawolff on Tuesday November 16, 2021 @10:12AM (#29241392)
Isn't that what idempotent means? You can't exactly open the garage if its already open.

https://developer.mozilla.org/en-US/docs/Glossary/Idempotent

Re:Chrome may start restricting requests to private networks by vel0city on Tuesday November 16, 2021 @11:20AM (#29242332)
From your example:

> DELETE /idX/delete HTTP/1.1 is idempotent, even if the returned status code may change between requests:

So requesting to open the garage door multiple times which results in an open garage door in the end is an idempotent request, even though after the second request the response is "I am already open!"

Now, a request to toggle the state of the garage door would not be idempotent. The state of the system is different if you call it an odd or even amount of times.

Re:Chrome may start restricting requests to private networks by marmight on Tuesday November 16, 2021 @10:37AM (#29241693)
In general, an idempotent method is a method such that calling it one time is the same as calling it n times in a row for any n > 1. However, idempotency doesn't require that calling the method one time is the same as calling it zero times, although such a method isn't excluded from the definition either. So a stateless method is necessarily idempotent, but an idempotent method isn't necessarily stateless.
Re:Chrome may start restricting requests to private networks by tommek4077 on Tuesday November 16, 2021 @02:44AM (#29237945)
Just like not everyone is capable in handling explosives or build roadsafe cars or most other stuff by themselfes. We have rulings for this, laws, needed checks and so on. Start stopping the import of crap, like one does it with illegal firecrackers or in the past with eletronic stuff that interferes to much.
Re:Chrome may start restricting requests to private networks by AstralStorm on Tuesday November 16, 2021 @03:02AM (#29238080)
Ok, so which safety measures do you mandate?

Oh, I know! How about a browser that does not allow direct navigation from external to internal addresses? Ah, wait.

It still does not quite work for services that have a public IP address. So where do you go from there, a new protocol that has capability handling and external access is disabled by default?

Forcing companies to issue recalls for buggy hardware and firmware could probably do the trick. Note the expense and the fact of insufficient dissemination of found issues combined with lag to fix them.

Re:Chrome may start restricting requests to private networks by technobabbler on Tuesday November 16, 2021 @06:15AM (#29239252)
Are you suggesting regulating IOT devices for better security? Who the heck could you trust to do that? The FCC? The Chinese government? Consumer rights in the USA is barely a thing, and there is no competent bureaucracy for this sort of auditing. Creating some standards body and coming up with evolving criteria and hoping manufacturers will buy in seems like a multi year, if not multiple decade, process...

In the meantime Google can single handedly monkey patch this situation within a few months and force manufacturers to catch up with the next product cycle. While a less ideal route, this seems far likelier to produce actual results within our lifetimes.

Re:Chrome may start restricting requests to private networks by Retric on Tuesday November 16, 2021 @10:32AM (#29241628)
I find it really interesting how the US government can constantly solves very tricky real world problems that impact our lives, yet people have close to zero trust in it. Which isn’t to say you’re wrong here.

I think it’s because when stuff works it looks simple. There isn’t an obvious difference between a mound of dirt piled up in days and one that’s carefully compacted as it’s constructed. At least until you want to build something on top that actually lasts for 50 years. Build stuff to last takes time and nobody is around to see you succeed.

Back to your point actually fixing the underlying issues with IOT security is worth it long term even if it hypothetically takes 20 years to get it correct. At the same time moving quickly and patching one of 100,000 problems can still be useful.

Re:Chrome may start restricting requests to private networks by technobabbler on Tuesday November 16, 2021 @02:38PM (#29245391)
> how the US government can constantly solves very tricky real world problems that impact our lives

What are some recent examples? Especially dealing with technology?

I can think of a bunch of counter-examples where the government did not do a good job of regulating:

* Rural broadband failed

* Net neutrality failed

* Healthcare.gov was a fiasco

* Wireless spectrum auction never got us municipal/rural long-range wireless

* NASA's duties have largely been outsourced to private actors

* State DMVs are a shitshow

* Election integrity failed

* They can't figure out what to do about online disinformation

* Warrantless wiretapping: both unconstitutional yet ineffective, as in 9/11 and the lack of data sharing between agencies

* Foreign military misadventures, our traditional forte: Afghanistan, Iraq, both abysmal failures

* Healthcare: a joke compared to every other developed country

* Education: pathetic and getting worse

* Social programs: Welfare, what welfare? inequality and homelessness getting worse every year

* Infrastructure: crumbling

* Clean water: only for rich white people

* Immigration: heh

* Covid: lol

* Renewables: haha

* Nuclear: let's pretend it's not there

On every major policy front, the US government has been a disaster for decades. I'm no libertarian by any stretch, but our government is a complete shitshow compared to any other developed democracy. We have neither the leadership competence (decisionmakers and legislators) nor the engineering talent (career civil servants) who can tackle something as diverse as nuanced as IoT security, or arguably, digital security in general. Give them 20 years and they might be able to catch up to 1990s netsec, and by then the manufacturers will be two decades ahead and foreign intelligence services even further beyond that.

Our government is doomed, and taking us down with it.

Re:Chrome may start restricting requests to private networks by Retric on Tuesday November 16, 2021 @04:34PM (#29246607)
Almost everything the government does is extremely complicated. How about the modern coast guard search and rescue process, weather forecasting, air traffic control, making counterfeit resistant money, etc etc.

Of course it’s all stuff the government does directly like GPS that generally works even if theirs issues with version 1. Go to Healthcare.gov today and it works fine, but wow 8 years ago there where issues. People still get mileage talking about that launch presumably because it’s that unusual.

Bringing up the FTC there’s keeping the wireless spectrum clean. You can blame the Government for not solving all shorts of issues, but people complain while at the same time they largely don’t want state or federal government internet. Healthcare is the same issue, we apparently don’t want even a public option, yet somehow the government is still on the hook.

People are always going to talk up government boondoggles because that’s what’s memorable. Clean water in all 155,693 public water systems in the United States isn’t easy it’s a monumentally difficult task that works 99.9% of the time across a huge range of public and private organizations managed by a huge range of different locations from tiny towns to vast cities. Of course if people actually trusted their water then bottled water would be less popular…

Re:Chrome may start restricting requests to private networks by technobabbler on Wednesday November 17, 2021 @10:12AM (#29254081)
Almost anything any government does is extremely complicated, and yet most of the developed ones succeed in ways our fails at. Why are we unique? Countries poorer than us, less dense than us, smaller than us, still manage to provide many basic services, rights, protections, and guarantees that ours does not. This is American exceptionalism gone awry.

Those things you mentioned aren't recent developments. Yes, there was a time when our government was capable of producing good output. What happened? Why are we still judging today's government by its successes of decades past...? Most of what you mentioned is literally last-century tech. The world has moved on; our government has not.

> You can blame the Government for not solving all shorts of issues, but people complain while at the same time they largely don’t want state or federal government internet.

Maybe there's one class of issues that government can't deliver on because the public mandate isn't quite there yet, like single-payer healthcare. But there's another class of issues that the public DOES want, the government already wrote the laws and allocated the budget for, and then did absolutely nothing about (like rural broadband grants basically going to corrupt telcos, with zero real enforcement). That has nothing to do with the lack of public will, just sheer incompetence and corruption.

Then there's the outright unconstitutional things, like warrantless wiretapping or drone assassinations of US citizens... to say nothing of recent developments, like Roe v Wade.

It's not that our boondoggles our more visible, it's that we fail at providing basic services for a huge portion of the population -- things that most other developed democracies can provide without much issue or controversy. By that measure, we fall far short.

Re:Chrome may start restricting requests to private networks by Retric on Saturday November 20, 2021 @11:24AM (#29289432)
It’s generally possible to find individual governments that do just about any specific thing better than the US gov, but that’s not to say each of those countries is better in every way. The best healthcare isn’t in the country with the lowest crime, least corruption, down a list where the 2nd country is then second on every criteria. Further only looking at US failures ignores how other counties fail in different ways. The UK’s land situation is seriously messed up and yet we rarely consider that when comparing governments. I am not going to say the US is #1, but it’s a long way from abject failure.

Also when you excluded say Nigeria and in fact most counties then every remaining country is going to seem worse simply because you just arbitrarily raised the standards. It’s not US exceptionalism to simply say few countries or groups of countries have landed anything on Mars which is freaking difficult. Sure, providing great healthcare is more important, but it’s also something very few counties have done well.

In the detracting from success by looking at unrelated failures misses my argument, at best it speeks to the likelihood of success not the possibility.

Re:Chrome may start restricting requests to private networks by technobabbler on Wednesday November 24, 2021 @02:57AM (#29327804)
(Sorry for the late reply, didn't see your response until now.)

So what do you think is a fairer way to measure governments? Ratio of important successes to important failures? A matrix of weighted policies and implementation scores?

You'd probably end up with something similar to to the UN's human development index (http://hdr.undp.org/en/composite/HDI), in which the US ranks #17, behind Norway, Ireland, Switzerland, Hong Kong, Iceland, Germany, Sweden, Australia, Netherlands, Denmark, Finland, Singapore, the UK, Belgium, New Zealand, and Canada. All of those are perfectly livable countries. My only criterion was "developed democracies", and Hong Kong isn't even much of a democracy anymore. I don't think that's an unreasonably high bar.

Our government is just on the low end of mediocre compared to other developed democracies, at least by the metrics I can think of.

If you can think of a better metric, I'm all ears.

Re:Chrome may start restricting requests to private networks by eesmith on Tuesday November 16, 2021 @03:09AM (#29238120)
Couldn't a malicious page use an IMG URL to issue the GET request, as in <img src="http://lighting.londons_explorer/cm?POWER%20ON">?
Re:Chrome may start restricting requests to private networks by londons_explore on Tuesday November 16, 2021 @07:26AM (#29239725)
Yes
Re:Chrome may start restricting requests to private networks by eesmith on Tuesday November 16, 2021 @04:05PM (#29246337)
Wee! I think I'll add that to my repo so you'll know when you're looking at my code. :)