Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright © 2007 - The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.

Similar presentations


Presentation on theme: "Copyright © 2007 - The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike."— Presentation transcript:

1 Copyright © 2007 - The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike 2.5 License. To view this license, visit http://creativecommons.org/licenses/by-sa/2.5/ The OWASP Foundation OWASP & WASC AppSec 2007 Conference San Jose – Nov 2007 http://www.owasp.org/ http://www.webappsec.org/ (Not an official OWASP) Top Ten Web Services Security Issues Gunnar Peterson, OWASP XSGEC Project Lead Managing Principal, Arctec Group

2 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 About Arctec Group  Best in class enterprise architecture consulting provider focused on enterprise, software, and security architecture  Client list includes numerous global 500 companies, world’s largest electronic financial exchanges, emerging startups and Dept. Homeland Security  Headquarters: IDS Center, Minneapolis, MN; Clientele: global  Web: www.arctecgroup.net

3 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 About the speaker  Gunnar Peterson  Managing Principal, Arctec Group  Editor Build Security In software security column for IEEE Security & Privacy Journal (www.computer.org/security)www.computer.org/security  Primary and contributing author for DHS/CERT Build Security In portal on Web Services security, Identity, and Risk management (https://buildsecurityin.us- cert.gov/daisy/bsi/home.html)https://buildsecurityin.us- cert.gov/daisy/bsi/home.html)  Project lead, OWASP XML Security Gateway Evaluation Criteria project (https://www.owasp.org/index.php/Category:OWASP_XML_Security_Gateway_Evaluation_Criteria_Pr oject)  Associate editor Information Security Bulletin (www.chi-publishing.com)  Contributor Web Application Firewall Evaluation Criteria (http://www.webappsec.org/projects/wafec/)http://www.webappsec.org/projects/wafec/  Blog: (http://1raindrop.typepad.com)http://1raindrop.typepad.com

4 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Issue 1: You’re probably not spending enough money/time/focus on app security

5 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 If I have 100 security dollars where should I spend them?

6 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Investing Your 100 Security Dollars  Use budget numbers to get at what your business thinks is valuable  What I learned from Pete Lindstrom -  An asset is worth at least what you pay to develop, own, and operate it.  Use this to get your floor

7 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Investing your $100 Where the business spend its money

8 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 * Gather these numbers for your company and compare your priorities

9 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Example - Rebalanced security investment

10 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Issue 2: Know your security standards

11 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Security Standards in SOA StandardDescription WS-SecurityHow to attach security tokens to a Web service message WS-TrustHow to move tokens around in a system WS-SecureConversationHow to optimize for efficiency SAMLAuthentication, authorization, and attribute assertions XACMLXML policy language for interoperable security policy See: DHS Build Security In portal paper by Lipson & Peterson “Security Concepts, Challenges, and Design Considerations for Web Services Integration” https://buildsecurityin.us-cert.gov/daisy/bsi/articles/best-practices/assembly/639.html?branch=1&language=1

12 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Identify standards to address your threats

13 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 STRIDE Threat Model ThreatDescriptionSOA Countermeasure Spoofing spoofing the identity of a web services requester or provider ? Tampering tampering with information, such as the contents of the SOAP body ? Repudiation repudiate the receipt or origination of a transaction ? Information Disclosure Disclose sensitive information? Denial of ServiceDisrupt correct operation? Elevation of Privilege attacker gains privileges, such as root ? More information on STRIDE http://msdn.microsoft.com/msdnmag/issues/06/11/ThreatModeling/default.aspx

14 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Hello World SOAP Message Joe Smith 123456789

15 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Open Security Standards SOAP Foundation WS-Security WS-PolicyWS-Trust WS-Secure Conversation

16 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Issue 3: Use Message Level Security

17 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 WS-Security  Requirements (from the spec)  Multiple security token formats  Multiple trust domains  Multiple signature formats  Multiple encryption technologies  End-to-end message content security and not just transport-level security  Non-Goals  Establishing a security context or authentication mechanisms.  Key derivation.  Advertisement and exchange of security policy.  How trust is established or determined.  Non-repudiation.

18 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 WS-Security  SOAP Header for Authentication:  Timestamp  Multiple Token types identifying principals and keys  Unsigned token –Username token: username/password  Signed token format –Kerberos ticket –X509: name and public-key  XML Token format –SAML  Signatures (sign message elements with security token’s key)  XML-DigitalSignature

19 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Authentication -- Relying on the SOAP Message

20 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Joe Smith 123456789

21 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Alice Signs Message

22 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Hello World + Integrity … MIICRDCCAa0CBEX67+… <dsig:SignatureProperty Id="Id-00000112eef195a8-09”.. Target="#Id-00000112eef195a8-0000000000000007"> <wsu:Timestamp xmlns:wsu=”…” wsu:Id="Id-00000112eef195a8-000000000000000b"> 2007-06-03T00:17:29Z Joe Smith 123456789

23 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 XML Encryption  Security improvement over the point to point SSL solution  Encryption may be performed at element level or or all of the document content  Supports symmetric and asymmetric encryption  Deals with multi-hop transactions  Supports granular security models through element level encryption

24 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

25 Issue 4: Avoid Naïve Usage of Signatures & Encryption

26 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007  Use Longer Keys  128 bit Security level (“Practical Cryptography”, Schneier & Ferguson)  To achieve 128 bit security, use 256 bit symmetric keys  Hash function examples: SHA-256, SHA-512  MAC example: HMAC-SHA-256 <enc:EncryptionMethod Algorithm= "http://www.w3.org/2001/04/xmlenc#aes256-cbc"/>

27 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Order of Operations for Sign & Encrypt

28 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

29

30 Design Considerations OrderConsiderations Sign & Encrypt-Eve only sees ciphertext - Horton Principle: “Authenticate what you mean not what you say” Encrypt & Sign- Theoretic weakness of certain weak encryption schemes - Efficiency gains because Service Provider checks signature first, can discard immediately if message fails authentication Source: “Practical Cryptography” by Schneier & Ferguson Chapter 8

31 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 But either way there’s still a problem…

32 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 “Defective Sign & Encrypt S/MIME, PKCS#7, MOSS, PEM, PGP, and XML” Don Davis Trust, but verify. - Russian proverb http://world.std.com/~dtd/sign_encrypt/sign_encrypt7.html

33 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

34

35 How to fix 1.Sign the recipient's name into the plaintext, or 2. Encrypt the sender's name into the plaintext, or 3. Incorporate both names; or 4. Sign again the signed-&-encrypted message; or 5. Encrypt again the signed ciphertext.

36 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

37

38

39 Issue 5: Validate Input & Encode Output

40 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007  XML Messages can contain a number of nasty things…  Injection attacks  SQL Injection, Xpath Injection, Xquery Injection  XML Denial of Service (XDoS)  Using XML as an attack vector  Jumbo payloads  Recursion  Virus in SOAP attachments

41 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007  Schema validation based on hardened schemas <xs:restriction base="xs:string"  Semantic validation based on white list or blacklist  Regex  Virus scanning

42 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Output encoding  Don’t propagate attacks

43 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Issue 6: XDoS

44 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 DTD Recursion Attack <!DOCTYPE foobar [... ]> &x100; Source Vordel Taxonomoy of XML Attacks (vordel.com)

45 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 XDoS  Attacker sends XML bomb(s) to service  Can be used to attack CPU through recursion  Can attack memory by targeting DOM to create very large trees in memory  Can attack network with numerous small files

46 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 XDoS in the SOAP header …..Massive Binary blob…. … 1234 </SOAP

47 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Issue 7: Scan Your Stuff Before Someone Else Does

48 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Web Services Assessment  Test Vectors  Test covert channels  CData tunneling  Inject commands/data into XML request  Test for XDoS  Large payloads  Large amount of requests  Test Content  Test correct operations in unexpected order  Test request and response  Send attachments  Diffferent encoding & SOAP formats  Host assessment  Scan for directories containing files, extensions that allow attacker to footprint system  Scan host for any other services  More ideas  CAPEC http://capec.mitre.org  Vulnerability assessment tools  iSec http://www.isecpartners.com/tools.htmlhttp://www.isecpartners.com/tools.html  NetSquare http://net-square.com/ns_freetools.shtmlhttp://net-square.com/ns_freetools.shtml  OWASP - WebScarab (www.owasp.org)

49 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Static Analysis  Raise the floor  Increase coverage - most security tools don’t scale, static analysis does  Focus  Make easy stuff, easy  Ensure you spin the big flywheels on the hard stuff

50 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

51 Issue 8: Implement an XML Security Gateway

52 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007  Context: The primary goal of Web services is to solve interoperability and integration problems. Web services traverse multiple technologies and runtimes.  Problem: Web service requesters and providers do not agree upon binary runtimes like J2EE, instead they agree upon service contracts, message exchange patterns, and schema. Service and message level authentication, authorization, and auditing services for Web services are not delivered by a single container, rather these services must span technical and organizational boundaries

53 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007  Solution: Use a XML Security Gateway to provide decentralized security services for Web services

54 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Test getCustomerDetails V6pRhOSnrvS8xT+WXIbNvlrOhVkAUMVI4YZ27KfG/jDLMwSbrsD6E3tA40 rI6naL U+gt2OsYr58rD+AILpxNk0uxZMWdLcj3zr0gljt339DvYL6MRJBZ3KvpDmrw16PM w8Wo7ac1tGcLFVW5PV5locPs+f0V+rOGHafYTGGlubQ= … 1234

55 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

56 Choosing a XSG  OWASP XML Security Gateway Evaluation Criteria Project  * Create evaluation criteria supporting a transparent, level playing field for XML Security Gateway solutions to define their solution's key value proposition  * Where practical, attempt to standardize nomenclature and metrics  * Educate the community on the design considerations for XML security

57 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Choosing a XSG (cont.)  OWASP XML Security Gateway Evaluation Criteria Project  Section 1 - Authentication  Section 2 - Authorization  Section 3 - Audit Logging  Section 4 - Deployment Architecture  Section 5 - Content Validation  Section 6 - Management & Metrics  Section 7 - Transformation  Section 8 - Tools

58 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 ThreatDescriptionCountermeasure Spoofing spoofing the identity of a web services requester or provider XML-Sig Tampering tampering with information, such as the contents of the SOAP body XML-Sig Repudiation repudiate the receipt or origination of a transaction XML-Sig Information Disclosure Disclose sensitive informationXML-Enc Denial of ServiceDisrupt correct operationXSG Elevation of Privilege attacker gains privileges, such as root XSG, Input validation

59 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Issue 9: Identity Enablement in Web Services

60 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 WS-Trust: Beyond Point to Point WS-Trust Defines a Security Token Server (STS) Create security tokens Validate security tokens

61 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Claims - Mr. Newton meet Mr. Einstein OED - “An assertion of the truth of something, typically one which is disputed or in doubt.”

62 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

63

64

65

66 Bringing it all together - DigitalMe & Bandit Project http://www.bandit-project.org/index.php/Digital_Me

67 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 DigitalMe  Enable integration with InfoCard-compatible web sites and services.  User selects card to assert credentials (instead of typing in username/password)  The credentials and required claims are bundled into a request that is signed and sent to the STS.  The STS extracts information from the token request, authenticates the user via the IDP, and retrieves the requested claim values. The response is bundled into a message that is signed by the STS and returned to the identity selector.  The identity selector passes the token returned by the STS to the relying party site.  The relying party site verifies that the token is issued by a trusted STS and that the token is valid (signature is good, token hasn't expired, etc.).  Claim values are extracted from the token by the relying party and are used to complete the transaction.  http://www.bandit-project.org/index.php/Digital_Me

68 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Passwords are tired

69 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Cards are wired

70 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

71

72

73

74

75

76

77

78 Issue 10: Security is a Service

79 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007 Security Goals

80 OWASP & WASC AppSec 2007 Conference – San Jose – Nov 2007

81 Virtualization, Reuse, Interoperability  Virtualization  Deploy and deliver security in decentralized and distributed systems  Reusable Security Services  Authentication  Extend reach of authentication technologies, for example 2FA –Federation –WS-Security SAML  Auditing  Decentralized point for access control auditin  Interoperable Policy  Authorization  Consistent authorization policy enforcement –XACML, SAML  Standards  Rely on open standards instead of proprietary mechanisms


Download ppt "Copyright © 2007 - The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike."

Similar presentations


Ads by Google