IP Library Granted Patent US 10,445,501
Granted Patent B2
US 10,445,501 · App. 15/719,401 · Granted Oct 15, 2019

Detecting malicious scripts

Inventor: Jiri Sejtko (Prague-Hostivar, CZ)
Assignee: AVAST SOFTWARE S.R.O.
G06F21/566G06F21/562G06F2221/034
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,445,501
App. No.
15/719,401
Granted
Oct 15, 2019
Kind
B2
Abstract

Systems and methods normalize an executable script. A file can be received that potentially contains an executable script. The characters in the file are translated to a single case (either upper case or lower case). Duplicate whitespace can be removed. A script is identified within the file. Tokens in the script are processed to create normalized output. The normalized output can include tokens that are retained keywords, control flow characters or data characters from the script file.

Claims (35)

1. A computer-implemented method for detecting a malicious script, the computer-implemented method comprising the steps of:

receiving a file;

translating characters in the file to a single case;

identifying a script in the file;

determining tokens for the script; and

creating a normalized output for the script, wherein the normalized output includes tokens consisting only of control flow characters and data characters utilized to initialize data for the script, wherein the data characters utilized to initialize data for the script excludes variables.

2. The computer-implemented method of claim 1 , wherein the normalized output includes function names comprising labels for functions commonly used for obfuscation.

3. The computer-implemented method of claim 1 , wherein the normalized output includes reserved keywords for a scripting language.

4. The computer-implemented method of claim 1 , where creating the normalized output for the script includes filtering string definitions and regular expressions from the script such that the string definitions and regular expressions do not appear in the normalized output.

5. The computer-implemented method of claim 1 , wherein identifying the script in the file includes identifying script delimiters in the file.

6. The computer-implemented method of claim 1 , further comprising the step of:

removing duplicate whitespace characters from the file.

7. The computer-implemented method of claim 1 , further comprising the step of:

comparing the normalized output for the script to a database of known malicious scripts.

8. The computer-implemented method of claim 7 , further comprising the step of:

generating a first hash value for the normalized output;

wherein the step of comparing the normalized output for the script comprises comparing the first hash value to a second hash value associated with a second script in the database of known malicious scripts.

9. A system for malware detection comprising:

at least one processor; and

a non-transitory computer readable storage medium having a program stored thereon, the program causing the at least one processor to execute the steps of:

receiving a file containing a script;

translating characters in the file to a single case;

identifying a script in the file;

determining tokens for the script; and

creating a normalized output for the script, wherein the normalized output includes tokens consisting only of control flow characters and data characters utilized to initialize data for the script, wherein the data characters utilized to initialize data for the script excludes variables.

10. The system of claim 9 , wherein the at least one processor includes an anti-malware unit to generate hash values.

11. The system of claim 10 , wherein the anti-malware unit includes a script normalizer to filter string definitions and regular expressions from the script such that the string definitions and regular expressions do not appear in the normalized output.

12. The system of claim 9 , the system further comprising:

a submission server, an internal file database, a main application server, an analyst user interface, and an internal analysis server.

13. A non-transitory computer-readable medium having stored thereon computer executable instructions for causing one or more processors to:

receive a file containing a script;

translate characters in the file to a single case;

identify a script in the file;

determine tokens for the script; and

create a normalized output for the script, wherein the normalized output includes tokens consisting only of control flow characters and data characters utilized to initialize data for the script, wherein the data characters utilized to initialize data for the script excludes variables.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2025
From: GEN DIGITAL AMERICAS S.R.O.
To: GEN DIGITAL INC.
Reel/Frame 071771/0767 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2025
From: AVAST SOFTWARE S.R.O.
To: GEN DIGITAL AMERICAS S.R.O.
Reel/Frame 071777/0341 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2017
From: SEJTKO, JIRI
To: AVAST SOFTWARE S.R.O.
Reel/Frame 043731/0745 →
Continuity (2)
Provisional Application 62402374 · Sep 30, 2016
Related Publication 20180096148A1 · Apr 5, 2018