IP Library Granted Patent US 10,243,975
Granted Patent B2
US 10,243,975 · App. 15/359,026 · Granted Mar 26, 2019

Malware detector

Inventors: Angelos Stavrou (Springfield, VA); Sushil Jajodia (Oakton, VA); Anup K. Ghosh (Centreville, VA); Rhandi Martin (St. James, BB); Charalampos Andrianakis (Crete, GR)
Assignee: George Mason Research Foundation, Inc.
H04L63/1416G06F21/566H04L63/0884H04L63/145G06F2221/2103G06F2221/2119H04L63/08H04L67/02
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 10,243,975
App. No.
15/359,026
Granted
Mar 26, 2019
Kind
B2
Abstract

A transparent proxy for malware detection includes a monitor module, a protocol determination module, a challenge generation module, a response determination module, and a data control module. The monitor module examines data originating from an application towards a remote server. The protocol determination module identifies the protocol type used for the data. The challenge generation module produces a challenge for the application based upon the protocol type, sends the challenge to the application, and maintains a state related to the data and the challenge. The response determination module makes a determination if an automatic non-interactive application response is received in response to the challenge from the application. The data control module allows the first data to continue to the remote server when the determination is valid. The data control module reports malware detection and blocks the data to continue to the remote server when the determination is invalid.

Claims (38)

1. A non-transitory processor-readable medium storing code representing instructions to be executed by a processor, the code comprising code to cause the processor to:

intercept a communication from an application acting as a web browser executing at a compute device, the communication addressed to a server different from the compute device;

identify a type of protocol of the communication;

select, based on the type of protocol, a redirect request as an active content challenge for the application;

send the redirect request to the application;

identify the application as a valid web browser and send the communication to the server when a response to the redirect request is received from the application within a predetermined time period and is determined to be a correct response to the redirect request; and

identify the application as malware and block the communication from being sent to the server when the response is not received from the application within the predetermined time period or is determined to be an incorrect response to the redirect request.

2. The non-transitory processor-readable medium of claim 1 , wherein the redirect request is an encoded redirect request.

3. The non-transitory processor-readable medium of claim 1 , wherein the redirect request includes an identifier, the correct response including the identifier.

4. The non-transitory processor-readable medium of claim 1 , wherein the processor is at the compute device.

5. The non-transitory processor-readable medium of claim 1 , wherein the server is a first server, the processor is at a second server different from the first server and the compute device.

6. An apparatus, comprising:

a memory; and

a hardware processor communicatively coupled to the memory,

the hardware processor configured to intercept a communication from an application executing at a compute device, the communication addressed to a server different from the compute device,

the hardware processor configured to identify a type of protocol of the communication,

the hardware processor configured to select, based on the type of protocol and in response to the communication, a redirect request as an active content challenge for the application, the hardware processor configured to send the redirect request to the application,

the hardware processor configured to identify the application as malware based at least in part on not receiving, in response to the redirect request, an expected response to the redirect request from the application within a predetermined time period, the processor configured to prevent the communication from being sent to the server in response to the application being identified as malware.

7. The apparatus of claim 6 , wherein the hardware processor is at the compute device.

8. The apparatus of claim 6 , wherein the server is a first server, the hardware processor is at a second server different from the first server and the compute device.

9. The apparatus of claim 6 , wherein the redirect request is an encoded redirect request.

10. The apparatus of claim 6 , wherein the hardware processor is configured to identify the application as malware impersonating a web browser based at least in part on not receiving, in response to the redirect request, the expected response to the redirect request from the application within the predetermined time period.

11. The apparatus of claim 6 , wherein the type of protocol is at least one of a Hypertext Transfer Protocol (HTTP), an HTTPS protocol or JavaScript.

12. The apparatus of claim 6 , wherein the redirect request includes an identifier, the expected response including the identifier.

13. A method, comprising:

intercepting a communication from an application executing at a compute device, the communication addressed to a server different from the compute device;

identifying a type of protocol of the communication;

selecting, based on the type of protocol and in response to the communication, a redirect request as an active content challenge for the application;

sending the communication to the server;

sending the redirect request to the application;

classifying the application as malware when an expected response to the redirect request is not received from the application within a predetermined time period;

receiving, from the server, a response to the communication; and

preventing the response to the communication from being delivered to the application when the application is classified as malware.

14. The method of claim 13 , wherein the intercepting is at a hardware processor of the compute device.

15. The method of claim 13 , wherein the server is a first server, the intercepting is at a hardware processor of a second server different from the first server and the compute device.

16. The method of claim 13 , wherein the redirect request is an encoded redirect request.

17. The method of claim 13 , wherein the type of protocol is at least one of a Hypertext Transfer Protocol (HTTP), an HTTPS protocol or JavaScript.

18. The method of claim 13 , wherein the redirect request includes an identifier, the expected response including the identifier.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2019
From: GEORGE MASON UNIVERSITY
To: GEORGE MASON INTELLECTUAL PROPERTIES, INC.
Reel/Frame 048559/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2016
From: STAVROU, ANGELOS; JAJODIA, SUSHIL; GHOSH, ANUP; MARTIN, RHANDI; ANDRIANAKIS, CHARALAMPOS
To: GEORGE MASON UNIVERSITY
Reel/Frame 040407/0748 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2016
From: GEORGE MASON UNIVERSITY
To: GEORGE MASON INTELLECTUAL PROPERTIES, INC.
Reel/Frame 040407/0765 →
CHANGE OF NAME Recorded Nov 23, 2016
From: GEORGE MASON INTELLECTUAL PROPERTIES, INC.
To: GEORGE MASON RESEARCH FOUNDATION, INC.
Reel/Frame 040676/0129 →
Continuity (4)
Continuation 14482793 · Sep 10, 2014
Continuation 12757675 · Apr 9, 2010
Provisional Application 61168053 · Apr 9, 2009
Related Publication 20170201534A1 · Jul 13, 2017