Keyloggers aren’t some exotic malware category — at the OS level they’re just reading raw input, and that’s exactly why they’re easy to miss. This breaks down how one works on Linux, aimed at defenders and analysts who need to recognize the pattern in a binary, not run it against anyone.
Blog
Golang Concurrent Port Scanner Tutorial: Semaphore vs Worker Pool
Semaphores and worker pools both bound concurrency in a Go scanner, but they fail differently under load. This compares both directly so you’re picking one on purpose, not by accident.
gobuster vs ffuf — Which Web Enumeration Tool for Which Job
gobuster and ffuf both do web enumeration, and defaulting to whichever one you learned first wastes real engagement time. This breaks down where each one actually wins.
ffuf Tutorial: Web Fuzzing for Directories, Virtual Hosts, and Parameters
Drop the FUZZ keyword into a URL, a header, or a request body, and ffuf will fuzz it — that’s the whole trick. This covers directory, vhost, and parameter fuzzing, plus the filtering flags that keep your results usable instead of a wall of noise.
Build a Port Scanner in Golang: From TCP Basics to Concurrent Network Tool
Every Go security tool — Nuclei, masscan clones, all of it — starts from the same primitive: opening a raw TCP connection. This builds that up from first principles into a working concurrent scanner, so you understand what the libraries are doing for you later.
Why Golang Dominates Modern Security Tooling
Go’s static binaries and goroutine concurrency are why tools like Nuclei and Sliver are written in it instead of Python or C. This lays out the concrete technical reasons — not the hype you’ll see repeated without explanation.





