Skip to content
Melo Podcasts Home
CategoriesLanguagesFollowing

Season 1, Episode 11 · DevSec Station

Threat Modeling for Developers (How To)

9 Sep 2026 · 7 min

Play episode WhatsApp Download

Episode notes

Threat modeling has a reputation for being complicated, full of diagrams, and requiring long meetings. In reality, most developers already do it, they just don't realize it. The difference is that doing it intentionally helps you catch security problems before they become security incidents. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca breaks threat modeling down into a simple five-step process that any developer can use while designing a feature. You'll l...

Transcript

Read the transcript · about 1,050 words, follows along as you listen

SPEAKER_00:Let's talk about threat modeling. If that phrase makes you picture whiteboards and diagrams and never-ending meetings, I get it. But here is the actual truth. Most developers do threat modeling all the time. We just don't call it that. Today, I want to show you how to do it on purpose in about 15 minutes. Hi, I'm Tanya Jenka, also known as SheHexPurple. Welcome to DevSecStation, a podcast for software developers who want to build more secure software.

SPEAKER_00:In each episode, I'll share a short practical lesson about secure coding, software security, and how to build safer systems without slowing development down. You can jump in at any episode, at any time. No homework required. This episode is sponsored by MAES. One of the biggest problems in security right now is that every vulnerability or cloud scanner says everything is critical, and honestly, no one has time for that. MAZES uses AI agents to investigate vulnerabilities in context, so you can focus on the issues that are actually exploitable in your environment and not just theoretically scary.

SPEAKER_00:Their AI agents also generate and prioritize fixes that knock out multiple vulnerabilities at once, which is honestly the kind of scaling that security teams really need right now. Learn more about maze at mazehq.com slash devsec. If you're building a new feature, adding an endpoint, integrating a service, or changing how data flows through your system, this episode is for you. So for your information, you do not need security approval, special tooling, or a diagram app or tool to do this.

SPEAKER_00:You can just start now. Threat modeling sounds complicated because we wrapped it in process, but at its core, it's actually very simple. Threat modeling is just intentionally thinking about what you're building, what you're protecting, and how it could be misused. That's it, seriously. The goal is not to predict every single possible attack, it's to notice obvious problems before they turn into security incidents and then fix them. Developers do this informally, literally, all the time.

SPEAKER_00:You add a new endpoint and you think, hmm, should this be authenticated? I should add authentication. You store something new in the database and you think, is this sensitive? You integrate a service and you think, oh, what's gonna happen if this goes down? If this goes down, then what? What should I do? That's literally you threat modeling. The difference is that when we do it casually, it's very easy to miss things. But when we do it intentionally, usually we catch all the important stuff.

SPEAKER_00:So how about we try it? I'm gonna give you a simple way to threat model one feature without a diagram. Okay, are you ready? Step one, define the thing. Write down on a piece of paper or type it out what you're building in just one sentence. So for example, I'm building an endpoint that lets users update their profile. If you cannot describe a feature simply, that's already a signal that you probably have a problem here. Okay. Step two, let's identify what you are protecting.

SPEAKER_00:Ask yourself, what data is involved? Is it sensitive? Who should be allowed to do this action? Would it be bad if something went wrong and what would that be? Step three, identify entry points and trust boundaries. Ask yourself, where does this data come from? Where does it cross from untrusted into trusted? Where do we rely on authentication and authorization? I have a tip for you. These are the same places you look at during a secure code review.

SPEAKER_00:Remember that from the last episode? Okay, step four. Ask three misuse questions. You don't need a long list, just ask a few things such as, what if someone who shouldn't do this tries to do it anyway? What if this input is malicious or otherwise unexpected? What happens if this fails in a really weird way? If you can answer those questions, you're doing threat modeling. Step five, decide what needs a control. So for anything that you feel uncomfortable about, you need to decide, do we already have a control to protect against this?

SPEAKER_00:And if not, does one need to be added? This is where threat modeling turns from just a discussion into action. We don't just want to identify threats, we want to defend against the ones that actually scare us. Shall we do our bad better best thing now? I think we should. A bad approach for threat modeling is assuming security testing will just catch everything later. It pushes risk downstream, where fixes are more expensive, and it might get missed.

SPEAKER_00:A slightly better approach is thinking about threats casually while building. This helps, but it's inconsistent, and it depends largely on memory, which, as we know, is not a reliable way to do things. The best approach is threat modeling each new app or feature on purpose. One feature can be 15 minutes, a single page of notes, done. When you do this regularly, secure design becomes a habit. If you do just one thing after this episode, please do this.

SPEAKER_00:Threat model one feature that you are currently working on. Use the five steps that we just covered. Write it down somewhere that your team can see it. So you could put it in a PR description, a ticket, or a simple markdown file, whatever it is that makes sense to you, but so it won't disappear. You don't need to solve everything. Just identify one place where a control is missing or unclear and then fix it. That's a huge win. Threat modeling is not security theater.

SPEAKER_00:It really can create true value. It's a way to ensure fewer surprises happen to you later. When developers do it themselves, security stops becoming a blocker for you. And instead, security starts to be part of what you think of as good design. Thanks for listening to DevSecStation. If you enjoyed this episode, please subscribe, share it with a friend, or leave a review. It helps more people discover the show. If you'd like to learn more, I'm Tanya Jenka, also known as SheHacksPurple.

SPEAKER_00:And I teach secure coding training for software developers. You can find me online at shehackspurple.ca. Thank you for being here.

Transcript supplied by the publisher with the episode.

Podcast

DevSec Station

Tanya Janca | SheHacksPurple · Tech & Science · English

DevSec Station is a security focused podcast for software developers who want to create amazing applications. Hosted by Tanya Janca, also known as SheHacksPurple, these short lessons will help you level up.

More from DevSec Station All episodes →

  1. S2 · E1 · 8 Oct 2026 · 9 min

    Your AI Worked 59 Times. What About the 60th?

    What happens when your AI assistant does exactly what you expect 59 times... and then does something completely bananas on the 60th? While teaching a secure coding class, I watched nearly 60 students use the same AI assistant, programming language, and prompts. For 59 of them, everything went as expected. But one student's AI-generated Python code included instructions to suppress linting checks, followed by code that leaked secrets to an external file. The AI hadn't escaped a sandbox. It ...

  2. S1 · E12 · 23 Sep 2026 · 7 min

    Security Requirements: What They Are and How to Add Them to Your Project

    Security problems don't generally happen because developers 'don't care' or lack skill. They happen because no one clearly defined what "secure" meant in the first place. When security expectations are left implicit, developers are forced to guess. And that's where vulnerabilities are born. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca explains what security requirements are, why they're one of the most overlooked secure development practices, and how devel...

  3. 26 Aug 2026 · 9 min

    How to Do Secure Code Review (When You’re Not a Security Expert)

    Secure code review isn't about finding obscure vulnerabilities or thinking like an elite hacker. It's about verifying that the security controls your application depends on are actually present, in the right place, and correctly implemented. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca explains how developers can perform effective secure code reviews without being security experts. You'll learn what security controls to look for, how trust boundaries help ...

  4. S1 · E9 · 12 Aug 2026 · 8 min

    The Most Common Secure Coding Mistakes Good Devs Make

    Security bugs aren't usually caused by 'bad developers'. More often, they're the result of good developers making rational decisions under deadlines, competing priorities, and imperfect systems. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca explores why common secure coding mistakes are often incentive problems rather than knowledge problems. You'll learn why insecure patterns emerge, why simply telling developers to "be more careful" doesn't work, and how ...

  5. S1 · E8 · 29 Jul 2026 · 7 min

    Secure Defaults Beat Secure Training

    Security training has its place. But if training alone solved security problems, we wouldn't keep seeing the same vulnerabilities appear over and over again. The real problem usually isn't that developers don't know what to do; it's that the easiest path is often an insecure one. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca explains why secure defaults are one of the most effective security controls you can implement, why relying on memory and willpower ra...

  6. S1 · E7 · 15 Jul 2026 · 6 min

    Why Current Security Tools Fail Developers

    Security tools are supposed to help developers build safer software. But sometimes it seems like they create more frustration than security. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca explains why many security tools overwhelm developers with alerts, how alert fatigue erodes trust, and why "more findings" doesn't mean "more security." You'll learn how to tune your classic AppSec tools so they surface meaningful issues instead of creating noise that every...

  7. S1 · E6 · 1 Jul 2026 · 8 min

    Vibe Coding, Copilots, and Security Drift

    AI coding assistants can help developers move incredibly fast. But this new speed comes with a new challenge: security drift. This episode is sponsored by Maze. In this episode of DevSec Station, Tanya Janca explores how tools like GitHub Copilot, ChatGPT, Cursor, and other AI coding assistants can unintentionally change the security assumptions your software was built on. You'll learn what security drift is, why it happens so quietly, and how to keep the benefits of AI-assisted development w...

Take it with you

The Melo app keeps playing with the screen off, works in the car and on your watch, wakes you to your station, and browses the whole catalogue offline. Free, no ads, no account.

Get it on Google Play