SlideShare a Scribd company logo
1 of 79
An Approach to Application
Security
For beginners
#vodqa
Hi!
Why are you here?
Reference: https://www.owasp.org
Identify Security
Objectives
Application
Overview
Decompose
Application
Identify Threats
Identify
Vulnerabilities
Agenda
Introduction and case study
High-level threat modeling
Application threat modeling
Vulnerability Testing
References
Case study
Background
Have food industry background
Known network of food critics
Business and Investment numbers
Start-up
Venture capital investment: ~$10mn
Number of employees: 50
Hired contractors for development
Application strategy
Food critics write and read reviews
In the future, plans to extend ads to hotels for revenue
Critical assets
Customers (food critics)
Credibility
Reference: https://www.owasp.org
Identify Security
Objectives
Application
Overview
Decompose
Application
Identify Threats
Identify
Vulnerabilities
Mockups
Mockups
Mockups
Reference: https://www.owasp.org
Identify Security
Objectives
Application
Overview
Decompose
Application
Identify Threats
Identify
Vulnerabilities
Phases in our delivery lifecycle
Inception (Business Feasibility Study and Requirement Gathering)
Design thinking and tech analysis
Development
Testing
Release
Inception
Participants
Business stakeholders : CTO, CFO, Tech architect
Delivery team: BA, Tech lead, QA, Tech architect, developers (optional)
High-level Threat modeling
Structured, shared understanding of what could go wrong
Incorporate security thinking throughout our software delivery
Vocabulary to record and talk about possible threats
Understand the security threats that your client is facing
Understand the stakeholders’ concerns
ASK!
Split up in delivery teams
What are the
services and people
that are a
part of YourFeedback’s ecosystem?
Employees?
Hotels?
App users?
Government?
Cloud systems?
Actors
People and services within a system
But first, why protect anything?
What
does YourFeedback app want
to protect?
CIA Triad
Confidentiality
IntegrityAvailability
What
does YourFeedback app want
to protect?
Reviews?
Customer information?
Logs?
Server?
Asset
Device, data or service that needs to be protected
Who
might
attack
YourFeeback’s assets?
Competitors?
Application users?
Firewall?
Hacktivists?
Government?
Other app in the same network?
Attacker
People/services that intentionally, or unintentionally, compromise an asset
Reference: https://www.owasp.org
Identify Security
Objectives
Application
Overview
Decompose
Application
Identify Threats
Identify
Vulnerabilities
What are we protecting our assets against?
Threat
A cause of a possible incident that could lead an attacker to attack an asset
AttackerAsset Threat
Assets
● Reputation, credibility
● Investors
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Identifying threats and risk
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
Assets
● Reputation, credibility
● Investors Info
● Application
● Servers
● Code
● Reviews
● Customer data
● Audit/financial data
Attackers
● Business competitors
● Application user
● Hotel owners
● Investor’s competitors
● Hotel’s competitors
● Hackers
● Firewall
● Delivery team
(Sample List)
More terminologies
Mitigation : Ways to counterbalance a threat
Vulnerability : An un-mitigated or insufficiently mitigated threat
Risk : An onset of a threat on a vulnerability
Threat Vulnerability
Mitigation
Risk Magic Quadrant
Impact
Probability
Our Risk Magic Quadrant (examples)
Application User
giving unfair
reviews
Application user
misusing customer
data
Hotel Owner changing
reviews in favor of
themselves
Business competitors
bringing down Reputation
and Credibility
Hackers bring down
reputation and credibility
Probability
Impact
Firewall brings
down the server
Business competitor’s
catching hold of
investment details
Employees disclosing
customer data
Design thinking
Tech analysis
Participants
Business stakeholders : Tech team (if distributed team)
Delivery team: BA, Tech lead, QA, Tech architect, developers
Application Threat Modeling
Structured, shared understanding of what could go wrong in identified threats
Incorporate security thinking into user stories and design
Threat awareness for the delivery team
Understand protection mechanisms
But first, what ways can attackers attack in?
Example - STRIDE
Spoofing
Tampering
Repudiation
Information Disclosure
Denial of Service
Elevation of privileges
Application Threat Modeling : Attack Trees
Open safe
Break openLearn combinationPick lock
Find written
combination
Get combination from
someone
Look into emails/chats
Look into personal
diary/notebooks
Social engg PhishingCheck notes in laptop
Goal
Ways
What will bring Our business down?
Lose Customers
Lose Credibility
Targeted Marketing - By Competitors
Unrelated/Unfair reviews
Competitors release attractive features before YourFeedback.com
Application is not usable.
Application is not performing as expected.
Illegitimate/Offensive content posted on the site.
Business owners have lost personal credibility.
Has been proved to be hacked at least once.
Lets see how one of those goals can be achieved by
Attacker
Attack threats for you to pick up
Display unreliable reviews
Make application unusable for users
Offensive/illegitimate content posted on the sites
Targeted marketing (by competitors/hotel owners)
Competitors release attractive features before us
Application is not performing as expected for business
Make the App not usable by user
Make the App
not usable
Existing users are not
able to Login
Redirect to another
website
Bring the server down
Change Password
Delete User
Creating too much
load
Sending too many asynchronous
calls
Hide content on
page load
Stop users from
viewing/reading content of
website
Show popup on
page load
Getting access to DB server
Show pop up on
any click
Make website/browser
too slow
Access the DB through application
Creating load on Database
Show irrelevant
content on top of
actual page content
Running too many
scripts on page
load
Display unreliable reviews
Display unreliable
reviews
Login as existing
member
Phishing
Change directly in
database
Bypass login
Social engineering
Find password
Add new member
Bug in login
Get Password
Post wrong
reviews
Offensive/illegitimate content posted on the sites
Offensive/illegi
timate content
posted on the
sites
Offensive content in
the review section
Run a script with offensive
images
Login as existing
user and post
review
Add a new user and
post review
Add offensive content
and image in the
information PDF
Load illegitimate
image on page load
Get password
Bug in login
Get access to DB
server
Targeted marketing (by competitors/hotel owners)
Targeted
marketing
Capture attention by
Ads
Call /email customers
directly
Get Customer Info
Posts Add in our
feedback App
Get customers to
visit competitor’s
sites
Social Engineering Get Customer Info
Competitors market new attractive features before Yourfeedback.com
Competitors
market new
features before
Yourfeedback.com
Get access to staging
or pre prod
environment
Get access to project
management system
Accessing development
branch to get active
code
Reference: https://www.owasp.org
Identify Security
Objectives
Application
Overview
Decompose
Application
Identify Threats
Identify
Vulnerabilities
Development
Testing
Vulnerability Identification
Vulnerability is an unmitigated or insufficiently mitigated threat
OWASP Top 10 Vulnerabilities : A Start
SQL Injection
Server-side attack
Misuses interpreter to attack database
Different types of SQL injections: Error-based, Blind etc.
Cross-Site Scripting (XSS)
A type of injection
Client-side attack
Misusing powers of HTML, Javascript, CSS etc.
Types:
Reflective
Persistent
Reflective XSS
Reflective XSS
Persistent XSS
Persistent XSS
Path Traversal
Access or execute command on restricted directories or files
Outside the web root folder
a.k.a. ‘dot-dot-slash’, ‘directory traversal’, ‘directory climbing’ or ‘backtracking’
Demo
Let’s test
Make the App
not usable
Existing users are not
able to Login
Redirect to another
website
Bring the server down
Change Password
Delete User
Creating too much
load
Sending too many Asynchronous
Calls
Hide actual page
content on Page
load
Stop users from
viewing/reading content of
website
Show popup on Page load
Getting access to DB server
Show pop up on any click
Make website/browser
too slow
Access the DB from the application
Creating load on Database
Show irrelevant
content on top of
actual page content
Running too many
scripts on page load
Access the DB from the application
Change Password
Delete User
Hide actual page
content on Page
load
Show popup on Page load
Redirect to another
website
Display unreliable reviews
Display unreliable
reviews
Login as existing
member
Phishing
Change directly in
database
Bypass login
Social engineering
Find password
Add new member
Bug in login
Get Password
Post wrong
reviews
Competitors market new attractive features before Yourfeedback.com
Competitors
market new
features before
Yourfeedback.com
Get access to staging
or pre prod
environment
Get access to project
management system
Accessing development
branch to get active
code
Reference: https://www.owasp.org
Identify Security
Objectives
Application
Overview
Decompose
Application
Identify Threats
Identify
Vulnerabilities
Mitigations/Suggestions
SQL Injections :
Input Validation, like use of ORM.
Limit Database Permission
Configure Error Reporting
Path Traversal :
Use of search function instead of
appending from URL.
XSS
CSP - Content Security Policy
Use AutoEscape
Input validation
Tool Examples
Zed Attack Proxy
BurpSuite
IronWASP
Fiddler
TamperData
Websecurify
XSS Me, SQL Inject Me etc.
References
Vulnerable application: https://github.com/jaydeepc/vul_feedback_app
Fixed application: https://github.com/jaydeepc/non_vul_python_app
https://www.thoughtworks.com/insights/blog/appsec101-welcoming-all-roles-world-
security
https://www.owasp.org
Thank you!
Harinee Muralinath (harineem@thoughtworks.com) ,
Jaydeep Chakraborty (jaydeepc@thoughtworks.com)
Nagesh Kumar, Shraddha Suman, Navya Bailkeri, Fathima Harris,
Pallipuspa Samal, Astha Jaiswal, Hitesh Sharma
Presenters:
Volunteers:

More Related Content

What's hot

Sahi my expirience
Sahi my expirienceSahi my expirience
Sahi my expirience
Akss004
 
New microsoft office power point presentation
New microsoft office power point presentationNew microsoft office power point presentation
New microsoft office power point presentation
teach4uin
 

What's hot (20)

Javacro 2014 Spring Security 3 Speech
Javacro 2014 Spring Security 3 SpeechJavacro 2014 Spring Security 3 Speech
Javacro 2014 Spring Security 3 Speech
 
Design patterns in web testing automation with WebDriver
Design patterns in web testing automation with WebDriverDesign patterns in web testing automation with WebDriver
Design patterns in web testing automation with WebDriver
 
What's new in selenium 4
What's new in selenium 4What's new in selenium 4
What's new in selenium 4
 
Selenium WebDriver: Tips and Tricks
Selenium WebDriver: Tips and TricksSelenium WebDriver: Tips and Tricks
Selenium WebDriver: Tips and Tricks
 
Web automation with Selenium for software engineers
Web automation with Selenium for software engineersWeb automation with Selenium for software engineers
Web automation with Selenium for software engineers
 
Hackazon realistic e-commerce Hack platform
Hackazon realistic e-commerce Hack platformHackazon realistic e-commerce Hack platform
Hackazon realistic e-commerce Hack platform
 
Test in Rest. API testing with the help of Rest Assured.
Test in Rest. API testing with the help of  Rest Assured.Test in Rest. API testing with the help of  Rest Assured.
Test in Rest. API testing with the help of Rest Assured.
 
Selenium for Jobseekers
Selenium for JobseekersSelenium for Jobseekers
Selenium for Jobseekers
 
Security asp.net application
Security asp.net applicationSecurity asp.net application
Security asp.net application
 
Brace yourself from automation death trap
Brace yourself from automation death trapBrace yourself from automation death trap
Brace yourself from automation death trap
 
Sahi my expirience
Sahi my expirienceSahi my expirience
Sahi my expirience
 
Selenide vs. Selenium: The War Of Technologies
Selenide vs. Selenium: The War Of TechnologiesSelenide vs. Selenium: The War Of Technologies
Selenide vs. Selenium: The War Of Technologies
 
Better End-to-End Testing with Page Objects Model using Protractor
Better End-to-End Testing with Page Objects Model using ProtractorBetter End-to-End Testing with Page Objects Model using Protractor
Better End-to-End Testing with Page Objects Model using Protractor
 
New microsoft office power point presentation
New microsoft office power point presentationNew microsoft office power point presentation
New microsoft office power point presentation
 
Carmen Popoviciu - Protractor styleguide | Codemotion Milan 2015
Carmen Popoviciu - Protractor styleguide | Codemotion Milan 2015Carmen Popoviciu - Protractor styleguide | Codemotion Milan 2015
Carmen Popoviciu - Protractor styleguide | Codemotion Milan 2015
 
Web testing with selenium and by quontra solutions
Web testing with selenium and  by quontra solutionsWeb testing with selenium and  by quontra solutions
Web testing with selenium and by quontra solutions
 
Selenium
SeleniumSelenium
Selenium
 
Become a Security Ninja
Become a Security NinjaBecome a Security Ninja
Become a Security Ninja
 
Test Automation Framework with BDD and Cucumber
Test Automation Framework with BDD and CucumberTest Automation Framework with BDD and Cucumber
Test Automation Framework with BDD and Cucumber
 
Protractor Tutorial Quality in Agile 2015
Protractor Tutorial Quality in Agile 2015Protractor Tutorial Quality in Agile 2015
Protractor Tutorial Quality in Agile 2015
 

Viewers also liked

Java Faqs useful for freshers and experienced
Java Faqs useful for freshers and experiencedJava Faqs useful for freshers and experienced
Java Faqs useful for freshers and experienced
yearninginjava
 
18.05
18.0518.05
18.05
sknsz
 
Yapcasia 2012 skyarc
Yapcasia 2012 skyarcYapcasia 2012 skyarc
Yapcasia 2012 skyarc
onagatani
 
Power point 6 media
Power point 6 mediaPower point 6 media
Power point 6 media
jackthompson
 
Analyzing magazine ads
Analyzing magazine adsAnalyzing magazine ads
Analyzing magazine ads
tpongsapak
 

Viewers also liked (20)

Mobile automation using appium.pptx
Mobile automation using appium.pptxMobile automation using appium.pptx
Mobile automation using appium.pptx
 
Retrospective
RetrospectiveRetrospective
Retrospective
 
Test Automation Pyramid
Test Automation PyramidTest Automation Pyramid
Test Automation Pyramid
 
Test automation Frame Works
Test automation Frame WorksTest automation Frame Works
Test automation Frame Works
 
Stand up
Stand upStand up
Stand up
 
Java Faqs useful for freshers and experienced
Java Faqs useful for freshers and experiencedJava Faqs useful for freshers and experienced
Java Faqs useful for freshers and experienced
 
Visual Regression Testing
Visual Regression TestingVisual Regression Testing
Visual Regression Testing
 
18.05
18.0518.05
18.05
 
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guideLookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
 
Measure or Die
Measure or DieMeasure or Die
Measure or Die
 
Sirguroh Irshad
Sirguroh IrshadSirguroh Irshad
Sirguroh Irshad
 
Rugby
RugbyRugby
Rugby
 
Alicia's Cupcake Story
Alicia's Cupcake StoryAlicia's Cupcake Story
Alicia's Cupcake Story
 
Show My Homework’s Back to School Tips & Tricks!
Show My Homework’s Back to School Tips & Tricks!Show My Homework’s Back to School Tips & Tricks!
Show My Homework’s Back to School Tips & Tricks!
 
Yapcasia 2012 skyarc
Yapcasia 2012 skyarcYapcasia 2012 skyarc
Yapcasia 2012 skyarc
 
Appasaheb Kapase[CV]
Appasaheb Kapase[CV]Appasaheb Kapase[CV]
Appasaheb Kapase[CV]
 
Power point 6 media
Power point 6 mediaPower point 6 media
Power point 6 media
 
лекц 2
лекц   2лекц   2
лекц 2
 
Personal branding pearson asa
Personal branding pearson asaPersonal branding pearson asa
Personal branding pearson asa
 
Analyzing magazine ads
Analyzing magazine adsAnalyzing magazine ads
Analyzing magazine ads
 

Similar to An approach to app security - For beginners

Secure Web Services
Secure Web ServicesSecure Web Services
Secure Web Services
Rob Daigneau
 
Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009
Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009
Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009
ClubHack
 
Iasi code camp 12 october 2013 ana tudosa - challenges in implementing and ...
Iasi code camp 12 october 2013   ana tudosa - challenges in implementing and ...Iasi code camp 12 october 2013   ana tudosa - challenges in implementing and ...
Iasi code camp 12 october 2013 ana tudosa - challenges in implementing and ...
Codecamp Romania
 
Hackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web ProgrammingHackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web Programming
Akash Mahajan
 

Similar to An approach to app security - For beginners (20)

Bringing the hacker mindset into requirements and testing by Eapen Thomas and...
Bringing the hacker mindset into requirements and testing by Eapen Thomas and...Bringing the hacker mindset into requirements and testing by Eapen Thomas and...
Bringing the hacker mindset into requirements and testing by Eapen Thomas and...
 
Novinky F5 pro rok 2018
Novinky F5 pro rok 2018Novinky F5 pro rok 2018
Novinky F5 pro rok 2018
 
Scalable threat modelling with risk patterns
Scalable threat modelling with risk patternsScalable threat modelling with risk patterns
Scalable threat modelling with risk patterns
 
Reverse reverse engineering engineering 101 - Royi Benyossef, Samsung NEXT
Reverse reverse engineering engineering 101 - Royi Benyossef, Samsung NEXTReverse reverse engineering engineering 101 - Royi Benyossef, Samsung NEXT
Reverse reverse engineering engineering 101 - Royi Benyossef, Samsung NEXT
 
APIsecure 2023 - Discovery is the Starting Point for Defending APIs, Giora En...
APIsecure 2023 - Discovery is the Starting Point for Defending APIs, Giora En...APIsecure 2023 - Discovery is the Starting Point for Defending APIs, Giora En...
APIsecure 2023 - Discovery is the Starting Point for Defending APIs, Giora En...
 
Secure RESTful Web Services for ASP.NET Web API
Secure RESTful Web Services for ASP.NET Web APISecure RESTful Web Services for ASP.NET Web API
Secure RESTful Web Services for ASP.NET Web API
 
Secure Web Services
Secure Web ServicesSecure Web Services
Secure Web Services
 
Website Security Testing Ahmedabad .pdf
Website Security Testing Ahmedabad  .pdfWebsite Security Testing Ahmedabad  .pdf
Website Security Testing Ahmedabad .pdf
 
The Importance of Security Testing in Web Applications.docx
The Importance of Security Testing in Web Applications.docxThe Importance of Security Testing in Web Applications.docx
The Importance of Security Testing in Web Applications.docx
 
Threat modeling with architectural risk patterns
Threat modeling with architectural risk patternsThreat modeling with architectural risk patterns
Threat modeling with architectural risk patterns
 
Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009
Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009
Nikhil wagholikar _risk_based_penetration_testing - ClubHack2009
 
Application Security - Your Success Depends on it
Application Security - Your Success Depends on itApplication Security - Your Success Depends on it
Application Security - Your Success Depends on it
 
Application Security Review 5 Dec 09 Final
Application Security Review 5 Dec 09 FinalApplication Security Review 5 Dec 09 Final
Application Security Review 5 Dec 09 Final
 
Enterprise under attack dealing with security threats and compliance
Enterprise under attack dealing with security threats and complianceEnterprise under attack dealing with security threats and compliance
Enterprise under attack dealing with security threats and compliance
 
Cyber 101 for smb execs v1
Cyber 101 for smb execs v1Cyber 101 for smb execs v1
Cyber 101 for smb execs v1
 
Iasi code camp 12 october 2013 ana tudosa - challenges in implementing and ...
Iasi code camp 12 october 2013   ana tudosa - challenges in implementing and ...Iasi code camp 12 october 2013   ana tudosa - challenges in implementing and ...
Iasi code camp 12 october 2013 ana tudosa - challenges in implementing and ...
 
Getting Started with Sitelock on ResellerClub
Getting Started with Sitelock on ResellerClubGetting Started with Sitelock on ResellerClub
Getting Started with Sitelock on ResellerClub
 
Hackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web ProgrammingHackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web Programming
 
Resume_Vinod
Resume_VinodResume_Vinod
Resume_Vinod
 
Secure Iowa Oct 2016
Secure Iowa Oct 2016Secure Iowa Oct 2016
Secure Iowa Oct 2016
 

More from vodQA

More from vodQA (20)

Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Testing Strategy in Micro Frontend architecture
Testing Strategy in Micro Frontend architectureTesting Strategy in Micro Frontend architecture
Testing Strategy in Micro Frontend architecture
 
Testing face authentication on mobile
Testing face authentication on mobileTesting face authentication on mobile
Testing face authentication on mobile
 
Testing cna
Testing cnaTesting cna
Testing cna
 
Etl engine testing with scala
Etl engine testing with scalaEtl engine testing with scala
Etl engine testing with scala
 
EDA for QAs
EDA for QAsEDA for QAs
EDA for QAs
 
vodQA Pune (2019) - Browser automation using dev tools
vodQA Pune (2019) - Browser automation using dev toolsvodQA Pune (2019) - Browser automation using dev tools
vodQA Pune (2019) - Browser automation using dev tools
 
vodQA Pune (2019) - Augmented reality overview and testing challenges
vodQA Pune (2019) - Augmented reality overview and testing challengesvodQA Pune (2019) - Augmented reality overview and testing challenges
vodQA Pune (2019) - Augmented reality overview and testing challenges
 
vodQA Pune (2019) - Testing AI,ML applications
vodQA Pune (2019) - Testing AI,ML applicationsvodQA Pune (2019) - Testing AI,ML applications
vodQA Pune (2019) - Testing AI,ML applications
 
vodQA Pune (2019) - Design patterns in test automation
vodQA Pune (2019) - Design patterns in test automationvodQA Pune (2019) - Design patterns in test automation
vodQA Pune (2019) - Design patterns in test automation
 
vodQA Pune (2019) - Testing ethereum smart contracts
vodQA Pune (2019) - Testing ethereum smart contractsvodQA Pune (2019) - Testing ethereum smart contracts
vodQA Pune (2019) - Testing ethereum smart contracts
 
vodQA Pune (2019) - Insights into big data testing
vodQA Pune (2019) - Insights into big data testingvodQA Pune (2019) - Insights into big data testing
vodQA Pune (2019) - Insights into big data testing
 
vodQA Pune (2019) - Performance testing cloud deployments
vodQA Pune (2019) - Performance testing cloud deploymentsvodQA Pune (2019) - Performance testing cloud deployments
vodQA Pune (2019) - Performance testing cloud deployments
 
vodQA Pune (2019) - Jenkins pipeline As code
vodQA Pune (2019) - Jenkins pipeline As codevodQA Pune (2019) - Jenkins pipeline As code
vodQA Pune (2019) - Jenkins pipeline As code
 
vodQA(Pune) 2018 - Consumer driven contract testing using pact
vodQA(Pune) 2018 - Consumer driven contract testing using pactvodQA(Pune) 2018 - Consumer driven contract testing using pact
vodQA(Pune) 2018 - Consumer driven contract testing using pact
 
vodQA(Pune) 2018 - Visual testing of web apps in headless environment manis...
vodQA(Pune) 2018 - Visual testing of web apps in headless environment   manis...vodQA(Pune) 2018 - Visual testing of web apps in headless environment   manis...
vodQA(Pune) 2018 - Visual testing of web apps in headless environment manis...
 
vodQA(Pune) 2018 - Enhancing the capabilities of testing team preparing for...
vodQA(Pune) 2018 - Enhancing the capabilities of testing team   preparing for...vodQA(Pune) 2018 - Enhancing the capabilities of testing team   preparing for...
vodQA(Pune) 2018 - Enhancing the capabilities of testing team preparing for...
 
vodQA(Pune) 2018 - QAing the security way
vodQA(Pune) 2018 - QAing the security wayvodQA(Pune) 2018 - QAing the security way
vodQA(Pune) 2018 - QAing the security way
 
vodQA(Pune) 2018 - Docker in Testing
vodQA(Pune) 2018 - Docker in TestingvodQA(Pune) 2018 - Docker in Testing
vodQA(Pune) 2018 - Docker in Testing
 
Patterns & Anti Patterns of Stand up
Patterns & Anti Patterns of Stand upPatterns & Anti Patterns of Stand up
Patterns & Anti Patterns of Stand up
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 

An approach to app security - For beginners

Editor's Notes

  1. We often approach security as a reactive measure. The idea is to be proactive and prevent security issues, instead of detecting them. Pen-testing is not enough.
  2. Security seems to be a big beast. Need a proper perspective. Problems such as where do you start ‘hacking’, have you done enough security testing, found a bug but what parameters do you prioritise them on This is not the only way of approaching security
  3. Business background: Start up, Venture capital investment, investment amount:$10mn, number of employees:50, Strategy: Food critics are influenced by the network they respect, though they are highly opinionated people themselves. future ideas Critical assets Biggest risks foreseen for business : Lose customers, lose credibility
  4. Features and functionalities User scenarios
  5. Do we have any mandatory or optional participants?
  6. profiling an attacker’s characteristics, skill-set, and motivation to exploit vulnerabilities
  7. Write the threats in stickies
  8. For reference
  9. Could also use a Risk register
  10. Do we have any mandatory or optional participants?
  11. Discuss examples for each. This is not the only wholesome solution. It is not a taxonomy Examples: Threat #1 A malicious user views or tampers with personal profile data en route from the Web server to the client or from the client to the Web server. (Tampering with data/Information disclosure) Threat #2 A malicious user views or tampers with personal profile data en route from the Web server to the COM component or from the component to the Web server. (Tampering with data/Information disclosure) Threat #3 A malicious user accesses or tampers with the profile data directly in the database. (Tampering with data/Information disclosure) Threat #4 A malicious user views the Lightweight Directory Access Protocol (LDAP) authentication packets and learns how to reply to them so that he can act "on behalf of" the user. (Spoofing identity/Information disclosure/Elevation of privilege [if the authentication data used is that of an administrator]) Threat #5 A malicious user defaces the Web server by changing one or more Web pages. (Tampering with data) Threat #6 An attacker denies access to the profile database server computer by flooding it with TCP/IP packets. (DoS) Threat #7 An attacker deletes or modifies the audit logs. (Tampering with data/Repudiation) Threat #8 An attacker places his own Web server on the network after killing the real Web server with a distributed DoS attack. (Spoofing identity; in addition, a particularly malicious user could instigate all threat categories by stealing passwords or other authentication data, deleting data, and so on.)
  12. Spend 5 mins familiarising with the app
  13. Example for sql injection
  14. Add slides for sql, xss, path traversal, zap Notes: Existing users can not login - SQL injection to update password/Delete user from login page. Delete users - How do you know the users? , "Lets hold on to it, till we get into the app.." then when we are in, we can script the UNION query and tell them " Now you know all the users" Create load on DB - Insert huge number of rows in DB. JS - Once logged in, create persistent XSS to do all of the above tasks.
  15. Explain how you can get the column names of a table