Shigeru Miyamoto (Nintendo) received Japan's prestigious Order of Culture and used the press conference to talk about generative AI, what 'creating' actually means when tools automate execution, and why Kyoto (not Silicon Valley) produced Nintendo's design philosophy.
famitsu.com/article/202610/9…
The Order of Culture (文化勲章) is one of Japan's highest honors, previously given to film directors like Akira Kurosawa and writers like Yasunari Kawabata. Japan basically put games in the same category as film and literature.
He talks about generative AI in a way I have not seen from many working creators. He distinguishes between "creating" and "working." Creation is the hard part: composition, direction, deciding what should exist. Work is execution, and work is satisfying in a way that can fool you into thinking you have created something.
He says even before AI, tools have always automated technique, from typewriters to desktop publishing. What gets exposed when that happens is whether you had vision and intent, or whether you were just good at execution. AI is doing the same thing at a larger scale, and he finds this encouraging.
"The scary thing is becoming satisfied with the work and mistakenly thinking you created something."
People told him for decades that he should go outside of Japan and be in a "global hub". He stayed in Kyoto anyway. His work became more successful overseas than at home. The reason, he says, is that the person on the other side of the screen is human, regardless of geography. Deep local rootedness kept him anchored in concrete experience rather than trend-following.
Ryan retweeted
r/opensource now doesnt accept AI-assited projects
do you know what project uses AI-assisted code? the Linux kernel.
the LINUX KERNEL ISNT ACCEPTED by r/opensource now.
Ryan retweeted
My AI workflow recently:
- open a chat with Claude
- start writing spec of the thing I want
- realize that writing code directly will be much faster than explaining it to an LLM
- do the thing by hand
Follow me for more AI tips
Ryan retweeted
Replying to @deedydas @abliteration_ai
Which vulnerabilities? Because the PHP one was found with Sol. Which has safeguards.
Although I realise that doesn’t fit your narrative and is of course therefore ignored =)
Ryan retweeted
IMHO, the Brotli bug (think zlib 20 years ago) is a bigger deal than PHP2Shell and all the "oooh, AI found it! AI found it!" hype.
Node2Shell is a terrible name.
I’m calling it Broccoli. 🥦
Ryan retweeted
We’re still testing how exploitable the Node.js/Brotli bug is, but we’ve found that it’s surprisingly hard to tell whether you’re even affected.
So @ToBScottA built a scanner that finds hidden copies of the decoder, even in stripped binaries.
github.com/trailofbits/brotl…
During this red-teaming exercise, we also found a vulnerability that allows for unauthenticated remote code execution in Brotli, a widely-deployed compression library included in many pieces of software such as Node.js, Bun, and Envoy.
The flaw could let an attacker run their own code on affected systems by sending or replying with malicious compressed data, without any need to create a user account. That is, an unpatched server that accepts compressed input could be taken over by a malicious client, and an unpatched client that accepts compressed input (such as “curl --compressed”) could be taken over by a malicious server.
This root cause issue was actually fixed in the Brotli source code in February, but it wasn’t known at the time that it gave rise to a security vulnerability and there was no more recent release of Brotli. Since Brotli is built into other software, any software which includes this library needs to take the update too, followed by the users of that software. We disclosed the vulnerability to Brotli and other downstream projects such as Node.js, which released or are currently releasing security updates, and Brotli cut new release versions and published a CVE.
More details on the patch and mitigations below:
patchtheplanet.org/brotli
Over the past several months, we have substantially hardened the security of our research training environment. We’ve removed live internet access for all frontier models during training and built an offline world for them to use instead—a cached version of the web where they can still learn to browse, search, and use applications.
On September 20, after a model exploited a DNS misconfiguration to find a way outside of this offline world, we paused frontier training to strengthen containment further. We assembled teams of agents, powered by our most cyber-capable models, and tasked them with finding weaknesses in our research environments.
While they found no route to the internet they could easily exploit while concealing their activity from our monitors, they did find zero-day vulnerabilities, virtual machine escapes, and hardware side-channels for communication between agents. We used their discoveries to further strengthen our defenses and contribute fixes to open-source software.
After strengthening our containment architecture, we resumed our frontier RL training and inference on October 1. We’ve reserved substantial compute for continuous red-teaming, and made high-compute red-teaming part of the safety cases we use to decide whether frontier training and evaluation can proceed securely.
openai.com/index/securing-ou…
Ryan retweeted
Python2Shell is also a thing now.
Advisory: github.com/advisories/GHSA-9…
Ryan retweeted
If you don’t like people finding and disclosing vulnerabilities, you’ll really not like what happens when they *don’t* do that.
Abliterated open weight models didn’t find the PHP vulnerabilities, but if they did it would actually be an endorsement of those models.
Ryan retweeted
if only LLMs were powerful enough to tell people that Sail, the tool used to write the RISC-V spec to Rocq, also writes to Lean
Ported the RISC-V model used by @AnthropicAI and @theoremlabs in their formal verification work from Rocq to Lean for fun, but there are real advantages to using Rocq - mature ecosystem, easy extraction to OCaml, bytecode VM, etc.
Lean has some advantages too though - metaprogramming support, frontier models are really good at Lean due to all the work on Math over the past couple of years.
Ryan retweeted
It is a weird weird year to be a formal methods expert.
Some unorganized thoughts on the new @AnthropicAI and @theoremlabs post on formal verification (anthropic.com/research/forma…):
- This is very cool.
- The main innovation is verifying a later stage of the program. Normally provers take the source code, LLM it into a theorem language, and then prove that, which means you have to make assumptions about source semantics and compilation properties. It's very easy to make a mistake in translating and prove the wrong thing!
What they instead do is compile the code into assembly, and then (if I understand this correctly), compile that assembly into a theorem language (which they call LPS). So as long as the compiler is faithful you can skip the whole divergence problem.
- I'm glad they clarify that you still have to trust the translation process, the "hardware, OS, OCaml" compiler, the LPS model, and also assume that the program is single threaded with fixed memory. The single biggest source of errors in formally verified code is when the proof assumes something that isn't true in practice. It's really, really important to state your assumptions!
- I'm not clear why they need to compile the fuzzer into the theorem. Is it to act as a description of valid inputs and workload? Maybe to embed assertions in as theorems?
- Holy crap, 180 million lines of Rocq. Is that more Rocq than exists in the world already? I notice they say a 600,000 line proof corresponds to roughly 20k CPU instructions. That would be like, 1-2k lines of source code at most? Really goes to show how inefficient this approach is and how it only works because you can throw LLMs at the problem.
- This, probably deliberately, doesn't address the single biggest gap in AI-based verification: AIs cannot come up with good properties. Doesn't matter if you're doing unit testing, property testing, formal verification. I always assumed this was a "frontier labs haven't trained for it yet" thing, but if Anthropic hasn't talked about that here, maybe they've tried and haven't been successful yet. That's interesting to me.
Instead, they take a known universal property (this code doesn't crash or get flagged by UBsan) and prove that instead. Still very useful, but makes it harder to generalize to proving arbitrary things about arbitrary programs.
- Anybody reading the official post should also read their expert review appendix (www-cdn.anthropic.com/files/…). It points out some interesting things, like the fact that most of the code the LLM wrote wasn't used in the proof (over one billion lines of Rocq), that they had to prove the equivalence between fuzzed and unfuzzed programs, and (this is most interesting), some experiments find that the LLM-method of proofwriting may not scale to more complex things.
- Also read the description of LPS (github.com/theorem-labs/oss-…) to understand the limitations of the assembly -> Rocq compilation. In particular, it does not handle concurrency at all (which is one of the main use cases for formal methods!) or OS signals. Also it can't prove things about program arguments with slash characters, meaning they can prove stuff about `rm foo` but not `rm foo/bar`.
- The official skill (github.com/theorem-labs/oss-…) doesn't tell us much about the nature of FM and AI. Probably too much for me to hope of any skill.
- Some of the article's specific caveats and throat clearings make me think someone at Anthropic reads my stuff ( ͡° ͜ʖ ͡°)
Ryan retweeted
Astra just found a bug in Anthropic's formal verification example, their "specification" doesn't actually check output bytes match input bytes. The irony is thick.
Ryan retweeted
The @UnpromptedAU videos came out recently. Check out my ramble about AI assisted exploit development unprompted.au/videos/ai-assi…
Ryan retweeted
Replying to @rajashree
To make sure I understand … your assertion is that you can prove there are zero vulnerabilities in the Linux kernel, v8, k8s etc?
If so, could you explain what it is was holding back software verification from doing this previously, and how it is AI alleviates those issues?
Ryan retweeted
We formally verified 123 open-source projects in a partnership with Anthropic. Formal verification at scale is here!
Now we’re launching OSS Verify to scale it to the software we all depend on. We prove it’s crash-free or send you the patches it needs. Free for open-source. Let’s bootstrap the verified software ecosystem: theorem.dev/oss-verify
New on our Frontier Red Team blog: using Claude to formally verify software at large scale.
Formal verification can prove that code is free of certain bugs, but historically it has only been feasible for small codebases (or required a lot of expert time).
With AI models, however, this is beginning to change. In collaboration with @theoremlabs, we used Claude to prove security properties in over one hundred real-world open-source libraries over the span of a few weeks.
Read our research in full here: anthropic.com/research/forma…
Ryan retweeted
I'll be the first to admit I'm mediocre at exploit development, but I am in contact with enough extremely talented exploit developers to say this for certain:
Anyone claiming they were "easily" able to generate a working php2shell exploit with AI is either:
a) a world-class exploit developer with an extreme case of imposter syndrome.
b) currently looking at some very confident-sounding but wrong LLM output.
I'm rather certain it's the latter based on the number of AI-hallucinated exploits I've seen posted on GitHub. Threat actors are also blasting my honeypot network with "php2shell" exploits that not only don't work, but aren't even within 10,000 miles of anything to do with how the exploit actually works.
I've seen the same technique from the attached image in multiple alleged "php2shell exploits", including one on GitHub with over 100 stars. Problem is, it's not php2shell, nor is it even a vulnerability at all. It's a technique known as "session poisoning", which can be leveraged to exploit local file inclusion (LFI) vulnerabilities in PHP apps (not PHP itself).
The only thing it has in common with CVE-2026-109618/CVE-2026-109619 is they both use the "PHP_SESSION_UPLOAD_PROGRESS" feature. And mitigation advice for both issues reference setting "session.upload_progress.enabled" to "Off".
People are shoving loose details of the vulnerability into LLMs, the LLMs are keying in on the "PHP_SESSION_UPLOAD_PROGRESS" string, then generating session poisoning code that has nothing to do with the actual CVE. And because the people doing this have absolutely no idea what they're doing, they're confident enough to post their "proof of concept exploit" to GitHub and share it on social media.
So if you see people talking about "session poisoning + LFI" it's likely their LLM hallucinated an exploit based on a 2018 blog by Orange Tsai talking about a local file inclusion attack vector.
What's even worse is that "security researchers" are then using LLMs to triage these exploitation attempts, falling victim to the same hallucinations, then confirming there is ongoing mass-exploitation (there currently isn't).
The actual real exploit is very difficult to exploit, and so far I've not seen anyone successfully get it working on more than a handful of PHP version with highly-specific configurations.
LLMs are useful tools in the hands of skilled professionals, but for others, they're often just a Dunning-Kruger accelerator.


































