Presentation is loading. Please wait.

Presentation is loading. Please wait.

Designing Security In Web Applications Andrew Tomkowiak 10/8/2013 UW-Platteville Software Engineering Department

Similar presentations


Presentation on theme: "Designing Security In Web Applications Andrew Tomkowiak 10/8/2013 UW-Platteville Software Engineering Department"— Presentation transcript:

1 Designing Security In Web Applications Andrew Tomkowiak 10/8/2013 UW-Platteville Software Engineering Department tomkowiaka@uwplatt.edu

2 Web Applications I will talk about ways to design a web application to be more secure and some basic guidelines to follow when developing web applications.

3 Web Applications Authenticate Users http applications are stateless Design secure session management mechanisms

4 Vulnerabilities Web Applications  Input Validation  Authentication  Authorization  Configuration Management  Sensitive Data  Session Management  Cryptography  Parameter Manipulation  Exception Management  Auditing and Logging

5 Web Applications These systems need to have a significant amount of time spent on them in the design phase. Why?

6 Web Application  Assume all input is malicious  Centralize your approach  Do not rely on client-side validation  Be careful with canonicalization issues  Constrain, Reject and sanitize your input Input

7 Web Application Validate data for type, length, format and range. Sanitize- Strip excess null characters or spaces etc...

8 Authentication Web Applications  User names and passwords sent over secure channel(SSL)  Credentials stored  Credentials verified  Authentication ticket to verify user after logon(cookie)  Separate public and restricted areas.  Use account lockout policies for end-user accounts.  Support password expiration periods.  Be able to disable accounts.  Do not store passwords in user stores.  Require strong passwords.  Do not send passwords over the wire in plaintext.  Protect authentication cookies

9 Authorization Web Applications  Use multiple gate keepers  Restrict user access to system level resources  Consider authorization granularity  Hybrid model

10 Configuration Management Web Applications  Secure Administration interfaces  Secure your configuration stores  Maintain separate administration privileges  Use least privileged process and service accounts

11 Web Application  Storing secrets  Do not store any keys or passwords in plain text  Retrieve data on demand  Secure the communication between client and server  Do not store data in cookies Sensitive Data

12 Web Application  Use SSL to protect session cookies  Encrypt the contents of the authentication cookies  Limit session lifetime Session Management

13 Web Application  Privacy  Authenticity  Integrity  Authentication Cryptography

14 Web Application  Encrypt cookie state  Make sure that users do not bypass security checks  Validate all values sent from the client  Do not trust http header information Parameter Manipulation

15 Web Application  Don’t give the client unnecessary information  Log detailed error messages  Catch exceptions and handle them  Buffer over flow attacks Exception Management

16 Web Application  Log all key events  Secure log files  Back up and analyze log files  One application to use BIG-IP ASM Logging Events


Download ppt "Designing Security In Web Applications Andrew Tomkowiak 10/8/2013 UW-Platteville Software Engineering Department"

Similar presentations


Ads by Google