IP Library Granted Patent US 7,870,394
Granted Patent B2
US 7,870,394 · App. 11/803,875 · Granted Jan 11, 2011

Method and system to scan firmware for malware

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 7,870,394
App. No.
11/803,875
Granted
Jan 11, 2011
Kind
B2
Abstract

A method, system and computer program product for scanning firmware of a processing system for malware. The method ( 400 ) comprises obtaining a copy of firmware stored in the processing system ( 410 ); and analysing the copy of the firmware to determine if the firmware has been modified or infected by malware ( 420 ).

Claims (56)

1. A method of scanning firmware of a processing system for malware, wherein the method comprises:

obtaining a list of firmware devices in communication with the processing system;

obtaining a copy of firmware stored in the processing system for at least one firmware device in the list; and

analysing the copy of the firmware for the at least one firmware device to determine if the firmware has been modified by malware.

2. The method according to claim 1 , wherein the method comprises:

storing uncompromised firmware; and

in the event that malware has been determined to have modified the copy of the firmware, repairing the firmware using the uncompromised firmware.

3. The method according to claim 1 , wherein the step of analysing the copy of the firmware is performed using a detection module, wherein the detection module comprises a plurality of submodules comprising at least one of a cryptographic hash module, a checksum module, a disassembly module, and a pattern matching module, wherein the method comprises analysing, using the plurality of submodules, the copy of the firmware to determine if the firmware has been modified by malware.

4. The method according to claim 3 , wherein the method comprises:

generating, using the cryptographic hash module, a cryptographic hash value of the copy of the firmware; and

comparing the cryptographic hash value to a database to determine whether the firmware has been modified by malware, wherein the database comprises a plurality of cryptographic hash values indicative of at least one of malicious entities and non-malicious entities.

5. The method according to claim 3 , wherein the method comprises:

generating, using the checksum module, a checksum value of the copy of the firmware; and

comparing the checksum value to a list to determine whether the entity is malicious, wherein the list comprises a plurality of checksum values associated with at least one or malicious entities and non-malicious entities.

6. The method according to claim 3 , wherein the method comprises:

disassembling, using the disassembly module, at least a portion of the copy of the firmware; and

performing a comparison, using the pattern matching module, between the disassembled entity and a list of patterns associated with malicious activity.

7. The method according to claim 1 , wherein in the event the analysis indicates that the firmware has not been modified by malware, the method comprises storing an uncompromised copy of the firmware.

8. The method according to claim 7 , wherein in the event the analysis indicates that the firmware has been modified by malware, the method comprises:

retrieving the uncompromised copy of the firmware; and

copying the uncompromised copy of the firmware for a firmware device containing the modified firmware.

9. The method according to claim 1 , wherein the method comprises:

iteratively analyzing the firmware for each firmware device in the list.

10. A method of scanning firmware of a processing system for malware, wherein the method comprises:

obtaining a copy of firmware stored in the processing system; and

analysing the copy of the firmware to determine if the firmware has been modified by malware;

wherein in the event the analysis indicates that the firmware has not been modified by malware, the method comprises:

storing an uncompromised copy of the firmware;

retrieving the uncompromised copy of the firmware for a firmware device; and

performing a comparison between the firmware of the firmware device and the retrieved uncompromised copy of the firmware to determine if the firmware has been modified by malware.

11. A method of scanning firmware of a processing system for malware, the method comprises:

obtaining a copy of firmware stored in the processing system; and

analysing the copy of the firmware to determine if the firmware has been modified by malware;

wherein in the event that the firmware is determined to have been modified by malware, the method comprises:

generating a report indicating that a firmware device comprises firmware modified by malware; and

transferring the report to a server processing system.

12. The method according to claim 11 , wherein the report is indicative of:

the copy of the modified firmware;

a firmware device identity;

a firmware device associated with the firmware; and

an identity associated with the mal ware which modified the firmware.

13. The method according to claim 11 , wherein the method comprises displaying the report using the processing system.

14. The method according to claim 2 , wherein repairing the firmware comprises configuring the processing system to reboot and execute a bootable program prior to booting an operating system installed on the processing system, wherein the bootable program is configured to enable modifications to be performed to the firmware.

15. A computer program product for a processing system, the computer program product comprising a non-transitory computer readable medium having a computer program recorded therein or thereon, the computer program product being configured to scan firmware of the processing system for malware, wherein the computer program product configures the processing system to:

obtain a list of firmware devices in communication with the processing system;

copy the firmware for at least one firmware device stored in the processing system; and

analyse the copy of the firmware for the at least one firmware device to determine if the firmware has been modified by malware.

16. A system to scan firmware of a processing system for malware, wherein the system comprises:

a processor;

memory in electronic communication with the processor;

a firmware detection module configured to obtain a list of firmware devices in communication with the processing system;

a copy module configured to copy the firmware for at least one firmware device stored in the processing system; and

the analysis module configured to analyse the copy of the firmware for the at least one firmware device to determine if the firmware has been modified by malware.

17. The system according to claim 16 , wherein the system includes a storage module configured to store uncompromised firmware; and

a repair module configured to repair the firmware using the uncompromised firmware in the event that mal ware has been determined to have modified the copy of the firmware.

18. The system according to claim 16 , wherein the analysis module includes a detection module, wherein the detection module comprises a plurality of submodules comprising at least one of a cryptographic hash module, a checksum module, a disassembly module, and a pattern matching module.

Assignments (7)
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
CHANGE OF NAME Recorded Jan 30, 2020
From: SYMANTEC CORPORATION
To: NORTONLIFELOCK INC.
Reel/Frame 051759/0845 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2009
From: PC TOOLS TECHNOLOGY PTY LTD.
To: SYMANTEC CORPORATION
Reel/Frame 022960/0276 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2007
From: REPASI, ROLF; CLAUSEN, SIMON
To: PC TOOLS TECHNOLOGY PTY. LTD.
Reel/Frame 019629/0133 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2007
From: REPASI, ROLF; CLAUSEN, SIMON
To: PC TOOLS TECHNOLOGY PTY LTD.
Reel/Frame 019629/0256 →