Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/ogrodev/fsociety/dotnet-reversingnpx skills add ogrodev/fsociety --skill dotnet-reversinggit clone --depth 1 https://github.com/ogrodev/fsocietyWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/ogrodev/fsociety/dotnet-reversing)<a href="https://agentmods.dev/skills/ogrodev/fsociety/dotnet-reversing"><img src="https://agentmods.dev/badge/skills/ogrodev/fsociety/dotnet-reversing.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00442 | $0.02910 |
| Opus 5 | $0.00221 | $0.01455 |
| Sonnet 5 | $0.00088 | $0.00582 |
| Haiku 4.5 | $0.00044 | $0.00291 |
Grade A, and why
dotnet-reversing scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 294 lines — stays where its author put it; the contents beside it link to each section on GitHub.
.NET Reverse Engineering
Why .NET Is Different
.NET binaries ship IL (Intermediate Language) code with full metadata — type names, method signatures, string literals, inheritance hierarchies. This makes decompilation far more effective than with native code. A clean .NET binary decompiles to near-source-quality C#. Obfuscation raises the bar but never eliminates the metadata entirely because the CLR needs it to execute.
This matters for offensive work: .NET malware leaks intent through its metadata. Even heavily obfuscated samples expose type references to System.Net.Sockets, System.Security.Cryptography, or System.Runtime.InteropServices — revealing capability before you touch the IL.
Detection — Is This .NET?
Confirm a binary is .NET before choosing your toolchain. Wrong tools waste time.
# Quick check — file magic
file <binary>
# Look for: "Mono/.Net assembly" or "PE32 executable ... Mono/.Net"
# Confirm via PE imports — .NET binaries import mscoree.dll
r2 -qc 'ii~mscoree' <binary>
# _CorExeMain = .NET EXE, _CorDllMain = .NET DLL
# CLI header presence — Data Directory entry 14
r2 -qc 'iH~CLR' <binary>
# monodis sanity check
monodis --assembly <binary>
If the binary is mixed-mode (C++/CLI), it has both native and managed code. Use monodis for the managed portion and radare2/Ghidra for native.
Core Workflow
Follow this sequence for any .NET target. Skip steps that do not apply, but never skip triage.
Phase 1 — Triage and Metadata Extraction
Goal: understand what you have before deep analysis.
# Assembly identity
monodis --assembly <binary>
# Type inventory — namespaces reveal purpose
monodis --typedef <binary>
# External dependencies — what frameworks/libraries does it use?
monodis --assemblyref <binary>
monodis --typeref <binary>
# Entry point identification
monodis --method <binary> | grep -A5 "\.entrypoint"
# Embedded resources — configs, encrypted payloads, embedded DLLs
monodis --manifest <binary>
# String extraction — URLs, IPs, registry keys, crypto constants
strings -el <binary> # Unicode strings (common in .NET)
strings -a <binary> # ASCII strings
floss <binary> # FLARE obfuscated string solver
What ships with it
5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 294 lines · 442 tokens per session scan A e249bf4bee97
dotnet-reversing is a skill published in the GitHub repository ogrodev/fsociety (20 stars, last pushed 5mo ago), licensed MIT. It adds 442 tokens to every session and 2,910 once invoked, about $0.0022 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
mks
MKS (Metasploit-Kali Server) tool preference guide. Mount in Phase 0/1 alongside the primary skill. Provides URL resolution, REST endpoint patterns, response parsing, error handling, and fallback rules for all MKS-backed Kali tools.
pentest
Penetration testing orchestrator that coordinates specialized attack agents. Provides attack indexes, methodology frameworks, and documentation. Execution delegated to specialized agents (SQL Injection, XSS, SSRF, etc.). Use for engagement planning and attack coordination.
authenticating
Authentication testing skill - automates signup, login, 2FA bypass, CAPTCHA solving, and bot detection evasion using Playwright MCP. Tests authentication security controls. Includes behavioral biometrics simulation, OTP handling, and automated account creation for security assessments.
web-application-mapping
Comprehensive web application reconnaissance and mapping coordinator that orchestrates passive browsing, active endpoint discovery, attack surface analysis, and headless browser automation for complete application coverage.
common-appsec-patterns
Application security testing coordinator for common vulnerability patterns including XSS, injection flaws, and client-side security issues. Orchestrates specialized testing agents to identify and validate common application security weaknesses.
cve-testing
CVE vulnerability testing coordinator that identifies technology stacks, researches known vulnerabilities, and tests applications for exploitable CVEs using public exploits and proof-of-concept code.