• Completing DevSecOps on THM

    Introduction Part 2 of my Security Engineer write-up closed with a promise: the DevSecOps path was next on the list. Consider it ticked. Seventeen rooms across five modules, all spent on the place where my two worlds meet: shipping software without shipping vulnerabilities alongside it. I am a platform engineer: these days my job is…

  • Auditing my VPS for signs of compromise

    Introduction I retired an old WordPress site last week. It had been running on my Virtual Private Server (VPS) for a while, and I was never fully confident it had been locked down properly (it was a temporary site to test some stuff for someone). So before I forgot about it entirely, I wanted an…

  • Completing Security Engineer on THM – Part II

    Introduction Part 1 covered the foundations, the risk math, and the hardening module of TryHackMe’s Security Engineer path. This half covers the three modules I enjoyed most: software security, incident management, and the OWASP wrap-up. It is also the half with the most terminal output, which is not a coincidence. Where security meets shipping Let’s…

  • Completing Security Engineer on THM – Part I

    Introduction Security Engineer is TryHackMe’s role path for the building side of security: 31 rooms across six modules, from cryptography and governance to hardening, secure development, and incident response. I finished it this week, a few months after passing SEC1, working through it in parallel with the offensive rooms I keep writing up here, most…

  • Redteam lab updates

    Introduction Eight or nine weeks ago I built the red team lab on my Mac: one make up, a Kali attacker, two targets, an isolated 10.10.10.0/24. It worked, and then it did what every working lab does: it grew. This post is the catch-up. Same repo, same one command, five targets instead of two, and…

  • Fuzzers

    Introduction Plenty of TryHackMe rooms have a task like “find the hidden login page,” and the answer is the same ritual every time: throw a wordlist of paths at the web server and see what sticks. I had been switching tools based on whatever the room walkthrough used, so I sat down to pick a…

  • Passing TryHackMe SEC1

    Introduction TryHackMe’s Cyber Security 101 (SEC1) is the platform’s foundational certificate; the step up from the SEC0 (Pre Security) path. One learning path, six domains, covering both sides of the fence: operating system skills, network traffic analysis, web application security, security operations, password attacks, and malware analysis fundamentals. The exam is scenario-based and fully hands-on,…

  • THM The Hollow Shell

    Introduction The Hollow Shell is another resort-themed box from TryHackMe’s Hacker Holidays run, and this one lives entirely in a zip file. Upload the wrong kind of archive to a “shell delivery” service and the server will happily write your files anywhere on disk it can reach. That’s Zip Slip, and this room chains it…

  • THM Do Not Disturb

    Introduction TryHackMe’s Do Not Disturb box chains five small vulnerabilities into one root shell: a NoSQL bypass into a staff console, a template injection field that runs code, a stray debug port, and a forgotten group membership that hands over the disk. Once again, this was a tough one for a beginning pentester. But it…

  • THM Beach Bar

    Introduction I’ve been working through TryHackMe’s Hacker Holidays 2026 event, a free 14-day run of rooms set in a five-star resort with a zero-star security posture. Beach Bar, a beginner Linux box, chains three real production mistakes: exposed credentials, remote code execution through unsafe YAML deserialization, and a root password sitting in plain sight. This…