7 ms·
Move to the cloud they said. It will be more secure then your intranet they said. Only fools pay for their own Ops team they said. I’m so old and dumb that I d
by muststopmyths 1y ago
Move to the cloud they said. It will be more secure then your intranet they said. Only fools pay for their own Ops team they said.
I’m so old and dumb that I don’t even understand why an app for internal Microsoft use is even accesible from outside its network.
- jameskilton 1y agoThe last decade has seen an increase push in what Google started calling "Zero Trust"[0] and dropping VPNs entirely. The issue being that once someone got into a VPN it was much, much harder to prevent them from accessing important data. So everything "internal" is now also external and required to have its own layer of permissions and the like, making it much harder for, e.g. the article, to use one exploit to access another service. [0] https://cloud.google.com/learn/what-is-zero-trust https://cloud.google.com/learn/what-is-zero-trust
- ronbenton 1y agoDoes having a VPN/intranet preclude zero trust? It seems you could do both with the private network just being an added layer of security.
- AWebOfBrown 1y agoIt doesn't, but from my perspective the thinking behind zero trust is partly to stop treating networking as a layer of security. Which makes sense to me - the larger the network grows, the harder to know all its entry-points and the transitive reach of those.
- tw04 1y agoA VPN? Yes, by definition. Zero trust requires that every connection is authenticated and users are only granted access to the app they request. They never “connect to the network” - something brokers that connection to the app in question. VPN puts a user on the network and allows a bad actor to move laterally through the network.
- raesene9 1y agoIt doesn't have to. There's nothing to stop you using a VPN as an initial filter to reduce the number of people who have access to a network and then properly authenticating and authorizing all access to services after that. In fact, I'd say is a good defence-in-depth approach, which comes at the cost of increased complexity.
- nicce 1y agoIt also prevents the whole world for scanning your outdated public interfaces. Before they can do that, they need to bypass VPN. If there are tens of different services, is it more likely that one of them has vulnerablity than both VPN and service has? And vulnerability in VPN alone does not matter if your internal network is build like it is facing public world. You might be able to patch it before vulnerability in other services is found.
- tw04 1y agoI’m not saying you can’t have your own definition. But I am saying that a VPN isn’t zero trust, by the agreed upon industry definition. There’s no way to make a VPN zero trust, and zero trust was created specifically to replace legacy VPNs.
- nicce 1y agoI don’t see that really as an argument for this. You still should use VPN as an additional layer of security, assuming that you use some proper protocol. Then zero trust applies to internal network.
- gjsman-1000 1y agoRule #1 of business, government, or education: Nobody, ever, ever, does what they “should.” Even here: Hacker News “should” support 2 factor authentication, being an online forum literally owned by a VC firm with tons of cash, but they don’t.
- mdaniel 1y agoI'm firmly in the pro 2FA camp, but merely as a point of discussion: the Arc codebase is already so underwater with actual features that would benefit a forum, and if I changed my password to hunter2 right now the only thing that would happen is my account would shortly be banned when spammers start to hate-bomb or crypto-scam-bomb discussion threads. Dan would be busy, I would be sad, nothing else would happen For accounts that actually mean something (Microsoft, Azure, banking, etc), yes, the more factors the better. For a lot of other apps, the extra security is occupying precious roadmap space[1] 1: I'm intentionally side-stepping the "but AI does everything autonomously" debate for the purpose of this discussion
- ocdtrekkie 1y agoEveryone else: I need unique 128-character passwords for every site I ever visit with unphishable FIDO keys for MFA. Me: I didn't give the store website permission to save my credit card. If someone logs in, they'll know I ordered pants there.
- raesene9 1y agoShould they? From a threat modeling perspective, what's the consequences for HN of a user having their password compromised? Are those consequences serious enough to warrant the expense and added complexity of adding MFA?
- glitchc 1y agoThe zero trust architechture implies (read: requires) that authentication occurs at every layer. Token reuse constitutes a replay attack that mandatory authentication is supposed to thwart. Bypass it and the system's security profile reverts back to perimeter security, with the added disadvantage of that perimeter being outside your org's control.
- ocdtrekkie 1y agoZero trust is a good concept turned into a dumb practice. Basically people buying Google's koolaid for this forgot about "defense in depth". Yeah, authenticating every connection is great, throwing a big effing moat around it too is better. The other thing is most companies are not Google. If you're a global company with hundreds of thousands of people who need internal access, moats may be non-ideal. For a business located in one place, local-only on-premise systems which block access to any country which they don't actively do business with is leaps and bounds better.
- ExoticPearTree 1y agoThe big problem with the ZT approach is that smaller shops don't have a lot of developers and testers (some maybe with a security inclination) to be certain to a somewhat high degree that their app is written in a secure manner. Or be able to continuously keep abreast of every new security update Microsoft or other IdP makes to their stack. It is easy for Google/Microsoft and any other FAANG like company to preach about Zero Trust when they have unlimited (for whatever value of unlimited you want to consider) resources. And even then they get it wrong sometimes. The simpler alternative is to publish all your internal apps through a load balancer / API gateway with a static IP address, put it behind a VPN and call it a day.
- themafia 1y ago> publish all your internal apps through a load balancer / API gateway with a static IP address, put it behind a VPN and call it a day. Or just use Cognito. It can wrap up all the ugly Microsoft authentication into it's basic OAuth and API Gateway can use and verify Cognito tokens for you transparently. It's as close to the Zero Trust model in a Small Developer Shop we could get.
- tomjen3 1y agoThat is probably still good advice for most companies. Joe's roof fixing business may be the best roof fixing business in 3 states, but would you want them to run their own server for their website, email, and booking? Anyone who is on this forum is capable of building their own stuff, and running their own server, but that is not most people.
- motorest 1y ago> Move to the cloud they said. It will be more secure then your intranet they said. Only fools pay for their own Ops team they said. It seems that the fundamental issue surfaced in the blog post is that developers who work on authorizarion in resource servers are failing to check basic claims in tokens such as the issuer, the audience, and subject. If your developers are behind this gross oversight, do you honestly expect an intranet to make a difference? Listen, the underlying issue is not cloud vs self-hosted. The underlying issue is that security is hard and in general there is no feedback loop except security incidents. Placing your apps in a intranet, or VPN, does nothing to mitigate this issue.
- tonyhart7 1y ago"The underlying issue is that security is hard and in general there is no feedback loop except security incidents." this is tbh, computer architecture is already hard enough and cyber security is like a whole different field especially if the system/program is complex
- raesene9 1y agoBut of course it does provide an additional layer of security that indeed could have reduced the likelihood of this issue being exploited. For me, the core of the discovered issue was that applications intended purely for use by internal MS staff were discoverable and attackable by anyone on the Internet, and some of those applications had a mis-configuration that allowed them to be attacked. If all those applications had been behind a decently configured VPN service which required MFA, any attacker who wanted to exploit them would first need access to that VPN, which is another hurdle to cross and would reduce the chance of exploitation. With a target like MS (and indeed most targets of any value) you shouldn't rely solely on the security provided by a VPN, but it can provide another layer of defence. For me the question should be, "is the additional security provided by the VPN layer justified against the costs of managing it, and potentially the additional attack surface introduced with the VPN".
- 7952 1y agoI work at a corporate that uses FortiNet. Not just VPN but for AV and web filtering. It aggregates traffic together, increases the attack surface and makes us vulnerable to zero day attacks. All to protect sensitive data that is almost entirely composed of connections of Microsoft software to Microsoft servers. And using all the normal SSO/authorisation stuff. It probably is required from a compliance perspective, but just seems like a massive tradeoff for security .
- xtajv 1y agoI guess the term "defense in depth" has fallen out of fashion?
- securesaml 1y agoFor me, I don't think that the application is public exposed is really the problem (i.e. not in intranet). I think the real problem is that these applications (Entra ID) are multi-tenant, rather than a dedicated single-tenant instance. Here, we have critical identity information that is being stored and shared in the same database with other tenants (malicious attackers). This makes multi-tenancy violations common. Even if Entra ID had a robust mechanism to perform tenancy checks i.e. object belongs to some tenant, there are still vulnerabilities. For example, as you saw in the blog post, multi-tenant requests (requests that span >= 2 tenants), are fundamentally difficult to authorize. A single mistake, can lead to complete compromise. Compare this to a single tenant app. First, the attacker would need to be authenticated as an user within your tenant. This makes pre-auth attacks more difficult.