Web Security EITF05 Department of Electrical and Information Technology Lund University

Size: px
Start display at page:

Download "Web Security EITF05 Department of Electrical and Information Technology Lund University"

Transcription

1 Final exam in Web Security EITF05 Department of Electrical and Information Technology Lund University October 31 st, 2014, You may answer in either Swedish or English. If any data is lacking, make (and state) reasonable assumptions. Use legible hand writing. If your answers cannot be read, you will receive zero points on that problem. Grading is done as follows. Grade 3 = 2029 points, Grade 4 = 3039 points, Grade 5 = 4050 points. Good luck! Paul & Martin Problem 1. There are two principal ways of implementing sessions in PHP, describe each alternative. State one advantage of each method over the other. Cookies and URL parameters. Not all information about a session can be stored in a cookie or in the URL, so only a session ID is stored. When the web server sees the session ID it can relate this to the seesion information itself, which is stored on the server. The session can continue if the user leaves the website and then later returns. With persistent cookies, even if the browser and/or the computer is shut down, the session can resume when the user visits the website next time. On the other hand, users could choose to turn o use of cookies in the browser. In that case, sessions will not work, while using URL parameters would still work in this case. One drawback with using URL parameters, apart from that the user cannot leave the website, is that URLs can be copied and pasted into e.g., s, forum posts, blogs and social network updates. This opens up for simple session xation attacks. Moreover, the URLs for GET requests are stored in the browser history.

2 Problem 2. Does SSL protect against XSS-attacks? Explain why or why not. No. SSL operates on session level in the OSI model, while script injection is applied on application level. SSL protects transport of content, but it does not look at the content itself. Injected scripts reside in (are part of) the website content that is stored on the server. This content is interpreted by the victims browser after transport. Problem 3. Digest authentication (RFC2617) calculates the digest according to with MD5( MD5(A1) : nonce : nc : cnonce : qop : MD5(A2) ), A1 = username : realm : password, { method : URI if qop = auth, A2 = method : U RI : MD5(entity-body) if qop = auth-int. a) Explain the usage and purpose of the realm parameter. b) Explain the usage and purpose of the nc parameter? c) Explain the usage and purpose of the cnonce parameter? a) A string explaining which password the user is expected to enter. Also used as a salt. b) Nonce counter, starts at 1 and is incremented by one for every request. Prevents replay attacks. c) A nonce that the client chooses. Prevents time-memory tradeo attacks.

3 Problem 4. You will now consider if it is possible for a Base64 string to encode to itself. Let A be the set of all strings composed of 8-bit ASCII characters, and let B be the set of all strings composed of Base64 characters (printable ASCII characters, B A). The Base64 encoding procedure can then be viewed as a mapping f : A B. A string s that satises f(s) = s is called a xed point. Base64 has an innite-length xed point s = V m.... a) Can a string of nite length be a Base64 xed point, why or why not? b) What is the third character of the innite-length xed point s above? c) What is the fourth character of the innite-length xed point s above? Hint: Here are some useful character codes in hex. Character code intervals for A-Z, a-z and 0-9 are contiguous. symbol A Z a z / Base64 0x00 0x19 0x1A 0x33 0x34 0x3D 0x3E 0x3F ASCII 0x41 0x5A 0x61 0x7A 0x30 0x39 0x2B 0x2F a) No. The encoding and decoding procedures do not preserve string length. b) 0 (a zero). c) w.

4 Problem 5. A DKIM signature header of an is given below. DKIM-Signature: v=1; a=rsa-sha256; c=simple/relaxed; d=gmail.com; s=gamma; h=received:message-id:date:from:to:subject:mime-version:content-type; bh=9gicsznlclk7yyh6virgyammrziwssbwqspihc78rrk=; b=k4ofvphpkaqmvusogvhrrncspk+jeuv9kurzo7aiypvf/6y1n2iiatvlvdzwonzx /W6Kxyx6Z4Ybuk8Dqk/vNTIE7Jpy+GQUUHFvM0NFtmZo1CbGRvo8DdHnXRBB/qWw lv+z6wxw/mq7lnujknvproaatlws5mwcz+awl8kwhg0= a) What is the s=gamma part, how is it used? b) How does the client obtain the public key? c) Explain the principle idea of DMARC. a) The selector is the eld that determines which public key should be used to verify the signature. It is used to allow a domain to have several public keys. b) The key is obtained by asking the DNS authoritative for the domain for the key. In this case it is located in a TXT record in the domain gamma._domainkey.gmail.com. c) DMARC combines DKIM and SPF with a feedback system that allows evaluation and tuning of the mail system. Problem 6. Give a regular expression that can be used for illicit mail harvesting. At least the following mail variations should be detected: first.last@domain.com first (dot) last (at) domain (dot) com first followed by a dot followed by last followed by at followed by domain followed by a dot followed by com You may assume that the name parts of the address contain only alphanumerical characters. One possibility is ^[A-Za-z0-9]+<dot>[A-Za-z0-9]+<at>[A-Za-z0-9]+<dot>com$, where <dot>=(\. \(dot\) followed by a dot followed by ) and <at>=(@ \(at\) followed by at followed by ).

5 Problem 7. Consider the following illustration of a DNS rebinding attack. a) Referring to the picture below, explain how an adversary can use DNS rebinding to breach a company rewall. b) Where does DNS pinning t in? a) 0: Victim clicks on a link: 1: Browser queries DNS for IP. DNS returns with TTL=0. 2: Browser fetches page containing malicious script from 3: Browser executes script, which forms XHR for TTL for from step 1 expired, so DNS is queried once more. DNS now returns : The XHR is sent and internal wiki page is received. 5: Internal wiki page is sent (new XHR) to Note that steps 35 are not visible to the victim. Browser is led to believe that internal wiki and are in the same origin, so the same origin policy is not violated, as far as the browser can see. At step 4, the host header of the request will read Host: making the rebinding attack detectable. However, if the wiki server does not implement virtual hosts, it will most likely ignore this host header. b) In steps 1 and 3. DNS pinning is a form of protection against DNS rebinding that is implemented in the browser. Instead of accepting the TTL given by the DNS at step 1, the browser stores the result for, say, TTL + 30 minutes. In the scenario above, step 3 would never be executed, since the browser would use the cached IP address for instead of querying the DNS once more. (2+1 points)

6 Problem 8. Consider Domain Name System Security Extensions (DNSSEC). a) The DS record is used to verify the correctness of the public key in DNSKEY. What does the DS record contain? b) How does DNS amplication relate to DNSSEC? c) How does NSEC3 solve the zone enumeration problem? a) The hashed DNSKEY of a subdomain. b) DNSSEC responses are larger due to the signatures, which can be useful for a DNS amplication attack. c) NSEC sorts (readable) subdomain labels alphabetically and delivers a pair of subdomain labels. NSEC3 sorts (unreadable) hashed subdomain labels and returns a pair of these instead. Problem 9. What is the dierence between rst and third party cookies? Make sure that you explain what a cookie is. Also, explain how third-party cookies can be used for user tracking or advertising. Why is sning an ecient way of retrieving cookies when the client does not use SSL/TLS? A cookie is a text string that a server can send to a browser. The browser will return this cookie with every subsequent request (if protocol, domain and port match) to that server. This is useful for session handling (HTTP is stateless) and user tracking. First party cookies are cookie that are set directly by the site that the user visits. Third party cookies are cookies set by another domain, for example an advertisement provider. The primary page of a site can load resources from third parties; advertisements, images, and so on. The third party can set a cookie with an identier, storing the identier together with the hitherto provided ads in its database. The next time an ad is requested from the same user, the identier can be read from the cookie to provide new and unseen ads on the following visits. The same third party may provide ads on many dierent sites. Cookies are sent in cleartext in an HTTP header, so they are immediately revealed to anyone who can read the data stream.

7 Problem 10. Here is some code that may have been used in the 2014 celebrity photo icloud breach. def TryPass(apple_id,password): url = ' headers = {'User-Agent': 'FindMyiPhone/376 CFNetwork/ Darwin/14.0.0', } <some omitted code> base64string = base64.encodestring('%s:%s' % (apple_id, password)).replace('\n', '') req.add_header("authorization", "Basic %s" % base64string) resp = urllib2.urlopen(req) a) What is a User-Agent? b) Note that Basic HTTP authentication is used together with SSL. Is that a reasonable way of utilizing Basic HTTP authentication, why or why not? c) Is it reasonable to use Digest HTTP authentication together with SSL in the same way, why or why not? a) The software (browser, spider, app,... ) that acts on behalf of the user. Depending on the user-agent string, the server may tailor content to t that particular device. b) Yes. Basic HTTP authentication sends username and password in cleartext, but SSL protects the transport. Note that a hash of the password is stored at the server for comparison, not the password itself. c) No. The server stores MD5(A1), which can be viewed as the password as the entire digest can be calculated from this value. So, anyone with server access can extract the full credentials. This is contrary to Basic HTTP authentication. Another argument against using SSL with Digest HTTP authentication is that the SSL usage consumes server resources (client resources are less important) without providing clear benets. In the other direction, it can be argued that SSL is useful for protecting against a MITM that can replace the digest authentication header with a basic one.

8 Problem 11. Consider a website that stores unsalted MD5-hashed passwords in a database. In an on-line attack, passwords are tested against the fully functional website. If the database (together with its credentials) containing the hashed passwords is stolen, an o-line attack can be performed locally on the attackers computer. Consider the following password attacks: a) On-line brute-force b) O-line brute-force c) Dictionary/TMTO (O-line) Classify the following actions on the website server according to eciency against each password attack. Categorize as {not, somewhat, very} ecient. 1) Setting strict password criteria; minimum 15 symbols, at least one each from [A-Z], [a-z] and [0-9], disallowing the most common passwords, 2) Salting the passwords (unique for each user) 3) Slower hash function 4) A timeout of 3 minutes after 5 failed login attempts 5) Using a CAPTCHA Short answers are accepted according to the table below. s that deviate from this table are also accepted if they are explicitly justied. a b c 1 v/s v/s s/n 2 n v v 3 s s s 4 v n n 5 v n n On-line brute-force: Username/password combinations are tried separately one at a time, and usernames are generally not known. It is necessary to go through the entire password space once for each and every user. O-line brute-force: Usernames are explicitly given in the stolen database, and it is possible to look up all users with a given password hash with one single database query. It is therefore sucient to go through the password space only once in order to nd the passwords of all users. Dictionary/TMTO: A standard MD5 TMTO table or dictionary can be downloaded from the Internet. A dictionary contains password/hash pairs, and you may think of it a being stored in an O(1) lookup hash table for fast retrieval of a password when its hash value is given. 1) Increasing entropy and staying away from "easy" passwords is very ecient in theory, but in practice humans are notoriously bad at choosing high entropy passwords. The dictionary still work for all words it contains that satisfy the criteria, so all users with those passwords will have their password revealed. 2) No eect on-line. O-line, entire password space now needs to be tested for each user separately, increasing complexity linearly in the number of users (can be very large). Dictionary/TMTO does not work at all.

9 3) Assume that the execution time of the hash function h is k (constant factor) times that of MD5. The total time for the on-line attack is then increased by a factor of k. The same argument applies to the o-line case. For dictionary/tmto, if h is a non-standard hash function, then the dictionary/tables need to be recalculated, which will take k times longer than to perform the corresponding work for MD5. If h is a standard hash function, new dictionary/tmto tables can be downloaded from the Internet. The dictionary lookup time is not aected, as the hash function used in the hash table is fast (h is not used here). TMTO lookup time is increased by a factor of k due to usage of h in the chains. 4) Limits password testing to 5 per 3 minutes in the on-line case. No eect o-line or for dictionary/tmto. Timeout functionality is not part of the database itself. 5) Prevents automated on-line password testing (unless CAPTCHAs cen be eciently interpreted). CAPTCHAs are presented in the web interface and checked before the database is queried, so o-line brute-force and dictionary/tmto are not aected. (5 points) Problem 12. The social networking site Myspace was infected by the XSS worm Samy in Myspace used a secret validation token for CSRF protection. This protection was bypassed by the worm in order to send friend requests to its creator as it propagated. a) Explain how CSRF protection with a secret validation token works. b) Explain how XSS can be used to bypass this type of CSRF protection. Hint 1: You may assume that Myspace had unltered input elds. Hint 2: JavaScript can access the entire HTML DOM-tree. a) Several implementation variants of secret validation tokens are possible. Consider a page with a form that the end-user can ll out to submit a request. The server generates a secret validation token (a random number with decent entropy) and stores it in two places: 1. in _SESSION (as variable csrf_token, say), 2. as a hidden eld in the form. When the server receives the request from the user, it checks that the (hidden) eld value and the csrf_token variable are matching. The token value is unknown to the adversary, who cannot construct a valid query. A simplied variant is to reuse the session id instead of generating a new random number. b) An XSS exploit can parse the HTML code and extract the secret validation token from the hidden eld before submitting the request. (2+3 points)

10 Problem 13. Consider a Hashcash solution in which a string is hashed using SHA-1, where ver : bits : date : resource : rand : counter ver is version number (currently 1), bits indicates how costly the function is for sender, date gives current date, resource is recipients address, rand is a random number (separates dierent senders). A spammer wants to send 1000 messages M 1,..., M 1000 to each and every recipient on his very large mailing list, and he plans on including a Hashcash header with each mail. a) How many calls to SHA-1 does it take to generate a Hashcash header with bits = 30? Exactly or on average? b) How many calls to SHA-1 does it take to verify a Hashcash header with bits = 30? Exactly or on average? c) Which values for bits are reasonable for normal Hashcash header usage? d) What prevents the spammer from using the same Hashcash header when sending the message M 1 to all recipients on his mailing list? e) What prevents the spammer from using the same Hashcash header when sending all messages M 1,..., M 1000 to one specic recipient? a) 2 30 times on average. b) Exactly once. c) Too low gives no signicant proof of work. Too high is computationally impractical. About or so seems reasonable for normal usage. d) Recipient's address is included in the hashed string. e) Nothing prevents the spammer from constructing one Hashcash header that is valid for all messages, but the mail client on the user-side typically stores previously used headers so that they cannot be used more than once. (5 points)

11 Problem 14. Briey explain the following terms. a) Nolisting b) File inclusion c) Same-origin policy d) Reduction function e) Cache poisoning a) A spam prevention technique that lists a dummy mail server in the MX record. b) A feature in PHP that allows a programmer to include PHP code stored separately. If inclusion of remote PHP les (located on a dierent server) is allowed, a remote le inclusion attack may be possible. c) Browser-enforced policy that restricts information sharing between web pages. d) A function used for TMTO tables. Maps hash values into password space. e) An attack that aims at injecting erroneous IP addresses into a DNS. (5 points)

Web Security EITF05 Department of Electrical and Information Technology Lund University

Web Security EITF05 Department of Electrical and Information Technology Lund University Final exam in Web Security EITF05 Department of Electrical and Information Technology Lund University October 31 st, 2014, 8.0013.00 You may answer in either Swedish or English. If any data is lacking,

More information

Final exam in. Web Security EITF05. Department of Electrical and Information Technology Lund University

Final exam in. Web Security EITF05. Department of Electrical and Information Technology Lund University Final exam in Web Security EITF05 Department of Electrical and Information Technology Lund University October 22 nd, 2013, 8.00-13.00 You may answer in either Swedish or English. If any data is lacking,

More information

Web Security EITF05 Department of Electrical and Information Technology Lund University

Web Security EITF05 Department of Electrical and Information Technology Lund University Final exam in Web Security EITF05 Department of Electrical and Information Technology Lund University Oct 20, 2010, 14-19 You may answer in either Swedish or English. If any data is lacking, make (and

More information

CS 142 Winter Session Management. Dan Boneh

CS 142 Winter Session Management. Dan Boneh CS 142 Winter 2009 Session Management Dan Boneh Sessions A sequence of requests and responses from one browser to one (or more) sites Session can be long (Gmail - two weeks) or short without session mgmt:

More information

WEB SECURITY: XSS & CSRF

WEB SECURITY: XSS & CSRF WEB SECURITY: XSS & CSRF CMSC 414 FEB 22 2018 Cross-Site Request Forgery (CSRF) URLs with side-effects http://bank.com/transfer.cgi?amt=9999&to=attacker GET requests should have no side-effects, but often

More information

Web Application Security. Philippe Bogaerts

Web Application Security. Philippe Bogaerts Web Application Security Philippe Bogaerts OWASP TOP 10 3 Aim of the OWASP Top 10 educate developers, designers, architects and organizations about the consequences of the most common web application security

More information

CSE361 Web Security. Attacks against the client-side of web applications. Nick Nikiforakis

CSE361 Web Security. Attacks against the client-side of web applications. Nick Nikiforakis CSE361 Web Security Attacks against the client-side of web applications Nick Nikiforakis nick@cs.stonybrook.edu Despite the same origin policy Many things can go wrong at the client-side of a web application

More information

WHY CSRF WORKS. Implicit authentication by Web browsers

WHY CSRF WORKS. Implicit authentication by Web browsers WHY CSRF WORKS To explain the root causes of, and solutions to CSRF attacks, I need to share with you the two broad types of authentication mechanisms used by Web applications: 1. Implicit authentication

More information

How to Configure Authentication and Access Control (AAA)

How to Configure Authentication and Access Control (AAA) How to Configure Authentication and Access Control (AAA) Overview The Barracuda Web Application Firewall provides features to implement user authentication and access control. You can create a virtual

More information

Computer Security 3e. Dieter Gollmann. Chapter 18: 1

Computer Security 3e. Dieter Gollmann.  Chapter 18: 1 Computer Security 3e Dieter Gollmann www.wiley.com/college/gollmann Chapter 18: 1 Chapter 18: Web Security Chapter 18: 2 Web 1.0 browser HTTP request HTML + CSS data web server backend systems Chapter

More information

P2_L12 Web Security Page 1

P2_L12 Web Security Page 1 P2_L12 Web Security Page 1 Reference: Computer Security by Stallings and Brown, Chapter (not specified) The web is an extension of our computing environment, because most of our daily tasks involve interaction

More information

CS 161 Computer Security

CS 161 Computer Security Paxson Spring 2017 CS 161 Computer Security Discussion 4 Week of February 13, 2017 Question 1 Clickjacking (5 min) Watch the following video: https://www.youtube.com/watch?v=sw8ch-m3n8m Question 2 Session

More information

Solution of Exercise Sheet 5

Solution of Exercise Sheet 5 Foundations of Cybersecurity (Winter 16/17) Prof. Dr. Michael Backes CISPA / Saarland University saarland university computer science Solution of Exercise Sheet 5 1 SQL Injection Consider a website foo.com

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Semester 2, 2017 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 9 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2465 1 Assignment

More information

CIS 4360 Secure Computer Systems XSS

CIS 4360 Secure Computer Systems XSS CIS 4360 Secure Computer Systems XSS Professor Qiang Zeng Spring 2017 Some slides are adapted from the web pages by Kallin and Valbuena Previous Class Two important criteria to evaluate an Intrusion Detection

More information

Combating Common Web App Authentication Threats

Combating Common Web App Authentication Threats Security PS Combating Common Web App Authentication Threats Bruce K. Marshall, CISSP, NSA-IAM Senior Security Consultant bmarshall@securityps.com Key Topics Key Presentation Topics Understanding Web App

More information

HTTP Digest Integrity

HTTP Digest Integrity HTTP Digest Integrity Another look, in light of recent attacks Version 1.0 Timothy D. Morgan January 5, 2010 Contents Introduction...1 Overview of HTTP Digest Authentication...1 RFC 2069 Mode...1 auth

More information

CSC 482/582: Computer Security. Cross-Site Security

CSC 482/582: Computer Security. Cross-Site Security Cross-Site Security 8chan xss via html 5 storage ex http://arstechnica.com/security/2015/09/serious- imgur-bug-exploited-to-execute-worm-like-attack-on- 8chan-users/ Topics 1. Same Origin Policy 2. Credential

More information

Lecture Overview. IN5290 Ethical Hacking

Lecture Overview. IN5290 Ethical Hacking Lecture Overview IN5290 Ethical Hacking Lecture 6: Web hacking 2, Cross Site Scripting (XSS), Cross Site Request Forgery (CSRF), Session related attacks Universitetet i Oslo Laszlo Erdödi How to use Burp

More information

Lecture 6: Web hacking 2, Cross Site Scripting (XSS), Cross Site Request Forgery (CSRF), Session related attacks

Lecture 6: Web hacking 2, Cross Site Scripting (XSS), Cross Site Request Forgery (CSRF), Session related attacks IN5290 Ethical Hacking Lecture 6: Web hacking 2, Cross Site Scripting (XSS), Cross Site Request Forgery (CSRF), Session related attacks Universitetet i Oslo Laszlo Erdödi Lecture Overview How to use Burp

More information

This slide shows the OWASP Top 10 Web Application Security Risks of 2017, which is a list of the currently most dangerous web vulnerabilities in

This slide shows the OWASP Top 10 Web Application Security Risks of 2017, which is a list of the currently most dangerous web vulnerabilities in 1 This slide shows the OWASP Top 10 Web Application Security Risks of 2017, which is a list of the currently most dangerous web vulnerabilities in terms of prevalence (how much the vulnerability is widespread),

More information

CNIT 129S: Securing Web Applications. Ch 4: Mapping the Application

CNIT 129S: Securing Web Applications. Ch 4: Mapping the Application CNIT 129S: Securing Web Applications Ch 4: Mapping the Application Mapping Enumerate application's content and functionality Some is hidden, requiring guesswork and luck to discover Examine every aspect

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Web Application Security Dr. Basem Suleiman Service Oriented Computing Group, CSE, UNSW Australia Semester 1, 2016, Week 8 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2442

More information

Robust Defenses for Cross-Site Request Forgery Review

Robust Defenses for Cross-Site Request Forgery Review Robust Defenses for Cross-Site Request Forgery Review Network Security Instructor:Dr. Shishir Nagaraja Submitted By: Jyoti Leeka October 16, 2011 1 Introduction to the topic and the reason for the topic

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Semester 2, 2016 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 9 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2445 1 Assignment

More information

Robust Defenses for Cross-Site Request Forgery

Robust Defenses for Cross-Site Request Forgery Robust Defenses for Cross-Site Request Forgery Tsampanaki Nikoleta Lilitsis Prodromos Gigis Petros Paper Authors: Adam Barth, Collin Jackson, John C. Mitchell Outline What is CSRF attack? What is a login

More information

Presented By Rick Deacon DEFCON 15 August 3-5, 2007

Presented By Rick Deacon DEFCON 15 August 3-5, 2007 Hacking Social Lives: MySpace.com Presented By Rick Deacon DEFCON 15 August 3-5, 2007 A Quick Introduction Full-time IT Specialist at a CPA firm located in Beachwood, OH. Part-time Student at Lorain County

More information

OWASP Thailand. Proxy Caches and Web Application Security. OWASP AppSec Asia October 21, Using the Recent Google Docs 0-Day as an Example

OWASP Thailand. Proxy Caches and Web Application Security. OWASP AppSec Asia October 21, Using the Recent Google Docs 0-Day as an Example Proxy Caches and Web Application Security Using the Recent Google Docs 0-Day as an Example Tim Bass, CISSP Chapter Leader, Thailand +66832975101, tim@unix.com AppSec Asia October 21, 2008 Thailand Worldwide

More information

PROBLEMS IN PRACTICE: THE WEB MICHAEL ROITZSCH

PROBLEMS IN PRACTICE: THE WEB MICHAEL ROITZSCH Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group PROBLEMS IN PRACTICE: THE WEB MICHAEL ROITZSCH THE WEB AS A DISTRIBUTED SYSTEM 2 WEB HACKING SESSION 3 3-TIER persistent

More information

Common Websites Security Issues. Ziv Perry

Common Websites Security Issues. Ziv Perry Common Websites Security Issues Ziv Perry About me Mitnick attack TCP splicing Sql injection Transitive trust XSS Denial of Service DNS Spoofing CSRF Source routing SYN flooding ICMP

More information

Application vulnerabilities and defences

Application vulnerabilities and defences Application vulnerabilities and defences In this lecture We examine the following : SQL injection XSS CSRF SQL injection SQL injection is a basic attack used to either gain unauthorized access to a database

More information

EasyCrypt passes an independent security audit

EasyCrypt passes an independent security audit July 24, 2017 EasyCrypt passes an independent security audit EasyCrypt, a Swiss-based email encryption and privacy service, announced that it has passed an independent security audit. The audit was sponsored

More information

WHITE PAPER. Authentication and Encryption Design

WHITE PAPER. Authentication and Encryption Design WHITE PAPER Authentication and Encryption Design Table of Contents Introduction Applications and Services Account Creation Two-step Verification Authentication Passphrase Management Email Message Encryption

More information

JOE WIPING OUT CSRF

JOE WIPING OUT CSRF JOE ROZNER @JROZNER WIPING OUT CSRF IT S 2017 WHAT IS CSRF? 4 WHEN AN ATTACKER FORCES A VICTIM TO EXECUTE UNWANTED OR UNINTENTIONAL HTTP REQUESTS WHERE DOES CSRF COME FROM? LET S TALK HTTP SAFE VS. UNSAFE

More information

Lecture 17 Browser Security. Stephen Checkoway University of Illinois at Chicago CS 487 Fall 2017 Some slides from Bailey's ECE 422

Lecture 17 Browser Security. Stephen Checkoway University of Illinois at Chicago CS 487 Fall 2017 Some slides from Bailey's ECE 422 Lecture 17 Browser Security Stephen Checkoway University of Illinois at Chicago CS 487 Fall 2017 Some slides from Bailey's ECE 422 Documents Browser's fundamental role is to display documents comprised

More information

CS 155 Final Exam. CS 155: Spring 2006 June 2006

CS 155 Final Exam. CS 155: Spring 2006 June 2006 CS 155: Spring 2006 June 2006 CS 155 Final Exam This exam is open books and open notes, but you may not use a laptop. You have 2 hours. Make sure you print your name legibly and sign the honor code below.

More information

Information Security CS 526 Topic 11

Information Security CS 526 Topic 11 Information Security CS 526 Topic 11 Web Security Part 1 1 Readings for This Lecture Wikipedia HTTP Cookie Same Origin Policy Cross Site Scripting Cross Site Request Forgery 2 Background Many sensitive

More information

Robust Defenses for Cross-Site Request Forgery

Robust Defenses for Cross-Site Request Forgery University of Cyprus Department of Computer Science Advanced Security Topics Robust Defenses for Cross-Site Request Forgery Name: Elena Prodromou Instructor: Dr. Elias Athanasopoulos Authors: Adam Barth,

More information

Web 2.0 and AJAX Security. OWASP Montgomery. August 21 st, 2007

Web 2.0 and AJAX Security. OWASP Montgomery. August 21 st, 2007 Web 2.0 and AJAX Security OWASP Montgomery August 21 st, 2007 Overview Introduction Definition of Web 2.0 Basics of AJAX Attack Vectors for AJAX Applications AJAX and Application Security Conclusions 1

More information

JOE WIPING OUT CSRF

JOE WIPING OUT CSRF JOE ROZNER @JROZNER WIPING OUT CSRF IT S 2017 WHAT IS CSRF? 4 WHEN AN ATTACKER FORCES A VICTIM TO EXECUTE UNWANTED OR UNINTENTIONAL HTTP REQUESTS WHERE DOES CSRF COME FROM? 6 SAFE VS. UNSAFE Safe GET HEAD

More information

Application Security through a Hacker s Eyes James Walden Northern Kentucky University

Application Security through a Hacker s Eyes James Walden Northern Kentucky University Application Security through a Hacker s Eyes James Walden Northern Kentucky University waldenj@nku.edu Why Do Hackers Target Web Apps? Attack Surface A system s attack surface consists of all of the ways

More information

RKN 2015 Application Layer Short Summary

RKN 2015 Application Layer Short Summary RKN 2015 Application Layer Short Summary HTTP standard version now: 1.1 (former 1.0 HTTP /2.0 in draft form, already used HTTP Requests Headers and body counterpart: answer Safe methods (requests): GET,

More information

Information Security CS 526 Topic 8

Information Security CS 526 Topic 8 Information Security CS 526 Topic 8 Web Security Part 1 1 Readings for This Lecture Wikipedia HTTP Cookie Same Origin Policy Cross Site Scripting Cross Site Request Forgery 2 Background Many sensitive

More information

CNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies

CNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies CNIT 129S: Securing Web Applications Ch 3: Web Application Technologies HTTP Hypertext Transfer Protocol (HTTP) Connectionless protocol Client sends an HTTP request to a Web server Gets an HTTP response

More information

Computer Security CS 426 Lecture 41

Computer Security CS 426 Lecture 41 Computer Security CS 426 Lecture 41 StuxNet, Cross Site Scripting & Cross Site Request Forgery CS426 Fall 2010/Lecture 36 1 StuxNet: Overview Windows-based Worm First reported in June 2010, the general

More information

Symmetric Encryption

Symmetric Encryption Symmetric Encryption Ahmed Y. Banihammd & Ihsan, ALTUNDAG Mon November 5, 2007 Advanced Cryptography 1st Semester 2007-2008 University Joseph Fourrier, Verimag Master Of Information Security And Coding

More information

Welcome to the OWASP TOP 10

Welcome to the OWASP TOP 10 Welcome to the OWASP TOP 10 Secure Development for Java Developers Dominik Schadow 03/20/2012 BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 1 AGENDA

More information

OpenID Security Analysis and Evaluation

OpenID Security Analysis and Evaluation University of British Columbia OpenID Security Analysis and Evaluation San-Tsai Sun, Kirstie Hawkey, Konstantin Beznosov Laboratory for Education and Research in Secure Systems Engineering (LERSSE) University

More information

Lecture 9a: Sessions and Cookies

Lecture 9a: Sessions and Cookies CS 655 / 441 Fall 2007 Lecture 9a: Sessions and Cookies 1 Review: Structure of a Web Application On every interchange between client and server, server must: Parse request. Look up session state and global

More information

Application Design and Development: October 30

Application Design and Development: October 30 M149: Database Systems Winter 2018 Lecturer: Panagiotis Liakos Application Design and Development: October 30 1 Applications Programs and User Interfaces very few people use a query language to interact

More information

Content Security Policy

Content Security Policy About Tim Content Security Policy New Tools for Fighting XSS Pentester > 10 years Web Applications Network Security Products Exploit Research Founded Blindspot Security in 2014 Pentesting Developer Training

More information

Tabular Presentation of the Application Software Extended Package for Web Browsers

Tabular Presentation of the Application Software Extended Package for Web Browsers Tabular Presentation of the Application Software Extended Package for Web Browsers Version: 2.0 2015-06-16 National Information Assurance Partnership Revision History Version Date Comment v 2.0 2015-06-16

More information

WEB SECURITY WORKSHOP TEXSAW Presented by Solomon Boyd and Jiayang Wang

WEB SECURITY WORKSHOP TEXSAW Presented by Solomon Boyd and Jiayang Wang WEB SECURITY WORKSHOP TEXSAW 2014 Presented by Solomon Boyd and Jiayang Wang Introduction and Background Targets Web Applications Web Pages Databases Goals Steal data Gain access to system Bypass authentication

More information

1 Attacking the challenge response protocol

1 Attacking the challenge response protocol 1 Attacking the challenge response protocol By looking into Authorization headers passed to the server on several HTTP GET request over time, we can confirm that HTTPd s standard for nonce lifetime is

More information

Abusing Windows Opener to Bypass CSRF Protection (Never Relay On Client Side)

Abusing Windows Opener to Bypass CSRF Protection (Never Relay On Client Side) Abusing Windows Opener to Bypass CSRF Protection (Never Relay On Client Side) Narendra Bhati @NarendraBhatiB http://websecgeeks.com Abusing Windows Opener To Bypass CSRF Protection Narendra Bhati Page

More information

Introduction to Ethical Hacking

Introduction to Ethical Hacking Introduction to Ethical Hacking Summer University 2017 Seoul, Republic of Korea Alexandre Karlov Today Some tools for web attacks Wireshark How a writeup looks like 0x04 Tools for Web attacks Overview

More information

Attacks Against Websites. Tom Chothia Computer Security, Lecture 11

Attacks Against Websites. Tom Chothia Computer Security, Lecture 11 Attacks Against Websites Tom Chothia Computer Security, Lecture 11 A typical web set up TLS Server HTTP GET cookie Client HTML HTTP file HTML PHP process Display PHP SQL Typical Web Setup HTTP website:

More information

A Security Evaluation of DNSSEC with NSEC Review

A Security Evaluation of DNSSEC with NSEC Review A Security Evaluation of DNSSEC with NSEC Review Network Security Instructor:Dr. Shishir Nagaraja Submitted By: Jyoti Leeka November 16, 2011 1 Introduction to the topic and the reason for the topic being

More information

Application Layer Attacks. Application Layer Attacks. Application Layer. Application Layer. Internet Protocols. Application Layer.

Application Layer Attacks. Application Layer Attacks. Application Layer. Application Layer. Internet Protocols. Application Layer. Application Layer Attacks Application Layer Attacks Week 2 Part 2 Attacks Against Programs Application Layer Application Layer Attacks come in many forms and can target each of the 5 network protocol layers

More information

Sichere Software vom Java-Entwickler

Sichere Software vom Java-Entwickler Sichere Software vom Java-Entwickler Dominik Schadow Java Forum Stuttgart 05.07.2012 BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN We can no longer

More information

2/16/18. CYSE 411/AIT 681 Secure Software Engineering. Secure Coding. The Web. Topic #11. Web Security. Instructor: Dr. Kun Sun

2/16/18. CYSE 411/AIT 681 Secure Software Engineering. Secure Coding. The Web. Topic #11. Web Security. Instructor: Dr. Kun Sun CYSE 411/AIT 681 Secure Software Engineering Topic #11. Web Security Instructor: Dr. Kun Sun Secure Coding String management Pointer Subterfuge Dynamic memory management Integer security Formatted output

More information

Solutions Business Manager Web Application Security Assessment

Solutions Business Manager Web Application Security Assessment White Paper Solutions Business Manager Solutions Business Manager 11.3.1 Web Application Security Assessment Table of Contents Micro Focus Takes Security Seriously... 1 Solutions Business Manager Security

More information

Don't Trust The Locals: Exploiting Persistent Client-Side Cross-Site Scripting in the Wild

Don't Trust The Locals: Exploiting Persistent Client-Side Cross-Site Scripting in the Wild Don't Trust The Locals: Exploiting Persistent Client-Side Cross-Site Scripting in the Wild Marius Steffens German OWASP Day 2018 joint work with Christian Rossow, Martin Johns and Ben Stock Dimensions

More information

Secure Session Management

Secure Session Management Aalto University School of Science Degree Programme in Security and Mobile Computing Fariha Nazmul Secure Session Management Master s Thesis Espoo, June 30, 2011 Supervisors: Instructor: Professor Tuomas

More information

2015 Online Trust Audit & Honor Roll Methodology

2015 Online Trust Audit & Honor Roll Methodology 2015 Online Trust Audit & Honor Roll Methodology Jeff Wilbur VP Marketing, Iconix Craig Spiezle Executive Director & President, OTA 2015 All rights reserved. Online Trust Alliance (OTA) Slide 1 Who Is

More information

(System) Integrity attacks System Abuse, Malicious File upload, SQL Injection

(System) Integrity attacks System Abuse, Malicious File upload, SQL Injection Pattern Recognition and Applications Lab (System) Integrity attacks System Abuse, Malicious File upload, SQL Injection Igino Corona igino.corona (at) diee.unica.it Computer Security April 9, 2018 Department

More information

OSI Session / presentation / application Layer. Dr. Luca Allodi - Network Security - University of Trento, DISI (AA 2015/2016)

OSI Session / presentation / application Layer. Dr. Luca Allodi - Network Security - University of Trento, DISI (AA 2015/2016) OSI Session / presentation / application Layer Dr. Luca Allodi - Network Security - University of Trento, DISI (AA 2015/2016) 1 Higher level protocols On top of IP, TCP, UDP, etc. there are a plethora

More information

Electronic Mail (SMTP)

Electronic Mail (SMTP) Electronic Mail (SMTP) Nowadays email is more popular than the paper letters called snail-mails. It is a form of network communication. Some of the other forms of network communication being voice-over-internet,

More information

Cross-Site Scripting (XSS) Professor Larry Heimann Web Application Security Information Systems

Cross-Site Scripting (XSS) Professor Larry Heimann Web Application Security Information Systems Cross-Site Scripting (XSS) Professor Larry Heimann Web Application Security Information Systems Browser same origin policy Key security principle: a web browser permits scripts contained in a first web

More information

Is Browsing Safe? Web Browser Security. Subverting the Browser. Browser Security Model. XSS / Script Injection. 1. XSS / Script Injection

Is Browsing Safe? Web Browser Security. Subverting the Browser. Browser Security Model. XSS / Script Injection. 1. XSS / Script Injection Is Browsing Safe? Web Browser Security Charlie Reis Guest Lecture - CSE 490K - 5/24/2007 Send Spam Search Results Change Address? Install Malware Web Mail Movie Rentals 2 Browser Security Model Pages are

More information

Base64 The Security Killer

Base64 The Security Killer Base64 The Security Killer Kevin Fiscus NWN Corporation Session ID: DAS-203 Session Classification: Intermediate A Short (Made Up) Security Story Helix Pharmaceuticals is concerned about security Industrial

More information

XSS Homework. 1 Overview. 2 Lab Environment

XSS Homework. 1 Overview. 2 Lab Environment XSS Homework 1 Overview Cross-site scripting (XSS) is a type of vulnerability commonly found in web applications. This vulnerability makes it possible for attackers to inject malicious code (e.g. JavaScript

More information

Security and Privacy. SWE 432, Fall 2016 Design and Implementation of Software for the Web

Security and Privacy. SWE 432, Fall 2016 Design and Implementation of Software for the Web Security and Privacy SWE 432, Fall 2016 Design and Implementation of Software for the Web Today Security What is it? Most important types of attacks Privacy For further reading: https://www.owasp.org/index.php/

More information

Web insecurity Security strategies General security Listing of server-side risks Language specific security. Web Security.

Web insecurity Security strategies General security Listing of server-side risks Language specific security. Web Security. Web Security Web Programming Uta Priss ZELL, Ostfalia University 2013 Web Programming Web Security Slide 1/25 Outline Web insecurity Security strategies General security Listing of server-side risks Language

More information

The Sys-Security Group

The Sys-Security Group The Sys-Security Group Security Advisory More Vulnerabilities with Pingtel xpressa SIP-based IP Phones How one can exploit vulnerabilities with MyPingtel Portal to subvert a VoIP infrastructure which includes

More information

1. Out of the 3 types of attacks an adversary can mount on a cryptographic algorithm, which ones does differential cryptanalysis utilize?

1. Out of the 3 types of attacks an adversary can mount on a cryptographic algorithm, which ones does differential cryptanalysis utilize? Introduction Answer the following questions. When a word count restriction is given for a question, exceeding it will result in marks being deducted. If your answer is more than twice the maximum length,

More information

Web basics: HTTP cookies

Web basics: HTTP cookies Web basics: HTTP cookies Myrto Arapinis School of Informatics University of Edinburgh February 11, 2016 1 / 27 How is state managed in HTTP sessions HTTP is stateless: when a client sends a request, the

More information

COSC 301 Network Management. Lecture 15: SSL/TLS and HTTPS

COSC 301 Network Management. Lecture 15: SSL/TLS and HTTPS COSC 301 Network Management Lecture 15: SSL/TLS and HTTPS Zhiyi Huang Computer Science, University of Otago COSC301 Lecture 15: SSL/TLS and HTTPS 1 Today s Focus WWW WWW How to secure web applications?

More information

CONTENTS IN DETAIL INTRODUCTION 1 THE FAQS OF LIFE THE SCRIPTS EVERY PHP PROGRAMMER WANTS (OR NEEDS) TO KNOW 1 2 CONFIGURING PHP 19

CONTENTS IN DETAIL INTRODUCTION 1 THE FAQS OF LIFE THE SCRIPTS EVERY PHP PROGRAMMER WANTS (OR NEEDS) TO KNOW 1 2 CONFIGURING PHP 19 CONTENTS IN DETAIL INTRODUCTION xiii 1 THE FAQS OF LIFE THE SCRIPTS EVERY PHP PROGRAMMER WANTS (OR NEEDS) TO KNOW 1 #1: Including Another File as a Part of Your Script... 2 What Can Go Wrong?... 3 #2:

More information

Web basics: HTTP cookies

Web basics: HTTP cookies Web basics: HTTP cookies Myrto Arapinis School of Informatics University of Edinburgh November 20, 2017 1 / 32 How is state managed in HTTP sessions HTTP is stateless: when a client sends a request, the

More information

DO NOT OPEN UNTIL INSTRUCTED

DO NOT OPEN UNTIL INSTRUCTED CS 378 - Network Security and Privacy Spring 2017 FINAL May 3, 2017 DO NOT OPEN UNTIL INSTRUCTED YOUR NAME: Collaboration policy No collaboration is permitted on this exam. Any cheating (e.g., submitting

More information

How is state managed in HTTP sessions. Web basics: HTTP cookies. Hidden fields (2) The principle. Disadvantage of this approach

How is state managed in HTTP sessions. Web basics: HTTP cookies. Hidden fields (2) The principle. Disadvantage of this approach Web basics: HTTP cookies Myrto Arapinis School of Informatics University of Edinburgh March 30, 2015 How is state managed in HTTP sessions HTTP is stateless: when a client sends a request, the server sends

More information

Copyright

Copyright 1 Security Test EXTRA Workshop : ANSWER THESE QUESTIONS 1. What do you consider to be the biggest security issues with mobile phones? 2. How seriously are consumers and companies taking these threats?

More information

CSCE 813 Internet Security Case Study II: XSS

CSCE 813 Internet Security Case Study II: XSS CSCE 813 Internet Security Case Study II: XSS Professor Lisa Luo Fall 2017 Outline Cross-site Scripting (XSS) Attacks Prevention 2 What is XSS? Cross-site scripting (XSS) is a code injection attack that

More information

CS System Security 2nd-Half Semester Review

CS System Security 2nd-Half Semester Review CS 356 - System Security 2nd-Half Semester Review Fall 2013 Final Exam Wednesday, 2 PM to 4 PM you may bring one 8-1/2 x 11 sheet of paper with any notes you would like no cellphones, calculators This

More information

Security by Any Other Name:

Security by Any Other Name: Security by Any Other Name: On the Effectiveness of Provider Based Email Security Ian Foster, Jon Larson, Max Masich, Alex C. Snoeren, Stefan Savage, and Kirill Levchenko University of California, San

More information

Web Security 2 https://www.xkcd.com/177/ http://xkcd.com/1323/ Encryption basics Plaintext message key secret Encryp)on Func)on Ciphertext Insecure network Decryp)on Func)on Curses! Foiled again! key Plaintext

More information

CSE361 Web Security. Attacks against the client-side of web applications. Nick Nikiforakis

CSE361 Web Security. Attacks against the client-side of web applications. Nick Nikiforakis CSE361 Web Security Attacks against the client-side of web applications Nick Nikiforakis nick@cs.stonybrook.edu Despite the same origin policy Many things can go wrong at the client-side of a web application

More information

I certify that this DNS record set is correct Problem: how to certify a negative response, i.e. that a record doesn t exist?

I certify that this DNS record set is correct Problem: how to certify a negative response, i.e. that a record doesn t exist? RRSIG: I certify that this DNS record set is correct Problem: how to certify a negative response, i.e. that a record doesn t exist? NSEC: I certify that there are no DNS records (of type X) whose record

More information

Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 2

Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 2 Table of Contents Hacking Web Sites Broken Authentication Emmanuel Benoist Spring Term 2018 Introduction Examples of Attacks Brute Force Session Spotting Replay Attack Session Fixation Attack Session Hijacking

More information

Proving who you are. Passwords and TLS

Proving who you are. Passwords and TLS Proving who you are Passwords and TLS Basic, fundamental problem Client ( user ) How do you prove to someone that you are who you claim to be? Any system with access control must solve this Users and servers

More information

Executive Summary. Flex Bounty Program Overview. Bugcrowd Inc Page 2 of 7

Executive Summary. Flex Bounty Program Overview. Bugcrowd Inc Page 2 of 7 CANVAS by Instructure Bugcrowd Flex Program Results December 01 Executive Summary Bugcrowd Inc was engaged by Instructure to perform a Flex Bounty program, commonly known as a crowdsourced penetration

More information

High -Tech Bridge s Web Server Security Service API Developer Documentation Version v1.3 February 13 th 2018

High -Tech Bridge s Web Server Security Service API Developer Documentation Version v1.3 February 13 th 2018 HTB_WEBSECDOCS_v1.3.pdf Page 1 of 29 High -Tech Bridge s Web Server Security Service API Developer Documentation Version v1.3 February 13 th 2018 General Overview... 2 Meta-information... 4 HTTP Additional

More information

Web Security. Aggelos Kiayias Justin Neumann

Web Security. Aggelos Kiayias Justin Neumann Web Security Aggelos Kiayias Justin Neumann Dynamic HTML Umbrella term : HTML Javascript Cascading Style Sheets (CSS) Document Object Model (DOM) : a hierarchical structure API for accessing / manipulating

More information

INF3700 Informasjonsteknologi og samfunn. Application Security. Audun Jøsang University of Oslo Spring 2015

INF3700 Informasjonsteknologi og samfunn. Application Security. Audun Jøsang University of Oslo Spring 2015 INF3700 Informasjonsteknologi og samfunn Application Security Audun Jøsang University of Oslo Spring 2015 Outline Application Security Malicious Software Attacks on applications 2 Malicious Software 3

More information

Preparing for the Cross Site Request Forgery Defense

Preparing for the Cross Site Request Forgery Defense Preparing for the Cross Site Request Forgery Defense By Chuck Willis chuck.willis@mandiant.com Presented at Black Hat Briefings DC 2008 on February 20, 2008 Slides available at www.blackhat.com. Abstract:

More information

DNSSEC Trust tree: (A) ---dnslab.org. (DS keytag: 9247 dig (DNSKEY keytag. ---org. (DS keytag: d

DNSSEC Trust tree:  (A) ---dnslab.org. (DS keytag: 9247 dig (DNSKEY keytag. ---org. (DS keytag: d DNSSEC Trust tree: www.dnslab.org. (A) ---dnslab.org. (DNSKEY keytag: 7308 alg ---dnslab.org. (DNSKEY keytag: 9247 ---dnslab.org. (DS keytag: 9247 dig DNSSEC ---org. (DNSKEY keytag: 24209 a Domain Name

More information

LECT 8 WEB SECURITY BROWSER SECURITY. Repetition Lect 7. WEB Security

LECT 8 WEB SECURITY BROWSER SECURITY. Repetition Lect 7. WEB Security Repetition Lect 7 LECT 8 WEB SECURITY Access control Runtime protection Trusted computing Java as basic model for signed code Trusted Computing Group TPM ARM TrustZone Mobile Network security GSM security

More information

Finding Vulnerabilities in Web Applications

Finding Vulnerabilities in Web Applications Finding Vulnerabilities in Web Applications Christopher Kruegel, Technical University Vienna Evolving Networks, Evolving Threats The past few years have witnessed a significant increase in the number of

More information

ColdFusion Application Security: The Next Step - Handout

ColdFusion Application Security: The Next Step - Handout ColdFusion Application Security: The Next Step - Handout Jason Dean http://www.12robots.com Boston CFUG September 16 th, 2009 REQUEST FORGERIES A request forgery, also sometimes called a Cross-Site (or

More information