DevSecOps
In-depth guides and analysis on devsecops from the Safeguard engineering team.
497 articles
AWS ECR Image Signing With Cosign In Production
Cosign-signed images in ECR are no longer a side project. This is how to roll out signing across an AWS estate without breaking the deploy pipeline.
Git Alias: Faster Workflows Without Sacrificing Security
A git alias turns a long command into a short one. Used well they save keystrokes; used carelessly they hide risky flags. Here is how to build aliases you can trust.
Installing Python on Mac Safely: A Security Guide
Installing Python para Mac the wrong way leaves you patching the system interpreter and running sudo pip. Here is the secure, maintainable setup for Python on macOS.
CLI Tool Design For Developer Security Checks
A security CLI lives or dies on the experience of typing it. A design guide for building security tooling that respects the developer's terminal.
python-multipart Security: Patching the Form-Data DoS
Why the python-multipart parser behind FastAPI and Starlette had a denial-of-service flaw, how to check your version, and how to keep form uploads safe.
How to Use Git Branch (and git checkout) Safely
A working reference for creating, switching, and checking out Git branches, plus the security habits that keep secrets and bad commits out of your history.
How to Download Python for Mac (Safely)
There are several ways to download Python for Mac. Here is how to pick the right one and verify what you install so you don't get a tampered interpreter.
How to Configure a Git SSH Key Safely
Setting up a Git SSH key gives you secure, password-free authentication. Here is how to generate one, configure Git, and avoid the common security mistakes.
GitLab CI/CD Security Hardening for 2025
A practical hardening playbook for GitLab 17.8 covering runner isolation, OIDC federation, CI variable scoping, and protected branch enforcement.
Jenkins Supply Chain Security Baseline 2026
A 2026 supply chain security baseline for Jenkins: plugin hygiene, agent isolation, Pipeline-as-Code discipline, credentials, and provenance integration.
Python tracemalloc: Finding Memory Leaks and Why It Matters for Security
How to use Python tracemalloc to trace memory allocations, hunt leaks, and understand why unbounded memory growth is a real availability risk.
Why Python's eval() Is Dangerous and What to Use Instead
Python eval() runs arbitrary code, and feeding it untrusted input is a remote code execution bug waiting to happen. Here's the risk, how the exploit works conceptually, and safer alternatives.
Self-healing security runs on Safeguard.
Your first fix PR is minutes away.
No sales call required, even your agent can complete the purchase over MCP.