OWASP Mobile Top 10 Beau Woods

Slides:



Advertisements
Similar presentations
Chapter 10 Encryption: A Matter of Trust. Awad –Electronic Commerce 1/e © 2002 Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic Algorithm.
Advertisements

Nick Feamster CS 6262 Spring 2009
Cross-site Request Forgery (CSRF) Attacks
Overview Environment for Internet database connectivity
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Hands-on SQL Injection Attack and Defense HI-TEC July 21, 2013.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Infosec 2012 | 25/4/12 Application Performance Monitoring Ofer MAOR CTO Infosec 2012.
OWASP Web Vulnerabilities and Auditing
OWASP Top 10 Mobile Risks Appsec USA Minneapolis, MN
Don’t get Stung (An introduction to the OWASP Top Ten Project) Barry Dorrans Microsoft Information Security Tools NEW AND IMPROVED!
SEC835 OWASP Top Ten Project.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
The Web Hacking Incident Database (WHID) Report for 2010 Ryan Barnett WASC WHID Project Leader Senior Security Researcher.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
It’s always better live. MSDN Events Security Best Practices Part 2 of 2 Reducing Vulnerabilities using Visual Studio 2008.
Online Security Tuesday April 8, 2003 Maxence Crossley.
Information Networking Security and Assurance Lab National Chung Cheng University The Ten Most Critical Web Application Security Vulnerabilities Ryan J.W.
It’s always better live. MSDN Events Securing Web Applications Part 1 of 2 Understanding Threats and Attacks.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
Using Internet Information Server And Microsoft ® Internet Explorer To Implement Security On The Intranet HTTP.
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
OWASP Mobile Top 10 Why They Matter and What We Can Do
Telenet for Business Mobile & Security? Brice Mees Security Services Operations Manager.
1 Infrastructure Hardening. 2 Objectives Why hardening infrastructure is important? Hardening Operating Systems, Network and Applications.
OWASP Zed Attack Proxy Project Lead
Software Confidence. Achieved. Mobile Security and Payments Infrastructure 1 AJ Dexter Sr. Security Consultant.
The OWASP Way Understanding the OWASP Vision and the Top Ten.
Security Management prepared by Dean Hipwell, CISSP
SSL and https for Secure Web Communication CSCI 5857: Encoding and Encryption.
Ryan Dewhurst - 20th March 2012 Web Application (PHP) Security.
Copyright 2007 © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
An Inside Look at Mobile Security Android & iOS Zachary Hance & Andrew Phifer Dr Harold Grossman.
Protecting Internet Communications: Encryption  Encryption: Process of transforming plain text or data into cipher text that cannot be read by anyone.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
All Input is Evil (Part 1) Introduction Will not cover everything Healthy level of paranoia Use my DVD Swap Shop application (week 2)
SEC835 Runtime authentication Secure session management Secure use of cryptomaterials.
Ram Santhanam Application Level Attacks - Session Hijacking & Defences
Web Applications Testing By Jamie Rougvie Supported by.
Building Secure Web Applications With ASP.Net MVC.
Deconstructing API Security
CS526Topic 12: Web Security (2)1 Information Security CS 526 Topic 9 Web Security Part 2.
Wireless and Mobile Security
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
OWASP Building Secure Web Applications And the OWASP top 10 vulnerabilities.
Chapter 1 The Software Security Problem. Goals of this course Become aware of common pitfalls. Static Analysis and tools.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation This work is available under the Creative Commons SA 2.5 license The OWASP Foundation OWASP Denver February 2012.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Web Security.
The OWASP Foundation Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under.
Do not try any of the techniques discussed in this presentation on a system you do not own. It is illegal and you will get caught.
James F. Fox MENA Cyber Security Practice Lead Presenters Cyber Security in a Mobile and “Always-on” World Booz | Allen | Hamilton.
SECURE DEVELOPMENT. SEI CERT TOP 10 SECURE CODING PRACTICES Validate input Use strict compiler settings and resolve warnings Architect and design for.
The Fallacy Behind “There’s Nothing to Hide” Why End-to-End Encryption Is a Must in Today’s World.
Web Application Vulnerabilities
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
Securing Your Web Application in Azure with a WAF
TOPIC: Web Security (Part-4)
Canberra OWASP Chapter meeting
Cyber Security for REDCap Extended Features Protecting REDCap extended features (Twilio, Mobile App, API, and more). – Staying ahead of the bad guys.
Vulnerability Chaining Every Low Issue Has its big impact
Penetration Testing following OWASP
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Presentation transcript:

OWASP Mobile Top 10 Beau Woods http://beauwoods.com @beauwoods To get involved get in touch with the project leader https://www.owasp.org/index.php/OWASP_Mobile_Security_Project OWASP Mobile Top 10 Risks presentation at OWASP Korea July 13, 2013 is licensed under a Creative Commons Attribution 3.0 Unported License.

Mobile Elements Application Application Server Network Hardware Platform Client Backup NFC/RFID Bluetooth Other considerations

Mobile Comparison Use models Capabilities Hardware Platform Mobile Always on Always connected Omnipresent Capabilities Communications Limited resources Highly variable Hardware Extensive RF & SSD Highly variable Not upgradable Platform Highly variable Limited options Variable security Mobile Devices Use models Frequently off Disconnected Location-bound Capabilities Many resources Robust platform Well documented Hardware Limited RF & HDD Highly variable Highly upgradable Platform Standardized Well understood Robust security Traditional Devices Solid State Drives perform an activity called “wear leveling” to prevent frequently used storage areas from being destroyed quickly. This process copies data to other parts of the drive every time the data sector is read or written. Therefore traditional data deletion routines do not work – an important thing to keep in mind. This means that any sensitive information should be strongly protected (encrypted or written to protected storage areas), rather than relying on secure deletion mechanisms.

OWASP Mobile Top 10 Risks M1 Insecure Data Storage M2 Weak Server Side Controls M3 Insufficient Transport Layer Protection M4 Client Side Injection M5 Poor Authorization and Authentication M6 Improper Session Handling M7 Security Decisions via Untrusted Inputs M8 Side Channel Data Leakage M9 Broken Cryptography M10 Sensitive Information Disclosure Alpha Documentation Mobile Security Project Top 10 Risks Top 10 Controls Threat Model Testing Guide Tools Secure Development

M1 Insecure Data Storage Sensitive data Authentication data Regulated information Business-specific information Private information Examples Recommendations Business must define, classify, assign owner & set requirements Acquire, transmit, use and store as little sensitive data as possible Inform and confirm data definition, collection, use & handling Protections Reduce use and storage Encrypt or hash Platform-specific secure storage with restricted permissions Mobile Controls 1, 2 & 7 Path: Collected and uploaded personal information Concur: Stored password in plain text

M2 Weak Server Side Controls Mobile App Servers RESTful API SOAP Web Service Web XML OWASP Top 10 Web Application Risks 2013 A1 Injection A2 Broken Authentication and Session Management A3 Cross-Site Scripting (XSS) A4 Insecure Direct Object References A5 Security Misconfiguration A6 Sensitive Data Exposure A7 Missing Function Level Access Control A8 Cross-Site Request Forgery (CSRF) A9 Using Components with Known Vulnerabilities A10 Unvalidated Redirects and Forwards Recommendations Always validate input Don’t trust the client Harden mobile app servers & services Beware information disclosure Understand host & network controls Perform integrity checking regularly Mobile Controls 5 & 6 Recommendation for future versions Expand to specific risks

M3 Insufficient Transport Layer Protection Impact Expose authentication data Disclosure other sensitive information Injection Data tampering Examples Recommendations Use platform-provided cryptographic libraries Force strong methods & valid certificates Test for certificate errors & warnings Use pre-defined certificates, as appropriate Encrypt sensitive information before sending All transport, including RFID, NFC, Bluetooth Wifi, Carrier Avoid HTTP GET method Mobile Controls 3 Google Wallet NFC MITM PayPal failure to validate certificates Apple iOS AppStore MITM led to circumventing purchases

M4 Client Side Injection Impact App or device compromise Abuse resources or services (SMS, phone, payments, online banking) Extract or inject data Man-in-the-Browser (MITB) Recommendations Always validate input Don’t trust the server Harden mobile app clients Beware information disclosure Perform integrity checking regularly Mobile Controls 9 Recommendation for future versions Improve or eliminate

M5 Poor Authorization and Authentication Impacts Account takeover Confidentiality breach Fraudulent transactions Examples Most common methods Account name Password Oauth HTTP Cookies Stored passwords Unique tokens Recommendations Use appropriate methods for the risk Unique identifiers as additional (not only) factors Differentiate client-side passcode vs. server authentication Ensure out-of-band methods are truly OOB (this is hard) Hardware-independent identifiers (ie. Not IMSI, serial, etc.) Multi-factor authentication, depending on risk Define & enforce password length, strength & uniqueness Mobile Controls 4 Dropbox: Used only a unique ID to authenticate, no password required; password reset doesn’t protect assets Audible: Used plaintext password to authenticate and used HTTP GET method OOB: Remember, mobile devices can potentially intercept phone calls, SMS and email

M6 Improper Session Handling Impacts Account takeover Confidentiality breach Fraudulent transactions Most common methods Oauth HTTP Cookies Stored passwords Unique tokens Recommendations Allow revocation of device/password Use strong tokens and generation methods Consider appropriate session length (longer than web) Reauthenticate periodically or after focus change Store and transmit session tokens securely Mobile Controls 4

M7 Security Decisions via Untrusted Inputs Description Reliance on files, settings, network resources or other inputs which may be modified. Examples DNS settings Cookies Configuration files Network injection Mobile malware URL calls Recommendations Validate all inputs Digitally sign decisioning inputs, where possible Ensure trusted data sources for security decisions Recommendation for future versions Improve or eliminate

M8 Side Channel Data Leakage Caches Keystroke logging (by platform) Screenshots (by platform) Logs Examples Recommendations Consider server-side leakage Reduce client-side logging Consider mobile-specific private information Consider platform-specific data capture features Securely cache data (consider SSD limitations) Mobile Controls 1, 2, 3, 6 & 7 Android: Information sent to advertisers http://news.techeye.net/mobile/many-android-apps-send-your-private-information-to-advertisers Apple: Collected and stored mobile tower data; called before US Congress to answer questions Audible: Stored URL with password in logfile, also in GET request stored in web server log Recommendation for future versions Consider combining with M10 Consider incorporating the idea of collecting unnecessary but potentially sensitive or private information

M9 Broken Cryptography Cryptography Recommendations …is not encoding …is not obfuscation …is not serialization …is best left to the experts “The only way to tell good cryptography from bad cryptography is to have it examined by experts.” -Bruce Schneier Examples Recommendations Use only well-vetted cryptographic libraries Understand one-way vs. two-way encryption Use only well-vetted cryptographic libraries (not a typo) Use only platform-provided cryptographic storage Use only well-vetted cryptographic libraries (still not a typo) Protect cryptographic keys fanatically Use only well-vetted cryptographic libraries (seriously - always do this) Mobile Controls 1, 2 & 3

M10 Sensitive Information Disclosure Sensitive application data API or encryption keys Passwords Sensitive business logic Internal company information Debugging or maintenance information M1 deals with customer data M10 deals with application or developer data Recommendations Store sensitive application data server-side Avoid hardcoding information in the application Use platform-specific secure storage areas Recommendation for future versions Consider combining with M8

Case Study M1 Insecure Data Storage Risks & mitigating factors Account number & passcode stored in flat text file Risks & mitigating factors Passcode not used for other systems App contained and accessed sensitive and private information http://www.secureworks.com/cyber-threat-intelligence/advisories/SWRX-2011-002/

Case Study M5 Poor Authorization & Authentication Account name and password in plain text Used HTTP GET method (logged to server) M8 Side Channel Data Leakage Logged password to client and server M9 Broken Cryptography First attempt to fix issue obfuscated password Risks & mitigating factors Same password used for web application Password reuse likely Stored password securely http://www.secureworks.com/cyber-threat-intelligence/advisories/SWRX-2011-004/

Case Study M1 Insecure Data Storage Risks & mitigating factors Account name & password stored in flat text file Risks & mitigating factors App accessed private information Password reuse likely App used in Arab Spring and other protests http://stratigossecurity.com/2012/10/03/security-advisory-ustream-mobile-application/

DIY Vulnerability Discovery Explore files on mobile devices and backups Search for passwords Sniff network connections Downgrade SSL OWASP Resources WebScarab GoatDroid iGoat MobiSec iMas Mobile Testing Guide

We have a long road ahead – your comments and participation are appreciated Beau Woods http://beauwoods.com @beauwoods To get involved get in touch with the project leader https://www.owasp.org/index.php/OWASP_Mobile_Security_Project