News for hackers. Stuff that matters.
Re:Uber investigating breach of its computer systems by badrabbit on Friday September 16, 2022 @12:54AM (#32862250)
Why are people talking about MFA on this thread. Look, as someone whose day job is responding to such incidents, someone targeting Uber and is persistent will get in, MFA or not. Infostealers for Mac are a thing (Uber is a mac heavy shop I hear) and that's all it takes to steal cookies and tokens post-mfa, or why even bother with that, if you're running code just make it a reverse shell.

The big screw up here is powershell script on a network share. A cheap pentest would have uncovered something like that.

Modern security is not perimeter focused where you try to keep the bad guys out. Yes, you should do MFA,firewalls,vpns the whole schtick but(!!) your presumption should always be that threat actors already have a foot-hold in your network. This is very important because it helps you focus on basic things like scripts and gpos with creds in them but also you treat internal devices the same as internet exposed devices. It's sort of what the whole "zero trust" thing is about as well. In other words, host/user compromise is a given but lateral movement should be at least as difficult as breaching the perimeter.

But my prediction is, just like top commenters here, they will slap MFA on it and of course cleanup scripts with creds and call it fixed until the next compromise. Oh and FYI, MFA on VPNs is a PITA, that's rarely done for good reason, instead you use device certificates in addition to passwords which is what the recommendation should be not yubikeys or webauthn (vpn!=web??) because VPNs need to reconnect and you can't have people insert a yubi each time their connection drops. Ideal setup would have 7 day valid (or however long is reasonable for users to disconnect their PC and remain out of office) mutual-auth certs+ocsp getting conditionally reissued new certs to remain connected (compliance stuff like patching, unapporoved software,security alerts for the device). If you think about it, you typically issue users two yubikeys not just one so if the backup gets stolen you have a problem depending on how easy it is to social engineer users or reset their password with a good yubikey but a stolen laptop means certs+password revoked immediately.

Re:Uber investigating breach of its computer systems by _Adam on Friday September 16, 2022 @05:33AM (#32864044)
The powershell script is a minor part of the screw up. The real issues are multitude...

1) hardcoding actual production credentials in a script at all. Seriously what the fuck.

2) Thycotic not enforcing MFA for the keys to the kingdom admin account. Even my cellphone provider has better security.

The root cause is likely the assumption that the VPN is sacred. This needs to die asap - your internal network should assume the VPN is wide open and secure everything accordingly. Defense in depth not eggshells.

Re:Uber investigating breach of its computer systems by badrabbit on Friday September 16, 2022 @10:06AM (#32866194)
So, on that, it is surprisingly difficult to get rid of hard coded credentials and funnily vendors like tychotic and hashicorp are supposed to prevent that by having some api thing that integrates with scripts.

That said, tychotic,cyberark and pals that manage credentials almost always need domain admin. I think just moving to full AAD and azure key vault might be better but realistically this is the nature of the beast. If I had to guess the "network share" is probably a GPO on a DC that is used by tychotic, anything short of that is ridiculously bad. GPOs are shared to all machines so they can be pushed to them so you see creds in there sometimes if scripts need them, the thinking being "if the bad guys are in the network we have bigger issues" (again with the perimeter centric intuitive security mindset).

Re:Uber investigating breach of its computer systems by spydum on Friday September 16, 2022 @01:34PM (#32869414)
the cute answer to all this is always: how do people think your service accesses the secret vault? its anlther credential.

the real issues are tougher, like why does this one cred have access to all these other creds, and how or if they were auditing usage of that cred from authorized client devices.. but all of these problems take a lot of effort and care to solve. and as history has shown, you only have to mess up once.

Re:Uber investigating breach of its computer systems by badrabbit on Friday September 16, 2022 @07:36PM (#32873395)
I agree but an api key for a PAM service will get you constrained access (ideally) to a specific resource instead of a kerberos ticket you can take with you as part of your ticket collection. It's supposed to be better but granting the resource permission like GCP does is probably better (but messier too).
Re:Uber investigating breach of its computer systems by spydum on Saturday September 17, 2022 @09:44AM (#32877479)
for sure; the real failure in this setup was again, having a single credential with access to so many other critical secrets. I have yet to see a secret vault that had good analytics for this kind of thing - it assumes you have designed your secret hierarchy and permissions appropriately.

ideally, there would be a warning for identities with access to too many secrets.

Re:Uber investigating breach of its computer systems by fjfbsufhdvfy on Friday September 16, 2022 @07:38AM (#32864751)
I'm curious what's the alternative if the script must have those credentials to do its job.
Re:Uber investigating breach of its computer systems by numbsafari on Friday September 16, 2022 @09:07AM (#32865582)
As another commenter pointed out: you authorize the executor of the script, not the script itself.

Consider how an AWS instance runs code that is able to ... talk back to the rest of the AWS system.

For code that is not being directly run by a tethered meatball, use some form of workload identity [1].

When you are talking to another system that that can't understand your workload identity (legacy apis, etc.), keep those credentials in a tool like Vault[2], Secret Manager[3], etc. That system can/should handle credential rotation wherever possible, but it also ensures that the workload running the script is authorized to access the credentials in question. This is far superior to passing via env vars, but even that is better than hard-coding in the script itself. Oh, and using a memory-backed mount that contains those vars is better than env vars because there's less risk of leaking those when you fork.

Key points:

- externalize all secrets

- prefer workload identity

- prefer a workload identity aware secret store / manager

- fall back to fs mounted secrets and then env vars

[1] https://spiffe.io

[2] https://www.vaultproject.io

[3] https://docs.aws.amazon.com/secretsmanager/latest/userguide/...

edit: formatting now that I'm on a desktop

Re:Uber investigating breach of its computer systems by ThePadawan on Friday September 16, 2022 @08:09AM (#32865021)
As sibling points out: Don't authorize the script, authorize whoever is executing the script.
Re:Uber investigating breach of its computer systems by bad416f1f5a2 on Friday September 16, 2022 @07:59AM (#32864908)
Environment variables are an easy first pass at ensuring a script at rest isn’t dangerous.
Re:Uber investigating breach of its computer systems by lapser on Friday September 16, 2022 @08:55AM (#32865459)
Besides what the sibling comments said, it's very unlikely to that any script needs keys to the kingdom. Credentials should be created with limited access, just enough for the script to do its thing.
Re:Uber investigating breach of its computer systems by badrabbit on Friday September 16, 2022 @10:08AM (#32866219)
Not for PAMs like tychotic their service accounts are domain admins
Re:Uber investigating breach of its computer systems by arbitrage on Friday September 16, 2022 @08:04AM (#32864960)
encryption based authentication (keys or certs) that can be revoked.

welcome to 1996.

Re:Uber investigating breach of its computer systems by badrabbit on Friday September 16, 2022 @10:07AM (#32866204)
Stuff like...tychotic helps prevent that :P
Re:Uber investigating breach of its computer systems by philliphaydon on Friday September 16, 2022 @01:25AM (#32862423)
There’s a trend of storing MFAs in password managers like 1Password. If the password manager is compromised then what was the point in having MFA…
Re:Uber investigating breach of its computer systems by vanshg on Friday September 16, 2022 @02:03AM (#32862636)
So that you're protected from data breaches of the service itself (e.g. revealing a reused password)
Re:Uber investigating breach of its computer systems by philliphaydon on Friday September 16, 2022 @03:11AM (#32863075)
That doesn't have anything to do with MFA. If for some reason your 1Password masterpass is compromised, the hacker has access to your passwords and your MFA tokens.

If you use 1Password and say Authy (Assuming your Authy pass isn't in 1Password) or Google Authenticator. Then all services with MFA wont be compromised if the 1Password masterpass is...

Re:Uber investigating breach of its computer systems by bwoodruff on Friday September 16, 2022 @01:06PM (#32869029)
Hi there!

Not quite. An attacker would need either your account password AND an already authorized device, OR they would need both your account password AND Secret Key. If you have 2FA enabled for your 1Password account, and the attacker doesn't have one of your authorized devices, they would also need your second factor (TOTP or hardware key).

Additionally our Principal Security Architect, Jeff Goldberg, wrote some thoughts on this subject, here: https://blog.1password.com/totp-for-1password-users/

- Ben, 1Password

Re:Uber investigating breach of its computer systems by philliphaydon on Saturday September 17, 2022 @03:54AM (#32875617)
So you're banking on the idea that in order to login to 1Password you need an authorized device as your layer of security.
Re:Uber investigating breach of its computer systems by alwaysanon on Saturday September 17, 2022 @06:49PM (#32882383)
I used to think that way but then I had a phone die and lost my Google Authenticator - I lose access to many servivces and had to go through the pain of resetting so many MFAs.

Then I was like "1Password will sync these to my new phone so I never lose access to everything again? Fine."

I also started to get questions from my wife around how she could access things in the event of my death and it seemed having a 1Password printout in a safe deposit box she could access - and having that include the MFA too - was a good idea.

My master password in 1Password is quite secure (A long obscure sentence and with special characters etc.), I have it auto-lock pretty quickly (thanks TouchID!) and I guess that will have to be enough unless I shift to something like a Yubikey on my keychain for things down the road...

Re:Uber investigating breach of its computer systems by brianoconnor on Friday September 16, 2022 @09:28AM (#32865802)
The benefit over SMS or Authenticator apps is that it doesn't pre-fill codes (and passwords) if the URL doesn't match. But yeah, I also have mixed feelings about it. Just slightly better than SMS maybe.
Re:Uber investigating breach of its computer systems by marcosdumay on Friday September 16, 2022 @12:13PM (#32868251)
The point is to have the same amount of security of a strong password, with the same amount of hassle as a strong password.

Not every little SaaS needs MFA.

Re:Uber investigating breach of its computer systems by AtNightWeCode on Saturday September 17, 2022 @10:41AM (#32877903)
Passwords are not "real" secrets. Don't put real secrets into password managers.
Re:Uber investigating breach of its computer systems by insanitybit on Friday September 16, 2022 @01:19AM (#32862393)
Because auth to the VPN should have required a device cert and/ or unphishable 2FA. Also because the SMS phish was one of the first details leaked. Obviously access to the VPN shouldn't also be a full system compromise. There are many things to criticize here, we can point all of them out.
Re:Uber investigating breach of its computer systems by badrabbit on Friday September 16, 2022 @10:12AM (#32866265)
Maybe that was still required with the vpn, access vpn can also mean compromise a device, they only said yes to an attack chain someone was asking them about in the screenshot. I agree with you to the most part but at the time of posting the discussion was entirely around initial access and mfa which is not inline with how security is done these days.
Re:Uber investigating breach of its computer systems by Dowwie on Friday September 16, 2022 @08:24AM (#32865166)
I'm curious what your take is on the incident detection side of things. Would Grapl have helped Uber detect anomalies?
Re:Uber investigating breach of its computer systems by pyrale on Friday September 16, 2022 @06:17PM (#32872724)
It is irrelevant though. If your whole multi-billion company folds like a wet towel when one user is compromised, the question isn't how that user is going to get pwned, it's when.

Relevant xkcd: https://xkcd.com/538/

If you really really want one user to control everything, maybe they should work on a desktop station with a guard at the door.

Re:Uber investigating breach of its computer systems by kccqzy on Monday September 19, 2022 @10:35PM (#32907013)
> Infostealers for Mac are a thing (Uber is a mac heavy shop I hear)

Block unknown executables on company machines. Google developed Santa to protect themselves: https://github.com/google/santa

> and that's all it takes to steal cookies and tokens post-mfa,

Make post-MFA cookies and tokens short-lived. Require MFA re-authentication at least daily.

> or why even bother with that, if you're running code just make it a reverse shell.

All outbound connections should be strictly monitored, especially from production servers, which should have no ability to connect to the Internet at all. With modern dependency management, that's harder for build servers, but still doable.