Blog

Blog Posts
May 11, 2023
The Risk You Can't Afford to Ignore: AWS SES and Email Spoofing

Verifying a domain in AWS SES lets any IAM user with SES permissions spoof emails from any address on that domain. Here's the risk and how to fix it. …

April 10, 2023
My Love/Hate Relationship with Cloud Custodian

A year of production experience with Cloud Custodian. Its strengths in real-time detection and auto-remediation, and its pain points in docs and multi-account setup. …

December 11, 2022
One important feature that Dependabot is missing

GitHub Dependabot lacks a central dashboard for prioritizing alerts across repos. Here's how to build one with GraphQL API, Postgres, and Apache Superset. …

October 7, 2022
Did you completely remove secrets from git repository? Really?

Removing secrets from git history is straightforward. With help of BFG Cleaner and privileges to force push the modified history, it's a piece of cake. I believed this until I found I was partially wrong - removing something from git history doesn't remove them from git repository. …

August 14, 2022
GuardDuty - the Good, the Bad and the Ugly

If you listen to anyone discussing AWS security, you probably heard about Amazon GuardDuty. It's an intelligent "threat detection" service from AWS. Should you enable GuardDuty? I hope you'll reach closer to your answer by the end of this blog post. …

July 29, 2022
What should you use - CloudQuery or Steampipe?

CloudQuery and Steampipe have very similar functionalities. The actual difference is with the way they work and the problems they solve. This blog post compares both the tools and helps you answer the question: What should I use - CloudQuery or Steampipe? …

July 11, 2022
Things I wish I knew about AWS WAF - Bot Control

Lessons from testing AWS WAF Bot Control with 10M+ weekly requests. It can double your WAF bill and is easily bypassed with a valid browser User-Agent. …

July 10, 2020
Vulnerable API writeup

Most of the applications I see these days heavily depend on APIs. Pentesting them is a bit different than that of web applications. In this writeup I will show you how I discovered the vulnerabilities in the “Vulnerable API” project. …

June 6, 2020
How to remove DNS record takeover bug class ?

There are so many resources around domain and subdomain takeovers but none around how to remove this bug class. In this blog post, I will walk you through the (sub)domain takeover bug class, the different types of takeovers, and finally the mitigations. …

March 22, 2020
Adding Gitleaks to Gitlab CI Pipeline

How to integrate Gitleaks into a GitLab CI pipeline to scan only new commits for secrets, instead of scanning the entire repository history on every push. …