Metro (down the Tube) Security Testing Windows Store Apps Marion McCune – ScotSTS Ltd.

Slides:



Advertisements
Similar presentations
Webgoat.
Advertisements

Chapter 17: WEB COMPONENTS
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.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.
ATTACKING AUTHENTICATION The Web Application Hacker’s Handbook, Ch. 6 Presenter: Jie Huang 10/31/2012.
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Man-In-The-Front Ray Kelly.
DT211/3 Internet Application Development Active Server Pages & IIS Web server.
It’s always better live. MSDN Events Security Best Practices Part 2 of 2 Reducing Vulnerabilities using Visual Studio 2008.
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.
Computer Security and Penetration Testing
OWASP Mobile Top 10 Why They Matter and What We Can Do
Telenet for Business Mobile & Security? Brice Mees Security Services Operations Manager.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter Four Configuring Outlook and Outlook Web Access.
Ladd Van Tol Senior Software Engineer Security on the Web Part One - Vulnerabilities.
November 13, 2008 Ohio Information Security Forum Attack Surface of Web Applications James Walden Northern Kentucky University
Copyright 2000 eMation SECURITY - Controlling Data Access with
Sustainable SharePoint 2010 Customizations By Bill Keys.
1 22 August 2001 The Security Architecture of the M&M Mobile Agent Framework P. Marques, N. Santos, L. Silva, J. Silva CISUC, University of Coimbra, Portugal.
An Inside Look at Mobile Security Android & iOS Zachary Hance & Andrew Phifer Dr Harold Grossman.
DEV325 Deploying Visual Studio.NET Applications Billy Hollis Author / Consultant.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Secure Credential Manager Claes Nilsson - Sony Ericsson
SQL Server User Group Meeting Reporting Services Tips & Tricks Presented by Jason Buck of Custom Business Solutions.
Top Five Web Application Vulnerabilities Vebjørn Moen Selmersenteret/NoWires.org Norsk Kryptoseminar Trondheim
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 14: Protection.
Android Security Auditing Slides and projects at samsclass.info.
October 3, 2008IMI Security Symposium Application Security through a Hacker’s Eyes James Walden Northern Kentucky University
CE Operating Systems Lecture 21 Operating Systems Protection with examples from Linux & Windows.
PwC New Technologies New Risks. PricewaterhouseCoopers Technology and Security Evolution Mainframe Technology –Single host –Limited Trusted users Security.
Operating Systems Security
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.
1 Chapter Overview Creating Web Sites and FTP Sites Creating Virtual Directories Managing Site Security Troubleshooting IIS.
Dilip Dwarakanath.  The topic I’m about to present was taken from a paper titled “Apple iOS 4 Security Evaluation” written by Dino A Dai Zovi.  Dino.
Privilege Escalation Two case studies. Privilege Escalation To better understand how privilege escalation can work, we will look at two relatively recent.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Web Security.
Active Directory. Computers in organizations Computers are linked together for communication and sharing of resources There is always a need to administer.
ASP.NET 2.0 Security Alex Mackman CM Group Ltd
Upgrade on Windows 7. DownloadSoftware Download Software from link provided in Webliography: e/
James F. Fox MENA Cyber Security Practice Lead Presenters Cyber Security in a Mobile and “Always-on” World Booz | Allen | Hamilton.
1 E-Site - FTP Services Setup / install guide. 2 About FTP services can run on any desired port(s) Runs as a windows service Works for all sites installed.
ClickOnce Deployment (One-click Deployment)
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
TOPIC: Web Security (Part-4)
Canberra OWASP Chapter meeting
World Wide Web policy.
Security mechanisms and vulnerabilities in .NET
What web developers need to know when building Metro style apps
Chapter 14: Protection.
Database Driven Websites
The Application Lifecycle
CIS16 Application Development – Programming with Visual Basic
ASP.NET Module Subtitle.
Dave Weston Senior SDET Microsoft Corporation
DAT381 Team Development with SQL Server 2005
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Designing IIS Security (IIS – Internet Information Service)
ClickOnce Deployment (One-click Deployment)
Fast-Track UiPath Developer Module 10: Sensitive Data Handling
Blazor A new framework for browser-based .NET apps Ryan Nowak
Presentation transcript:

Metro (down the Tube) Security Testing Windows Store Apps Marion McCune – ScotSTS Ltd

Marion McCune  20 Years in IT  Worked with Microsoft products since DOS 3  Director of own security testing company for 3 years  Web Applications, MS products and mobile

Introducing Windows Store Apps Background Windows Store Some Apps Security Architecture Microsoft Testing Process Development Environments- HTML, JavaScript.NET Store Requirements and Certifcation Win RT (Windows Runtime)

Background

The Windows Store

Some Apps….

Security Architecture  Apps run in a Sandbox  The App Container  Integrity Levels

Security Architecture (cont)  Capabilities  Contracts  Broker Process

Win RT

Development Environments .NET – C# and VB.NET with XAML  C++ with XAML  JavaScript and HTML 59% 5% 36%

Store Requirements and Certification  Package up the App and Deploy to the Store  Various requirements – mostly to do with development practices and content  Give it a WACK!!  If it passes WACK it still may fail acceptance for the Store (but they will indicate why)

Security Tests BinScope Binary Analyzer Tests  AllowPartiallyTrustedCallersAttribute  /SafeSEH Exception Handling Protection  Data Execution Prevention  Address Space Layout Randomization  Read/Write Shared PE Section  AppContainerCheck  ExecutableImportsCheck  WXCheck Attack Surface Analyzer Secure executable files that have weak ACLs Secure directories that contain objects and have weak ACLs Secure registry keys with weak ACLs Services that allow access to non-administrator accounts and are vulnerable to tampering Services that have fast restarts or might restart more than twice every 24 hours

Great, But…..   Protect the OS  Defeat Malware  App v. User or User v. App?  User A v. User B?

Security Testing Windows Store Apps Where are they? Some lessons from another country Testing Approaches Software Setup Web ServicesDecompilation Local Data JavaScript/ HTML

Where are they?  C:\Program Files\WindowsApps\  Show hidden files and folders  Go to Security Tab and take ownership  Then take control when prompted  Must be logged in as an Administrator

App Packages

Some lessons from another Country

OWASP Mobile Top Ten Insecure Data Storage Weak Server Side Controls Insufficient Transport Layer Protection Client Side InjectionPoor Authorization and Authentication Improper Session Handling Security Decisions via Untrusted Inputs Side Channel Data Leakage Broken Cryptography Sensitive Information Disclosure

Turning it on its head…. Compile with VSMinimize App Capibilities Use File Picker instead of library capabilities Don’t trust remote data Don’t let the web access WinRT Authenticate correctly Validate contentUse HTTPs

Testing Approaches  Attacking the Sandbox?  Web Application  Local Data  Decompilation/Code Review  Web Services

Software Setup

JavaScript/HTML Apps  Really are Web Applications and can be tested as such  Local context versus Web context  Run as a headless version of IE – can be seen in task explorer as ‘wwahost.exe’  Suffer from the typical problems of apps with a good framework  Unlikely (but possible) to get XSS  No more likely or less likely to have other flaws

Decompilation/Code Review .NET Apps can be trivially decompiled but may be obfuscated  A lot depends on your ability to read the language  Credentials/Keys  Developer Mode  SSL -

Bad Coding Practices  Eval, ExecScript, MsAppExecUnsafeLocalFunction

Bad Coding Practices  XMLHttpRequest  Untrusted dynamic content var myDiv = document.createElement("div"); myDiv.innerHTML = xhr.responseText document.body.appendChild(myDiv); document.writeln(xhr.responseText);

Local Data  Apps can write to C:\users\username\AppData\Packages\appname  LocalState or RemoteState

Web Services

a' and soap:server Server was unable to process request. ---&gt Conversion failed when converting the nvarchar value Microsoft SQL Server 2008 R2 (SP2) (X64) June :36:30 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 (Build 7601: Service Pack 1)' to data type int.

A little interlude

Belt and Braces time….  Enforced Integrity level makes it difficult to modify WindowsApps  Linux to the rescue!  But no….

One cool trick  Making a modifiable copy of a store app  Look to see what template the app uses  Create a Visual Studio project with the same template and close it  Delete the js, css and default.htm files from your project and copy in the corresponding files from the real app  Add any resources to the project (eg. Image directory)  Build the app in Visual Studio

Conclusion

Questions?Answers?Questions?Answers?