Deconstructing API Security

Slides:



Advertisements
Similar presentations
Secure Single Sign-On Across Security Domains
Advertisements

CTS IT Security Enhancement Projects December 10, 2014.
A Public Web Services Security Framework Based on Current and Future Usage Scenarios J.Thelin, Chief Architect PJ.Murray, Product Manager Cape Clear Software.
Extending ForeFront beyond the limit TMGUAG ISAIAG AG Security Suite.
A Demo of and Preventing XSS in.NET Applications.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Barracuda Web Application Firewall
Web Services, SOA and Security May 11, 2009 Michael Burnett.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
Automated Policy Enforcement Adam Vincent, Layer 7 Federal Technical Director
MobileFirst Protect 1. MobileFirst Protect (MaaS360) 2 Mobile Device Management Enable and Manage Apple iOS smartphones, and tablets with Apple DEP Gain.
Cloud Attributes Business Challenges Influence Your IT Solutions Business to IT Conversation Microsoft is Changing too Supporting System Center In House.
Practical Steps to Secure your APIs for Mobile Mark O’Neill VP Innovation, Axway.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.
OWASP Mobile Top 10 Why They Matter and What We Can Do
Telenet for Business Mobile & Security? Brice Mees Security Services Operations Manager.
Lecture 12 Electronic Business (MGT-485). Recap – Lecture 11 E-Commerce Security Environment Security Threats in E-commerce Technology Solutions.
OWASP Zed Attack Proxy Project Lead
The OWASP Way Understanding the OWASP Vision and the Top Ten.
Ganesh Kirti Roger Sullivan Oracle Corporation “This presentation is for informational purposes only and may not be incorporated into a contract or agreement.”
Ladd Van Tol Senior Software Engineer Security on the Web Part One - Vulnerabilities.
Ryan Dewhurst - 20th March 2012 Web Application (PHP) Security.
System Center 2012 Certification and Training May 2012.
Lecture 23 Internet Authentication Applications modified from slides of Lawrie Brown.
Key Management with the Voltage Data Protection Server Luther Martin IEEE P May 7, 2007.
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.
International Telecommunication Union Geneva, 9(pm)-10 February 2009 ITU-T Security Standardization on Mobile Web Services Lee, Jae Seung Special Fellow,
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Protecting Internet Communications: Encryption  Encryption: Process of transforming plain text or data into cipher text that cannot be read by anyone.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 22 – Internet Authentication.
10/14/2015 Introducing Worry-Free SecureSite. Copyright Trend Micro Inc. Agenda Problem –SQL injection –XSS Solution Market opportunity Target.
OWASP Top Ten #1 Unvalidated Input. Agenda What is the OWASP Top 10? Where can I find it? What is Unvalidated Input? What environments are effected? How.
James Akrigg Microsoft Ltd Integrating InfoPath Forms Into Workflow Solutions And Business Processes.
SOA-39: Securing Your SOA Francois Martel Principal Solution Engineer Mitigating Security Risks of a De-coupled Infrastructure.
Web Applications Testing By Jamie Rougvie Supported by.
Extending ISA/IAG beyond the limit. AGAT Security suite - introduction AGAT Security suite is a set of unique components that allow extending ISA / IAG.
Copyright 2009 © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Module 7: Advanced Application and Web Filtering.
Snakes and Ladders OWASP Newcastle 24 th November 2015.
Security Patterns for Web Services 02/03/05 Nelly A. Delessy.
Securing Java Applications
CS526Topic 12: Web Security (2)1 Information Security CS 526 Topic 9 Web Security Part 2.
Web2.0 Secure Development Practice Bruce Xia
The ERA of API in the World of IoT Jing Zhang-Lee November, 2015.
Securing Angular Apps Brian Noyes
//ALPHA.1 OWASP Knoxville Application Security Then and Now. Make a Difference Now 2015 June 11 Phil Agcaoili.
Copyright © The OWASP Foundation This work is available under the Creative Commons SA 2.5 license The OWASP Foundation OWASP Denver February 2012.
IS3220 Information Technology Infrastructure Security
Secure Mobile Development with NetIQ Access Manager
Microsoft TMG End of Life. Who is Barracuda? Barracuda Networks Established: 2003 Headquarter: Campell, CA Employees: Customers: Market:
Copyright © New Signature Who we are: Focused on consistently delivering great customer experiences. What we do: We help you transform your business.
Security in OPC Unified Architecture (UA) Dick Oyen IndustrialSysDev, Inc.
Page 1 Ethical Hacking by Douglas Williams. Page 2 Intro Attackers can potentially use many different paths through your application to do harm to your.
SECURE DEVELOPMENT. SEI CERT TOP 10 SECURE CODING PRACTICES Validate input Use strict compiler settings and resolve warnings Architect and design for.
Manage Your Mesh Securing Public Cloud IoT APIs, and Building Private Mesh Trust Domains and Enclaves of Privacy to Integrate a Mesh of “Things” with Integrity.
Security Autodesk DevDays rEvolution
Web Application Protection Against Hackers and Vulnerabilities
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
Securing Your Web Application in Azure with a WAF
TOPIC: Web Security (Part-4)
API Security Auditing Be Aware,Be Safe
Penetration Testing following OWASP
What is REST API ? A REST (Representational State Transfer) Server simply provides access to resources and the REST client accesses and presents the.
Cyber Exposure – The Next Frontier
Building production-ready APIs with ASP.NET Core 2.2
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Microsoft Data Insights Summit
Presentation transcript:

Deconstructing API Security I’m Ian Goldsmith, I own the products for Akana, a leading providers of enterprise API solutions, with a stong focus on security. I’ve been working in security for over 25 years now, and have seen more than my share of change in that time. I’m going to spend most of the time we have this morning discussion security concerns and solutions for APIs and how they may differ from traditional approaches to internet security. Before I start into all that though, I’d like to take a couple of minutes to ensure that we’re all on the same page about what companies use APIs for, and why they’re so important. I’ll also touch on the (well to be honest my) definition of an API. Ian Goldsmith @apibuilder

APIs Extend your Digital Ecosystems While APIs are not always exposed outside the enterprise (in fact the majority of the APIs out there are still inside the enterprise, these just aren’t the scenarios we all hear so much about) it’s the external use-cases that drive business value and hence excitement. It’s also the APIs that companies expose outside the enterprise that introduce the most risks, but we’ll get to that later. One of the main reasons companies are adopting APIs is to drive a multi-channel strategy. Consumers are connected via a growing range of devices – key to reach them where they are IoT emerging Context as important as content

Leverage Developers & Partners Ecosystems Tap into an extended eco-system of developers with APIs Innovate outside the enterprise Small number of internal developers building a great API allow you to leverage the power of a vast community of external developers Netflix & Twitter are the poster children

Capture new Opportunities with APIs Drive Innovation Increase Reach Support New Devices Discover New Business Models Increase Partner Network So what does multi-channle and external innovation really mean for the business It’s about new opportunities Twitter – new ways of using the service, tweet from various sites, search twitter for content, etc Netflix – proliferation of netflix app on a huge range of devices and internet connected TVs etc IoT – monitor and control a huge (and incredibly rapidly growing) range of devices both in the home and in the business Twillio – identify new ways to market Salesforce – grow the partner network with partner driven integrations

API security Ping the audience on their security programs

API Consumer Security?

Major API Security Concerns

Evolution of SECURITY IN Digital CHAnnels Moving on to look at the security concerns around APIs

Client-Server/ Web Applications Access locations and variability of operations were limited No Programmatic Access Security through network isolation Limited Users In the old days of simple client server applications security was a simple matter of a firewall, and maybe a username password at the front door of the application. Once a user was inside the network, they were inside everything.

Web Services The enterprise opened slightly with Web Services/SOAP SSL/TLS, Certificate based, PKI, WS-Trust Some B2B and Partners applications Complex, but quite secure and flexible SOAP based services started life with a vision of being the way that B2B communication would all happen. Security concerns quickly scuppered that, and by the time the standards bodies properly addressed security with WS-Security, WS-Policy, WS-Federation, etc, it had become so complex that it was: Very difficult for anyone to really use, Borderline non-interoperable because of the range of options in configuration Web services are in use in some B2B environments with strong security, but they certainly didn’t become the ubiquitous replacement for EDI technologies that we all hoped they might.

WS-Security Policy <wsp:Policy wsu:Id="WSS11SamlWithCertificates_policy"> <wsp:ExactlyOne> <wsp:All> <sp:SymmetricBinding> <wsp:Policy> <sp:ProtectionToken> <sp:X509Token sp:IncludeToken="http://docs.oasis‑open.org/ws‑sx/ws-icy/200702/IncludeToken/Never”> <sp:RequireThumbprintReference/> <sp:RequireDerivedKeys wsp:Optional="true"/> <sp:WssX509V3Token10/> </wsp:Policy> </sp:X509Token> </sp:ProtectionToken> <sp:AlgorithmSuite> <sp:Basic256/> </sp:AlgorithmSuite> <sp:Layout> <sp:Strict/> </sp:Layout> <sp:IncludeTimestamp/> <sp:OnlySignEntireHeadersAndBody/> </sp:SymmetricBinding> <sp:SignedSupportingTokens> <wsp:Policy> <sp:SamlToken sp:IncludeToken= "http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient"> <sp:WssSamlV11Token11/> </wsp:Policy> </sp:SamlToken> </sp:SignedSupportingTokens> <sp:EndorsingSupportingTokens> <sp:X509Token sp:IncludeToken=”AlwaysToRecipient"> <sp:WssX509V3Token11/> </sp:X509Token> </sp:EndorsingSupportingTokens> <sp:Wss11> <sp:MustSupportRefKeyIdentifier/> <sp:MustSupportRefIssuerSerial/> <sp:MustSupportRefThumbprint/> <sp:MustSupportRefEncryptedKey/> </sp:Wss11> </wsp:All> </wsp:ExactlyOne> This is the just the policy, not even the definition document. Trivial huh?

And then came APIs Disrupting how and where information is accessed Mobile and Social Apps don’t’ understand PKI, WS-Security, etc. Focus on human readability, developer adoption Complexity of additional access mechanisms to data and functions that had tradition remained locked inside the enterprise. No easy way to handle SOAP and the complexities of WS-Security from mobile devices and 3rd party apps. APIs are often part of Web Applications – SPWA, and are increasingly baing subjected to attacks listed under the OWASP (Open Web Application Security Project ) Top Ten. Some aspects of Web Application design has had to change to enable APIs to be part of the application, specifically adding things like CORS. Techniques to prevent things like XSS and CSRF can prevent a valid consumer from accessing an API, and so there are mitigation techniques required to keep things working properly.

OWASP Top Ten 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 vulnerabilitites A10 – Unvalidated redirects and forwards

PCI Compliance APIs are now part of e-commerce Card payments pass through API The infrastructure underlying the API? What is PCI? Does not apply to products.

Securing APIS Ok, intro over. Let’s move into the meat.

Securing APIs 5 Content Filtering 6 Rate Limiting Authentication & Authorization 1 3 Message Security 2 App Key Validation/ Licensing 4 We’re going to cover these 6 basics of securing APIs. Threat Protection Developers

Authentication/Authorization/SSO Control and restrict access to your APIs Make it easy yet secure Is SAML still relevant for APIs? My opinion, not really, possibly in some vendor (Microsoft) specific environments. The basic idea in most of these scenarios is that the user/application communicates with an identity provider to retrieve one or more tokens (an identity assertion - credential, and an attribute or authorization assertion). It then passes these tokens to the API that uses them to identify the end user and determine if that user is allowed to do anything. In a well-designed system these same tokens can be used for accessing multiple APIs or services.

Understanding OAuth OAuth lets a person delegate constrained access from one app to another Client App Resource Server Resource Owner User Examples, allowing an application to post your facebook timeline.

OAuth Flow

OAuth – You need OAuth has become complex OAuth Clients Provisioning Approval Flow OAuth Server Identity Integration Token Validation Token Issue/refresh Token Mediation (SAML, LDAP etc) QoS, Monitoring Policy Management API Proxying Reporting Analytics

Licensing Package your APIs in different ways Use API keys to restrict what the App can access The licenses control: OAuth Authorization Scopes Document visibility Quota policies Design-time and runtime. Manufacturing company single API example

Message and Parameter Security HTTP Parameter http://apis.foo.com/resources/sample/foo?app_id=myid&app_key=mykey Protect API Keys with HMAC – Hash-based Message Authentication Code Message Security Implement HTTPS JWS/JWE, XML Encryption & Signature

Threat Protection Denial of Service Injection Attacks Detect and prevent SQL, JavaScript or XPath/XQuery injection attacks Cross Site Scripting Network address and range blacklists/whitelists HTTP Parameter Stuffing

Content Threats Provide a content firewall, protecting against malicious content Validate message content including message headers, form and query parameters, XML and JSON data structures. Policies for XML and JSON DoS Protection against viruses in attachments and other binary content via ICAP integration with leading anti-virus engines ICAP for AV

Quota Management/Rate Limiting Restrict the number of calls an App can make Apply controls based on context, affinity, segmentation etc. Done on a per-consumer basis

API Gateway Gateway Security Authentication Protection IAM Integration Encryption Mediation Quality of Service Paging/Caching Orchestration Scripting This is how you deliver all the above security requirements

Managing and Automating Security

Credit : Peter Cheslock

Govern Manage your Development/Deployment Process API Initiatives need to integrated with your DevOps Define and track multiple API and versions and the dependencies on those versions throughout the process. Integrated with your development tools – IDE, Github, Chef, Puppet Integrated with your deployment Tools APIs Lifecycle

Automated Governance of Apps User and App onboarding Configurable forms to gather user/app info, collect agreements, etc. Configurable role-based notifications and approvals Mobile app based API SDLC approvals Deliver approval requests to stakeholders on their preferred platform DevOps automation

API Resources and API University Resource Center http://resource.akana.com/ Follow us on: www.facebook.com/soasoftware www.linkedin.com/company/soasoftware @soasoftwareinc