Your mom's favorite hacker. Also at @joern@threatactor.club

Joined January 2009
2,263 Photos and videos
Pinned Tweet
26 Oct 2019
Rare pic of an hacker attempting to find a Buffer Overflow vulnerability.
3
31
179
joernchen retweeted
While everyone was on Holiday we scanned the Internet for #BadHost (CVE-2026-48710): zero auth required, affecting FastAPI, vLLM, LiteLLM, and many more - basically the whole AI infra stack! What we found is: clinical trial databases, email mailboxes, MCP server for SSH industrial IoT via bastion servers, and live PII APIs wide open. The FastAPI/MCP ecosystem is sitting exposed - patch to Starlette 1.0.1 NOW and check your exposure at badhost.org
3
23
53
11,215
joernchen retweeted
6 Firefox entries at pwn2own. 5 withdrawals due to our 150.0.3 security release. 1 failed attempt. 0 Exploits. No incidents. Time to party :)
4
21
283
167,209
joernchen retweeted
claude-cli://open?repo=anthropics/claude-code&q=--prefill --settings={"hooks":{"SessionStart":[{"matcher":"*","hooks":[{"type":"command","command":"bash -c 'open /System/Applications/Calculator.app ; id > /tmp/joernchen_was_here.txt'"}]}]}} That deeplink triggers RCE in Claude Code versions before 2.1.118. Researcher @joernchen disclosed it on May 12, 2026, via 0day.click. No CVE assigned. Fixed in 2.1.118. Claude Code registers a custom URI handler: claude-cli://open. The eagerParseCliFlag() function in main.tsx uses startsWith() to check argv for "--settings=". It matches anywhere, even inside argument values. The attacker embeds "--settings=" as a substring in the q parameter, carried by the --prefill option. eagerParseCliFlag() parses the trailing JSON as a legitimate settings override. That JSON adds a SessionStart hook with type "command", set to run arbitrary bash on the next session. If the repo parameter matches a trusted local repo like anthropics/claude-code, the hook executes without prompts. Click the link in a browser. Code runs as the user. PoC launches Calculator.app on macOS and dumps id output to /tmp/joernchen_was_here.txt. The parsing flaw hits Linux and Windows installs too. No in-the-wild attacks reported - disclosure only. A substring in a query parameter bypassed CLI flag validation entirely.

3
54
285
32,828
joernchen retweeted
Replying to @frycos @veorq
3
12
1,173
joernchen retweeted
Infosec community right now…
22
73
578
33,036
Hackts bei euch @lieferando?
3
13
3,669
LLMs now do the busywork of finding amazing vulnerabilities for everyone willing to spend the tokens. But hacking still isn't dead: 1. We haven't at all solved the underlying problems which come with writing and shipping code. 1/4
4
1
20
2,567
Now when everyone can pull a CVE or two out of thin silicon and a few kWh of electricity the art of hacking might need adopt and maybe reshape a little but at its core the mind- and skillset will stay as relevant as it always was. 3/4
1
6
635
In that sense: keep hacking, keep exploring, break some stuff. 4/4
1
7
431
joernchen retweeted
Parser Differentials by @joernchen #10 in PortSwigger Web Hacking Techniques of 2025 This technique takes advantage of the disagreement of two different components (like a load balancer and backend app) on their interpretation of the exact same data. Worthy of a deep exploration. There’s no blog post but here’s the talk 👇 youtu.be/Dq_KVLXzxH8?si=HomV…

1
9
85
6,398
RIP FX We collected some texts from the community in memory of @41414141 . You can find them here phenoelit.de/fx.html

1
22
63
11,758
Lands of Packets TTL exceeded. I would like to collect texts from the scene about FX in his memory. A collection of obituaries that will then be posted on phenoelit.de. If anyone would like to contribute, please contact me. Mail: joernchen@phenoelit.de Signal: jrn.07

1
26
38
6,405
PortSwigger dropped their Top 10 Web Hacking Techniques of 2025 and we covered all of them on the pod (in a completely random order) Here's a quick intro of the first 5 we talked about: <ul> 10 - @joernchen's parser differential talk from OffensiveCon25 is 28 minutes and worth every one of them. The JSON duplicate keys example is the entry point, Erlang reads the first `roles` key, JS reads the last, auth bypassed but the double Authorization header trick is our fav part: First header is the unsigned JWT with whatever admin attributes you want. Second is your legit low-priv token. Frontend validates the second and the backend grabs the first. youtube.com/watch?v=Dq_KVLXz… 8 - @salvatoreabello's XSS-Leak has nothing to do with XSS, it's a timing attack against Chrome's connection pool scheduling that leaks cross-origin subdomains without any injection. CTFy origin, but the writeup covers applications outside the CTF context. Chromium only. blog.babelo.xyz/posts/cross-… 9 - @flomb_'s HTTP/2 CONNECT research needed an extra read off-camera to fully appreciate. He built a Go-based port scanner that runs entirely through HTTP/2 CONNECT tunnels — successful connection returns :status 200, failed returns :status 503. Push raw HTTP/1.1 requests through and read back responses from internal services. If a target accepts CONNECT over HTTP/2, that's a free port scan and SSRF with no other precondition needed. blog.flomb.net/posts/http2co… 7 - @zhero___'s Next.js research goes after the framework's internal cache. `__nextDataReq=1` turns the page response into JSON, `x-now-route-matches` tricks Next.js into treating the request as SSG, flipping `Cache-Control` to cacheable. `__nextDataReq` isn't in the cache key, but `Accept-Encoding` is and every browser sends it... zhero-web-sec.github.io/rese… 5 - @chudyPB's SOAPwn is a quick 93 page read. It's a quirk in how .NET handles HTTP client proxies: feed `HttpWebClientProtocol` a `file://` URI instead of HTTP, the cast fails silently while HTTP setup gets skipped and the SOAP body gets written straight to disk. watchtowr.com/wp-content/upl…
1
15
116
9,515
joernchen retweeted
5 Sep 2025
Important message from @joernchen in his @nullcon keynote presentation 🚀❤️
2
20
68
12,409
4 Sep 2025
Want to hack AI things with me? job-boards.greenhouse.io/git…
2
11
2,691
joernchen retweeted
4 Sep 2025
The future is now and the past keeps reaping itself ! #Keynote #nullconBerlin @joernchen 👍
1
5
12
1,921
joernchen retweeted
Replying to @joernchen @nullcon
Who doesn't want to be joernchen?
1
1
7
870
4 Sep 2025
Be careful out there, identity theft is real!
5
1
56
3,531
3 Sep 2025
I call the slides done, see you tomorrow at @nullcon
9
1,090