Security Issues in Web Programming. Robert M. Dondero, Ph.D. Princeton University

Size: px
Start display at page:

Download "Security Issues in Web Programming. Robert M. Dondero, Ph.D. Princeton University"

Transcription

1 Security Issues in Web Programming Robert M. Dondero, Ph.D. Princeton University 1

2 Objectives You will learn about: Authentication and authorization Secure storage of usernames and passwords Secure data transmission In: Python CGI Web programming Java CGI Web programming PHP Web programming 2

3 Part 1: Authentication and Authorization 3

4 A&A Definitions Authentication Is the user authentic? Is the user who he/she says he/she is? Authorization Does the user have proper authority? Does the user have permission to use the application in the manner he/she has requested? 4

5 Authorization Approaches Approaches to authorization Application specific Typically: Use database table(s) User login ids permission to use each facet of application (We will not discuss further) 5

6 Authentication Approaches Three approaches to authentication: (1) "Do it yourself" authentication (2) Basic access authentication (3) Central Authentication System (CAS) Let's consider one at a time... 6

7 (1) "Do It Yourself" Authentication Demo PennypackPythonAuth app Demo PennypackJavaAuth app Demo PennypackPhpAuth app 7

8 "Do It Yourself" Authentication Browser <a href="searchform.cgi/php"> Web Server (and CGI program) Calls authenticate() Valid username/password in form or cookies? No! 8

9 "Do It Yourself" Authentication Browser Login page <form action="searchform.cgi"> <input type="text" name="username"> <input type="password" name="password">... Username/password in form Web Server (and CGI program) Calls authenticate() Valid username/password in form or cookies? Yes! In form. Set username/password cookies 9

10 "Do It Yourself" Authentication Browser Search form page <form action="searchresults.cgi">... Browser retains cookies Username/password in cookies Web Server (and CGI program) Calls authenticate() Valid username/password in form or cookies? Yes! In cookies. Continue as usual 10

11 PennypackPythonAuth App See PennypackPythonAuth application book.py, database.py, common.py index.html searchform.cgi, searchform.py searchresults.cgi, searchresults.py auth.py 11

12 PennypackJavaAuth App See PennypackJavaAuth application Book.java, Database.java, Common.java index.html searchform.cgi, SearchForm.java searchresults.cgi, SearchResults.java Cgi.java Auth.java 12

13 PennypackPhpAuth App See PennypackPhpAuth application book.php, database.php, header.php, footer.php index.html searchform.php searchresults.php auth.php login.php 13

14 "Do It Yourself" Auth: Logout App can provide "logout" link or form Commands browser to: Destroy the username/password cookie Set username/password to incorrect values 14

15 "Do It Yourself" Auth Assessment Pros: Simple Works with any browser and web server Can implement logout Cons: Must write yourself! Widely used 15

16 (2) Basic Access Authentication Wikipedia: "The basic access authentication is a method designed to allow a web browser, or other client program, to provide credentials in the form of a user name and password when making a request." Demo PennypackPythonAuthBasic app Demo PennypackJavaAuthBasic app Demo PennypackPhpAuthBasic app 16

17 CGI Basic Access Authentication Browser <a href="searchform.cgi"> GET /~rdondero/cos333/pennypackpythonauthbasic/searchform.cgi HTTP/1.1 Host: <Blank line> Web Server Calls authenticate() searchform.cgi Valid username/password in HTTP_AUTHORIZATION env var? No! WWW-Authenticate: Basic realm="log into Pennypack.com." Status: 401 Unauthorized access Content-type: Text/plain Web Server WWW-Authenticate: Basic realm="log into Pennypack.com." Status: 401 Unauthorized access Content-type: Text/plain 17

18 CGI Basic Access Authentication Browser Displays dialog box, collects username (rdondero) and password (xxx) Retains rdondero:xxx GET /~rdondero/cos333/pennypackpythonauthbasic/searchform.cgi HTTP/1.1 Host: Authorization: Basic rdondero:xxx Base64 encoded <Blank line> Web Server Sets HTTP_AUTHORIZATION="Basic rdondero:xxx" HTTP_AUTHORIZATION env var searchform.cgi Calls authenticate() Gets HTTP_AUTHORIZATION env var Is "rdondero:xxx" valid? Yes! Web Server 18

19 CGI Basic Access Authentication Browser Search form page <form action="searchresults.cgi">... Browser retains rdondero:xxx Base64 encoded GET /~rdondero/cos333/pennypackpython1/searchresults.cgi HTTP/1.1 Host: Authorization: Basic rdondero:xxx <Blank line> Web Server Sets HTTP_AUTHORIZATION="Basic rdondero:xxx" HTTP_AUTHORIZATION env var searchresults.cgi Calls authenticate() Gets HTTP_AUTHORIZATION env var Is "rdondero:xxx" valid? Yes! Continue as usual 19

20 PennypackPythonAuthBasic App See PennypackPythonAuthBasic book.py, database.py, common.py index.html searchform.cgi, searchform.py searchresults.cgi, searchresults.py auth.py 20

21 PennypackJavaAuthBasic App See PennypackJavaAuthBasic book.php, database.php, header.php, footer.php index.html searchform.cgi, SearchForm.java searchresults.cgi, SearchResults.java Cgi.java Auth.java 21

22 Apache and CGI Basic Web Auth CGI apps must create.htaccess file RewriteEngine on RewriteRule.* - [env=http_authorization:%{ Specific to Apache web server Contains "rewrite rule" Commands web server to pass HTTP_AUTHORIZATION env var to CGI pgm 22

23 PHP Basic Access Authentication Browser <a href="searchform.php"> GET /~rdondero/cos333/pennypackphpauthbasic/searchform.php HTTP/1.1 Host: <Blank line> Web Server Require_once authenticate() $_SERVER["PHP_AUTH_USER"] and $_SERVER["PHP_AUTH_PW"] valid? No! WWW-Authenticate: Basic realm="log into Pennypack.com." Status: 401 Unauthorized access Content-type: Text/plain 23

24 PHP Basic Access Authentication Browser Displays dialog box, collects username (rdondero) and password (xxx) Retains rdondero:xxx GET ~rdondero/cos333/pennypackphpauthbasic/searchform.cgi HTTP/1.1 Host: Authorization: Basic rdondero:xxx Base64 encoded <Blank line> Web Server Require_once authenticate() $_SERVER["PHP_AUTH_USER"] and $_SERVER["PHP_AUTH_PW"]) valid? Yes! 24

25 PHP Basic Access Authentication Browser Search form page <form action="searchresults.php">... Retains rdondero:xxx GET /~rdondero/cos333/pennypackphpauthbasid/searchresults.php HTTP/1.1 Host: Authorization: Basic rdondero:xxx Base64 encoded <Blank line> Web Server Require_once authenticate() $_SERVER["PHP_AUTH_USER"] and $_SERVER["PHP_AUTH_PW"]) valid? Yes! Continue as usual 25

26 PennypackPhpAuthBasic App See PennypackPhpAuthBasic application book.php, database.php, header.php, footer.php index.html searchform.php searchresults.php auth.php 26

27 Aside: Base64 Encoding Question: How to represent arbitrary bit sequence using only 64 characters? A-Z (26) a-z (26) 0-9 (10) + (1) / (1) Answer: Base64 encoding uses to represent images, etc. 27

28 Aside: Base64 Encoding Could be any arbitrary bit pattern From Wikipedia 28

29 Aside: Base64 Encoding From Wikipedia 29

30 Basic Access Auth: Logout Limitation of basic access authentication... Browser retains authentication info until: Browser is closed User clears "active logins" history No way for Web server to command browser to discard authentication info No way for app to implement "logout" 30

31 Basic Access Auth: Assessment Pros Less code Less work for application programmer Works with any browser/web server Cons Less control No logout Frequently used by small private websites Rarely used by large public websites 31

32 Basic Access Auth: Alternative Incidentally... Can let the Web server and browser do all the work... 32

33 Basic Access Auth: Alternative.htaccess File RewriteEngine on RewriteRule.* - [env=http_authorization:%{ AuthUserFile /u/rdondero/public_html/cos333/pennypackpythonauthapache/.htpasswd AuthType Basic AuthName "Please login to Pennypack" Require valid-user Informs web server to: Use basic access authentication Find usernames and passwords in file.htpasswd 33

34 Basic Access Auth: Alternative.htpasswd File rdondero:ryo7czqcz5wva cos217:ncjw.2c0vbz8. Contains usernames and encrypted passwords Created automatically by the commands htpasswd -c.htpasswd rdondero htpasswd.htpasswd cos217 htpasswd command is available on penguins 34

35 Basic Access Auth: Alternative Pros: Simple No work for application programmer Cons: Specific to Apache web server How to manage usernames and passwords? Apache has plug-in modules to allow usernames and passwords to reside in DB 35

36 (3) CAS Authentication Wikipedia: "The Central Authentication Service (CAS) is a single sign-on protocol for the web Its purpose is to permit a user to access multiple applications while providing their credentials (such as userid and password) only once. It also allows web applications to authenticate users without gaining access to a user's security credentials, such as a password." 36

37 CAS Authentication Demo PennypackPythonAuthCas app Demo PennypackJavaAuthCas app Demo PennypackPhpAuthCas app 37

38 CAS Authentication Question: How does it work? Answer: Beyond the scope of the course See if interested Question: How do I use it in my apps? Answer:...

39 PennypackPythonAuthCas App See PennypackPythonAuthCas application book.py, database.py, common.py index.html searchform.cgi, searchform.py searchresults.cgi, searchresults.py CASClient.py Written by Brian Kernighan, translated from PHP version written by Scott Karlin and Alex Halderman 39

40 PennypackJavaAuthCas App See PennypackJavaAuthCas application book.php, database.php, header.php, footer.php index.html searchform.cgi, SearchForm.java searchresults.cgi, SearchResults.java Cgi.java CASClient.java Written by Dondero, translated from CASClient.py 40

41 PennypackPhpAuthCas App See PennypackPhpAuthCas application book.php, database.php, header.php, footer.php index.html searchform.php searchresults.php CASClient.php Written by Scott Karlin and Alex Halderman, with small edits by Dondero 41

42 CAS Authentication Assessment Pros Application need not manage usernames or passwords Application cannot access passwords! Cons Suppose you want to make your application available to the Princeton community, and only that community Can't ask for passwords!!! Complex Adds overhead 42

43 Part 2: Secure Storage of Usernames and Passwords 43

44 Storing Usernames & Passwords Problem: How to store usernames/passwords securely? I.e., How to store usernames/passwords (in DB) such that attackers cannot steal them? 44

45 One-Way Functions Insight: Maybe you don't need to store the usernames or passwords! Maybe it's sufficient to know whether a given username and password are correct! Solution: One-way function storedusername = onewayfunction(username) storedpassword = onewayfunction(password) 45

46 Example One-Way Function Example: md5() hash function Given string, generates integer Given integer, cannot generate string Given same string, generates same integer May generate same integer for two distinct strings, but improbable Given username/password, can determine (to high degree of probability) that they are valid Attacker sees storedusername/storedpassword => attacker doesn't know username/password 46

47 The Need for Salting Problem: One-way function approach is susceptible to a brute force attack... Given md5 sum, attacker could search (malevolent) DB of known md5 sums for username/password 47

48 Salting Solution: salting "Salt" the username/password with some extra application-specific text Example: storedusername = md5('!@#' + username + '$%^') storedpassword = md5('&*(' + password + ')_+') 48

49 Salting Note: Given username/password, can verify (to a high degree of certainty) that they are correct One-way function: Attacker sees storedusername/storedpassword => doesn't know username/password Salting: Attacker finds md5 sum in malevolent DB => still doesn't know username/password Attacker also must see salting code 49

50 Part 3: Secure Data Transmission 50

51 The Problem Problem: Bob wants to send message to Alice Bob wants message to be secure Solution... Unintelligible to eavesdroppers 51

52 Secret Key Encryption msg Bob encode(key) msgencodedusingkey msgencodedusingkey Alice decode(key) msg (1) Alice sends key to Bob (2) Bob encodes msg using key (3) Alice decodes msg using key 52

53 Problem Eavesdropping attack When Alice sends key to Bob, Hacker eavesdrops Hacker knows key When Bob sends encoded msg to Alice, Hacker eavesdrops Solution... Hacker decodes msg 53

54 Public Key Encryption msg Bob encode(alicespublickey) msgencodedusingalicespublickey Can't decode w/o Alice's private key -- See Computers Limited by David Harel msgencodedusingalicespublickey Alice decode(alicesprivatekey) msg (1) Alice sends her public key to Bob (2) Bob encodes msg using Alice's public key (3) Alice decodes msg using her private key 54

55 Problem Authentication How can Alice know that msg really is from Bob? Previously: user authentication How can app authenticate user? How does amazon.com know that I'm who I say? Solution: usernames and passwords Now: process authentication Solution... How can client & server processes authenticate themselves? How do I know that I'm really communicating with amazon.com? 55

56 Public Key Encryption with Auth msg Bob decode(bobsprivatekey) msgdecodedusingbobsprivatekey encode(alicespublickey) msgdecodedusingbobsprivatekeyandencodedusingalicespublickey msgdecodedusingbobsprivatekeyandencodedusingalicespublickey decode(alicesprivatekey) Alice msgdecodedusingbobsprivatekey encode(bobspublickey) msg (1) Alice sends her public key to Bob (2) Bob sends his public key to Alice (3) Bob decodes and encodes (4) Alice decodes and encodes 56

57 Problem Man-in-the-middle attack When Bob sends public key to Alice, Hacker intercepts Hacker replaces Bob's public key with Hacker's public key Alice stores Hacker's public key Later, Hacker sends message to Alice using Hacker's public key Solution... Alice thinks message is from Bob 57

58 Certificates Bob & Alice store their public keys ("certificates") with a certification authority E.g. Verisign Costs money!!! Bob retrieves Alice's public key from certification authority (not from Alice) Alice retrieves Bob's public key from certification authority (not from Bob) Still not perfect, but harder for Hacker to "get between" Bob & Alice 58

59 Certificates In practice: Certificates often used by client (browser) to authenticate server (web server) Certificates rarely used by server (web server) to authenticate client (browser) Would require browser user to create certificate and store it with certification authority Costs money! 59

60 TLS TLS (Transport Layer Security) Based upon earlier SSL (Secure Sockets Layer) Operates on top of TCP Provides public key encryption & authentication with certificates to HTTP 60

61 HTTPS HTTPS (Hypertext Transfer Protocol Secure) HTTP + TLS Provides public key encryption & authentication with certificates to Web applications 61

62 Using HTTPS Assumptions Administrators have configured Web server for HTTPS Generated public keys Paid money to store with certification authority Etc. Using Apache Web server 62

63 Using HTTPS HTTPS is between browser and web server Your app need not be concerned To tell web server to use HTTPS for your app: Create.htaccess file in app directory Add this line: SSLRequireSSL To tell browser to use HTTPS: is the default port 63

64 PennypackJavaSecure App PennypackJavaSecure App All files identical to PennypackJava3 Add.htaccess file to app directory Try accessing as: PennypackJavaSecure/index.html (yes) 333/PennypackJavaSecure/index.html (yes) 33/PennypackJavaSecure/index.html (no) ennypackjavasecure/index.html (no!!!) 64

65 Problem Session hijacking Some websites use HTTPS for initial login, and not thereafter Hacker can eavesdrop on transmission of session id cookies Hacker can "hijack" a user's session!!! Solution Websites should use HTTPS throughout and tolerate slightly worse performance 65

66 Firesheep Firesheep Makes the problem extremely visible Even to non-tech Web users Firefox browser plug-in See demo at: For Windows and Mac; not yet Linux 66

67 Summary We have covered: Authentication and authorization Secure storage of usernames and passwords Secure data transmission In: Python CGI Web programming Java CGI Web programming PHP Web programming 67

Programming the Web Server. Robert M. Dondero, Ph.D. Princeton University

Programming the Web Server. Robert M. Dondero, Ph.D. Princeton University Programming the Web Server Robert M. Dondero, Ph.D. Princeton University 1 Objectives You will learn: How to "program the web server" using... PHP JSP 2 Previously CGI Programming Browser Socket HTTP Web

More information

Apache & Virtual Hosts & mod_rewrite

Apache & Virtual Hosts & mod_rewrite Apache & Virtual Hosts & mod_rewrite Jonathan Brewer Network Startup Resource Center jon@nsrc.org These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International license

More information

Kerberos and Single Sign-On with HTTP

Kerberos and Single Sign-On with HTTP Kerberos and Single Sign-On with HTTP Joe Orton Red Hat Introduction The Problem Current Solutions Future Solutions Conclusion Overview Introduction WebDAV: common complaint of poor support for authentication

More information

Web Programming. Robert M. Dondero, Ph.D. Princeton University

Web Programming. Robert M. Dondero, Ph.D. Princeton University Web Programming Robert M. Dondero, Ph.D. Princeton University 1 Objectives You will learn: The fundamentals of web programming... The hypertext markup language (HTML) Uniform resource locators (URLs) The

More information

How to break in. Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering

How to break in. Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering How to break in Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering Time Agenda Agenda Item 9:30 10:00 Introduction 10:00 10:45 Web Application Penetration

More information

Transport Layer Security Protocols

Transport Layer Security Protocols SSL/TLS 1 Transport Layer Security Protocols Secure Socket Layer (SSL) Originally designed to by Netscape to secure HTTP Version 2 is being replaced by version 3 Subsequently became Internet Standard known

More information

CTS2134 Introduction to Networking. Module 8.4 8.7 Network Security

CTS2134 Introduction to Networking. Module 8.4 8.7 Network Security CTS2134 Introduction to Networking Module 8.4 8.7 Network Security Switch Security: VLANs A virtual LAN (VLAN) is a logical grouping of computers based on a switch port. VLAN membership is configured by

More information

Web Security (SSL) Tecniche di Sicurezza dei Sistemi 1

Web Security (SSL) Tecniche di Sicurezza dei Sistemi 1 Web Security (SSL) Tecniche di Sicurezza dei Sistemi 1 How the Web Works - HTTP Hypertext transfer protocol (http). Clients request documents (or scripts) through URL. Server response with documents. Documents

More information

Lecture 11 Web Application Security (part 1)

Lecture 11 Web Application Security (part 1) Lecture 11 Web Application Security (part 1) Computer and Network Security 4th of January 2016 Computer Science and Engineering Department CSE Dep, ACS, UPB Lecture 11, Web Application Security (part 1)

More information

Guide to Web Hosting in CIS. Contents. Information for website administrators. ITEE IT Support

Guide to Web Hosting in CIS. Contents. Information for website administrators. ITEE IT Support Contents CIS Web Environment... 2 Cis-web... 2 Cis-content... 2 MySQL... 3 Applying for web hosting... 3 Frequently Asked Questions... 4 Code Snippets... 6 LDAP authentication... 6 1 BN : June 2010 CIS

More information

Using Foundstone CookieDigger to Analyze Web Session Management

Using Foundstone CookieDigger to Analyze Web Session Management Using Foundstone CookieDigger to Analyze Web Session Management Foundstone Professional Services May 2005 Web Session Management Managing web sessions has become a critical component of secure coding techniques.

More information

Kerberos and Single Sign On with HTTP

Kerberos and Single Sign On with HTTP Kerberos and Single Sign On with HTTP Joe Orton Senior Software Engineer, Red Hat Overview Introduction The Problem Current Solutions Future Solutions Conclusion Introduction WebDAV: common complaint of

More information

Configuring Single Sign-on for WebVPN

Configuring Single Sign-on for WebVPN CHAPTER 8 This chapter presents example procedures for configuring SSO for WebVPN users. It includes the following sections: Using Single Sign-on with WebVPN, page 8-1 Configuring SSO Authentication Using

More information

Important information for all POP users

Important information for all POP users Important information for all POP users To improve network security BIDMC is implementing a policy whereby all POP and IMAP e-mail clients must use SSL (Secure Sockets Layer). SSL encrypts communications

More information

Is Drupal secure? A high-level perspective on web vulnerabilities, Drupal s solutions, and how to maintain site security

Is Drupal secure? A high-level perspective on web vulnerabilities, Drupal s solutions, and how to maintain site security Is Drupal secure? A high-level perspective on web vulnerabilities, Drupal s solutions, and how to maintain site security Presented 2009-05-29 by David Strauss Thinking Securely Security is a process, not

More information

NETWORK SECURITY: How do servers store passwords?

NETWORK SECURITY: How do servers store passwords? NETWORK SECURITY: How do servers store passwords? Servers avoid storing the passwords in plaintext on their servers to avoid possible intruders to gain all their users passwords. A hash of each password

More information

WHITE PAPER AUGUST 2014. Preventing Security Breaches by Eliminating the Need to Transmit and Store Passwords

WHITE PAPER AUGUST 2014. Preventing Security Breaches by Eliminating the Need to Transmit and Store Passwords WHITE PAPER AUGUST 2014 Preventing Security Breaches by Eliminating the Need to Transmit and Store Passwords 2 WHITE PAPER: PREVENTING SECURITY BREACHES Table of Contents on t Become the Next Headline

More information

Secure Transfers. Contents. SSL-Based Services: HTTPS and FTPS 2. Generating A Certificate 2. Creating A Self-Signed Certificate 3

Secure Transfers. Contents. SSL-Based Services: HTTPS and FTPS 2. Generating A Certificate 2. Creating A Self-Signed Certificate 3 Contents SSL-Based Services: HTTPS and FTPS 2 Generating A Certificate 2 Creating A Self-Signed Certificate 3 Obtaining A Signed Certificate 4 Enabling Secure Services 5 A Note About Ports 5 Connecting

More information

Computer Systems Security 2013/2014. Single Sign-On. Bruno Maia ei09095@fe.up.pt. Pedro Borges ei09063@fe.up.pt

Computer Systems Security 2013/2014. Single Sign-On. Bruno Maia ei09095@fe.up.pt. Pedro Borges ei09063@fe.up.pt Computer Systems Security 2013/2014 Single Sign-On Bruno Maia ei09095@fe.up.pt Pedro Borges ei09063@fe.up.pt December 13, 2013 Contents 1 Introduction 2 2 Explanation of SSO systems 2 2.1 OpenID.................................

More information

Cyber Security Workshop Ethical Web Hacking

Cyber Security Workshop Ethical Web Hacking Cyber Security Workshop Ethical Web Hacking May 2015 Setting up WebGoat and Burp Suite Hacking Challenges in WebGoat Concepts in Web Technologies and Ethical Hacking 1 P a g e Downloading WebGoat and Burp

More information

AAI for Mobile Apps How mobile Apps can use SAML Authentication and Attributes. Lukas Hämmerle lukas.haemmerle@switch.ch

AAI for Mobile Apps How mobile Apps can use SAML Authentication and Attributes. Lukas Hämmerle lukas.haemmerle@switch.ch AAI for Mobile Apps How mobile Apps can use SAML Authentication and Attributes Lukas Hämmerle lukas.haemmerle@switch.ch Berne, 13. August 2014 Introduction App by University of St. Gallen Universities

More information

Recommended readings. Lecture 11 - Securing Web. Applications. Security. Declarative Security

Recommended readings. Lecture 11 - Securing Web. Applications. Security. Declarative Security Recommended readings Lecture 11 Securing Web http://www.theserverside.com/tt/articles/content/tomcats ecurity/tomcatsecurity.pdf http://localhost:8080/tomcat-docs/security-managerhowto.html http://courses.coreservlets.com/course-

More information

SSL Protect your users, start with yourself

SSL Protect your users, start with yourself SSL Protect your users, start with yourself Kulsysmn 14 december 2006 Philip Brusten Overview Introduction Cryptographic algorithms Secure Socket Layer Certificate signing service

More information

What is Web Security? Motivation

What is Web Security? Motivation brucker@inf.ethz.ch http://www.brucker.ch/ Information Security ETH Zürich Zürich, Switzerland Information Security Fundamentals March 23, 2004 The End Users View The Server Providers View What is Web

More information

Using EMC Unisphere in a Web Browsing Environment: Browser and Security Settings to Improve the Experience

Using EMC Unisphere in a Web Browsing Environment: Browser and Security Settings to Improve the Experience Using EMC Unisphere in a Web Browsing Environment: Browser and Security Settings to Improve the Experience Applied Technology Abstract The Web-based approach to system management taken by EMC Unisphere

More information

E-Commerce: Designing And Creating An Online Store

E-Commerce: Designing And Creating An Online Store E-Commerce: Designing And Creating An Online Store Introduction About Steve Green Ministries Solo Performance Artist for 19 Years. Released over 26 Records, Several Kids Movies, and Books. My History With

More information

Alaska Alternate Assessment. Website Security Assurances. June 2015. App3.6_Test_Site_Security

Alaska Alternate Assessment. Website Security Assurances. June 2015. App3.6_Test_Site_Security Alaska Alternate Assessment Website Security Assurances June 2015 App3.6_Test_Site_Security ISSUE 1: Secure access to http://ak.k12test.com The AK website makes use of the cryptographic protocols Transport

More information

Xerox DocuShare Security Features. Security White Paper

Xerox DocuShare Security Features. Security White Paper Xerox DocuShare Security Features Security White Paper Xerox DocuShare Security Features Businesses are increasingly concerned with protecting the security of their networks. Any application added to a

More information

Integration Guide. SafeNet Authentication Service. Oracle Secure Desktop Using SAS RADIUS OTP Authentication

Integration Guide. SafeNet Authentication Service. Oracle Secure Desktop Using SAS RADIUS OTP Authentication SafeNet Authentication Service Integration Guide Oracle Secure Desktop Using SAS RADIUS OTP Authentication Technical Manual Template Release 1.0, PN: 000-000000-000, Rev. A, March 2013, Copyright 2013

More information

Web application security

Web application security Web application security Sebastian Lopienski CERN Computer Security Team openlab and summer lectures 2010 (non-web question) Is this OK? int set_non_root_uid(int uid) { // making sure that uid is not 0

More information

MassTransit 6.0 Enterprise Web Configuration for Macintosh OS 10.5 Server

MassTransit 6.0 Enterprise Web Configuration for Macintosh OS 10.5 Server MassTransit 6.0 Enterprise Web Configuration for Macintosh OS 10.5 Server November 6, 2008 Group Logic, Inc. 1100 North Glebe Road, Suite 800 Arlington, VA 22201 Phone: 703-528-1555 Fax: 703-528-3296 E-mail:

More information

The increasing popularity of mobile devices is rapidly changing how and where we

The increasing popularity of mobile devices is rapidly changing how and where we Mobile Security BACKGROUND The increasing popularity of mobile devices is rapidly changing how and where we consume business related content. Mobile workforce expectations are forcing organizations to

More information

Authentication Methods

Authentication Methods Authentication Methods Overview In addition to the OU Campus-managed authentication system, OU Campus supports LDAP, CAS, and Shibboleth authentication methods. LDAP users can be configured through the

More information

Architecture of Enterprise Applications III Single Sign-On

Architecture of Enterprise Applications III Single Sign-On Architecture of Enterprise Applications III Single Sign-On Haopeng Chen REliable, INtelligent and Scalable Systems Group (REINS) Shanghai Jiao Tong University Shanghai, China e-mail: chen-hp@sjtu.edu.cn

More information

Authenticate and authorize API with Apigility. by Enrico Zimuel (@ezimuel) Software Engineer Apigility and ZF2 Team

Authenticate and authorize API with Apigility. by Enrico Zimuel (@ezimuel) Software Engineer Apigility and ZF2 Team Authenticate and authorize API with Apigility by Enrico Zimuel (@ezimuel) Software Engineer Apigility and ZF2 Team About me Enrico Zimuel (@ezimuel) Software Engineer since 1996 PHP Engineer at Zend Technologies

More information

How to Configure Captive Portal

How to Configure Captive Portal How to Configure Captive Portal Captive portal is one of the user identification methods available on the Palo Alto Networks firewall. Unknown users sending HTTP or HTTPS 1 traffic will be authenticated,

More information

Is your data safe out there? -A white Paper on Online Security

Is your data safe out there? -A white Paper on Online Security Is your data safe out there? -A white Paper on Online Security Introduction: People should be concerned of sending critical data over the internet, because the internet is a whole new world that connects

More information

Apache Security with SSL Using Ubuntu

Apache Security with SSL Using Ubuntu Apache Security with SSL Using Ubuntu These materials are licensed under the Creative Commons Attribution-Noncommercial 3.0 Unported license (http://creativecommons.org/licenses/by-nc/3.0/) Some SSL background

More information

Security: Focus of Control. Authentication

Security: Focus of Control. Authentication Security: Focus of Control Three approaches for protection against security threats a) Protection against invalid operations b) Protection against unauthorized invocations c) Protection against unauthorized

More information

HTTP Mutual authentication and Web security

HTTP Mutual authentication and Web security HTTP Mutual authentication and Web security Yutaka OIWA SAAG, IETF 80 Prague Web security Its importance no need to say Transaction security (credit card, PayPal etc.) User data privacy Most online consumer

More information

SecuritySpy Setting Up SecuritySpy Over SSL

SecuritySpy Setting Up SecuritySpy Over SSL SecuritySpy Setting Up SecuritySpy Over SSL Secure Sockets Layer (SSL) is a cryptographic protocol that provides secure communications on the internet. It uses two keys to encrypt data: a public key and

More information

Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173

Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173 Security & Privacy on the WWW Briefing for CS4173 Topic Outline 1. Information Security Relationship to safety Definition of important terms Where breaches can occur Web techniques Components of security

More information

Chapter 7 Transport-Level Security

Chapter 7 Transport-Level Security Cryptography and Network Security Chapter 7 Transport-Level Security Lectured by Nguyễn Đức Thái Outline Web Security Issues Security Socket Layer (SSL) Transport Layer Security (TLS) HTTPS Secure Shell

More information

External Authentication with WebCT. What We ll Discuss

External Authentication with WebCT. What We ll Discuss External Authentication with WebCT WebCT, Inc http://www.webct.com/ What We ll Discuss Introductions Terminology Authentication in WebCT External Authentication Custom Authentication Authorization in WebCT

More information

Network-Enabled Devices, AOS v.5.x.x. Content and Purpose of This Guide...1 User Management...2 Types of user accounts2

Network-Enabled Devices, AOS v.5.x.x. Content and Purpose of This Guide...1 User Management...2 Types of user accounts2 Contents Introduction--1 Content and Purpose of This Guide...........................1 User Management.........................................2 Types of user accounts2 Security--3 Security Features.........................................3

More information

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace Lab Exercise SSL/TLS Objective To observe SSL/TLS (Secure Sockets Layer / Transport Layer Security) in action. SSL/TLS is used to secure TCP connections, and it is widely used as part of the secure web:

More information

Experian Secure Transport Service

Experian Secure Transport Service Experian Secure Transport Service Secure Transport Overview In an effort to provide higher levels of data protection and standardize our file transfer processes, Experian will be utilizing the Secure Transport

More information

Last update: February 23, 2004

Last update: February 23, 2004 Last update: February 23, 2004 Web Security Glossary The Web Security Glossary is an alphabetical index of terms and terminology relating to web application security. The purpose of the Glossary is to

More information

Single Sign-On for the UQ Web

Single Sign-On for the UQ Web Single Sign-On for the UQ Web David Gwynne Infrastructure Architect, ITIG, EAIT Taxonomy Authentication - Verification that someone is who they claim to be - ie, only the relevant user

More information

Common security requirements Basic security tools. Example. Secret-key cryptography Public-key cryptography. Online shopping with Amazon

Common security requirements Basic security tools. Example. Secret-key cryptography Public-key cryptography. Online shopping with Amazon 1 Common security requirements Basic security tools Secret-key cryptography Public-key cryptography Example Online shopping with Amazon 2 Alice credit card # is xxxx Internet What could the hacker possibly

More information

Server Security. Contents. Is Rumpus Secure? 2. Use Care When Creating User Accounts 2. Managing Passwords 3. Watch Out For Aliases 4

Server Security. Contents. Is Rumpus Secure? 2. Use Care When Creating User Accounts 2. Managing Passwords 3. Watch Out For Aliases 4 Contents Is Rumpus Secure? 2 Use Care When Creating User Accounts 2 Managing Passwords 3 Watch Out For Aliases 4 Deploy A Firewall 5 Minimize Running Applications And Processes 5 Manage Physical Access

More information

Check list for web developers

Check list for web developers Check list for web developers Requirement Yes No Remarks 1. Input Validation 1.1) Have you done input validation for all the user inputs using white listing and/or sanitization? 1.2) Does the input validation

More information

Alaska Alternate Assessment. Website Security Assurances

Alaska Alternate Assessment. Website Security Assurances Alaska Alternate Assessment Website Security Assurances November 2010 ISSUE 1: Secure access and access to http://ak.k12test.com (The test training site was unsecure) DRA proposed securing the entire website

More information

You re FREE Guide SSL. (Secure Sockets Layer) webvisions www.webvisions.com +65 6868 1168 sales@webvisions.com

You re FREE Guide SSL. (Secure Sockets Layer) webvisions www.webvisions.com +65 6868 1168 sales@webvisions.com SSL You re FREE Guide to (Secure Sockets Layer) What is a Digital Certificate? SSL Certificates, also known as public key certificates or Digital Certificates, are essential to secure Internet browsing.

More information

Setting Up SSL on IIS6 for MEGA Advisor

Setting Up SSL on IIS6 for MEGA Advisor Setting Up SSL on IIS6 for MEGA Advisor Revised: July 5, 2012 Created: February 1, 2008 Author: Melinda BODROGI CONTENTS Contents... 2 Principle... 3 Requirements... 4 Install the certification authority

More information

SSL/TLS: The Ugly Truth

SSL/TLS: The Ugly Truth SSL/TLS: The Ugly Truth Examining the flaws in SSL/TLS protocols, and the use of certificate authorities. Adrian Hayter CNS Hut 3 Team adrian.hayter@cnsuk.co.uk Contents Introduction to SSL/TLS Cryptography

More information

Tenrox. Single Sign-On (SSO) Setup Guide. January, 2012. 2012 Tenrox. All rights reserved.

Tenrox. Single Sign-On (SSO) Setup Guide. January, 2012. 2012 Tenrox. All rights reserved. Tenrox Single Sign-On (SSO) Setup Guide January, 2012 2012 Tenrox. All rights reserved. About this Guide This guide provides a high-level technical overview of the Tenrox Single Sign-On (SSO) architecture,

More information

Web applications. Web security: web basics. HTTP requests. URLs. GET request. Myrto Arapinis School of Informatics University of Edinburgh

Web applications. Web security: web basics. HTTP requests. URLs. GET request. Myrto Arapinis School of Informatics University of Edinburgh Web applications Web security: web basics Myrto Arapinis School of Informatics University of Edinburgh HTTP March 19, 2015 Client Server Database (HTML, JavaScript) (PHP) (SQL) 1 / 24 2 / 24 URLs HTTP

More information

Application Design and Development

Application Design and Development C H A P T E R9 Application Design and Development Practice Exercises 9.1 What is the main reason why servlets give better performance than programs that use the common gateway interface (CGI), even though

More information

Session Management in Web Applications

Session Management in Web Applications Session Management in Web Applications Author: EUROSEC GmbH Chiffriertechnik & Sicherheit Tel: 06173 / 60850, www.eurosec.com EUROSEC GmbH Chiffriertechnik & Sicherheit, 2005 What is Web-based Session

More information

ERserver. iseries. Securing applications with SSL

ERserver. iseries. Securing applications with SSL ERserver iseries Securing applications with SSL ERserver iseries Securing applications with SSL Copyright International Business Machines Corporation 2000, 2001. All rights reserved. US Government Users

More information

CS5008: Internet Computing

CS5008: Internet Computing CS5008: Internet Computing Lecture 22: Internet Security A. O Riordan, 2009, latest revision 2015 Internet Security When a computer connects to the Internet and begins communicating with others, it is

More information

MadCap Software. Upgrading Guide. Pulse

MadCap Software. Upgrading Guide. Pulse MadCap Software Upgrading Guide Pulse Copyright 2014 MadCap Software. All rights reserved. Information in this document is subject to change without notice. The software described in this document is furnished

More information

By Jan De Clercq. Understanding. and Leveraging SSL-TLS. for Secure Communications

By Jan De Clercq. Understanding. and Leveraging SSL-TLS. for Secure Communications By Jan De Clercq Understanding and Leveraging SSL-TLS for Secure Communications ii Contents Chapter 2: Leveraging SSL/TLS for Secure Web Communications....... 21 Setting Up SSL/TLS on a Web Server..................................

More information

HTTP 1.1 Web Server and Client

HTTP 1.1 Web Server and Client HTTP 1.1 Web Server and Client Finding Feature Information HTTP 1.1 Web Server and Client Last Updated: August 17, 2011 The HTTP 1.1 Web Server and Client feature provides a consistent interface for users

More information

New Single Sign-on Options for IBM Lotus Notes & Domino. 2012 IBM Corporation

New Single Sign-on Options for IBM Lotus Notes & Domino. 2012 IBM Corporation New Single Sign-on Options for IBM Lotus Notes & Domino 2012 IBM Corporation IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole

More information

TG Web. Technical FAQ

TG Web. Technical FAQ TG Web Technical FAQ About this FAQ We encourage you to contact us if. You can't find the information you're looking for. You would like to discuss your specific testing requirements in more detail. You

More information

External Identity and Authentication Providers For Apache HTTP Server

External Identity and Authentication Providers For Apache HTTP Server External Identity and Authentication Providers For Apache HTTP Server Jan Pazdziora Principal Software Engineer Identity Management Engineering, Red Hat 17 th November 2014 Basic Authentication The only

More information

Sophos UTM. Remote Access via PPTP. Configuring UTM and Client

Sophos UTM. Remote Access via PPTP. Configuring UTM and Client Sophos UTM Remote Access via PPTP Configuring UTM and Client Product version: 9.000 Document date: Friday, January 11, 2013 The specifications and information in this document are subject to change without

More information

http://alice.teaparty.wonderland.com:23054/dormouse/bio.htm

http://alice.teaparty.wonderland.com:23054/dormouse/bio.htm Client/Server paradigm As we know, the World Wide Web is accessed thru the use of a Web Browser, more technically known as a Web Client. 1 A Web Client makes requests of a Web Server 2, which is software

More information

Generating a Certificate Signing Request (CSR) from LoadMaster

Generating a Certificate Signing Request (CSR) from LoadMaster SSL Guide From MyKemp Wiki The world of Secure Sockets Layer (SSL) certificates can be a bit confusing, so this document was assembled to help guide users of LoadMasters through the various processes involving

More information

Web Payment Security. A discussion of methods providing secure communication on the Internet. Zhao Huang Shahid Kahn

Web Payment Security. A discussion of methods providing secure communication on the Internet. Zhao Huang Shahid Kahn Web Payment Security A discussion of methods providing secure communication on the Internet Group Members: Peter Heighton Zhao Huang Shahid Kahn 1. Introduction Within this report the methods taken to

More information

One-Time Cookies: Preventing Session Hijacking Attacks with Disposable Credentials

One-Time Cookies: Preventing Session Hijacking Attacks with Disposable Credentials One-Time Cookies: Preventing Session Hijacking Attacks with Disposable Credentials Italo Dacosta, Saurabh Chakradeo, Mustaque Ahamad and Patrick Traynor Converging Infrastructure Security (CISEC) Laboratory

More information

IceWarp Server - SSO (Single Sign-On)

IceWarp Server - SSO (Single Sign-On) IceWarp Server - SSO (Single Sign-On) Probably the most difficult task for me is to explain the new SSO feature of IceWarp Server. The reason for this is that I have only little knowledge about it and

More information

Transition Networks White Paper. Network Security. Why Authentication Matters YOUR NETWORK. OUR CONNECTION.

Transition Networks White Paper. Network Security. Why Authentication Matters YOUR NETWORK. OUR CONNECTION. Transition Networks White Paper Why Authentication Matters YOUR NETWORK. OUR CONNECTION. : Why Authentication Matters For most organizations physical security is a given. Whether it is video surveillance,

More information

Is Your SSL Website and Mobile App Really Secure?

Is Your SSL Website and Mobile App Really Secure? Is Your SSL Website and Mobile App Really Secure? Agenda What is SSL / TLS SSL Vulnerabilities PC/Server Mobile Advice to the Public Hong Kong Computer Emergency Response Team Coordination Centre 香 港 電

More information

Viking VPN Guide Linux/UNIX

Viking VPN Guide Linux/UNIX Viking VPN Guide Linux/UNIX Table Of Contents 1 : VPN Questions answered 2 : Installing the Linux Client 3 : Connecting with the Linux Client 4 : Reporting Problems Version 1.0 : 10/27/2010 Information

More information

FileCloud Security FAQ

FileCloud Security FAQ is currently used by many large organizations including banks, health care organizations, educational institutions and government agencies. Thousands of organizations rely on File- Cloud for their file

More information

Application Security Testing. Generic Test Strategy

Application Security Testing. Generic Test Strategy Application Security Testing Generic Test Strategy Page 2 of 8 Contents 1 Introduction 3 1.1 Purpose: 3 1.2 Application Security Testing: 3 2 Audience 3 3 Test Strategy guidelines 3 3.1 Authentication

More information

SSL... 2 2.1. 3 2.2. 2.2.1. 2.2.2. SSL VPN

SSL... 2 2.1. 3 2.2. 2.2.1. 2.2.2. SSL VPN 1. Introduction... 2 2. Remote Access via SSL... 2 2.1. Configuration of the Astaro Security Gateway... 3 2.2. Configuration of the Remote Client...10 2.2.1. Astaro User Portal: Getting Software and Certificates...10

More information

PowerChute TM Network Shutdown Security Features & Deployment

PowerChute TM Network Shutdown Security Features & Deployment PowerChute TM Network Shutdown Security Features & Deployment By David Grehan, Sarah Jane Hannon ABSTRACT PowerChute TM Network Shutdown (PowerChute) software works in conjunction with the UPS Network

More information

Two Factor Authentication. Software Version (SV) 1.0

Two Factor Authentication. Software Version (SV) 1.0 Two Factor Authentication Software Version (SV) 1.0 Property of: Worldwide Interactive Services, Inc. 5025 South Orange Avenue Orlando, FL 32809 The data contained in this documentation is PROPRIETARY

More information

Adyen Magento extension

Adyen Magento extension Adyen Magento extension User manual Date: Apr 22, 2014 Filename: Adyen Magento Extension V2.0.0.odt Version: 2.0.0 Reference: Adyen Magento Extension V2.0.0 Adyen Magento extension - manual Version control

More information

How to configure your Desktop Computer and Mobile Devices post migrating to Microsoft Office 365

How to configure your Desktop Computer and Mobile Devices post migrating to Microsoft Office 365 How to configure your Desktop Computer and Mobile Devices post migrating to Microsoft Office 365 1 Contents Purpose... 3 Office 365 Mail Connections... 3 Finding IMAP server... 3 Desktop computers... 4

More information

TestTrack. Web Server Admin Guide Version 2015.1.2

TestTrack. Web Server Admin Guide Version 2015.1.2 TestTrack Web Server Admin Guide Version 2015.1.2 Copyrights 2015 Seapine Software, Inc. All rights reserved. Defect Scribe, QA Wizard Pro, Resource Thief, Seapine CM, SoloBug, SoloSubmit, Surround SCM,

More information

Security Protocols/Standards

Security Protocols/Standards Security Protocols/Standards Security Protocols/Standards Security Protocols/Standards How do we actually communicate securely across a hostile network? Provide integrity, confidentiality, authenticity

More information

Setup Guide Access Manager 3.2 SP3

Setup Guide Access Manager 3.2 SP3 Setup Guide Access Manager 3.2 SP3 August 2014 www.netiq.com/documentation Legal Notice THIS DOCUMENT AND THE SOFTWARE DESCRIBED IN THIS DOCUMENT ARE FURNISHED UNDER AND ARE SUBJECT TO THE TERMS OF A LICENSE

More information

600-152 People Data and the Web Forms and CGI CGI. Facilitating interactive web applications

600-152 People Data and the Web Forms and CGI CGI. Facilitating interactive web applications CGI Facilitating interactive web applications Outline In Informatics 1, worksheet 7 says You will learn more about CGI and forms if you enroll in Informatics 2. Now we make good on that promise. First

More information

10gAS SSL / Certificate Based Authentication Configuration

10gAS SSL / Certificate Based Authentication Configuration I. Overview This document covers the processes required to create a self-signed certificate or to import a 3 rd party certificate using the Oracle Certificate Authority. In addition, the steps to configure

More information

Pierce County IT Department GIS Division Xuejin Ruan Dan King

Pierce County IT Department GIS Division Xuejin Ruan Dan King Pierce County IT Department GIS Division Xuejin Ruan Dan King Web Application Work Flow Main Topics Authentication Authorization Session Management * Concurrent Session Management * Session Timeout Single

More information

The Case For Secure Email

The Case For Secure Email The Case For Secure Email By Erik Kangas, PhD, President, Lux Scientiae, Incorporated http://luxsci.com Contents Section 1: Introduction Section 2: How Email Works Section 3: Security Threats to Your Email

More information

Web Application Guidelines

Web Application Guidelines Web Application Guidelines Web applications have become one of the most important topics in the security field. This is for several reasons: It can be simple for anyone to create working code without security

More information

Security IIS Service Lesson 6

Security IIS Service Lesson 6 Security IIS Service Lesson 6 Skills Matrix Technology Skill Objective Domain Objective # Configuring Certificates Configure SSL security 3.6 Assigning Standard and Special NTFS Permissions Enabling and

More information

NeoMail Guide. Neotel (Pty) Ltd

NeoMail Guide. Neotel (Pty) Ltd NeoMail Guide Neotel (Pty) Ltd NeoMail Connect Guide... 1 1. POP and IMAP Client access... 3 2. Outlook Web Access... 4 3. Outlook (IMAP and POP)... 6 4. Outlook 2007... 16 5. Outlook Express... 24 1.

More information

Livezilla How to Install on Shared Hosting http://www.jonathanmanning.com By: Jon Manning

Livezilla How to Install on Shared Hosting http://www.jonathanmanning.com By: Jon Manning Livezilla How to Install on Shared Hosting By: Jon Manning This is an easy to follow tutorial on how to install Livezilla 3.2.0.2 live chat program on a linux shared hosting server using cpanel, linux

More information

Table of Contents. Open-Xchange Authentication & Session Handling. 1.Introduction...3

Table of Contents. Open-Xchange Authentication & Session Handling. 1.Introduction...3 Open-Xchange Authentication & Session Handling Table of Contents 1.Introduction...3 2.System overview/implementation...4 2.1.Overview... 4 2.1.1.Access to IMAP back end services...4 2.1.2.Basic Implementation

More information

3.2: Transport Layer: SSL/TLS Secure Socket Layer (SSL) Transport Layer Security (TLS) Protocol

3.2: Transport Layer: SSL/TLS Secure Socket Layer (SSL) Transport Layer Security (TLS) Protocol Chapter 2: Security Techniques Background Chapter 3: Security on Network and Transport Layer Network Layer: IPSec Transport Layer: SSL/TLS Chapter 4: Security on the Application Layer Chapter 5: Security

More information

Authentication and Single Sign On

Authentication and Single Sign On Contents 1. Introduction 2. Fronter Authentication 2.1 Passwords in Fronter 2.2 Secure Sockets Layer 2.3 Fronter remote authentication 3. External authentication through remote LDAP 3.1 Regular LDAP authentication

More information

Web Application Security Part 1

Web Application Security Part 1 Web Application Security Part 1 Author : Treasure Priyamal Site : www.treasuresec.com E-mail : treasure@treasuresec.com Twitter :http://twitter.com/treasure_sec Introduction Today we are going to talk

More information

Module: Authentication. Professor Trent Jaeger Fall 2010. CSE543 - Introduction to Computer and Network Security

Module: Authentication. Professor Trent Jaeger Fall 2010. CSE543 - Introduction to Computer and Network Security CSE543 - Introduction to Computer and Network Security Module: Authentication Professor Trent Jaeger Fall 2010 1 What is Authentication? Short answer: establishes identity Answers the question: To whom

More information