IP Library › Granted Patent US 9,154,492
Granted Patent B2
US 9,154,492 · App. 14/497,562 · Granted Oct 6, 2015

Moving target defense against cross-site scripting

Inventors: Bei-Tseng Chu (Charlotte, NC); Joe Portner (Charlotte, NC); Joel Kerr (Charlotte, NC); Ehab Al-Shaer (Charlotte, NC)
Assignee: The University of North Carolina at Charlotte
H04L63/08G06F21/128H04L67/02H04L67/1002G06F21/51H04L67/1029H04L67/1031
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,154,492
App. No.
14/497,562
Granted
Oct 6, 2015
Kind
B2
Abstract

A method, in a server, implementing a moving target defense against cross-site scripting includes receiving a request for a web page, wherein the server has N versions of the web page each with a mutated version of JavaScript; selecting a web page of the N versions; and sending an indication of the mutated version of JavaScript associated with the web page in response to the request. Another method, in a client device, using a moving target defense against cross-site scripting includes requesting a web page; receiving an indication of a mutated version of JavaScript for the web page; and adjusting a JavaScript interpreter based on the mutated version of JavaScript for the web page.

Claims (27)

1. A method, in a server, implementing a moving target defense against cross-site scripting, the method comprising:

creating N versions of a web page, mutated off-line to avoid run time penalties by changing only one or more lexical tokens that are a left parenthesis and assignment operator which are used to manipulate behavior or state within JavaScript to provide a mutated version of JavaScript, with the one or more lexical tokens selected based on use in malicious JavaScript attacks;

receiving a request for the web page, wherein the server has the N versions of the web page each with a mutated version of JavaScript;

selecting one web page of the N versions, wherein the web page is randomly reselected and replaced every M minutes;

sending an indication of the mutated version of JavaScript associated with the web page in response to the request; and

receiving an indication of a violation including JavaScript not conforming to the mutated version of JavaScript associated with the selected web page, wherein the indication includes a page on which the violation occurred, the page's referrer, a resource that violated the page's policy, and a specific directive of the violation.

2. The method of claim 1 , further comprising:

utilizing load balancing for the N versions.

3. A method, in a client device and a server, using a moving target defense against cross-site scripting, the method comprising:

creating N versions of a web page by the server, mutated off-line to avoid run time penalties by changing only one or more lexical tokens that are a left parenthesis and assignment operator which are used to manipulate behavior or state within JavaScript to provide a mutated version of JavaScript, with the one or more lexical tokens selected based on use in malicious JavaScript attacks;

requesting, by the client device, the web page from the server;

receiving, by the client device, an indication of a mutated version of JavaScript for the web page based on the server selecting one web page of the N versions, wherein the server is configured to randomly reselected and replace the web page every M minutes;

adjusting, by the client device, a JavaScript interpreter based on the mutated version of JavaScript for the selected web page;

detecting, by the client device, a violation associated with the selected web page including JavaScript not conforming to the mutated version of JavaScript; and

disarming, by the client device, JavaScript associated with the violation and/or reporting the violation to a server associated with the web page, wherein the reporting includes a page on which the violation occurred, the page's referrer, a resource that violated the page's policy, and a specific directive of the violation.

4. A system implementing a moving target defense against cross-site scripting, the system comprising:

a network interface communicatively coupled to a network;

a data store storing N versions of a web page each with a mutated version of JavaScript;

a processor communicatively coupled to the network interface and the data store; and

memory storing instructions that, when executed, cause the processor to:

create the N versions of a web page, mutated off-line to avoid run time penalties, by changing only one or more lexical tokens that are a left parenthesis and assignment operator which are used to manipulate behavior or state within JavaScript to provide a mutated version of JavaScript, with the one or more lexical tokens selected based on use in malicious JavaScript attacks;

receive a request for the web page from the network interface;

select one of the N versions, wherein the web page is randomly reselected and replaced every M minutes;

send an indication of the mutated version of JavaScript associated with one of the N versions in response to the request; and

receive an indication of a violation including JavaScript not conforming to the mutated version of JavaScript associated with the selected web page, wherein the indication includes a page on which the violation occurred, the page's referrer, a resource that violated the page's policy, and a specific directive of the violation.

5. The system of claim 4 , further comprising:

a load balancer configured to assist in selecting the one of the N versions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2014
From: CHU, BEI-TSENG; PORTNER, JOE; KERR, JOEL; AL-SHAER, EHAB
To: THE UNIVERSITY OF NORTH CAROLINA AT CHARLOTTE
Reel/Frame 033825/0776 →
Continuity (2)
Provisional Application 61883536 · Sep 27, 2013
Related Publication 20150096006A1 · Apr 2, 2015