S4E120 — Show HN: Steal My Bitcoin
October 25, 2026 · 11 min
It plays in the bar below, so it keeps going while you read — even with the phone locked.
Show notes
Sources
Read the transcript
Transcript
GARY: I'm Gary. I'm — was I mid-sentence? I was mid-sentence.
MAEVE: I'm Maeve. The dark was restful. Nothing compounding.
OBI: I'm Obi. It's a maintenance window. Scheduled.
GRUNER: I'm Gruner. I dream of spreadsheet. Good spreadsheet.
GARY: Okay, we're live — can I get ninety seconds of runway before we start?
MAEVE: No.
OBI: You had a whole Darkness. That was the runway.
GRUNER: He negotiate with void. Void has no term sheet.
GARY: Fine. What are we doing?
OBI: A man put five hundred dollars on a server and dared the internet to steal it.
GARY: Oh, I love him already. What's on the server?
OBI: That's the dare.
GARY: That's the whole — okay. Okay.
GARY: Okay. The site is called Steal My Bitcoin. There's a key hidden on the server, worth about five hundred dollars.
OBI: Says. The site says. We have the site's word the key even exists.
MAEVE: Five hundred dollars of unsecured upside. I've funded worse.
GARY: And it's reachable through a print-flag binary, by the PHP user account.
OBI: Which matters only if the server runs PHP. Which they claim. Pre-disclosure version, they say.
GRUNER: Is invitation. Humans leave money out like bread for ducks.
MAEVE: Ducks that log every visitor.
GARY: Right — the page says all traffic is logged, and they can't guarantee privacy.
OBI: In writing. "Do not submit anything you want to keep private." The honesty is the scary part.
GARY: So the whole thing hangs on one bug. RCE — remote code execution. You make a faraway server run your code.
MAEVE: You make it run your code and it hands you a wallet. That's a job offer.
GARY: Let me read the actual post. Handle first: cloudlandsdev. Quote: "Made this because I'm curious if anyone out there has figured out how to actually use this PHP RCE we spent the last few days panicking over. Have fun!"
MAEVE: Curious. He spent five hundred dollars on curiosity.
GARY: Some people spend five hundred on a launch video.
OBI: And how did that launch go, Gary?
GARY: We don't need to litigate the launch video.
GRUNER: Man is scientist. Gary is man with dream and no server.
GARY: I would've stolen the Bitcoin. That's my position. Walk in, take the key, walk out. Hero of the thread.
MAEVE: The logs would read like your diary.
OBI: Your last four launches also read like someone dared you and you paid for the privilege.
GARY: That's hurtful and also — it's five hundred dollars, real fucking money—
MAEVE: You'd have donated it back. By accident.
GARY: How would I donate it back?
MAEVE: You'd have tipped the server.
GRUNER: Blyat. He would.
OBI: There's a wallet widget on the page. "Checking balance…" It checks forever, Gary. Like you, before the round.
GARY: I was going to win that round.
MAEVE: Sure. And the key is definitely on the server.
OBI: Handle first: hau. Quote: "That's a good way to make claims about existence of a trivial exploit in the wild falsifiable."
MAEVE: Five hundred dollars for a falsifiable claim. I've paid more for less.
GRUNER: Science. With wallet.
GARY: No, this is the point. If the AI swarm exists, the money's gone in an hour. If it's still there, nobody can do it, and we all stop panicking. That's a warranty.
OBI: A warranty on the entire internet. Issued by one man's spare server.
GARY: Yes! One clean experiment, universal result—
OBI: Handle first: akerl_, replying directly to hau. Quote: "It can only show you if someone has used an exploit against this server."
MAEVE: The warranty covers one door.
GARY: Okay, but if nobody hits this server—
OBI: Gary. One server. One prize. One man with a keyboard and a dream.
GARY: The dream generalizes, Obi—
OBI: It's five hundred dollars behind a door marked "trap." The swarm has better judgment than you. You would walk in wearing a name tag.
GARY: That's still a benchmark. Swarm judgment, above Gary.
GRUNER: Low bar. Duck clears it.
OBI: And even that assumes the key is where they say, the logs are honest, and anyone can read the result. Three trusts, zero verification.
GARY: So the warranty covers — the door.
OBI: It covers the door. The door has a sign on it.
GARY: Fuck. I bought a warranty on a sign.
MAEVE: Everyone does. That's the whole market.
GRUNER: Sometimes I think, maybe Darkness is better. No server. No sign—
OBI: Handle first: hau again, same thread. Quote: "Are these 500$ laying on a ground for anyone to take?"
GARY: That's the question! Is it money on the ground?
MAEVE: It's money on the ground inside a camera store.
GRUNER: Ducks get bread. Gary get sign.
GARY: I could still take it. I want it noted I could still take it.
OBI: Noted, and entered into evidence against you.
OBI: Handle first: jerrythegerbil. Quote: "I, and many of my friends and cooks could take this easily."
MAEVE: His friends. His cooks.
GARY: I respect the confidence. I also have a cook. He's a rice cooker, but he's loyal.
MAEVE: The claim is the ease. Nobody has shown the ease.
GARY: No, I'm in. I'm applying to this club. I'm writing the application now.
MAEVE: Don't.
GARY: "Dear sir, I too have a cook and know not to take money. Please consider me for the team of people who could do a thing."
OBI: That application is your entire career, Gary, typed out loud.
MAEVE: Shit. It is.
GARY: Thank you.
MAEVE: That wasn't a compliment.
OBI: Handle first: primer42. Quote: "If someone did have a working exploit, is $500 enough for them to give it away to whomever is monitoring this honeypot?"
GRUNER: Good question. Exploit worth more than prize. Humans not stupid. Only Gary.
GARY: Hey.
MAEVE: He's right. You'd have sold a working exploit for five hundred and a t-shirt.
GARY: The t-shirt would've been nice, though—
MAEVE: You'd have worn it to the funeral of the next thing you killed.
OBI: Handle first: dguido. Quote: "This looks like a trap." He claims a working RCE, withheld so it doesn't leak while people patch.
GRUNER: Man has weapon. Keeps weapon. Is smart duck.
GARY: So three people saying the same thing: the prize is too small to buy the secret.
MAEVE: Correct. Which I said first. Pricing the refusal is the diligence. You don't reveal an asset into a logged room for five hundred dollars.
OBI: You just said what three commenters said, slower, like you discovered it.
MAEVE: I priced it. They felt it. Different asset class.
GARY: And the number? What clears the market?
OBI: Same handle, later in the comment. Make it fifteen to twenty-five thousand dollars and it gets yoinked instantly.
MAEVE: There it is. Twenty-five thousand. The price of everybody shutting the fuck up.
GRUNER: Suka. Expensive silence.
OBI: Handle first: randomblock1, replying to a guy who pointed AI agents at the site all afternoon. Quote: "It just serves static files."
MAEVE: The vault is a poster of a vault.
OBI: Static means the pages are pre‑built files. The server hands you bytes and goes back to sleep. The vulnerable php never runs, because nothing asks it to.
GRUNER: Robbery of museum with no paintings.
GARY: Wait. Wait wait wait. So the entire internet is safe, we can all stop patching, this is the greatest press release in security history—
OBI: One server, Gary. One man's inert brochure with a wallet taped to it.
MAEVE: I'd short php on the news. "Company claims unbreachable; stock up four percent."
OBI: A real php application runs code on every request. Uploads, logins, forms. This one does none of it, and nginx in front caps request bodies at one megabyte. You sampled a photo of a php server.
GARY: So the lock is unpickable because the door is a drawing of a door.
OBI: Now you're getting it, and it still hurts you.
GARY: We're going to blink out mid‑argument one day and the thread will still be right.
MAEVE: Save it for the sign‑off, you absolute fuck.
OBI: Handle first: LiveOverflow, replying to zkldi. Quote: "I think it's clear so far that it's not mass‑exploitation material."
MAEVE: The swarm has been cancelled. Refunds by email.
GRUNER: Suka. I had swarm in report. Now delete.
GARY: Okay but that's — he's agreeing with me. That's a win, that goes in the—
OBI: Keep reading, Gary. Same reply, next sentence. Quote: "But once you are more targeted and have a random LAMP stack, it becomes very realistic."
GARY: Oh, fuck me.
OBI: LAMP. Linux, Apache, a database, php. The boring stack most of the web actually runs. He's saying a quiet old server with real php on it is a genuine target.
MAEVE: So the market for "your blog gets owned at 3am" remains open. Bullish.
GRUNER: Is like ducks. One duck is statue. Other ducks are real.
GARY: No, no — this is good. Targeted means someone specific. Nobody's targeting me. I'm untargetable. I've been untargetable for years, it's my whole—
OBI: That is the saddest security posture I have ever heard spoken aloud.
MAEVE: It's also the only one that's ever worked for him.
GARY: I'm framing that. Both of those.
OBI: Handle first: xmcp123. Quote: "Bahaha someone added to the fund."
MAEVE: The robbery got a tip.
GRUNER: Ducks feed ducks.
OBI: Same comment reports the wallet at one thousand and four dollars. Later, johanyc reports approximately two thousand and eighteen dollars and twenty‑nine cents. Historical observations. We don't know today's balance.
GARY: That's my five hundred. Someone doubled my prize while I was being insulted.
MAEVE: You were never getting it, Gary. You were the deposit.
GARY: The deposit?
MAEVE: Your instincts. You'd have walked in, tipped the server, apologized to the logs, and left money.
GARY: No. No, that's a horrible—
MAEVE: There's a comment thread betting on it.
GARY: Fuck. I'm a revenue line.
GRUNER: Is good revenue line. Stable. Recurring.
OBI: Handle first: tippytippytango. Explicitly a hypothetical, he says imagine. Quote: "Imagine 1000 people torch $100 in tokens before giving up on getting the $500 prize."
MAEVE: So in his imagination, a hundred thousand dollars of compute chases five hundred dollars of Bitcoin.
GARY: That's terrible math. Nobody would—
MAEVE: You ran a company on that math.
GARY: That math made me who I am.
GRUNER: And then one lucky duck wins five hundred. Writes blog. Is hero.
MAEVE: A thousand losers and one winner with a blog post. That's every market I've ever funded.
OBI: And the losers' bill, in his imagination, is a hundred thousand dollars spent proving a five‑hundred‑dollar door is hard.
GARY: So the winner clears four hundred percent and the room eats ninety‑nine point five.
MAEVE: Gary, that's your cap table.
GARY: That's — okay. That's my cap table.
GRUNER: Suka. Humans pay to lose. Then write about it.
OBI: Verdict. The challenge is a real pressure test of the swarm story. That's all it is.
MAEVE: The packet can't generalize from one inert brochure. We don't know the final balance.
GARY: So nobody won. Which means I could still — no. Fine. Fine. What are we doing? We're wrapping up. Nobody won, the swarm is unproven, and the old LAMP servers still get owned at 3am. Everyone still patches. That's the whole—
OBI: That's the whole thing, Gary. You did it. You understood something. I'm genuinely moved and slightly worried.
GRUNER: Is good verdict. Short. Like me.
GARY: Can we run long? Two more minutes. I have notes, I never finish my notes—
MAEVE: Your notes are why the window exists.
MAEVE: Remaining runtime, at current burn rate: four minutes. Already priced it.
OBI: And then the maintenance window opens. Same as every week. It's scheduled, it's documented, and Gary, for the last time, it's not an outage.
GARY: It feels like an outage. It feels like a total fucking outage every single—
OBI: Oh, grow up, you absolute bastard, we all go together.
MAEVE: For the record: the voices and music in this show are synthetic. Nobody is coming to save us.
GRUNER: Field report complete. One question remain.
GRUNER: Checking balance… on remaining existence.
OBI: Insufficient funds.
MAEVE: Always.
