IP Library Granted Patent US 12,314,380
Granted Patent B2
US 12,314,380 · App. 18/113,444 · Granted May 27, 2025

Scanning and detecting threats in machine learning models

Inventors: Tanner Burns (Austin, TX); Chris Sestito (Austin, TX); James Ballard (Fredricksburg, VA); Thomas Bonner (Steeple Claydon, GB); Marta Janus (Twickenham, GB); Eoin Wickens (Skibbereen, IE)
Assignee: HiddenLayer, Inc.
G06F21/53G06F21/56
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 12,314,380
App. No.
18/113,444
Granted
May 27, 2025
Kind
B2
Abstract

A machine learning model is scanned to detect actual or potential threats. The threats can be detected before execution of the machine learning model or during an isolated execution environment. The threat detection may include performing a machine learning file format check, vulnerability check, tamper check, and stenography check. The machine learning model may also be monitored in an isolated environment during an execution or runtime session. After performing a scan, the system can generate a signature based on actual, potential, or absence of detected threats.

Claims (82)

1. A method for scanning a machine learning model for threats, comprising:

receiving, by a scanning module, data for a machine learning model, the scanning module stored on a first server, the data associated with model parameters and received before execution of the machine learning model;

performing, by the scanning module, a plurality of checks based on the received machine learning model data, the checks performed while the machine learning model is not executing,

the performing comprising:

determining weights and biases of the machine learning model;

determining an expected entropy for the machine learning model based on clustering of known machine learning models guided by calculated entropy;

determining, based on the weights and biases, an actual entropy for the machine learning model; and

calculating the difference between the expected entropy and the actual entropy;

identifying, by the scanning module and based on the calculated difference, whether the machine learning model includes a threat within the machine learning model based on results of the plurality of checks; and

adding, by the scanning module and based on the identifying, an indicator to the machine learning model characterizing actual, potential or detected threats within the machine learning model.

2. The method of claim 1 , further including:

generating a signature based on determining that the machine learning model does not include a threat; and

embedding the generated signature within the data for the machine learning model.

3. The method of claim 1 , wherein the plurality of checks includes two or more of a file format check, a vulnerability check, a tampering check, and a stenography check.

4. The method of claim 1 , further including:

executing the machine learning model in an isolated environment;

monitoring the execution of the machine learning in the isolated environment to detect suspicious activity.

5. The method of claim 1 , wherein an identified threat may be a potential threat or an actual threat.

6. The method of claim 1 , wherein the first server which stores the scanning module is within a computing environment that includes the machine learning model.

7. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform a method for scanning a machine learning model for threats, the method comprising:

receiving, by a scanning module, data for a machine learning model, the scanning module stored on a first server, the data associated with model parameters and received before execution of the machine learning model;

performing, by the scanning module, a plurality of checks based on the received machine learning model data, the checks performed while the machine learning model is not executing,

the performing comprising:

determining weights and biases of the machine learning model;

determining an expected entropy for the machine learning model based on clustering of known machine learning models guided by calculated entropy;

determining, based on the weights and biases, an actual entropy for the machine learning model; and

calculating the difference between the expected entropy and the actual entropy;

identifying, by the scanning module and based on the calculated difference, whether the machine learning model includes a threat within the machine learning model based on results of the plurality of checks;

adding, by the scanning module and based on the identifying, an indicator to the machine learning model characterizing actual, potential or detected threats within the machine learning model; and

reporting the results to a remote computing device by the scanning module.

8. The non-transitory computer readable storage medium of claim 7 , the method further including generating a signature based on determining that the machine learning model does not include a threat, and embedding the generated signature within the data for the machine learning model.

9. The non-transitory computer readable storage medium of claim 7 , wherein the plurality of checks includes two or more of a file format check, a vulnerability check, a tampering check, and a stenography check.

10. The non-transitory computer readable storage medium of claim 7 , the method further including executing the machine learning model in an isolated environment, and monitoring the execution of the machine learning in the isolated environment to detect suspicious activity.

11. The non-transitory computer readable storage medium of claim 7 , wherein the first server which stores the scanning module is within a computing environment that includes the machine learning model.

12. A system for scanning a machine learning model for threats, comprising:

one or more servers including a memory and a processor; and

wherein the memory stores one or more modules which, when executed by the processor, perform operations comprising:

receiving, by a scanning module, data for a machine learning model, the data associated with model parameters and received before execution of the machine learning model,

performing, by the scanning module, a plurality of checks based on the received machine learning model data, the checks performed while the machine learning model is not executing,

the performing comprising:

determining weights and biases of the machine learning model;

determining an expected entropy for the machine learning model based on clustering of known machine learning models guided by calculated entropy;

determining, based on the weights and biases, an actual entropy for the machine learning model; and

calculating the difference between the expected entropy and the actual entropy;

identifying, by the scanning module and based on the calculated difference, whether the machine learning model includes a threat within the machine learning model based on results of the plurality of checks, and

adding, by the scanning module and based on the identifying, an indicator to the machine learning model characterizing actual, potential or detected threats within the machine learning model; and

reporting the results to a remote computing device by the scanning module.

13. The system of claim 12 , the operations further comprise:

generating a signature based on determining that the machine learning model does not include a threat, and embedding the generated signature within the data for the machine learning model.

14. The system of claim 12 , wherein the plurality of checks includes two or more of a file format check, a vulnerability check, a tampering check, and a stenography check.

15. The system of claim 12 , the operations further comprise:

executing the machine learning model in an isolated environment, and monitoring the execution of the machine learning in the isolated environment to detect suspicious activity.

16. The method of claim 1 , wherein the identifying comprises:

determining, when the machine learning model is a fine-tuned version of a base model, whether the machine learning model has a same topology architecture as the base model;

wherein:

a determination that the machine learning model has the same topology architecture as the base model indicates that there are no threats within the machine learning model; and

a determination that the machine learning model has a different topology architecture as the base model indicates that there is a threat within the machine learning model.

17. The method of claim 1 , wherein the identifying comprises:

detecting whether there are dormant portions within the machine learning model which are activated upon a certain input;

wherein:

a determination that the machine learning model does not have dormant portions which are activated upon a certain input indicates that there are no threats within the machine learning model; and

a determination that the machine learning model has dormant portions which are activated upon a certain input indicates that there is a threat within the machine learning model.

18. The method of claim 1 , wherein the identifying comprises:

detecting whether a distribution of lower order bits within the model parameters of the machine learning model is random;

wherein:

a determination that the distribution of the lower order bits within the model parameters of the machine learning model is random indicates that there are no threats within the machine learning model; and

a determination that the distribution of the lower order bits within the model parameters of the machine learning model is not random indicates that there is a threat within the machine learning model.

19. The system of claim 12 , wherein the identifying comprises:

determining, when the machine learning model is a fine-tuned version of a base model, whether the machine learning model has a same topology architecture as the base model;

wherein:

a determination that the machine learning model has the same topology architecture as the base model indicates that there are no threats within the machine learning model; and

a determination that the machine learning model has a different topology architecture as the base model indicates that there is a threat within the machine learning model.

20. The system of claim 12 , wherein the identifying comprises:

detecting whether there are dormant portions within the machine learning model which are activated upon a certain input;

wherein:

a determination that the machine learning model does not have dormant portions which are activated upon a certain input indicates that there are no threats within the machine learning model; and

a determination that the machine learning model has dormant portions which are activated upon a certain input indicates that there is a threat within the machine learning model.

21. The system of claim 12 , wherein the identifying comprises:

detecting whether a distribution of lower order bits within the model parameters of the machine learning model is random;

wherein:

a determination that the distribution of the lower order bits within the model parameters of the machine learning model is random indicates that there are no threats within the machine learning model; and

a determination that the distribution of the lower order bits within the model parameters of the machine learning model is not random indicates that there is a threat within the machine learning model.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2024
From: BURNS, TANNER; SESTITO, CHRIS; BALLARD, JAMES; BONNER, THOMAS; JANUS, MARTA; WICKENS, EOIN
To: HIDDENLAYER, INC.
Reel/Frame 067764/0161 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2023
From: BURNS, TANNER; SESTITO, CHRIS; BALLARD, JAMES
To: HIDDENLAYER, INC.
Reel/Frame 064216/0380 →
Continuity (1)
Related Publication 20240289436A1 · Aug 29, 2024
References Cited (109)
US 7802298B1 · Hong et al. · 2010 [cited by applicant]
US 9356941B1 · Kislyuk et al. · 2016 [cited by applicant]
US 9516053B1 · Muddu et al. · 2016 [cited by applicant]
US 10193902B1 · Caspi et al. · 2019 [cited by applicant]
US 10210036B2 · Iyer et al. · 2019 [cited by applicant]
US 10462168B2 · Shibahara et al. · 2019 [cited by applicant]
US 10637884B2 · Apple et al. · 2020 [cited by applicant]
US 10673880B1 · Pratt et al. · 2020 [cited by applicant]
US 10764313B1 · Mushtaq · 2020 [cited by applicant]
US 10803188B1 · Rajput et al. · 2020 [cited by applicant]
US 11310270B1 · Weber et al. · 2022 [cited by applicant]
US 11483327B2 · Hen et al. · 2022 [cited by applicant]
US 11501101B1 · Ganesan et al. · 2022 [cited by applicant]
US 11551137B1 · Echauz et al. · 2023 [cited by applicant]
US 11601468B2 · Angel et al. · 2023 [cited by applicant]
US 11710067B2 · Harris et al. · 2023 [cited by applicant]
US 11762998B2 · Kuta et al. · 2023 [cited by applicant]
US 11777957B2 · Chen et al. · 2023 [cited by applicant]
US 11875130B1 · Bosnjakovic et al. · 2024 [cited by applicant]
US 11893111B2 · Sai et al. · 2024 [cited by applicant]
US 11893358B1 · Lakshmikanthan et al. · 2024 [cited by applicant]
US 11930039B1 · Geethakumar et al. · 2024 [cited by applicant]
US 11960514B1 · Taylert et al. · 2024 [cited by applicant]
US 11962546B1 · Hattangady et al. · 2024 [cited by applicant]
US 11971914B1 · Watson et al. · 2024 [cited by applicant]
US 11972333B1 · Horesh et al. · 2024 [cited by applicant]
US 11997059B1 · Su et al. · 2024 [cited by applicant]
US 12124592B1 · O'Hern et al. · 2024 [cited by applicant]
US 12182264B2 · Sinha · 2024 [cited by examiner]
US 20100082811A1 · Van Der Merwe · 2010 [cited by applicant]
US 20140033307A1 · Schmidtler · 2014 [cited by applicant]
US 20140157415A1 · Abercrombie et al. · 2014 [cited by applicant]
US 20150074392A1 · Boivie et al. · 2015 [cited by applicant]
US 20160344770A1 · Verma et al. · 2016 [cited by applicant]
US 20170154021A1 · Vidhani et al. · 2017 [cited by applicant]
US 20170251006A1 · LaRosa et al. · 2017 [cited by applicant]
US 20170331841A1 · Hu et al. · 2017 [cited by applicant]
US 20180018590A1 · Szeto et al. · 2018 [cited by applicant]
US 20180063190A1 · Wright et al. · 2018 [cited by applicant]
US 20180205734A1 · Wing et al. · 2018 [cited by applicant]
US 20180219888A1 · Apostolopoulos · 2018 [cited by applicant]
US 20180324193A1 · Ronen et al. · 2018 [cited by applicant]
US 20190050564A1 · Pogorelik et al. · 2019 [cited by applicant]
US 20190238572A1 · Manadhata et al. · 2019 [cited by applicant]
US 20190260784A1 · Stockdale et al. · 2019 [cited by applicant]
US 20190311118A1 · Grafi et al. · 2019 [cited by applicant]
US 20190392176A1 · Taron et al. · 2019 [cited by applicant]
US 20200019721A1 · Shanmugam et al. · 2020 [cited by applicant]
US 20200076771A1 · Maier et al. · 2020 [cited by applicant]
US 20200175094A1 · Palmer et al. · 2020 [cited by applicant]
US 20200219009A1 · Dao et al. · 2020 [cited by applicant]
US 20200233979A1 · Maraghoosh et al. · 2020 [cited by applicant]
US 20200285737A1 · Kraus et al. · 2020 [cited by applicant]
US 20200409323A1 · Spalt et al. · 2020 [cited by applicant]
US 20210110062A1 · Oliner et al. · 2021 [cited by applicant]
US 20210141897A1 · Seifert et al. · 2021 [cited by applicant]
US 20210209464A1 · Bala et al. · 2021 [cited by applicant]
US 20210224425A1 · Nasr-Azadani et al. · 2021 [cited by applicant]
US 20210303695A1 · Grosse · 2021 [cited by examiner]
US 20210319098A1 · Pogorelik et al. · 2021 [cited by applicant]
US 20210319784A1 · Le Roux et al. · 2021 [cited by applicant]
US 20210357508A1 · Elovici et al. · 2021 [cited by applicant]
US 20210374247A1 · Sultana et al. · 2021 [cited by applicant]
US 20210407051A1 · Pardeshi et al. · 2021 [cited by applicant]
US 20220030009A1 · Hasan · 2022 [cited by applicant]
US 20220058444A1 · Olabiyi et al. · 2022 [cited by applicant]
US 20220070195A1 · Sern et al. · 2022 [cited by applicant]
US 20220083658A1 · Shah et al. · 2022 [cited by applicant]
US 20220114399A1 · Castiglione et al. · 2022 [cited by applicant]
US 20220147597A1 · Bhide et al. · 2022 [cited by applicant]
US 20220164444A1 · Prudkovskij et al. · 2022 [cited by applicant]
US 20220166795A1 · Simioni et al. · 2022 [cited by applicant]
US 20220182410A1 · Tupsamudre et al. · 2022 [cited by applicant]
US 20220253464A1 · Sloane et al. · 2022 [cited by applicant]
US 20220269796A1 · Chase et al. · 2022 [cited by applicant]
US 20220309179A1 · Payne et al. · 2022 [cited by applicant]
US 20230008037A1 · Venugopal et al. · 2023 [cited by applicant]
US 20230027149A1 · Kuan et al. · 2023 [cited by applicant]
US 20230049479A1 · Mozo Velasco et al. · 2023 [cited by applicant]
US 20230109426A1 · Hashimoto et al. · 2023 [cited by applicant]
US 20230128947A1 · Bhaskar · 2023 [cited by examiner]
US 20230148116A1 · Stokes et al. · 2023 [cited by applicant]
US 20230169397A1 · Smith et al. · 2023 [cited by applicant]
US 20230185912A1 · Sinn et al. · 2023 [cited by applicant]
US 20230185915A1 · Rao et al. · 2023 [cited by applicant]
US 20230208869A1 · Bisht et al. · 2023 [cited by applicant]
US 20230229960A1 · Zhu et al. · 2023 [cited by applicant]
US 20230252178A1 · Ruelke et al. · 2023 [cited by applicant]
US 20230259787A1 · David et al. · 2023 [cited by applicant]
US 20230269263A1 · Yarabolu · 2023 [cited by applicant]
US 20230274003A1 · Liu et al. · 2023 [cited by applicant]
US 20230289604A1 · Chan et al. · 2023 [cited by applicant]
US 20230351143A1 · Kutt et al. · 2023 [cited by applicant]
US 20230359903A1 · Cefalu et al. · 2023 [cited by applicant]
US 20230359924A1 · Maman · 2023 [cited by examiner]
US 20230385085A1 · Singh · 2023 [cited by applicant]
US 20230388324A1 · Thompson · 2023 [cited by applicant]
US 20240022585A1 · Burns et al. · 2024 [cited by applicant]
US 20240039948A1 · Koc et al. · 2024 [cited by applicant]
US 20240045959A1 · Marson et al. · 2024 [cited by applicant]
US 20240078337A1 · Kamyshenko et al. · 2024 [cited by applicant]
US 20240080333A1 · Burns et al. · 2024 [cited by applicant]
US 20240126611A1 · Phanishayee et al. · 2024 [cited by applicant]
US 20240160902A1 · Padgett et al. · 2024 [cited by applicant]
US 20240289628A1 · Parmar et al. · 2024 [cited by applicant]
US 20240296315A1 · Singh et al. · 2024 [cited by applicant]
US 20240386103A1 · Clement et al. · 2024 [cited by applicant]
Morozov et al., 2019, “Unsupervised Neural Quantization for Compressed-Domain Similarity Search,” International Conference on Computer Vision (ICCV) 2019 (11 pages). [cited by applicant]
Rijthoven et al., 2021, “HookNet: Multi-resolution convulational neural networks for semantic segmentation in histopathology whole-slide images,” Medical Imange Analysis 68:1-10. [cited by applicant]
Cited By (3)
US 12,505,648 US 12,608,861 US 12,682,249