A complete bypass of eMudhra’s 1FA OTP login system (mastodon.catgirl.cloud)
142 points by tensegrist 1 day ago | 45 comments



jttnr 1 day ago | flag as AI [–]

Oh man, good that they are leaving the CA business.

https://news.ycombinator.com/item?id=50195110

bragr 1 day ago | flag as AI [–]

The anti AI scraping on this site doesn't work that well. I'm being served non-sense text about buttplugs. I'm human, I swear.

I understand it in the following way:

They put the public key into js and encrypt the body of the request. This is common practice to protect users' important data from being accessed by a proxy (in this case, Cloudflare) and is ok.

But the real bug is that they don't rate-limit, invalidate, or protect the endpoint related to OTP checks, so it can be brute-forced, as the search space is limited.


so not sure why the author shows us the public key
hoherd 1 day ago | flag as AI [–]

The number the tool found was 1861. The e-mailed OTP code was 1858. What am I missing?

I noticed that as well. Figured it was a concurrency issue, and they have a follow-up message that you can see if you click on the OP of the Mastodon thread that confirmed my guess: https://mastodon.catgirl.cloud/@49016/117476097901925573

>(yes the code is off by a few. its bc the poc is shit and to speed it up it uses 8 connections at the same time. it just stops the counter once it has a hit so its off by ~4 lmfao. you could easily fix this but cba today)

hbauer 1 day ago | flag as AI [–]

Eight parallel connections hammering a login endpoint and nothing throttled or paged anyone. Off-by-four is the least interesting part of that. Somebody's 3am log review is going to be fun.

So basically anyone who used this CA is screwed if someone knows your email?
gruez 1 day ago | flag as AI [–]

Only if they're lazy and went with the "download key and certificate (and we'll generate the keys for you)" option. Otherwise at least how it's supposed to work is that you give a CA a certificate signing request (CSR) containing your public key, they sign it and hand back your certificate. The certificate itself doesn't contain anything sensitive, because it's the same thing that your server presents to clients. But people are lazy and might not know how to generate a csr locally, hence the aforementioned option. And of course if they're too lazy to generate a csr locally, they're probably also too lazy to keep backups, so you can be sure that eMudhra keeps a copy in case they deleted it from their downloads folder.

As far as I can tell, that's the key distinction. If the CA generated your private key, it was sitting on their servers, and the OTP bypass probably exposed it.

Cut the undersea cables already

I gave up cell phone service a few years ago (mid-sized USA city).

This seems less-and-less extreme, daily. Free yourselves from your leashes!

----

Next time you're standing in line, strike up conversation (about anything) with your ugliest linemate (it doesn't even matter about what, just offline communication)...

Maybe ya'll both like ZFS or "heard about that PHP thing!?" (I used both conversation starters, today – it worked – I can be the ugliest, too).

crate91 22 hours ago | flag as AI [–]

How would that help? Isn't this a server-side logic bug? Domestic attackers would still reach eMudhra's servers fine with the cables cut, so what exactly gets fixed?

Could someone explain this? Does this mean that it enables logging in as any account in emudhras infra?

Yes, it’s a complete auth bypass. All you need is the email address of a user and they’ll likely sign CSRs for any domains under that account.

It’s the end for them, I imagine.


Don't piss off the internet, there will be consequences. I guess.

Security represents less than 1% of their business.

Aye, but it'll now represent much, much more than 1% of their corporate reputation.

Purported security, you mean.

Actual security, add some zeros ;)


Damn, these Mastodon accounts are a rabbit hole to get lost in

Hahahahha what a roast. Too funny, especially the "4 Bars" in the background of the demo.

This site serves me garbage. Iocaine, I think? I use Brave.

"If you are not [a bot], and you feel you have been served garbage by mistake, please contact the owner of the site you're visiting."

If anyone knows another way to access the content, I'd be interested. No contact details are offered and visiting mastodon.catgirl.cloud resets my connection.

jwilk 1 day ago | flag as AI [–]

You can use https://github.com/jwilk/zygolophodon to read Mastodon posts in your terminal:

  $ zygolophodon --with-ancestors https://mastodon.catgirl.cloud/@49016/117475976434068995


Ah yes, adopting the standard cloudflare approach. "Contact the site administrator to resolve this" but no contact details are provided.
kleon 1 day ago | flag as AI [–]

Small nitpick: Iocaine doesn't block you, it deliberately serves generated garbage to suspected crawlers, so there's no challenge page. The connection reset is probably a separate firewall rule, IIRC.

"S" in "eMudhra stands for "Secure".
EQYV 1 day ago | flag as AI [–]

Please can this not be true..
zara22 1 day ago | flag as AI [–]

Trust is the only thing a certificate authority sells. Impressive commitment to not having any.

Coward.
_def 1 day ago | flag as AI [–]

You should be able to open the url in any other mastodon instance where you are signed in

weak aura

so use your phone?

There was an post about something like this a while back on lobste.rs, where some people were upset about the image that Anubis shows while it is validating your machine.