|
Cross Site Scripting (XSS)
Vulnerabilities, Attacks, and Mitigations |
|
Prof. David Bernstein
|
| Computer Science Department |
| bernstdh@jmu.edu |
A element, the URL of a redirect, the
contents of a FORM element) of
a trigger document (e.g., an unsubscribe link
in an email message) that references the page on the
trusted server
The "Modern" (e.g., Desktop Widgets, Gadgets, Desklets) Case - file:// Request to the Local File System
Document
(e.g., Document.write())
echo, print/print(),
printf()
header()
setcookie()
FORM is written into
a document using PHP
A element
http-refresh
document.location in JavaScript)SUBMIT element
Form object's submit()
method in the Body object's onload
handler)
A elements, FORM
elements)onload handler written
in JavaScript)
Content-Length does not include
the size of the header so the additions
can't be detected easilyMETA elementsFORM element)href of A elements)
using htmlentities()
in PHP) of data written into "dynamic" documents (e.g.,
<p> becomes <p>)
encode() in JavaScript)
of data written into URLs (e.g., a space becomes
%20)HttpOnly Cookies: