IP Library Granted Patent US 8,910,292
Granted Patent B1
US 8,910,292 · App. 13/533,413 · Granted Dec 9, 2014

Method and system for detection of remote file inclusion vulnerabilities

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 8,910,292
App. No.
13/533,413
Granted
Dec 9, 2014
Kind
B1
Abstract

A method for detecting remote file inclusion vulnerabilities in a web application includes altering of extracted resource references from a web application, submission of altered references as HTTP requests to the web application, inspection of corresponding HTTP responses, and diagnosis of vulnerability. A computer system or systems can implement the disclosed embodiments.

Claims (38)

1. A method for identifying a vulnerability of a web application, comprising:

extracting a resource reference from a web application hosted on a web server;

altering the extracted reference to include an altered reference, the altered reference referring to a remote file containing program code, wherein the remote file is an entry in a repository external to the web server;

sending the altered reference to the web application;

providing the repository at a network location accessible to the web server, the network location corresponding to the altered reference; and

determining if a response from the web application contains at least one signature corresponding to the entry in the repository,

wherein the repository is a relational database.

2. The method of claim 1 , further comprising determining from the response that the web application executed at least a portion of the program code from the remote file.

3. The method of claim 2 , further comprising identifying a type of program interpreter that executed at least a portion of the program code from the remote file.

4. The method of claim 1 , further comprising identifying an injection point of the web application to be utilized in the act of sending the altered reference to the web application.

5. The method of claim 1 , wherein the act of sending the altered reference to the web application comprises constructing an HTTP request having the altered reference.

6. The method of claim 1 further comprising:

repeating altering the extracted reference for referencing each of a plurality of entries in the repository.

7. A non-transitory computer readable medium comprising executable instructions stored thereon for identifying a vulnerability of a web application, the instructions to cause one or more processors to:

extract a resource reference from a web application hosted on a web server;

alter the extracted reference to include an altered reference, the altered reference referring to a remote file containing program code, wherein the remote file is one of a plurality of entries in a repository external to the web server;

send the altered reference to the web application;

provide the repository at a network location accessible to the web server, the network location corresponding to the referenced entry in the repository; and

determine if a response from the web application contains one or more signatures that correspond to the referenced entry in the repository indicating vulnerability of the web application,

wherein the repository is a relational database.

8. The non-transitory computer readable medium of claim 7 , further comprising instructions to cause the one or more processors to determine from the response that the web application executed at least a portion of the program code from the remote file.

9. The non-transitory computer readable medium of claim 8 , further comprising instructions to cause the one or more processors to identify a type of program interpreter that executed at least a portion of the program code from the remote file.

10. The non-transitory computer readable medium of claim 7 , further comprising instructions to cause the one or more processors to identify an injection point of the web application to be utilized in the act of sending the altered reference to the web application.

11. The non-transitory computer readable medium of claim 7 , wherein the instructions to cause the one or more processors to send the altered reference to the web application comprise instructions to cause the one or more processors to construct an HTTP request having the altered reference.

12. The non-transitory computer readable medium of claim 7 , further comprising instructions to:

repeat altering the extracted reference for referencing each of a plurality of entries in the repository.

13. A computer system configured to identify a vulnerability of a web application, the computer system comprising:

a network interface; and

one or more processors coupled to the network interface, wherein the one or more processors are configured to:

extract, via the network interface, a resource reference from a web application hosted on a web server;

alter the extracted resource reference to include an altered reference, the altered reference referring to a remote file containing program interpreted code, wherein the remote file is an entry of a plurality of entries in a repository external to the web server;

send, via the network interface, the altered reference to the web application;

provide the repository at a network location accessible to the web server; and

determine from a response received from the web application whether the web application remotely included the remote file,

wherein the repository is a relational database.

14. The computer system of claim 13 , wherein the one or more processors are further configured to determine whether the web application remotely included the remote file by inspecting the response for a unique signature.

15. The computer system of claim 13 , wherein the one or more processors are further configured to determine from the response that the web application executed at least a portion of the program code from the remote file.

16. The computer system of claim 13 , wherein the one or more processors are further configured to send the altered reference to the web application by constructing an HTTP request having the altered reference.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →