SlideShare a Scribd company logo
APPLICATION SECURITY TRENDS – LESSONS
                               LEARNT



         Firosh C Ummer, Technical Director, Paladion Networks
         www.paladion.net
Contents
   Challenges in Enterprise Application Security
    Programs
   Risk Based Application Security Program
   Threat Modeling in Application Testing
   Security Code Review Process
Why Application Security testing?
3




                                         Application Vulnerabilities Exceed OS
                                         Vulnerabilities
                                         During the last few years, the   number
                                         of vulnerabilities being
                                         discovered in applications is far
                                         greater than the number of
                                         vulnerabilities discovered in
                                         operating systems.

    http://www.sans.org/top-cyber-security-risks/
Threat Intelligence Report - 2011
                              >50% of attacks are
                               targeted at
                               application layer
                              Attacks are
                               financially motivated
                               – so they are
                               focused on financial
                               applications
                     Full report at:
                     http://www.paladion.net/paladionlabs.
                     html
Tools are simplifying the attacks
5



       Automated techniques are improving

           600,000 websites compromised in 2 days with SQL Injection

           Samy exploited XSS on 0.5 million users in 6 hours


       It takes less skill to exploit an application
Most applications tend to be insecure at
first
6




       It’s easy to make security errors

       Few developers are trained in security

       There’re a large number of attacks to aid the

        adversary
A few common security flaws
7


    1.    Weak input validation
    2.    Relying on client-side validation
    3.    Use of dynamic SQL queries
    4.    Not escaping <, and > characters
    5.    Incorrect cache control directives
    6.    Un-patched servers
    7.    Weak session management
    8.    Weak encryption
    9.    Wrong specs of expected input
    10.   Misunderstanding of end-user environment
Threat Intelligence Report - 2011
                            XSS,
                             Authentication &
                             Session Mgmnt
                             and
                             Misconfiguration
                             vulnerabilities
                             contributes to
                             more than 50%
                            Injection
                             vulnerabilities are
                             showing a
                             downward trent
Mobile Applications
   On account of the variety in the mobile
    space, each OS is an altogether different
    thing in itself.
   Certain Basic Security concepts & test
    cases remain the same.
   Some do change as every platform may
    have its own specific issues
   Guideline standardization is difficult
Mobile Application security risks*
   Insecure Data Storage                     More resources at:
   Weak Server side validations &            http://www.paladion.net/paladion
    Controls                                      labs.html
   Insufficient Transport Layer Protection   •   Mobile Code Scanner for
   Client Side Injections                        Android
   Poor Authorization and Authentication     •   “InsecureBank” test
   Improper Session Handling                     application for Android
   Security Decisions via un-trusted         Plynt Certification Criteria for
    inputs                                       Mobile Applications
   Side Channel Data Leakage                 http://www.plynt.com/criteria/mo
                                                  bile-application-criteria/
   Broken Cryptography
   SensitiveTop 10
     * OWASP Information Disclosure
Challenges

    Budgets are limited

    Limited internal expertise

    Standard pen tests take more time

    Tools alone are not sufficient
                                         11
Tools alone are not sufficient
12




        High rate of false positives

        They cannot detect business logic risks

            Directly impact business

            More difficult to find
E.g. Business logic risks
13




        An adversary can…
            submit deposit requests on behalf of other users

            circumvent the maker/checker process

            modify the amount of a release request of other users

            insert negative amounts in cash deposits
            view deposit requests of other users

            estimate the available amount of other users
The 80/20 Approach
Goals of application security
Program
15




     1.   Find all holes in existing applications

     2.   Fix them quickly

     3.   Avoid errors in new code

     4.   Be resilient to the latest attacks
Two phase approach
16




     1.   Risk based enterprise testing program

          1.   Risk profile based testing schedules

          2.   Mix of manual & automated testing

     2.   Build long term capability
Risk based enterprise testing
program
Basic characteristics
 1.   Different levels of testing
 2.   Framework for classifying apps
 3.   Baseline standard checklist
 4.   Automated workflow & online reporting




                                              18
Different levels of testing

   All apps would not undergo the same level of
    testing
       Some apps will get a full test
       Others will get a shorter, faster test




                                                 19
Different levels of testing
                                Application with Plain
                              information & Low value
                                     transaction
     Black Box Testing

                              Application with User
                            Access &supporting critical
   Penetration Test (Gray      business functions
       Box Testing)
                              Application supporting
                              highly critical process
    Source code reviews
    (White Box Testing)
                                             20
Different levels of testing
Application Type             Test Type                 Frequency


                             Penetration Tests (Gray   Quarterly
                             Box)
High critical applications
                             Code Reviews              Annually


Medium critical              Penetration Tests (Gray   Half yearly
applications                 Box)
Less critical applications   Penetration Tests (Gray   Annually
                             Box)

                                                                     21
Framework to classify
apps
   A risk assessment framework to prioritize apps
       Prioritizing helps share the limited budget better
        between the apps
   Tailor the framework to the needs of the
    business
       Developed in close consultation with business
        owners
   Multiple iterations to develop
                                                    22
The criteria in the framework
   Is the data sensitive?
   Is the application critical?
   How connected is the application?




                                        23
Baseline standard for the security
tests
   A minimum set of checks for all apps
       Does it do input validations at the server?
       Does the app adhere to the password policy?
       Is it safe against SQL Injection, XSS




                                                      24
Automated Workflow




                     25
Dashboard Reporting
26
Application Penetration Tests
Methodology
28
Step 1: Study the Application
29



        Features, functions

        Walk through site

        Read the manuals

        Interviews, questionnaires

        Make sense of the modules
Step 2: Create Threat Profile
30


        Threat  Goal of the Adversary
        Threat Profile  List of All Threats
          An adversary…
            Siphons off funds
            Reset passwords of other users
            Views account statement of others
Creating the threat profile
31



      Structured process to create Threat Profile
      Select known threats from available

       Repository
      Brainstorm on additional risks

      Consult business to verify Threat Profile
Sample Threat Profile for Internet
     Banking
32



        An adversary…
          Siphons  off funds from one account
          Views account statement of other users

          Adds beneficiaries to another account

          Orders check book on behalf of others

          Resets the password of other users

          Edits the profile of other user
Threat profile repository
33



      Structured process to create Threat Profile
      Select known threats from Paladion

       Repository
      Brainstorm on additional risks

      Consult customer to verify Threat Profile
Sample Test Plan for 1 Threat in
     Internet Banking
34



        Views account statement of other users
          SQL  Injection on AccNo in request
          Variable Manipulation attack on the AccNo in the
           request
          Directly access the pdf/word file on the server

          Access the file from the browser cache
Test Plan
35
Executing Test Cases
36



        Mix of manual and automated techniques
     • Manual Testing              • Automated Testing
          • Business logic flaws     • Injection attacks
          • Privilege escalation     • Cross site scripting
Publish the Report
37


        Executive Summary
          Strengths
          Weaknesses

        Detailed Findings
        Solutions and fixes
        Compliance to standards
          Central
                 Bank Guidelines
          PCI-DSS
Code Reviews
Benefits of Code Review
39


        More exhaustive than Penetration Tests
            Finds all instances of SQL Injection, XSS, etc
        Best method to find Backdoors
            Malicious backdoors
            Inadvertent backdoors
        Better suited for
            Finding cryptography related vulnerabilities
            Analyzing application configuration issues
        Precise solutions, pin-pointing the vulnerability
            Easier to fix
Methodology
40


        7-step structured methodology
          Threat-profile   based approach to focus on what’s
           important
          Hybrid of manual and automatic verification

          Custom scripts tailored for each application
The 7-step Code Review
      Methodology
41



 Preparation

            Study Application
       1

           Create Threat Profile
       2
                                       Analysis

                                                  Study Code Layout
                                              3

                                                  Code Review Plan
                                              4

                                                      Analyze Code
                                              5
                                                                      Solutions
 STRUCTURED METHODOLOGY
                                                                                   Verify Flaws
 → THREAT-PROFILE BASED APPROACH TO FOCUS ON WHAT’S                        6
     IMPORTANT
                                                                                  Generate Report
                                                                           7
 → HYBRID OF MANUAL AND AUTOMATIC VERIFICATION
 → CUSTOM SCRIPTS TAILORED FOR EACH APPLICATION
Step 3, 4: Code Layout and Plan
42


        Step 3: Study Code Layout
            Get familiar with Pages, Forms, Classes
            Identify critical classes:
                Authentication, Authorization, Critical transactions
        Step 4: Code Review Plan
            Map each threat to pages, classes, or config settings
            Pick relevant tests from reference checklist
            Review with the code owner
Step 5, 6: Analyze and Verify
43


        Step: Analyze the code
          Dissect Pages, Classes, Settings
          Consult Reference checklist
          Combination of manual and scripted
           techniques
        Step 6: Verify the flaws
          Verifyexploitation through walk through
          Take screen shots of code snippets
          Ensure the snippets tell the story
Step 7: Publish the Report
44

        Executive Summary
            Strengths
            Weaknesses
        Detailed Findings
        Solutions and fixes
            Pin-pointed to lines of code
            Easier to fix, as it’s more precise
        Compliance to PCI DSS standards
        Review with supervisor
        Published to client
Build Long Term Capability
Integrate Security in SDLC
    Traditional Methodology
                           Architecture Code       Security Test
             Threat                                            Automated
                           Review                  cases
             Modeling                    scanning              Scan
SRS Security        Security     Coding      Code                      Pen test
Checklist           features     Guidelines Review     Hardening


         SRS         Design      Development       Testing       Deployment

    Security                                            Define     Vulnerability
                                       Evaluate against
    Specifications        Training                      secure     Assessment
                                       Threat model
    for 3rd party                                       build
Integrate security in SDLC – 80/20
47




        Avoid errors in new code
            Train developers, designers

            Define application security standard/best practices

            Measure Effectiveness
Build long term capability with
     Training
48



        Training for Developers, Designers and QA
        New code gets safer as team is more aware
        Fixing apps also become easier
        QA starts security test cases
        1-2 days trainings are popular
Standardize
49




        Define Standards for Developers & Designers

            Secure Coding Standards for Developers

            Secure Architecture Framework for Designers
Application Security Standard
50


        40 – 60 standards

          75%    mandatory, 25% optional

          Critical   apps to meet all standards

          Less   critical ones need to meet only mandatory

           controls
Examples
51



        Mandatory
          The   application must…
            Insist
                  that the user changes password on first login
            Maintain an audit trail of all successful and failed logins
            Timeout user sessions after 15 minutes of inactivity

        Optional
          Critical   applications must…
            Display last 3 transactions when the user logs in
            Forcefully log out the user when unexpected inputs are
             received
Measure effectiveness
52



        Institute reviews to measure progress
            Architecture reviews of new apps
            Code Reviews of new Code
            Penetration Tests

        How many bugs are slipping into the next
         developmental stage?
        How quickly are classes of security bugs
Thank You

            sales@paladion.net

More Related Content

What's hot

Step by step guide for web application security testing
Step by step guide for web application security testingStep by step guide for web application security testing
Step by step guide for web application security testing
Avyaan, Web Security Company in India
 
Web application vulnerability assessment
Web application vulnerability assessmentWeb application vulnerability assessment
Web application vulnerability assessment
Ravikumar Paghdal
 
Hack applications
Hack applicationsHack applications
Hack applications
enrizmoore
 
S5-Authorization
S5-AuthorizationS5-Authorization
S5-Authorization
zakieh alizadeh
 
Session2-Application Threat Modeling
Session2-Application Threat ModelingSession2-Application Threat Modeling
Session2-Application Threat Modeling
zakieh alizadeh
 
Session4-Authentication
Session4-AuthenticationSession4-Authentication
Session4-Authentication
zakieh alizadeh
 
Session3 data-validation-sql injection
Session3 data-validation-sql injectionSession3 data-validation-sql injection
Session3 data-validation-sql injection
zakieh alizadeh
 
Web 2.0 Hacking
Web 2.0 HackingWeb 2.0 Hacking
Web 2.0 Hacking
blake101
 
Session3 data-validation
Session3 data-validationSession3 data-validation
Session3 data-validation
zakieh alizadeh
 
Application Security-Understanding The Horizon
Application Security-Understanding The HorizonApplication Security-Understanding The Horizon
Application Security-Understanding The Horizon
Lalit Kale
 
The Complete Web Application Security Testing Checklist
The Complete Web Application Security Testing ChecklistThe Complete Web Application Security Testing Checklist
The Complete Web Application Security Testing Checklist
Cigital
 
Joomla web application development vulnerabilities
Joomla web application development vulnerabilitiesJoomla web application development vulnerabilities
Joomla web application development vulnerabilities
BlazeDream Technologies Pvt Ltd
 
A7 Missing Function Level Access Control
A7   Missing Function Level Access ControlA7   Missing Function Level Access Control
A7 Missing Function Level Access Control
stevil1224
 
Owasp first5 presentation
Owasp first5 presentationOwasp first5 presentation
Owasp first5 presentation
Ashwini Paranjpe
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
Colin English
 
Testing Web Application Security
Testing Web Application SecurityTesting Web Application Security
Testing Web Application Security
Ted Husted
 
Techniques for securing rest
Techniques for securing restTechniques for securing rest
Techniques for securing rest
Sudhakar Anivella
 
Application Security Part 1 Threat Defense In Client Server Applications ...
Application Security   Part 1   Threat Defense In Client Server Applications ...Application Security   Part 1   Threat Defense In Client Server Applications ...
Application Security Part 1 Threat Defense In Client Server Applications ...
Greg Sohl
 
Web application sec_3
Web application sec_3Web application sec_3
Web application sec_3
vhimsikal
 
Vulnerabilities in Web Applications
Vulnerabilities in Web ApplicationsVulnerabilities in Web Applications
Vulnerabilities in Web Applications
Venkat Ramana Reddy Parine
 

What's hot (20)

Step by step guide for web application security testing
Step by step guide for web application security testingStep by step guide for web application security testing
Step by step guide for web application security testing
 
Web application vulnerability assessment
Web application vulnerability assessmentWeb application vulnerability assessment
Web application vulnerability assessment
 
Hack applications
Hack applicationsHack applications
Hack applications
 
S5-Authorization
S5-AuthorizationS5-Authorization
S5-Authorization
 
Session2-Application Threat Modeling
Session2-Application Threat ModelingSession2-Application Threat Modeling
Session2-Application Threat Modeling
 
Session4-Authentication
Session4-AuthenticationSession4-Authentication
Session4-Authentication
 
Session3 data-validation-sql injection
Session3 data-validation-sql injectionSession3 data-validation-sql injection
Session3 data-validation-sql injection
 
Web 2.0 Hacking
Web 2.0 HackingWeb 2.0 Hacking
Web 2.0 Hacking
 
Session3 data-validation
Session3 data-validationSession3 data-validation
Session3 data-validation
 
Application Security-Understanding The Horizon
Application Security-Understanding The HorizonApplication Security-Understanding The Horizon
Application Security-Understanding The Horizon
 
The Complete Web Application Security Testing Checklist
The Complete Web Application Security Testing ChecklistThe Complete Web Application Security Testing Checklist
The Complete Web Application Security Testing Checklist
 
Joomla web application development vulnerabilities
Joomla web application development vulnerabilitiesJoomla web application development vulnerabilities
Joomla web application development vulnerabilities
 
A7 Missing Function Level Access Control
A7   Missing Function Level Access ControlA7   Missing Function Level Access Control
A7 Missing Function Level Access Control
 
Owasp first5 presentation
Owasp first5 presentationOwasp first5 presentation
Owasp first5 presentation
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 
Testing Web Application Security
Testing Web Application SecurityTesting Web Application Security
Testing Web Application Security
 
Techniques for securing rest
Techniques for securing restTechniques for securing rest
Techniques for securing rest
 
Application Security Part 1 Threat Defense In Client Server Applications ...
Application Security   Part 1   Threat Defense In Client Server Applications ...Application Security   Part 1   Threat Defense In Client Server Applications ...
Application Security Part 1 Threat Defense In Client Server Applications ...
 
Web application sec_3
Web application sec_3Web application sec_3
Web application sec_3
 
Vulnerabilities in Web Applications
Vulnerabilities in Web ApplicationsVulnerabilities in Web Applications
Vulnerabilities in Web Applications
 

Similar to Application Security TRENDS – Lessons Learnt- Firosh Ummer

Web applications security conference slides
Web applications security  conference slidesWeb applications security  conference slides
Web applications security conference slides
Bassam Al-Khatib
 
Presentation on vulnerability analysis
Presentation on vulnerability analysisPresentation on vulnerability analysis
Presentation on vulnerability analysis
Asif Anik
 
How PCI And PA DSS will change enterprise applications
How PCI And PA DSS will change enterprise applicationsHow PCI And PA DSS will change enterprise applications
How PCI And PA DSS will change enterprise applications
Ben Rothke
 
Bridging the gap - Security and Software Testing
Bridging the gap - Security and Software TestingBridging the gap - Security and Software Testing
Bridging the gap - Security and Software Testing
Roberto Suggi Liverani
 
Web Application Security Testing
Web Application Security TestingWeb Application Security Testing
Web Application Security Testing
Marco Morana
 
Essentials of Web Application Security: what it is, why it matters and how to...
Essentials of Web Application Security: what it is, why it matters and how to...Essentials of Web Application Security: what it is, why it matters and how to...
Essentials of Web Application Security: what it is, why it matters and how to...
Cenzic
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
AHM Pervej Kabir
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
AHM Pervej Kabir
 
Intelligence on the Intractable Problem of Software Security
Intelligence on the Intractable Problem of Software SecurityIntelligence on the Intractable Problem of Software Security
Intelligence on the Intractable Problem of Software Security
Tyler Shields
 
Risk oriented testing of web-based applications
Risk oriented testing of web-based applicationsRisk oriented testing of web-based applications
Risk oriented testing of web-based applications
sarikagrov
 
Risk Oriented Testing of Web-Based Applications
Risk Oriented Testing of Web-Based ApplicationsRisk Oriented Testing of Web-Based Applications
Risk Oriented Testing of Web-Based Applications
Paxcel Technologies
 
Rational application-security-071411
Rational application-security-071411Rational application-security-071411
Rational application-security-071411
Scott Althouse
 
Software Security Initiatives
Software Security InitiativesSoftware Security Initiatives
Software Security Initiatives
Marco Morana
 
Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05
Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05 Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05
Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05
sucesuminas
 
[Warsaw 26.06.2018] SDL Threat Modeling principles
[Warsaw 26.06.2018] SDL Threat Modeling principles[Warsaw 26.06.2018] SDL Threat Modeling principles
[Warsaw 26.06.2018] SDL Threat Modeling principles
OWASP
 
Introduction to Application Security Testing
Introduction to Application Security TestingIntroduction to Application Security Testing
Introduction to Application Security Testing
Mohamed Ridha CHEBBI, CISSP
 
EISA Considerations for Web Application Security
EISA Considerations for Web Application SecurityEISA Considerations for Web Application Security
EISA Considerations for Web Application Security
Larry Ball
 
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...
DevOps Indonesia
 
Cyber security series Application Security
Cyber security series   Application SecurityCyber security series   Application Security
Cyber security series Application Security
Jim Kaplan CIA CFE
 
Qg was guide
Qg was guideQg was guide
Qg was guide
nat page
 

Similar to Application Security TRENDS – Lessons Learnt- Firosh Ummer (20)

Web applications security conference slides
Web applications security  conference slidesWeb applications security  conference slides
Web applications security conference slides
 
Presentation on vulnerability analysis
Presentation on vulnerability analysisPresentation on vulnerability analysis
Presentation on vulnerability analysis
 
How PCI And PA DSS will change enterprise applications
How PCI And PA DSS will change enterprise applicationsHow PCI And PA DSS will change enterprise applications
How PCI And PA DSS will change enterprise applications
 
Bridging the gap - Security and Software Testing
Bridging the gap - Security and Software TestingBridging the gap - Security and Software Testing
Bridging the gap - Security and Software Testing
 
Web Application Security Testing
Web Application Security TestingWeb Application Security Testing
Web Application Security Testing
 
Essentials of Web Application Security: what it is, why it matters and how to...
Essentials of Web Application Security: what it is, why it matters and how to...Essentials of Web Application Security: what it is, why it matters and how to...
Essentials of Web Application Security: what it is, why it matters and how to...
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
 
Intelligence on the Intractable Problem of Software Security
Intelligence on the Intractable Problem of Software SecurityIntelligence on the Intractable Problem of Software Security
Intelligence on the Intractable Problem of Software Security
 
Risk oriented testing of web-based applications
Risk oriented testing of web-based applicationsRisk oriented testing of web-based applications
Risk oriented testing of web-based applications
 
Risk Oriented Testing of Web-Based Applications
Risk Oriented Testing of Web-Based ApplicationsRisk Oriented Testing of Web-Based Applications
Risk Oriented Testing of Web-Based Applications
 
Rational application-security-071411
Rational application-security-071411Rational application-security-071411
Rational application-security-071411
 
Software Security Initiatives
Software Security InitiativesSoftware Security Initiatives
Software Security Initiatives
 
Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05
Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05 Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05
Segurança da Informação e Estrutura de Redes - Café Empresarial 15/05
 
[Warsaw 26.06.2018] SDL Threat Modeling principles
[Warsaw 26.06.2018] SDL Threat Modeling principles[Warsaw 26.06.2018] SDL Threat Modeling principles
[Warsaw 26.06.2018] SDL Threat Modeling principles
 
Introduction to Application Security Testing
Introduction to Application Security TestingIntroduction to Application Security Testing
Introduction to Application Security Testing
 
EISA Considerations for Web Application Security
EISA Considerations for Web Application SecurityEISA Considerations for Web Application Security
EISA Considerations for Web Application Security
 
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - ...
 
Cyber security series Application Security
Cyber security series   Application SecurityCyber security series   Application Security
Cyber security series Application Security
 
Qg was guide
Qg was guideQg was guide
Qg was guide
 

More from OWASP-Qatar Chapter

Introduction to Session Management Dana Al-abdulla
Introduction to Session Management   Dana Al-abdullaIntroduction to Session Management   Dana Al-abdulla
Introduction to Session Management Dana Al-abdulla
OWASP-Qatar Chapter
 
Securing the channel - Tarkay Jamaan
Securing the channel - Tarkay JamaanSecuring the channel - Tarkay Jamaan
Securing the channel - Tarkay Jamaan
OWASP-Qatar Chapter
 
Secure management of credentials - Zouheir Abdulla
Secure  management of credentials -   Zouheir AbdullaSecure  management of credentials -   Zouheir Abdulla
Secure management of credentials - Zouheir Abdulla
OWASP-Qatar Chapter
 
Owasp qatar presentation top 10 changes 2013 - Tarun Gupta
Owasp qatar presentation   top 10 changes 2013 - Tarun GuptaOwasp qatar presentation   top 10 changes 2013 - Tarun Gupta
Owasp qatar presentation top 10 changes 2013 - Tarun Gupta
OWASP-Qatar Chapter
 
Implementing a comprehensive application security progaram - Tawfiq
Implementing a comprehensive application security progaram - Tawfiq Implementing a comprehensive application security progaram - Tawfiq
Implementing a comprehensive application security progaram - Tawfiq
OWASP-Qatar Chapter
 
You installed what Thierry Sans
You installed what  Thierry SansYou installed what  Thierry Sans
You installed what Thierry Sans
OWASP-Qatar Chapter
 
Sql injection to enterprise Owned - K.K. Mookhey
Sql injection to enterprise Owned  - K.K. Mookhey Sql injection to enterprise Owned  - K.K. Mookhey
Sql injection to enterprise Owned - K.K. Mookhey
OWASP-Qatar Chapter
 
Defending Web Applications: first-principles- Jason Lam
Defending Web Applications: first-principles- Jason LamDefending Web Applications: first-principles- Jason Lam
Defending Web Applications: first-principles- Jason Lam
OWASP-Qatar Chapter
 

More from OWASP-Qatar Chapter (8)

Introduction to Session Management Dana Al-abdulla
Introduction to Session Management   Dana Al-abdullaIntroduction to Session Management   Dana Al-abdulla
Introduction to Session Management Dana Al-abdulla
 
Securing the channel - Tarkay Jamaan
Securing the channel - Tarkay JamaanSecuring the channel - Tarkay Jamaan
Securing the channel - Tarkay Jamaan
 
Secure management of credentials - Zouheir Abdulla
Secure  management of credentials -   Zouheir AbdullaSecure  management of credentials -   Zouheir Abdulla
Secure management of credentials - Zouheir Abdulla
 
Owasp qatar presentation top 10 changes 2013 - Tarun Gupta
Owasp qatar presentation   top 10 changes 2013 - Tarun GuptaOwasp qatar presentation   top 10 changes 2013 - Tarun Gupta
Owasp qatar presentation top 10 changes 2013 - Tarun Gupta
 
Implementing a comprehensive application security progaram - Tawfiq
Implementing a comprehensive application security progaram - Tawfiq Implementing a comprehensive application security progaram - Tawfiq
Implementing a comprehensive application security progaram - Tawfiq
 
You installed what Thierry Sans
You installed what  Thierry SansYou installed what  Thierry Sans
You installed what Thierry Sans
 
Sql injection to enterprise Owned - K.K. Mookhey
Sql injection to enterprise Owned  - K.K. Mookhey Sql injection to enterprise Owned  - K.K. Mookhey
Sql injection to enterprise Owned - K.K. Mookhey
 
Defending Web Applications: first-principles- Jason Lam
Defending Web Applications: first-principles- Jason LamDefending Web Applications: first-principles- Jason Lam
Defending Web Applications: first-principles- Jason Lam
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 

Application Security TRENDS – Lessons Learnt- Firosh Ummer

  • 1. APPLICATION SECURITY TRENDS – LESSONS LEARNT Firosh C Ummer, Technical Director, Paladion Networks www.paladion.net
  • 2. Contents  Challenges in Enterprise Application Security Programs  Risk Based Application Security Program  Threat Modeling in Application Testing  Security Code Review Process
  • 3. Why Application Security testing? 3 Application Vulnerabilities Exceed OS Vulnerabilities During the last few years, the number of vulnerabilities being discovered in applications is far greater than the number of vulnerabilities discovered in operating systems. http://www.sans.org/top-cyber-security-risks/
  • 4. Threat Intelligence Report - 2011  >50% of attacks are targeted at application layer  Attacks are financially motivated – so they are focused on financial applications Full report at: http://www.paladion.net/paladionlabs. html
  • 5. Tools are simplifying the attacks 5  Automated techniques are improving  600,000 websites compromised in 2 days with SQL Injection  Samy exploited XSS on 0.5 million users in 6 hours  It takes less skill to exploit an application
  • 6. Most applications tend to be insecure at first 6  It’s easy to make security errors  Few developers are trained in security  There’re a large number of attacks to aid the adversary
  • 7. A few common security flaws 7 1. Weak input validation 2. Relying on client-side validation 3. Use of dynamic SQL queries 4. Not escaping <, and > characters 5. Incorrect cache control directives 6. Un-patched servers 7. Weak session management 8. Weak encryption 9. Wrong specs of expected input 10. Misunderstanding of end-user environment
  • 8. Threat Intelligence Report - 2011  XSS, Authentication & Session Mgmnt and Misconfiguration vulnerabilities contributes to more than 50%  Injection vulnerabilities are showing a downward trent
  • 9. Mobile Applications  On account of the variety in the mobile space, each OS is an altogether different thing in itself.  Certain Basic Security concepts & test cases remain the same.  Some do change as every platform may have its own specific issues  Guideline standardization is difficult
  • 10. Mobile Application security risks*  Insecure Data Storage More resources at:  Weak Server side validations & http://www.paladion.net/paladion Controls labs.html  Insufficient Transport Layer Protection • Mobile Code Scanner for  Client Side Injections Android  Poor Authorization and Authentication • “InsecureBank” test  Improper Session Handling application for Android  Security Decisions via un-trusted Plynt Certification Criteria for inputs Mobile Applications  Side Channel Data Leakage http://www.plynt.com/criteria/mo bile-application-criteria/  Broken Cryptography  SensitiveTop 10 * OWASP Information Disclosure
  • 11. Challenges  Budgets are limited  Limited internal expertise  Standard pen tests take more time  Tools alone are not sufficient 11
  • 12. Tools alone are not sufficient 12  High rate of false positives  They cannot detect business logic risks  Directly impact business  More difficult to find
  • 13. E.g. Business logic risks 13  An adversary can…  submit deposit requests on behalf of other users  circumvent the maker/checker process  modify the amount of a release request of other users  insert negative amounts in cash deposits  view deposit requests of other users  estimate the available amount of other users
  • 15. Goals of application security Program 15 1. Find all holes in existing applications 2. Fix them quickly 3. Avoid errors in new code 4. Be resilient to the latest attacks
  • 16. Two phase approach 16 1. Risk based enterprise testing program 1. Risk profile based testing schedules 2. Mix of manual & automated testing 2. Build long term capability
  • 17. Risk based enterprise testing program
  • 18. Basic characteristics 1. Different levels of testing 2. Framework for classifying apps 3. Baseline standard checklist 4. Automated workflow & online reporting 18
  • 19. Different levels of testing  All apps would not undergo the same level of testing  Some apps will get a full test  Others will get a shorter, faster test 19
  • 20. Different levels of testing Application with Plain information & Low value transaction Black Box Testing Application with User Access &supporting critical Penetration Test (Gray business functions Box Testing) Application supporting highly critical process Source code reviews (White Box Testing) 20
  • 21. Different levels of testing Application Type Test Type Frequency Penetration Tests (Gray Quarterly Box) High critical applications Code Reviews Annually Medium critical Penetration Tests (Gray Half yearly applications Box) Less critical applications Penetration Tests (Gray Annually Box) 21
  • 22. Framework to classify apps  A risk assessment framework to prioritize apps  Prioritizing helps share the limited budget better between the apps  Tailor the framework to the needs of the business  Developed in close consultation with business owners  Multiple iterations to develop 22
  • 23. The criteria in the framework  Is the data sensitive?  Is the application critical?  How connected is the application? 23
  • 24. Baseline standard for the security tests  A minimum set of checks for all apps  Does it do input validations at the server?  Does the app adhere to the password policy?  Is it safe against SQL Injection, XSS 24
  • 29. Step 1: Study the Application 29  Features, functions  Walk through site  Read the manuals  Interviews, questionnaires  Make sense of the modules
  • 30. Step 2: Create Threat Profile 30  Threat  Goal of the Adversary  Threat Profile  List of All Threats  An adversary…  Siphons off funds  Reset passwords of other users  Views account statement of others
  • 31. Creating the threat profile 31  Structured process to create Threat Profile  Select known threats from available Repository  Brainstorm on additional risks  Consult business to verify Threat Profile
  • 32. Sample Threat Profile for Internet Banking 32  An adversary…  Siphons off funds from one account  Views account statement of other users  Adds beneficiaries to another account  Orders check book on behalf of others  Resets the password of other users  Edits the profile of other user
  • 33. Threat profile repository 33  Structured process to create Threat Profile  Select known threats from Paladion Repository  Brainstorm on additional risks  Consult customer to verify Threat Profile
  • 34. Sample Test Plan for 1 Threat in Internet Banking 34  Views account statement of other users  SQL Injection on AccNo in request  Variable Manipulation attack on the AccNo in the request  Directly access the pdf/word file on the server  Access the file from the browser cache
  • 36. Executing Test Cases 36  Mix of manual and automated techniques • Manual Testing • Automated Testing • Business logic flaws • Injection attacks • Privilege escalation • Cross site scripting
  • 37. Publish the Report 37  Executive Summary  Strengths  Weaknesses  Detailed Findings  Solutions and fixes  Compliance to standards  Central Bank Guidelines  PCI-DSS
  • 39. Benefits of Code Review 39  More exhaustive than Penetration Tests  Finds all instances of SQL Injection, XSS, etc  Best method to find Backdoors  Malicious backdoors  Inadvertent backdoors  Better suited for  Finding cryptography related vulnerabilities  Analyzing application configuration issues  Precise solutions, pin-pointing the vulnerability  Easier to fix
  • 40. Methodology 40  7-step structured methodology  Threat-profile based approach to focus on what’s important  Hybrid of manual and automatic verification  Custom scripts tailored for each application
  • 41. The 7-step Code Review Methodology 41 Preparation Study Application 1 Create Threat Profile 2 Analysis Study Code Layout 3 Code Review Plan 4 Analyze Code 5 Solutions STRUCTURED METHODOLOGY Verify Flaws → THREAT-PROFILE BASED APPROACH TO FOCUS ON WHAT’S 6 IMPORTANT Generate Report 7 → HYBRID OF MANUAL AND AUTOMATIC VERIFICATION → CUSTOM SCRIPTS TAILORED FOR EACH APPLICATION
  • 42. Step 3, 4: Code Layout and Plan 42  Step 3: Study Code Layout  Get familiar with Pages, Forms, Classes  Identify critical classes:  Authentication, Authorization, Critical transactions  Step 4: Code Review Plan  Map each threat to pages, classes, or config settings  Pick relevant tests from reference checklist  Review with the code owner
  • 43. Step 5, 6: Analyze and Verify 43  Step: Analyze the code  Dissect Pages, Classes, Settings  Consult Reference checklist  Combination of manual and scripted techniques  Step 6: Verify the flaws  Verifyexploitation through walk through  Take screen shots of code snippets  Ensure the snippets tell the story
  • 44. Step 7: Publish the Report 44  Executive Summary  Strengths  Weaknesses  Detailed Findings  Solutions and fixes  Pin-pointed to lines of code  Easier to fix, as it’s more precise  Compliance to PCI DSS standards  Review with supervisor  Published to client
  • 45. Build Long Term Capability
  • 46. Integrate Security in SDLC  Traditional Methodology Architecture Code Security Test Threat Automated Review cases Modeling scanning Scan SRS Security Security Coding Code Pen test Checklist features Guidelines Review Hardening SRS Design Development Testing Deployment Security Define Vulnerability Evaluate against Specifications Training secure Assessment Threat model for 3rd party build
  • 47. Integrate security in SDLC – 80/20 47  Avoid errors in new code  Train developers, designers  Define application security standard/best practices  Measure Effectiveness
  • 48. Build long term capability with Training 48  Training for Developers, Designers and QA  New code gets safer as team is more aware  Fixing apps also become easier  QA starts security test cases  1-2 days trainings are popular
  • 49. Standardize 49  Define Standards for Developers & Designers  Secure Coding Standards for Developers  Secure Architecture Framework for Designers
  • 50. Application Security Standard 50  40 – 60 standards  75% mandatory, 25% optional  Critical apps to meet all standards  Less critical ones need to meet only mandatory controls
  • 51. Examples 51  Mandatory  The application must…  Insist that the user changes password on first login  Maintain an audit trail of all successful and failed logins  Timeout user sessions after 15 minutes of inactivity  Optional  Critical applications must…  Display last 3 transactions when the user logs in  Forcefully log out the user when unexpected inputs are received
  • 52. Measure effectiveness 52  Institute reviews to measure progress  Architecture reviews of new apps  Code Reviews of new Code  Penetration Tests  How many bugs are slipping into the next developmental stage?  How quickly are classes of security bugs
  • 53. Thank You sales@paladion.net

Editor's Notes

  1. 260 customer – 14000 assets in 2011
  2. Samy – XSS attack through social networking site30,000 desktops were wiped off, CEO’s passwords and core router name &amp; passwords are posted on the website. Shamoon.
  3. Critical data (user name and pwd is being stored) in logs and memory devices.Same as webappsec – server side validation etcUnencrypted data being sent out.Client Side Injections: Using device identifier for authenticationSession id are longer, stored in cookiessdaData being logged in logs, temp directories – 3rd party librariesEncording, obfuscation being used