SlideShare a Scribd company logo
Heather Downing @quorralyne
Defensive Coding
Bootcamp
(A Primer)
…what I wished I knew
when I started coding,
speci
fi
cally on how to be


notashackable


more secure
@quorralyne
(Roughly)
What you get out of this
Helpful tips on how to be an incrementally more secure developer


Scenario examples to avoid


Useful, non-language speci
fi
c knowledge


A quick starting point/checkup before your next project
@quorralyne
Yourperceptionshiftswith
experienceandtime
@quorralyne
@quorralyne
Don’t (always) build it yourself
@quorralyne
Plan to rotate your keys
@quorralyne
@quorralyne
https://tinyurl.com/CodeCovBreach
Mackenzie Jackson, GitGuardian - 21 June 2021
@quorralyne
Be skeptical about the new
library on the block
@quorralyne
owasp.org/www-project-top-ten @quorralyne
Challenge the status quo
@quorralyne
Your stack can obfuscate reality
@quorralyne
An Object Relational Mapping framework can = security obfuscation
ORM
@quorralyne
Know what tests cover security
@quorralyne
Secure app != secure data
@quorralyne
Don’t assume popular tech is
secure by default
@quorralyne
There is more than one way to
approach auth
@quorralyne
Incorrect encoding &
serializations are an issue
@quorralyne
owasp.org/www-community/How_to_write_insecure_code @quorralyne
owasp.org/www-project-top-ten/2017/A8_2017-Insecure_Deserialization.html @quorralyne
@quorralyne
Don’t use insu
ffi
cient hashes
@quorralyne
(Some examples)
Deprecated/Insecure Hashes
RC2


MD4


MD5


SHA1
owasp.org/www-project-mobile-top-10/2016-risks/m5-insu
ffi
cient-cryptography
@quorralyne
Just because it’s available
doesn’t mean it’s safe to use
@quorralyne
Code your wrote, with time, will
become insecure
@quorralyne
www.nist.gov/cyberframework
@quorralyne
Validate everything, every time
@quorralyne
String comparisons are red
fl
ags
@quorralyne
Don’t assume the user will
follow your use case
@quorralyne
You can be lazy and secure
@quorralyne
Don’t assume all cultures have
the same threat issues
@quorralyne
“80% of security is a common
body of knowledge.”
-Marc Rogers, organizer, DEFCON
@quorralyne
Get your head out of the code
@quorralyne
Have a trusted person


take a look
@quorralyne
CORS is code for TODO
@quorralyne
Verify that your environment
has bare minimum security
@quorralyne
Be transparent immediately
@quorralyne
What do YOU wish you had
known about coding defensively?
@quorralyne
Heather Downing
Stay Curious.
quorralyne.com
@quorralyne

More Related Content

PDF
Automotive OTA Security For The Connected Vehicle (ASRG Secure Our Streets 2022)
PDF
Open shift 4 infra deep dive
PPTX
Azure Pipelines
PPTX
Secure SDLC Framework
PPTX
Code Security with GitHub Advanced Security
PDF
Developing a Testing Strategy for DevOps Success
PDF
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
PPTX
Overview of .Net Framework 4.5
Automotive OTA Security For The Connected Vehicle (ASRG Secure Our Streets 2022)
Open shift 4 infra deep dive
Azure Pipelines
Secure SDLC Framework
Code Security with GitHub Advanced Security
Developing a Testing Strategy for DevOps Success
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
Overview of .Net Framework 4.5

What's hot (20)

PDF
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
PDF
Advanced GitHub Enterprise Administration
PPTX
IBM API Connect Deployment `Good Practices - IBM Think 2018
PPTX
SystemVerilog Assertion.pptx
PPTX
Qa in CI/CD
ODP
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
PDF
What Can Compilers Do for Us?
PDF
Terraforming your Infrastructure on GCP
PPTX
SonarQube Presentation.pptx
PPTX
TestComplete – A Sophisticated Automated Testing Tool by SmartBear
PPTX
Azure DevOps - Version Controlling with Git
PPTX
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
PDF
OpenShift Overview
PDF
1 intro to_dpdk_and_hw
PDF
Docker Tutorial.pdf
PPTX
The Test Pyramid
PDF
Low Code Capabilities of Digital Product Design Platforms
PPTX
Hashicorp Vault ppt
PDF
Exploiting IAM in the google cloud platform - dani_goland_mohsan_farid
PDF
DevSecOps What Why and How
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
Advanced GitHub Enterprise Administration
IBM API Connect Deployment `Good Practices - IBM Think 2018
SystemVerilog Assertion.pptx
Qa in CI/CD
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
What Can Compilers Do for Us?
Terraforming your Infrastructure on GCP
SonarQube Presentation.pptx
TestComplete – A Sophisticated Automated Testing Tool by SmartBear
Azure DevOps - Version Controlling with Git
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
OpenShift Overview
1 intro to_dpdk_and_hw
Docker Tutorial.pdf
The Test Pyramid
Low Code Capabilities of Digital Product Design Platforms
Hashicorp Vault ppt
Exploiting IAM in the google cloud platform - dani_goland_mohsan_farid
DevSecOps What Why and How
Ad

Similar to Defensive Coding Bootcamp (20)

PPT
Developing Software with Security in Mind
PPTX
So You Want to be a Hacker?
PDF
Luncheon 2016-07-16 - Topic 2 - Advanced Threat Hunting by Justin Falck
PDF
SFSCON23 - Tommaso Bailetti - Improving developer experience in Open Source P...
PPTX
Anatomy of Java Vulnerabilities - NLJug 2018
PPTX
DevSecCon Tel Aviv 2018 - Security learns to sprint by Tanya Janca
ODP
Logs And Backups
PPTX
Intro to INFOSEC
PDF
Add More Security To Your Testing and Automating - Saucecon 2021
PDF
All of the Amazing OpenStack Resources
PPTX
The Anatomy of Java Vulnerabilities
PPTX
Daniel Crowley - Speaking with Cryptographic Oracles
PPTX
So you wanna be a pentester - free webinar to show you how
PDF
ChaoSlingr: Introducing Security-Based Chaos Testing
PDF
The Architecture of Uncertainty
PPTX
Learn to Code and Have Fun Doing It!
PPTX
Cyber Security Workshop Presentation.pptx
PDF
From Data Science to Production - deploy, scale, enjoy! / PyData Amsterdam - ...
PDF
Splunk September 2023 User Group PDX.pdf
PDF
101 ways to fail at security analytics ... and how not to do that - BSidesLV ...
Developing Software with Security in Mind
So You Want to be a Hacker?
Luncheon 2016-07-16 - Topic 2 - Advanced Threat Hunting by Justin Falck
SFSCON23 - Tommaso Bailetti - Improving developer experience in Open Source P...
Anatomy of Java Vulnerabilities - NLJug 2018
DevSecCon Tel Aviv 2018 - Security learns to sprint by Tanya Janca
Logs And Backups
Intro to INFOSEC
Add More Security To Your Testing and Automating - Saucecon 2021
All of the Amazing OpenStack Resources
The Anatomy of Java Vulnerabilities
Daniel Crowley - Speaking with Cryptographic Oracles
So you wanna be a pentester - free webinar to show you how
ChaoSlingr: Introducing Security-Based Chaos Testing
The Architecture of Uncertainty
Learn to Code and Have Fun Doing It!
Cyber Security Workshop Presentation.pptx
From Data Science to Production - deploy, scale, enjoy! / PyData Amsterdam - ...
Splunk September 2023 User Group PDX.pdf
101 ways to fail at security analytics ... and how not to do that - BSidesLV ...
Ad

More from Heather Downing (16)

PDF
The Care and Feeding of Software Engineers
PDF
The Care and Feeding of Software Engineers
PDF
The Visible Developer: Why you shouldn't blend in
PDF
Technology is Easy, People are Hard
PDF
Google vs Alexa: Battle of the Bots
PDF
Speak To Me: Voice Development Practices
PDF
Speak To Me: Developing for brands with voice interfaces
PDF
Alexa Skills Kit with Web API on Azure
PDF
Augmented reality intro for mobile apps
PDF
Workshop: Building location-aware mobile apps with iBeacons
PDF
Imposter Syndrome: Overcoming Self-Doubt in Success
PDF
Building Location Aware Mobile Apps with iBeacons
PPTX
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
PPTX
Intro to Building Mobile Apps with Xamarin
PDF
Smaller Not Taller: Defeating the mobile application architecture giant
PPTX
ESKCSW Presentation - Nov 2013
The Care and Feeding of Software Engineers
The Care and Feeding of Software Engineers
The Visible Developer: Why you shouldn't blend in
Technology is Easy, People are Hard
Google vs Alexa: Battle of the Bots
Speak To Me: Voice Development Practices
Speak To Me: Developing for brands with voice interfaces
Alexa Skills Kit with Web API on Azure
Augmented reality intro for mobile apps
Workshop: Building location-aware mobile apps with iBeacons
Imposter Syndrome: Overcoming Self-Doubt in Success
Building Location Aware Mobile Apps with iBeacons
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
Intro to Building Mobile Apps with Xamarin
Smaller Not Taller: Defeating the mobile application architecture giant
ESKCSW Presentation - Nov 2013

Recently uploaded (20)

PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
assetexplorer- product-overview - presentation
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
System and Network Administraation Chapter 3
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Nekopoi APK 2025 free lastest update
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Transform Your Business with a Software ERP System
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Introduction to Artificial Intelligence
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
medical staffing services at VALiNTRY
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
System and Network Administration Chapter 2
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Computer Software and OS of computer science of grade 11.pptx
assetexplorer- product-overview - presentation
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Design an Analysis of Algorithms I-SECS-1021-03
System and Network Administraation Chapter 3
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Nekopoi APK 2025 free lastest update
Design an Analysis of Algorithms II-SECS-1021-03
Transform Your Business with a Software ERP System
Understanding Forklifts - TECH EHS Solution
Introduction to Artificial Intelligence
VVF-Customer-Presentation2025-Ver1.9.pptx
CHAPTER 2 - PM Management and IT Context
How to Migrate SBCGlobal Email to Yahoo Easily
medical staffing services at VALiNTRY
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
System and Network Administration Chapter 2
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Adobe Illustrator 28.6 Crack My Vision of Vector Design

Defensive Coding Bootcamp