Denis Gregor

Denis Gregor

I find the bugs that pass every test: silent data failures, now in smart contracts.

@dngr2

Public earnings

$0


Public findings

0


Skillset

Self-reported

Admin verified

Blockchain Platforms (L1 + VM)

EVM

Programming Languages

Solidity

Security Services & Methodology

Economic & Mathematical Audits

Biography

Backend and systems engineer turned smart-contract security researcher. My work is about the failures that don't crash: silently wrong data, values that satisfy a check while being meaningless, code that passes its own test suite for the wrong reason.

Twenty-plus merged pull requests into projects I don't maintain, across ten languages (Python, Rust, Go, Java, C++, and more), each carrying a test that reproduces the defect before the fix.

The same method now ships as drop-in Foundry security checks - a "guard line" for the newest attack surfaces: v4-hookguard (Uniswap v4 hooks), account-abstraction-guard (ERC-4337/7702), and superchain-interop-guard (ERC-7802 interop). Every check pairs a correct reference it passes with a deliberately-broken one it catches, plus a falsifiability test proving it fails on the bug and only on the bug. guard-ci wires them into CI. Alongside: contract-security-notes, staking-audit, invariant-fuzzing and proxy-security - worked reviews and exploit PoCs across the classic vulnerability classes.

Security portfolio

Title
Description
v4-hookguardDrop-in Foundry security checks for Uniswap v4 hooks: return-delta consistency + bounds, hook-conservation, reentrancy, permission-bitmap lint, scorecard. 8 checks, 27 tests; each ships a correct reference it passes and a deliberately-broken reference the check catches.
account-abstraction-guardDrop-in Foundry security checks for ERC-4337 / 7702 account abstraction: EntryPoint execute-auth, userOp signature + replay, relayed-exec replay protection, session-key scope, paymaster. 5 checks, 21 tests, each with a falsifiability test proving it fails on the bug and only on the bug.
superchain-interop-guardDrop-in Foundry security checks for Superchain / ERC-7802 interop: crosschain mint/burn interface conformance, CREATE2 chain-independent address verification, bridge authorization. 5 checks, 18 tests, each with a correct reference it passes and a deliberately-broken one it catches.
guard-ciGitHub Action + scaffolder that wires the guard security checks into a project's CI: one reusable workflow, `guard-scaffold` drops the checks in, with worked examples for paymaster / AA-account / superchain-ERC20.
invariant-kitInstallable Foundry invariants + known-exploit checks for DeFi primitives. Four modules: ERC-4626 (solvency + first-depositor inflation), staking (notifyRewardAmount restriction), constant-product AMM (k-never-decreases + round-trip drain), ERC-1967 proxy (unprotected-init + storage-collision). `forge install dngr2/invariant-kit`.
contract-security-notesSix common smart-contract vulnerabilities, each with a Foundry exploit test and its fix
staking-auditA worked security review of a StakingRewards protocol: 3 findings (High/Medium/Low) with PoC tests and a report
invariant-fuzzingCatching an AMM value-leak with a stateful Foundry invariant instead of a hand-written PoC
proxy-securityThe two ways upgradeable contracts get taken over: unprotected initializer and storage collision, each with a Foundry PoC and fix