Research from the OtterSec team
Vulnerability breakdowns, protocol deep dives, and the security research behind the audits.
Breaking open a propAMM
Introducing rCTF v2
Announcing the Save CTFs Fund
Auto reverse-engineering the Hyperliquid risk engine, with some agentic help
The goldmine of insecure WebView integrations
Pwning Minecraft: 4-byte heap overflow to RCE
Unverified evaluations in Dusk’s PLONK
Patch gap to mobile renderer RCE: pwning Samsung Internet’s V8 on the Galaxy S25
From virtio-snd 0-day to hypervisor escape: exploiting QEMU with an uncontrolled heap overflow
Unfaithful claims: breaking 6 zkVMs
ERC-4337 paymasters: better UX, hidden risks
How we broke exchanges: a deep dive into authentication and client-side bugs
How to survive supply-chain attacks
PoRv2: a fast, transparent ZK-based proof of reserves
Compiler bug causes compiler bug: how a 12-year-old g++ bug took down Solidity
Cosmos security: an otter’s guide
Solana: the hidden dangers of lamport transfers
Subverting Web2 authentication in Web3
Solana multisig security
Hitchhiker’s guide to Aptos fungible assets
OtterRoot: Netfilter universal root 1-day
Supply chain attacks: a new era
Rounding bugs: an analysis
Solana: jumping around in the VM
MetaMask Snaps: playing in the sand
Web2 bug repellant instructions
Vyper hack timeline
Solidity compilers: memory safety
Solana formal verification: a case study
Rust, realloc, and references
The Move Prover: a guide
Move: an auditor’s introduction
Reverse engineering Solana with Binary Ninja
The story of the curious rent thief
Becoming a millionaire, 0.000150 BTC at a time
Solana: an auditor’s introduction
The $200m bluff: cheating oracles on Solana
Subscribe to the blog
New posts from the OtterSec team, straight to your inbox. One email per post, unsubscribe any time.