frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

France's homegrown open source online office suite

https://github.com/suitenumerique
125•nar001•1h ago•64 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
352•theblazehen•2d ago•122 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
52•AlexeyBrin•3h ago•11 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
738•klaussilveira•17h ago•232 comments

Reinforcement Learning from Human Feedback

https://arxiv.org/abs/2504.12501
30•onurkanbkrc•2h ago•2 comments

Coding agents have replaced every framework I used

https://blog.alaindichiappari.dev/p/software-engineering-is-back
89•alainrk•2h ago•82 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
992•xnx•23h ago•564 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
121•jesperordrup•7h ago•55 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
85•videotopia•4d ago•18 comments

Ga68, a GNU Algol 68 Compiler

https://fosdem.org/2026/schedule/event/PEXRTN-ga68-intro/
26•matt_d•3d ago•5 comments

Making geo joins faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
144•matheusalmeida•2d ago•39 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
250•isitcontent•17h ago•27 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
260•dmpetrov•18h ago•136 comments

Cross-Region MSK Replication: K2K vs. MirrorMaker2

https://medium.com/lensesio/cross-region-msk-replication-a-comprehensive-performance-comparison-o...
6•andmarios•4d ago•1 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
350•vecti•19h ago•157 comments

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
7•sandGorgon•2d ago•2 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
402•ostacke•23h ago•104 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
520•todsacerdoti•1d ago•253 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
319•eljojo•20h ago•196 comments

What Is Ruliology?

https://writings.stephenwolfram.com/2026/01/what-is-ruliology/
52•helloplanets•4d ago•52 comments

Microsoft open-sources LiteBox, a security-focused library OS

https://github.com/microsoft/litebox
365•aktau•1d ago•189 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
445•lstoll•1d ago•294 comments

Dark Alley Mathematics

https://blog.szczepan.org/blog/three-points/
99•quibono•4d ago•26 comments

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
288•i5heu•20h ago•244 comments

Female Asian Elephant Calf Born at the Smithsonian National Zoo

https://www.si.edu/newsdesk/releases/female-asian-elephant-calf-born-smithsonians-national-zoo-an...
48•gmays•12h ago•22 comments

Was Benoit Mandelbrot a hedgehog or a fox?

https://arxiv.org/abs/2602.01122
26•bikenaga•3d ago•15 comments

I spent 5 years in DevOps – Solutions engineering gave me what I was missing

https://infisical.com/blog/devops-to-solutions-engineering
163•vmatsiiako•22h ago•74 comments

PC Floppy Copy Protection: Vault Prolok

https://martypc.blogspot.com/2024/09/pc-floppy-copy-protection-vault-prolok.html
79•kmm•5d ago•13 comments

I now assume that all ads on Apple news are scams

https://kirkville.com/i-now-assume-that-all-ads-on-apple-news-are-scams/
1100•cdrnsf•1d ago•483 comments

Understanding Neural Network, Visually

https://visualrambling.space/neural-network/
313•surprisetalk•4d ago•46 comments
Open in hackernews

'123456' password exposed chats for 64M McDonald's job applicants

https://www.bleepingcomputer.com/news/security/123456-password-exposed-chats-for-64-million-mcdonalds-job-applicants/
141•nan60•7mo ago

Comments

deafpolygon•7mo ago
Incredible! That’s the combination to my matched luggage!
jonplackett•7mo ago
For the uninitiated (ie probably anyone under 35)

https://m.youtube.com/watch?v=a6iW-8xPw3k

dylan604•7mo ago
Earlier this year, Mel posted a video saying they are making a sequel.
jonplackett•6mo ago
As in a sequel to that clip or a sequel to the show?
sans_souse•7mo ago
The spoof prophecies are being proven! now we're all stuck in a real-life Spaceballs movie.
bigmattystyles•7mo ago
Just in time for the sequel!
mattl•7mo ago
Check your luggage for fries
bsuvc•7mo ago
It sounds like there were two separate problems:

The first was that 123456 was the credentials for the admin panel.

The second was an insecure direct object reference, where the lead_id querystring parameter can be changed on an API call to retrieve another applicant's data.

hardwaresofton•7mo ago
A third problem that senior engineers might recognize: using numeric IDs on an outward facing object. UUIDs would have made this impossible as well
bsuvc•7mo ago
Not impossible, just more difficult to guess.

"Security through obscurity" isn't really good enough.

tyre•7mo ago
Yes and…

UUIDs aren’t “just more difficult to guess.” They are inconceivably harder to guess.

> Put another way, one would need to generate 1 billion v4 UUIDs per second for 85 years to have a 50% chance of a single collision.

0cf8612b2e1e•7mo ago
The security is that your server will crash from overload long before someone can guess the ids.
zarzavat•7mo ago
You are both right. UUIDs, if randomly generated from a CSPRNG are impossible to guess. But not all UUIDs are generated from a secure RNG, or use randomness at all.
xeromal•7mo ago
I may be a dingleberry but who doesn't use uuidv4 for everything?
hardwaresofton•7mo ago
UUIDv7 indexes better in databases
cobbal•7mo ago
UUIDv4 may or may not use a cryptographically secure random number generator. Python's UUID library, for example, falls back to the insecure 'random' module. Given a handful of outputs, it's possible to predict future ones.
0cf8612b2e1e•7mo ago
Gasp! I had no idea about the Python implementation. Not that I do anything where it would matter (just need a random id), but for an already slow language, I would prefer the safer default.
maple3142•7mo ago
For python specifically, the uuid4 function does use the randomness from os.urandom, which is supposed to be cryptographically random on most platforms.
shakna•7mo ago
Uh... Come again?

    def uuid4():
        """Generate a random UUID."""
        return UUID(bytes=os.urandom(16), version=4)
https://github.com/python/cpython/blob/3.13/Lib/uuid.py
cobbal•6mo ago
Nice. Looks like I was looking at an old version of the file. https://github.com/python/cpython/commit/09ba98436444d2a4e11...
shakna•6mo ago
Yeah, Python went through a big shakeup around secure randomness when they put together the "secrets" library, around a decade ago. A lot of that also got backported on most OSs.

So there really shouldn't be anyone using that today, thankfully.

hardwaresofton•7mo ago
Yes, you are technically right -- I should have said "functionally impossible". It's not actually impossible, but close enough for the average random onlooker.
lelandbatey•7mo ago
Using numeric IDs on an outward facing object is, for the most part, totally fine. It's a serious tradeoff to ditch the nice properties of numerical IDs and the legibility they provide in order to cargo-cult a "we must reveal nothing" approach, as you would here via UUID. It also misses the point of the actual security lesson: no matter the identifier, you need to be applying access controls to your data. Even if your UUIDs were generated via 100% airtight cryptographically random sources, you have to, y'know, communicate with them. That means you'll probably leak them, expose them, or other folks will collect them (often incidentally via things like system logs). If all it takes to gain access to a thing is knowing the identifier of that thing, you've blown it in a huge way. Don't stress about the theoretical benefits of something like an opaque identifier and then completely neglect the necessary real world access control.

Can you tell I've been scarred by discussing designs with folks who focus on the "visible" problems without thinking about the fundamental question of "is this secure"?

mattl•7mo ago
Yes it makes very little difference if I can see all your public published blog posts on a WordPress site by iterating the number.
swat535•6mo ago
Security by obfuscation is theater.
hardwaresofton•7mo ago
I think I disagree with "totally fine"... Even if that were true though, this case is definitely a point where you wouldn't want to give away information with a numeric ID. Giving away # of applications/growth of that over time is definitely business information that arguably should not be discernible.

The point is not that UUIDs are magically secure, it's that they mean nothing to whoever gains access except a single job app. The assumption is that they will get out (they're in a public URL), and that they will have no meaning when they do.

It's a defense-in-depth thing IMO -- cargo-culting this approach defends you even when you don't do the other things right. It's simple -- with a non-zero probability that the actual access control is faulty, do you want a default that protects you or doesn't. What's the intentional trade we're going for? More DB perf? Easier to type URLs? There are other ways to deal with those

> Can you tell I've been scarred by discussing designs with folks who focus on the "visible" problems without thinking about the fundamental question of "is this secure"?

Yes :(

overfeed•7mo ago
> If all it takes to gain access to a thing is knowing the identifier of that thing, you've blown it in a huge way.

Defense in depth is a thing, so even if you make a mistake in one place, and the attacker gets complete access - as what happened with the McApplicaton here - they won't be able to download your entire db within minutes. Even with zero authentication, non-guessable identifiers will slow down the exfiltration by several factors from dozens/hundreds of records per second to one record per $MANY_DAYS, with lots of 404s for the defenders to look at.

> That means you'll probably leak them, expose them, or other folks will collect them (often incidentally via things like system logs)

The additional friction of acquiring the UUIDs from a different channel is beneficial to defenders, compared to decrementing or incrementing IDs, which is trivial to do, and doesn't need RCE. It's the difference between "All users' data was exfiltrated" and "Only a couple/handful of accounts were affected", and this can make or break the breached company.

jszymborski•7mo ago
Ok, this is probably a stupid, very bad, no good idea considering I've not heard of people doing this, but can't you retain many of the benefits of numerical IDs but also the secrecy of UUIDs by using an HMAC ?

With HMAC, you can still ask for some sequential IDs

SipHash128(0, KEY) = k_0

SipHash128(1, KEY) = k_1

You get the same number of bits as a UUID.

You can't, however, sort by IDs to get their insertion sequence, however. For that you'd need something like symmetric encryption but this is already a bad idea, no reason to make it worse.

hardwaresofton•7mo ago
You could also "just" have an internal-use only numeric ID, or use a UUIDv7.
sam_lowry_•7mo ago
or ULIDs or any other partially sortable ids.
sebazzz•7mo ago
ULID are not necessarily sortable, just UUIDs consensed in a shorter string by using more characters than 0-9A-F
sam_lowry_•7mo ago
ULID = Unique Lexicographically sortable IDentifier ;-)
jszymborski•6mo ago
ULIDs are sorta the opposite of the HMAC method, where you can't query for the nth ID, but you can sort the IDs.
redhale•6mo ago
TIL about UUIDv7 -- thanks!
hardwaresofton•6mo ago
No worries! It's just now finally starting to get everywhere -- Postgres is going to get it in 18 by the looks of things :)

https://www.postgresql.org/docs/18/functions-uuid.html

Natsu•7mo ago
123456 was both the username & password, they were hit by CWE-1392 because someone failed to change the default credentials.
thaumasiotes•7mo ago
The writeup never claimed that 123456:123456 were default credentials?
Natsu•6mo ago
I've read more than just this particular writeup. See also: https://ian.sh/mcdonalds

> During a cursory security review of a few hours, we identified two serious issues: the McHire administration interface for restaurant owners accepted the default credentials 123456:123456, and an insecure direct object reference (IDOR) on an internal API allowed us to access any contacts and chats we wanted. Together they allowed us and anyone else with a McHire account and access to any inbox to retrieve the personal data of more than 64 million applicants.

thaumasiotes•7mo ago
> It sounds like there were two separate problems:

> The first was that 123456 was the credentials for the admin panel.

No. 123456 was the credentials for the test setup, which contained nothing. But you could use the IDOR to access data from the test setup.

If 123456 had been the credentials to the admin panel, there would have been no point in exploiting an IDOR - as an admin, you can just look at whatever you want.

micw•7mo ago
Wait, 64 million applicants, not applications? That's like 20% of the US population!
Volundr•7mo ago
Maybe it includes applications outside the US?
bigfatkitten•7mo ago
They use this site for hiring globally. The number of privacy regulators they will have to notify and deal with is going to make this messy.
atm3ga•7mo ago
If this was disclosed via a vulnerability disclosure or bug bounty program and there are no indicators of a data breach then it's effectively like the findings from a pen-test so very likely no regulatory reporting requirements.
mousethatroared•7mo ago
Others have said it's for the global site, but would 64 million really be that off for the US?

I just looked it up 13 of the 40k francises are in the US. Assuming linearity, thats about 21 million US applicants since they started keeping centralized, digital records.

20% of Americans younger than 40 is not a bad guess.

crazygringo•7mo ago
Which is 1,615 applicants per US franchise.

Seems totally reasonable to me.

2 shifts of 12 employees is 24 employees per day. Assume they all work there for 6 months on average, then if the system's been up for 10 years, that's 480 employees per franchise over a decade. Which means for every employee they hired, 2 were either rejected or chose not to work there.

Working at McD's is something a lot of people do for a few months when they're young.

AbstractH24•7mo ago
Also is the unit identifier for a human an email? Then one living being might be seen twice or more
yieldcrv•7mo ago
No its 64 million chatbot interactions that instantiated it at all

Its not as deep as the guesses

gnabgib•7mo ago
Discussion (125 points, 2 days ago, 69 comments) https://news.ycombinator.com/item?id=44513940
pyman•7mo ago
Please stop giving OpenAI ideas on where to find and download more data!

$ Downloading 64M transcripts...

ajsnigrutin•7mo ago
It's funny how mcdonalds did everything in their power to make it almost impossible to run their mcdonalds app on a rooted phone, but their backend infrastructure is beyond broken (security wise)
hippich•7mo ago
Btw, I wondered why they flight root on the phone at all?
ajsnigrutin•7mo ago
I have no idea... maybe they store their "coupons" locally and are afraid you'll clone them? Don't know, I eat there twice a year and it's not worth it :)

suhide in magisk makes my banking app work, but not mcdonalds :)

le-mark•7mo ago
My theory is they store payment information on the mobile app. The app connects to the store wifi automatically, even when going through the drive thru. And processes the payment then. I theorized it so they don’t store credit card info on their servers, simplifying their PCI audits. Presumably they think all that is better than preventing the app from running on rooted phones.
ceejayoz•7mo ago
The McDonalds consumer-facing app is quite possibly the worst app from a major company I've ever encountered. It's shockingly bad.
parpfish•7mo ago
The UI is atrocious.

I do computers for a living and can barely navigate and figure out what’s going on.

Keverw•7mo ago
I noticed it freezes up on me sometimes when I open it. I assume something is blocking instead of being asynchronous when it pings their servers, but instead of waiting to dismiss a loading screen it just shows the full app and like freezes.
parpfish•7mo ago
My guess is that they’ve got a million feature flags and a/b test variations going on because it’s just so tempting to “growth hack” in an app like that.
rahimnathwani•7mo ago
It can be confusing for new or infrequent users.

I use it once a week and I don't find it annoying at all, except for the bug where it will let you complete an order for an airport McDonald's, and then soon after automatically cancel the order.

ceejayoz•7mo ago
It’s not a matter of familiarity.

I can place an order in the Chick-fil-A app in about 10-20 seconds. Quick and easy.

A similar order in the McDonalds app throws up ads, unskippable animations in time sensitive spots, unresponsive or jumpy UI elements, popup alerts several times, unnecessary steps (like how the fries category has one item, but it still shows you the list view), etc.

I’ve wound up parked in the lot cursing at the app a number of times as I tap through obstacles.

rahimnathwani•7mo ago
Oh yeah, 100% agree with all those points, especially the UI jank. But I've used it enough that it's predictable. So I just wait between each tap, without consciously realising I'm doing it.
whatsupdog•7mo ago
Why does one even need an app for a fast food restaurant?
acuozzo•7mo ago
1. You can exchange privacy for 20% off.

2. Many franchises have a crummy PA system, so you can avoid this if you plan on using the drive-through.

3. Customization. It's very tedious for all involved to repeatedly request "no cheese", "no ice", "extra sauce", etc. for a very large (e.g., $100+) order.

ceejayoz•7mo ago
#3 is key for us. My kids like a plain burger. Order via a human and there’s a 50/50 chance it gets pickles and sauce anyways, so you have to run in and get a remake.

Never happens with apps.

brikym•7mo ago
I don't eat that junk but my understanding is McDonald's have segmented their customers into two groups:

1) People who just want to eat McDonald's now and don't care about apps. They will put up with the normal prices which are quite high now.

2) Cheapskate people who wouldn't go to McDonald's much due to the pricing, but can be enticed to go through deals in the app they are happy to jump through hoops to get.

Ekaros•6mo ago
Not McDonalds. But it is nice to browse options, make order list with whatever special selections like no onions, and just pay on phone for whole thing. Often being able to make the order when you are on the way and then pick it up soon after arriving.
theturtle•7mo ago
Wait, sixty-four MILLION people actually wanted to work there?

Are they counting everybody since 1954?

chungy•7mo ago
It's the second largest fast food chain, behind Subway. It is everywhere and provides steady good work.

There should be no surprise here.

notepad0x90•7mo ago
getting jobs is hard. majority us on this thread couldn't get a job at mcdonalds if we tried our best. and that's mostly because they think we'll quit after a few days/week. and there are harder to get jobs that pay even less! it's about supply/demand, not how desirable the job is.
ChrisArchitect•7mo ago
[dupe] https://news.ycombinator.com/item?id=44513940
RandomBacon•7mo ago
[dupe comment] https://news.ycombinator.com/item?id=44537871
mediumsmart•7mo ago
That’s the default pin for iPhones too.
ezekiel68•7mo ago
This is what happens when "Minimum Viable Product" meets modern threat environments.

'Move fast and break things' indeed.

jofzar•7mo ago
My favourite part form the original report was that paradox had no way to find their security team ( to contact) and their security page just had "We worry about security, so you don't have to."

https://web.archive.org/web/20250208000940/https://www.parad...

autobodie•6mo ago
Your favorite part? Are you sick? I can't imagine having a "favorite part" of any of this.
nickthegreek•6mo ago
it’s a common expression to point out unbelievable moments in a story.
rPlayer6554•6mo ago
Chill out man, it’s a common ironic expression
vivzkestrel•7mo ago
Stupid question, if we really tried brute forcing websites with less than 100k monthly traffic, how many such cases would be actually run into?
aaronmdjones•6mo ago
There was also https://www.techspot.com/news/108619-mcdonalds.html

> Moreover, when Carroll attempted to alert Paradox to the breach, he was unable to find a security disclosure contact. The company's security page mostly consists of a simple assurance that users shouldn't need to worry about security. Eventually, after the researchers emailed "random people," Paradox and McDonald's confirmed that they resolved the issue in early July.

Shouldn't need to worry indeed. McDonald's evidently doesn't either.

Can someone tell them to put "Set a password a five-year-old child can't guess" onto their deployment checklist?