SlideShare a Scribd company logo
1 of 52
The Tactical Application Security Program:
Getting Stuff Done
Cory Scott & David Cintz, LinkedIn
Who do you want to work with?
What security team do you want to work with?
Cory Scott
Director, House Security @ LinkedIn
Previously at Matasano Security,
ABN AMRO/RBS, @stake
Likes: Cat pictures
Dislikes: Improperly chilled beer
Who Are We?
David Cintz
Senior Technical Program Manager,
House Security @ LinkedIn
Previously at Black Hat, Zynga,
Chevron
Likes: Flying planes
Dislikes: Automatic towel dispensers
Agenda
● Elements of a Tactical Security Program
● Application Assessment
● Application Incident Response
● Bug Bounty Programs
This is your security life, and you’re ending it
one strategy at a time
● Traditional security programs focus on strategic vision
instead of tactical success
Application Security and the Bravery of Tactical Execution
● Application security programs do much better tactically.
● Perpetually deferred reward vs immediate value: Why would
anyone choose the former?
● A primer on management psychology...
● Why your non-security peers love to hear the word strategy
You Can’t Defeat Today’s Attacks With A Gantt Chart
Elements of a Tactical Security Program
1. Lightweight and iterative
Example: API Review
Version 1: Catalog the request, ask three questions, with canned advice
Version 2: Add conditionals to potentially introduce design review
Version 3: Automated scan to find vulnerabilities
Let people know that while the process will change, the entry point
will not.
2. Can demonstrably reduce risk for each action taken
Example: Staff performance and sprint plan gut checks
1. Does this prevent something bad from happening in the future?
2. Did it let us know about something bad happening that we didn’t know
about already?
3. Does it put us on a clear-line path to stopping an existing bad thing from
happening anymore?
● Do this for your work plan every sprint. If you don’t like the answers, change the
plan.
● Do this for your team every quarter. Document the results and the deliverables.
Distill the majority of your performance discussions down to these questions.
3. Focus on operational excellence, less on authority
Example: Measure every meaningful aspect of your assessment
and incident response programs. Share those results far and wide.
Assessment Measurements (Quarterly)
● Completed assessments, broken down by:
○ infrastructure
○ member-facing production apps
○ corporate systems
○ microsites
● Number of bugs filed
● How many assessments completed before
go-live
Ecosystem Measurements (Quarterly)
● Production-impacting bugs filed by
discovery source and current status
(status weekly)
● Production-impacting bugs resolved
● Critical bugs impacting members,
including response times
● External vulnerability report
statistics
A Digression on Authority & Buy-In
● Tactical security teams should act as consultancies with a
governance mission that they keep relatively well concealed.
● How much buy-in do you need?
● You’ll encounter three camps of people:
○ Supporters
○ Followers
○ Resistance
4. Makes others move instead of wait
Example: First month on the job? I called a Code Yellow.
● Every team had a small amount of consistent work, tied to their
sprints, monitored daily or weekly
● Prioritization discussions took place regularly, decisions on
timing:
○ This sprint
○ This quarter
○ This year
○ Not sure
Agenda
● Elements of a Tactical Security Program
● Application Assessment
● Application Incident Response
● Bug Bounty Programs
A Year Of Assessments At LinkedIn
Type Number
Penetration Tests 251
Code Reviews 85
Design Reviews 48
Cloud Assessments 44
Risk Assessments 14
Assessments have a Flow
Tactical Assessment Principles
1. Be easy to find and quick to engage.
2. Be flexible on documentation & preparation.
3. Give clear guidance that has a reasonable likelihood of being executed.
4. Jointly engage with legal, customer support, and other groups in engineering for
leverage.
5. Be passionate yet practical; don’t pass judgment or punish.
An example office hours session
● Available twice a week, but can be scheduled on demand;
signup sheet is the document of record
● House Security Team, Trust & Safety, and Product Legal, with a
brief presentation by requestor
● We’ll document requirements as we go
○ Product requirements: security, anti-abuse, legal
○ Assessment requirements: Next steps for deep dives, selections from the
service catalog
● Each month, we do 30 product consultations, 25 general
security sessions, and 4 corporate IT speed rounds
Assessment Tactics
● Build a service catalog. Here’s ours:
○ Threat model / risk assessment
○ Design review
○ Manual penetration test
○ Code review
○ Vendor review
● Document your methodology for consistency
● Scope each test and define game-overs
● Create test plans that include baseline methodology and
specific test objectives
Navigating the wilderness of existential assessment questions
● What to do when you get what you think you wanted?
● Definitions can be hard. Don’t avoid them. Own them instead.
○ What does review mean?
○ When are you done?
● How to deal with rapidly evolving products
Generating Assessment Demand: Stuff That Matters
● Be a part of product launch flow
○ Look for the business decision points where projects are approved
○ Insert yourself into the design process post-approval
○ Look for opportunities to contribute security guidance outside of just
pentesting or code review
■ Whitepapers, communications & product marketing
■ Third-party assessments
■ Abuse detection and monitoring
● Watch for changes in staging and production
● Befriend the gatekeepers
○ Domain registration
○ DNS changes
○ Traffic & front-end routes
Pitfalls
● Unwanted and uninteresting reviews
● Standards and self-certification
● Missing the big picture
Lead, Follow, or Get Out Of The Way
● In an external consultancy, your goal is exclusive: client
satisfaction.
● In an internal security team, you must balance:
○ Developer / Business Owner Satisfaction
○ Overarching company governance and security
○ Precedent-setting behavior
○ Customer and member safety
● The case of LinkedIn Intro
LinkedIn Intro
✓ Significant design review
✓ Cryptographic implementation review
✓ Penetration testing, internal and external
✓ Clear privacy commitment published
Agenda
● Elements of a Tactical Security Program
● Application Assessment
● Application Incident Response
● Bug Bounty Programs
Critical Security Bugs
● 77 Critical bugs handled in the past year
○ 21 externally discovered
■ 13 from private bug bounty
■ 8 from other sources
○ 56 discovered internally
● We’ve been told that our definition of critical is more
aggressive than the industry baseline.
● The vast majority of these bugs were closed without any
member impact.
Handling Outside Reports
● On call pentester to handle incoming reports
● SLA
○ 4 hours to triage and respond
○ 8 hours weekends and nights - only handle criticals
● Responsibilities of on call
○ Triage
○ Establish working POC
○ File tickets
○ Respond
● Basic human response
○ Acknowledge report
○ Investigating issue
Case Study - Changing Faces
● We received the report after hours
● Soon discovered the report was not the original
○ Found the original as a YouTube video
● Responded and implemented stop-gap solution within the
hour
● Demo...
Much
Improved!
Case Study - Changing Faces Continued...
● Report came in after hours
○ Triaged and responded in about an hour
● What makes this a critical?
○ Bug Classification Table
○ Contains specific examples
○ Provides clear guidance
○ Has established Service Level Agreements (SLAs)
● LinkedIn is an online service company
○ We can push code quickly
○ Sometimes not quick enough
○ Forced to use stop-gap solutions
Cleanup After the Incident
Determining Scope of Impact
● Do NOT wait until the incident is over
● Start research in parallel
● Application response team needs access to log data.
What we use at LinkedIn:
○ Elasticsearch
○ HDFS / Hadoop / Hive
● Dedicated data science team is great,
though not a necessity
Don’t wait until you are in the midst
of an incident to find out that you
don’t have proper logs or the IP
address being captured of your
attacker is that of your own CDN.
Case Study
● Externally reported through our bug bounty program
● Demonstrated that he could delete any embedded video from
any SlideShare presentation
● On-call engineer discovered that he could add a video to any
SlideShare presentation
○ Not part of the original report
○ Discovered during triaging bug
● Impact is clear, easy to explain why it’s a critical
○ Not all bugs are this straightforward
Bug Classifications and Why We Built It
● We/You are the face of security within your company
● We have to convince internal teams to fix things
○ Resulting in being labeled _____ when we stand our ground
■ ‘grumpy’
■ ‘argumentative’
■ ‘jerk’
● Teams will game the system and argue
○ Impact
○ Complexity
○ Accessibility
○ Wormability
○ “It has existed like that for years”
Sample Bug Classification Table
Importance of Communication During an Incident
● Incident success or failure is judged by others in your company
● Coordination and communication are key
○ Many teams are involved typically
○ Need to get updates to a centralized point
○ Communication must flow in all directions - including up
● Management should never hear about an incident second hand
● Provide official updates from a dedicated person
○ Summary of issue
○ Potential impact
○ Next steps
○ Planned remediation (if available)
Communication Email Template
Emails to the management should be
sent on a regular basis. If you do not
have a ecosystem team, thats ok too;
just set the expectation for when the
next update will happen.
Using Playbooks
● Developing a standard playbook is a must
● Will provide guidance and framework
● Living document
● Not 100 pages
○ Must be easy to use
○ No one will update
○ No one will read
○ No one will use
● Share playbook / be transparent with partner teams
○ Publish playbook
○ Tell them what is going to happen
● Be consultative: explore potential short-term and long-term
fixes
● For application vulnerabilities
○ Disable functionality through configuration or A/B test control
■ Hint: encourage the development of new functionality and bug fixes behind A/B testing
○ Block - “When only HTTP error codes will do”
■ Reverse proxy for endpoints
■ Specialized filters for request body filtering
○ Monitor for abuse
Reducing the Threat Surface
While you can allow the “long term
fix” discussion to happen and is
completely acceptable, focus has to
maintain on mitigating the threat
now.
Agenda
● Elements of a Tactical Security Program
● Application Assessment
● Application Incident Response
● Bug Bounty Programs
Public Bug Bounties Today
● Main motivations for companies to build programs
○ Receive quality reports
○ Establish good relationship with security community
○ Stay out of negative light
○ Good use of money & resources
● In contrary these programs have fostered an influx of false and
bad reports
● Signal to noise ratio constantly degrading
○ Companies forced to use dedicated resources
○ Engage consultancies
○ Use platform vendor to sift through the chaff
Case Study
● External researcher published a blog post about Intro product
● We opted to talk with the author
○ Did NOT involve legal
○ Reached out with a simple invite to chat
○ Goal was to work collaboratively
● These actions resulted in positive outcome
● Focus on building relationships with researchers
○ Communicate and be transparent (as much as possible)
○ Understand the motivation of the researchers
This is not and should not be an
adversarial relationship - it’s
completely the contrary. This
change in attitude on both sides
means that both parties win.
How We Adopted Our Current Program
● Previously, a vast majority of reports to LinkedIn were not
actionable or meaningful
● Smaller group of researchers emerged
● They wanted to work with us - we liked working with them
○ Why not reward them?
○ This was the spirit of the original programs
● Allows us to grow our relationships with researchers
LinkedIn Program Now
● Launched LinkedIn private program October 2014
○ Paid out over $65,000 bounties
○ Received more than 65 actionable reports
○ Signal to noise ratio 7:3
● We have seen significant reduction in authorization-related
issues
● Less “gamesmanship” of program - Public programs
incentivise Junk reports
What Do These Ratios Really Mean to Me?!
● Industry average is approximately 1:20
● What if every report took 1 hour on average to triage?
● Sifting through the chaff is costly
What Do These Ratios Really Mean to Me?!
HackerOne - July 2015
“Improving Signal Over 10,000 Bugs”
Bugcrowd - July 2015
“The State of Bug Bounty”
Wrapping Up
● Tactical approaches to application security should be
embraced
● Treat your assessment program like a consultancy
● Application incident response may be the most important
thing to get right
● Focus on treating external vulnerability researchers right first,
then consider bounty programs

More Related Content

What's hot

Kelis king - software engineering and best practices
Kelis king -  software engineering and best practicesKelis king -  software engineering and best practices
Kelis king - software engineering and best practicesKelisKing
 
Post mortem report
Post mortem reportPost mortem report
Post mortem reportKuaci Pedas
 
Risk 8- pm study question risk management
Risk 8- pm study question risk managementRisk 8- pm study question risk management
Risk 8- pm study question risk managementMohamed Saeed
 
Software Engineering Code Of Ethics And Professional Practice
Software Engineering Code Of Ethics And Professional PracticeSoftware Engineering Code Of Ethics And Professional Practice
Software Engineering Code Of Ethics And Professional Practice Saqib Raza
 
Risk 9-pm study project risk management-test
Risk 9-pm study project risk management-testRisk 9-pm study project risk management-test
Risk 9-pm study project risk management-testMohamed Saeed
 
Risk 3 simplelearn-exam2-ans
Risk 3 simplelearn-exam2-ansRisk 3 simplelearn-exam2-ans
Risk 3 simplelearn-exam2-ansMohamed Saeed
 
Root cause analysis master plan
Root cause analysis master planRoot cause analysis master plan
Root cause analysis master planGlen Alleman
 
Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...Harold van Heeringen
 
Risk 5 simplelearn-exam4-ans
Risk 5 simplelearn-exam4-ansRisk 5 simplelearn-exam4-ans
Risk 5 simplelearn-exam4-ansMohamed Saeed
 
5 Ways to Reduce 3rd Party Developer Risk
5 Ways to Reduce 3rd Party Developer Risk5 Ways to Reduce 3rd Party Developer Risk
5 Ways to Reduce 3rd Party Developer RiskSecurity Innovation
 
Risk 0-risk-guide book for pmi-rmp by amer elbaz
Risk 0-risk-guide book for pmi-rmp by amer elbazRisk 0-risk-guide book for pmi-rmp by amer elbaz
Risk 0-risk-guide book for pmi-rmp by amer elbazMohamed Saeed
 
Project Management Concepts
Project Management ConceptsProject Management Concepts
Project Management ConceptsSaqib Raza
 
Risk 6 questions - 170
Risk 6 questions - 170Risk 6 questions - 170
Risk 6 questions - 170Mohamed Saeed
 
Risk 4 simplelearn-exam3-ans
Risk 4 simplelearn-exam3-ansRisk 4 simplelearn-exam3-ans
Risk 4 simplelearn-exam3-ansMohamed Saeed
 
There's no time to test, can you just automate it? by Anna Heiermann
There's no time to test, can you just automate it? by Anna HeiermannThere's no time to test, can you just automate it? by Anna Heiermann
There's no time to test, can you just automate it? by Anna HeiermannQA or the Highway
 

What's hot (20)

Kelis king - software engineering and best practices
Kelis king -  software engineering and best practicesKelis king -  software engineering and best practices
Kelis king - software engineering and best practices
 
Pmp test 03
Pmp test 03Pmp test 03
Pmp test 03
 
Pmp test 01
Pmp test 01Pmp test 01
Pmp test 01
 
Post mortem report
Post mortem reportPost mortem report
Post mortem report
 
Risk 8- pm study question risk management
Risk 8- pm study question risk managementRisk 8- pm study question risk management
Risk 8- pm study question risk management
 
Agile Software Process Improvement
Agile Software Process ImprovementAgile Software Process Improvement
Agile Software Process Improvement
 
Software Engineering Code Of Ethics And Professional Practice
Software Engineering Code Of Ethics And Professional PracticeSoftware Engineering Code Of Ethics And Professional Practice
Software Engineering Code Of Ethics And Professional Practice
 
Pmi rmp
Pmi rmpPmi rmp
Pmi rmp
 
Risk 9-pm study project risk management-test
Risk 9-pm study project risk management-testRisk 9-pm study project risk management-test
Risk 9-pm study project risk management-test
 
Risk 3 simplelearn-exam2-ans
Risk 3 simplelearn-exam2-ansRisk 3 simplelearn-exam2-ans
Risk 3 simplelearn-exam2-ans
 
2b other processes
2b other processes2b other processes
2b other processes
 
Root cause analysis master plan
Root cause analysis master planRoot cause analysis master plan
Root cause analysis master plan
 
Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...
 
Risk 5 simplelearn-exam4-ans
Risk 5 simplelearn-exam4-ansRisk 5 simplelearn-exam4-ans
Risk 5 simplelearn-exam4-ans
 
5 Ways to Reduce 3rd Party Developer Risk
5 Ways to Reduce 3rd Party Developer Risk5 Ways to Reduce 3rd Party Developer Risk
5 Ways to Reduce 3rd Party Developer Risk
 
Risk 0-risk-guide book for pmi-rmp by amer elbaz
Risk 0-risk-guide book for pmi-rmp by amer elbazRisk 0-risk-guide book for pmi-rmp by amer elbaz
Risk 0-risk-guide book for pmi-rmp by amer elbaz
 
Project Management Concepts
Project Management ConceptsProject Management Concepts
Project Management Concepts
 
Risk 6 questions - 170
Risk 6 questions - 170Risk 6 questions - 170
Risk 6 questions - 170
 
Risk 4 simplelearn-exam3-ans
Risk 4 simplelearn-exam3-ansRisk 4 simplelearn-exam3-ans
Risk 4 simplelearn-exam3-ans
 
There's no time to test, can you just automate it? by Anna Heiermann
There's no time to test, can you just automate it? by Anna HeiermannThere's no time to test, can you just automate it? by Anna Heiermann
There's no time to test, can you just automate it? by Anna Heiermann
 

Similar to Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015

Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023Matt Tesauro
 
Product Agility: 3 fundamentals from the trenches
Product Agility: 3 fundamentals from the trenchesProduct Agility: 3 fundamentals from the trenches
Product Agility: 3 fundamentals from the trenchesPedro Teixeira
 
Big data and other buzzwords
Big data and other buzzwordsBig data and other buzzwords
Big data and other buzzwordsAndrew Clark
 
CISSP Week 12
CISSP Week 12CISSP Week 12
CISSP Week 12jemtallon
 
Product Agility: 3 fundamentals from the trenches (Braga,PT)
Product Agility: 3 fundamentals from the trenches (Braga,PT)Product Agility: 3 fundamentals from the trenches (Braga,PT)
Product Agility: 3 fundamentals from the trenches (Braga,PT)Pedro Teixeira
 
Agile practices for management
Agile practices for managementAgile practices for management
Agile practices for managementIcalia Labs
 
Cybersecurity Summit AHR20 Recover Tridium
Cybersecurity Summit AHR20 Recover TridiumCybersecurity Summit AHR20 Recover Tridium
Cybersecurity Summit AHR20 Recover TridiumCimetrics Inc
 
Building Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software EngineeringBuilding Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software EngineeringMuhammad Shehata
 
HIS 2017 Paul Sherwood- towards trustable software
HIS 2017 Paul Sherwood- towards trustable software HIS 2017 Paul Sherwood- towards trustable software
HIS 2017 Paul Sherwood- towards trustable software jamieayre
 
Measuring the Productivity of Your Engineering Organisation - the Good, the B...
Measuring the Productivity of Your Engineering Organisation - the Good, the B...Measuring the Productivity of Your Engineering Organisation - the Good, the B...
Measuring the Productivity of Your Engineering Organisation - the Good, the B...Marin Dimitrov
 
10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)
10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)
10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)CodeScience
 
Technical improvements. Reasons. Methods. Estimations. CJ
Technical improvements.  Reasons. Methods. Estimations. CJTechnical improvements.  Reasons. Methods. Estimations. CJ
Technical improvements. Reasons. Methods. Estimations. CJpolinaucc
 
Return of the security champions ep1 (1)
Return of the security champions ep1 (1)Return of the security champions ep1 (1)
Return of the security champions ep1 (1)Marcos Valle
 
Odoo Experience 2018 - Project Methodology: The Editor Stance
Odoo Experience 2018 - Project Methodology: The Editor StanceOdoo Experience 2018 - Project Methodology: The Editor Stance
Odoo Experience 2018 - Project Methodology: The Editor StanceElínAnna Jónasdóttir
 
(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...
(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...
(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...Andrew O. Leeth
 
Agile Governance for Hybrid Programs
Agile Governance for Hybrid ProgramsAgile Governance for Hybrid Programs
Agile Governance for Hybrid ProgramsCprime
 
How can you deliver a secure product
How can you deliver a secure productHow can you deliver a secure product
How can you deliver a secure productMichael Furman
 
Extreme Programming 1st.pdf
Extreme Programming 1st.pdfExtreme Programming 1st.pdf
Extreme Programming 1st.pdfBassam Kanber
 
What are the Best Practices for Enterprise Software Applications?
What are the Best Practices for Enterprise Software Applications?What are the Best Practices for Enterprise Software Applications?
What are the Best Practices for Enterprise Software Applications?BoTree Technologies
 

Similar to Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015 (20)

Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023
 
Product Agility: 3 fundamentals from the trenches
Product Agility: 3 fundamentals from the trenchesProduct Agility: 3 fundamentals from the trenches
Product Agility: 3 fundamentals from the trenches
 
Big data and other buzzwords
Big data and other buzzwordsBig data and other buzzwords
Big data and other buzzwords
 
CISSP Week 12
CISSP Week 12CISSP Week 12
CISSP Week 12
 
Product Agility: 3 fundamentals from the trenches (Braga,PT)
Product Agility: 3 fundamentals from the trenches (Braga,PT)Product Agility: 3 fundamentals from the trenches (Braga,PT)
Product Agility: 3 fundamentals from the trenches (Braga,PT)
 
Agile practices for management
Agile practices for managementAgile practices for management
Agile practices for management
 
Cybersecurity Summit AHR20 Recover Tridium
Cybersecurity Summit AHR20 Recover TridiumCybersecurity Summit AHR20 Recover Tridium
Cybersecurity Summit AHR20 Recover Tridium
 
Building Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software EngineeringBuilding Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software Engineering
 
HIS 2017 Paul Sherwood- towards trustable software
HIS 2017 Paul Sherwood- towards trustable software HIS 2017 Paul Sherwood- towards trustable software
HIS 2017 Paul Sherwood- towards trustable software
 
Measuring the Productivity of Your Engineering Organisation - the Good, the B...
Measuring the Productivity of Your Engineering Organisation - the Good, the B...Measuring the Productivity of Your Engineering Organisation - the Good, the B...
Measuring the Productivity of Your Engineering Organisation - the Good, the B...
 
10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)
10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)
10 Tips to Pass Salesforce Security Review (and Steps to Take If You Don’t!)
 
Technical improvements. Reasons. Methods. Estimations. CJ
Technical improvements.  Reasons. Methods. Estimations. CJTechnical improvements.  Reasons. Methods. Estimations. CJ
Technical improvements. Reasons. Methods. Estimations. CJ
 
Return of the security champions ep1 (1)
Return of the security champions ep1 (1)Return of the security champions ep1 (1)
Return of the security champions ep1 (1)
 
Odoo Experience 2018 - Project Methodology: The Editor Stance
Odoo Experience 2018 - Project Methodology: The Editor StanceOdoo Experience 2018 - Project Methodology: The Editor Stance
Odoo Experience 2018 - Project Methodology: The Editor Stance
 
(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...
(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...
(ISC)2 Security Congress 2015 - The Cloud Trust Conundrum- You’re Asking all ...
 
Pusheando en master, que es gerundio
Pusheando en master, que es gerundioPusheando en master, que es gerundio
Pusheando en master, que es gerundio
 
Agile Governance for Hybrid Programs
Agile Governance for Hybrid ProgramsAgile Governance for Hybrid Programs
Agile Governance for Hybrid Programs
 
How can you deliver a secure product
How can you deliver a secure productHow can you deliver a secure product
How can you deliver a secure product
 
Extreme Programming 1st.pdf
Extreme Programming 1st.pdfExtreme Programming 1st.pdf
Extreme Programming 1st.pdf
 
What are the Best Practices for Enterprise Software Applications?
What are the Best Practices for Enterprise Software Applications?What are the Best Practices for Enterprise Software Applications?
What are the Best Practices for Enterprise Software Applications?
 

Recently uploaded

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Recently uploaded (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015

  • 1. The Tactical Application Security Program: Getting Stuff Done Cory Scott & David Cintz, LinkedIn
  • 2. Who do you want to work with?
  • 3. What security team do you want to work with?
  • 4. Cory Scott Director, House Security @ LinkedIn Previously at Matasano Security, ABN AMRO/RBS, @stake Likes: Cat pictures Dislikes: Improperly chilled beer Who Are We? David Cintz Senior Technical Program Manager, House Security @ LinkedIn Previously at Black Hat, Zynga, Chevron Likes: Flying planes Dislikes: Automatic towel dispensers
  • 5. Agenda ● Elements of a Tactical Security Program ● Application Assessment ● Application Incident Response ● Bug Bounty Programs
  • 6. This is your security life, and you’re ending it one strategy at a time ● Traditional security programs focus on strategic vision instead of tactical success
  • 7. Application Security and the Bravery of Tactical Execution ● Application security programs do much better tactically. ● Perpetually deferred reward vs immediate value: Why would anyone choose the former? ● A primer on management psychology... ● Why your non-security peers love to hear the word strategy
  • 8. You Can’t Defeat Today’s Attacks With A Gantt Chart
  • 9. Elements of a Tactical Security Program
  • 10. 1. Lightweight and iterative Example: API Review Version 1: Catalog the request, ask three questions, with canned advice Version 2: Add conditionals to potentially introduce design review Version 3: Automated scan to find vulnerabilities Let people know that while the process will change, the entry point will not.
  • 11. 2. Can demonstrably reduce risk for each action taken Example: Staff performance and sprint plan gut checks 1. Does this prevent something bad from happening in the future? 2. Did it let us know about something bad happening that we didn’t know about already? 3. Does it put us on a clear-line path to stopping an existing bad thing from happening anymore? ● Do this for your work plan every sprint. If you don’t like the answers, change the plan. ● Do this for your team every quarter. Document the results and the deliverables. Distill the majority of your performance discussions down to these questions.
  • 12. 3. Focus on operational excellence, less on authority Example: Measure every meaningful aspect of your assessment and incident response programs. Share those results far and wide. Assessment Measurements (Quarterly) ● Completed assessments, broken down by: ○ infrastructure ○ member-facing production apps ○ corporate systems ○ microsites ● Number of bugs filed ● How many assessments completed before go-live Ecosystem Measurements (Quarterly) ● Production-impacting bugs filed by discovery source and current status (status weekly) ● Production-impacting bugs resolved ● Critical bugs impacting members, including response times ● External vulnerability report statistics
  • 13. A Digression on Authority & Buy-In ● Tactical security teams should act as consultancies with a governance mission that they keep relatively well concealed. ● How much buy-in do you need? ● You’ll encounter three camps of people: ○ Supporters ○ Followers ○ Resistance
  • 14. 4. Makes others move instead of wait Example: First month on the job? I called a Code Yellow. ● Every team had a small amount of consistent work, tied to their sprints, monitored daily or weekly ● Prioritization discussions took place regularly, decisions on timing: ○ This sprint ○ This quarter ○ This year ○ Not sure
  • 15. Agenda ● Elements of a Tactical Security Program ● Application Assessment ● Application Incident Response ● Bug Bounty Programs
  • 16. A Year Of Assessments At LinkedIn Type Number Penetration Tests 251 Code Reviews 85 Design Reviews 48 Cloud Assessments 44 Risk Assessments 14
  • 18. Tactical Assessment Principles 1. Be easy to find and quick to engage. 2. Be flexible on documentation & preparation. 3. Give clear guidance that has a reasonable likelihood of being executed. 4. Jointly engage with legal, customer support, and other groups in engineering for leverage. 5. Be passionate yet practical; don’t pass judgment or punish.
  • 19. An example office hours session ● Available twice a week, but can be scheduled on demand; signup sheet is the document of record ● House Security Team, Trust & Safety, and Product Legal, with a brief presentation by requestor ● We’ll document requirements as we go ○ Product requirements: security, anti-abuse, legal ○ Assessment requirements: Next steps for deep dives, selections from the service catalog ● Each month, we do 30 product consultations, 25 general security sessions, and 4 corporate IT speed rounds
  • 20. Assessment Tactics ● Build a service catalog. Here’s ours: ○ Threat model / risk assessment ○ Design review ○ Manual penetration test ○ Code review ○ Vendor review ● Document your methodology for consistency ● Scope each test and define game-overs ● Create test plans that include baseline methodology and specific test objectives
  • 21. Navigating the wilderness of existential assessment questions ● What to do when you get what you think you wanted? ● Definitions can be hard. Don’t avoid them. Own them instead. ○ What does review mean? ○ When are you done? ● How to deal with rapidly evolving products
  • 22. Generating Assessment Demand: Stuff That Matters ● Be a part of product launch flow ○ Look for the business decision points where projects are approved ○ Insert yourself into the design process post-approval ○ Look for opportunities to contribute security guidance outside of just pentesting or code review ■ Whitepapers, communications & product marketing ■ Third-party assessments ■ Abuse detection and monitoring ● Watch for changes in staging and production ● Befriend the gatekeepers ○ Domain registration ○ DNS changes ○ Traffic & front-end routes
  • 23. Pitfalls ● Unwanted and uninteresting reviews ● Standards and self-certification ● Missing the big picture
  • 24. Lead, Follow, or Get Out Of The Way ● In an external consultancy, your goal is exclusive: client satisfaction. ● In an internal security team, you must balance: ○ Developer / Business Owner Satisfaction ○ Overarching company governance and security ○ Precedent-setting behavior ○ Customer and member safety ● The case of LinkedIn Intro
  • 25. LinkedIn Intro ✓ Significant design review ✓ Cryptographic implementation review ✓ Penetration testing, internal and external ✓ Clear privacy commitment published
  • 26. Agenda ● Elements of a Tactical Security Program ● Application Assessment ● Application Incident Response ● Bug Bounty Programs
  • 27. Critical Security Bugs ● 77 Critical bugs handled in the past year ○ 21 externally discovered ■ 13 from private bug bounty ■ 8 from other sources ○ 56 discovered internally ● We’ve been told that our definition of critical is more aggressive than the industry baseline. ● The vast majority of these bugs were closed without any member impact.
  • 28. Handling Outside Reports ● On call pentester to handle incoming reports ● SLA ○ 4 hours to triage and respond ○ 8 hours weekends and nights - only handle criticals ● Responsibilities of on call ○ Triage ○ Establish working POC ○ File tickets ○ Respond ● Basic human response ○ Acknowledge report ○ Investigating issue
  • 29. Case Study - Changing Faces ● We received the report after hours ● Soon discovered the report was not the original ○ Found the original as a YouTube video ● Responded and implemented stop-gap solution within the hour ● Demo...
  • 30.
  • 31.
  • 32.
  • 34.
  • 35. Case Study - Changing Faces Continued... ● Report came in after hours ○ Triaged and responded in about an hour ● What makes this a critical? ○ Bug Classification Table ○ Contains specific examples ○ Provides clear guidance ○ Has established Service Level Agreements (SLAs) ● LinkedIn is an online service company ○ We can push code quickly ○ Sometimes not quick enough ○ Forced to use stop-gap solutions
  • 36. Cleanup After the Incident
  • 37. Determining Scope of Impact ● Do NOT wait until the incident is over ● Start research in parallel ● Application response team needs access to log data. What we use at LinkedIn: ○ Elasticsearch ○ HDFS / Hadoop / Hive ● Dedicated data science team is great, though not a necessity Don’t wait until you are in the midst of an incident to find out that you don’t have proper logs or the IP address being captured of your attacker is that of your own CDN.
  • 38. Case Study ● Externally reported through our bug bounty program ● Demonstrated that he could delete any embedded video from any SlideShare presentation ● On-call engineer discovered that he could add a video to any SlideShare presentation ○ Not part of the original report ○ Discovered during triaging bug ● Impact is clear, easy to explain why it’s a critical ○ Not all bugs are this straightforward
  • 39. Bug Classifications and Why We Built It ● We/You are the face of security within your company ● We have to convince internal teams to fix things ○ Resulting in being labeled _____ when we stand our ground ■ ‘grumpy’ ■ ‘argumentative’ ■ ‘jerk’ ● Teams will game the system and argue ○ Impact ○ Complexity ○ Accessibility ○ Wormability ○ “It has existed like that for years”
  • 41. Importance of Communication During an Incident ● Incident success or failure is judged by others in your company ● Coordination and communication are key ○ Many teams are involved typically ○ Need to get updates to a centralized point ○ Communication must flow in all directions - including up ● Management should never hear about an incident second hand ● Provide official updates from a dedicated person ○ Summary of issue ○ Potential impact ○ Next steps ○ Planned remediation (if available)
  • 42. Communication Email Template Emails to the management should be sent on a regular basis. If you do not have a ecosystem team, thats ok too; just set the expectation for when the next update will happen.
  • 43. Using Playbooks ● Developing a standard playbook is a must ● Will provide guidance and framework ● Living document ● Not 100 pages ○ Must be easy to use ○ No one will update ○ No one will read ○ No one will use ● Share playbook / be transparent with partner teams ○ Publish playbook ○ Tell them what is going to happen
  • 44. ● Be consultative: explore potential short-term and long-term fixes ● For application vulnerabilities ○ Disable functionality through configuration or A/B test control ■ Hint: encourage the development of new functionality and bug fixes behind A/B testing ○ Block - “When only HTTP error codes will do” ■ Reverse proxy for endpoints ■ Specialized filters for request body filtering ○ Monitor for abuse Reducing the Threat Surface While you can allow the “long term fix” discussion to happen and is completely acceptable, focus has to maintain on mitigating the threat now.
  • 45. Agenda ● Elements of a Tactical Security Program ● Application Assessment ● Application Incident Response ● Bug Bounty Programs
  • 46. Public Bug Bounties Today ● Main motivations for companies to build programs ○ Receive quality reports ○ Establish good relationship with security community ○ Stay out of negative light ○ Good use of money & resources ● In contrary these programs have fostered an influx of false and bad reports ● Signal to noise ratio constantly degrading ○ Companies forced to use dedicated resources ○ Engage consultancies ○ Use platform vendor to sift through the chaff
  • 47. Case Study ● External researcher published a blog post about Intro product ● We opted to talk with the author ○ Did NOT involve legal ○ Reached out with a simple invite to chat ○ Goal was to work collaboratively ● These actions resulted in positive outcome ● Focus on building relationships with researchers ○ Communicate and be transparent (as much as possible) ○ Understand the motivation of the researchers This is not and should not be an adversarial relationship - it’s completely the contrary. This change in attitude on both sides means that both parties win.
  • 48. How We Adopted Our Current Program ● Previously, a vast majority of reports to LinkedIn were not actionable or meaningful ● Smaller group of researchers emerged ● They wanted to work with us - we liked working with them ○ Why not reward them? ○ This was the spirit of the original programs ● Allows us to grow our relationships with researchers
  • 49. LinkedIn Program Now ● Launched LinkedIn private program October 2014 ○ Paid out over $65,000 bounties ○ Received more than 65 actionable reports ○ Signal to noise ratio 7:3 ● We have seen significant reduction in authorization-related issues ● Less “gamesmanship” of program - Public programs incentivise Junk reports
  • 50. What Do These Ratios Really Mean to Me?! ● Industry average is approximately 1:20 ● What if every report took 1 hour on average to triage? ● Sifting through the chaff is costly
  • 51. What Do These Ratios Really Mean to Me?! HackerOne - July 2015 “Improving Signal Over 10,000 Bugs” Bugcrowd - July 2015 “The State of Bug Bounty”
  • 52. Wrapping Up ● Tactical approaches to application security should be embraced ● Treat your assessment program like a consultancy ● Application incident response may be the most important thing to get right ● Focus on treating external vulnerability researchers right first, then consider bounty programs