IP Library Granted Patent US 12,223,337
Granted Patent B2
US 12,223,337 · App. 18/464,799 · Granted Feb 11, 2025

Cloud native virtual machine runtime protection

Inventors: Liron Levin (Kefar Sava, IL); John Morello (Baton Rouge, LA); Dima Stopel (Herzliya, IL); Michael Velbaum (Herzliya, IL); Itay Abramowsky (Herzliya, IL); Isaac Schnitzer (Ra'anana, IL)
Assignee: Palo Alto Networks, Inc.
G06F9/455G06F9/44505G06F9/45558G06F16/2379G06F18/214G06F21/51G06F21/53G06F21/54G06N20/00H04L63/20G06F2009/45583G06F2009/45587G06F2009/45591G06F2009/45595
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,223,337
App. No.
18/464,799
Granted
Feb 11, 2025
Kind
B2
Abstract

A system and method for cloud native virtual machine (VM) runtime protection. The method includes creating a normal behavior model for a cloud native VM by training a machine learning model using a training data set including training activities performed by the cloud native VM, the cloud native VM being configured to provide at least one service, wherein the normal behavior model defines at least one capability of each service based on a set of capabilities for respective known services stored within a library of service-to-capability mappings, wherein each capability of a service indicates a plurality of discrete behaviors required by the service; and monitoring an execution of the cloud native VM to detect a deviation from the normal behavior model, wherein the deviation is caused by at least one abnormal behavior of one of the services that is not among the discrete behaviors defined in capabilities for the service.

Claims (47)

1. A method comprising:

training a machine learning model to detect normal behavior of one or more services running on a cloud native virtual machine (VM), wherein the machine learning model is trained to detect normal behavior on training data comprising a plurality of discrete behaviors of the one or more services and indications of whether each of the plurality of discrete behaviors corresponds to normal or abnormal behavior;

defining capabilities that indicate at least one of allowed behaviors and denied behaviors for each of the one or more services based, at least in part, on behaviors for the one or more services that the trained machine learning model has detected as normal or abnormal;

generating a normal behavior model according to the defined capabilities and the trained machine learning model; and

detecting a behavior at the cloud native VM that deviates from the normal behavior model, wherein detecting a behavior that deviates from the normal behavior model comprises at least one of,

detecting the behavior as an abnormal behavior with the trained machine learning model,

detecting the behavior as not corresponding to an allowed behavior for a defined capability, and

detecting the behavior as corresponding to a denied behavior for a defined capability.

2. The method of claim 1 , wherein defining the capabilities comprises defining the capabilities according to hierarchical relationships, wherein the hierarchical relationships define associations between the cloud native VM, the one or more services running on the cloud native VM, the defined capabilities of the one or more services, and behaviors allowed and denied by the defined capabilities.

3. The method of claim 1 , wherein the defined capabilities comprise one or more behavioral rules that define at least one of allowed and denied behaviors for the one or more services.

4. The method of claim 1 , wherein the plurality of discrete behaviors includes at least one of running a process, using an input argument for a process, and accessing a file path.

5. The method of claim 1 , wherein creating the normal behavior model further comprises,

correlating behaviors among the plurality of discrete behaviors for the one or more services with respect to at least one of a parameter used for a process executed as part of the plurality of discrete behaviors, a socket used as part of the plurality of discrete behaviors, and a type of file created as part of the plurality of discrete behaviors; and

indicating correlated discrete behaviors in capabilities for corresponding ones of the one or more services.

6. The method of claim 1 , further comprising uploading the normal behavior model to a cloud service, wherein the normal behavior model is accessible to installations accessing the cloud service when uploaded to the cloud service.

7. The method of claim 6 , further comprising enhancing defined capabilities of the normal behavior model with behavioral rules indicating allowed and denied behaviors at runtime execution of the normal behavior model by the installations accessing the cloud service.

8. A non-transitory machine-readable medium having program code stored thereon, the program code comprising instructions to:

train a machine learning model to detect normal behavior of one or more services running on a cloud native virtual machine (VM), wherein the machine learning model is trained to detect normal behavior on training data comprising a plurality of discrete behaviors of the one or more services and indications of whether each of the plurality of discrete behaviors corresponds to normal or abnormal behavior;

generate a normal behavior model according to defined capabilities for the one or more services and the trained machine learning model, wherein the defined capabilities indicate at least one of allowed behaviors and denied behaviors for each of the one or more services, further wherein defined capabilities are defined based, at least in part, behaviors for the one or more services that the machine learning model has detected as normal or abnormal; and

detect a behavior that deviates from the normal behavior model, wherein the program code to detect a behavior that deviates from the normal behavior model comprises instructions to at least one of,

detect the behavior as an abnormal behavior with the trained machine learning model,

detect the behavior as not corresponding to an allowed behavior for a defined capability, and

detect the behavior as corresponding to a denied behavior for a defined capability.

9. The non-transitory machine-readable medium of claim 8 , wherein the program code to define the capabilities comprises instructions to define the capabilities according to hierarchical relationships, wherein the hierarchical relationships define associations between the cloud native VM, the one or more services running on the cloud native VM, the defined capabilities of the one or more services, and behaviors allowed and denied by the defined capabilities.

10. The non-transitory machine-readable medium of claim 8 , wherein the defined capabilities comprise one or more behavioral rules that define at least one of allowed and denied behaviors for the one or more services.

11. The non-transitory machine-readable medium of claim 8 , wherein the plurality of discrete behaviors includes at least one of running a process, using an input argument for a process, and accessing a file path.

12. The non-transitory machine-readable medium of claim 8 , wherein the program code to create the normal behavior model further comprises instructions to:

correlate behaviors among the plurality of discrete behaviors for the one or more services with respect to at least one of a parameter used for a process executed as part of the plurality of discrete behaviors, a socket used as part of the plurality of discrete behaviors, and a type of file created as part of the plurality of discrete behaviors; and

indicate correlated discrete behaviors in capabilities for corresponding ones of the one or more services.

13. The non-transitory machine-readable medium of claim 8 , wherein the program code further comprises instructions to upload the normal behavior model to a cloud service, wherein the normal behavior model is accessible to installations accessing the cloud service when uploaded to the cloud service.

14. The non-transitory machine-readable medium of claim 13 , wherein the program code further comprises instructions to enhance defined capabilities of the normal behavior model with behavioral rules indicating allowed and denied behaviors at runtime execution of the normal behavior model by the installations accessing the cloud service.

15. An apparatus comprising:

a processor; and

a machine-readable medium having instructions stored thereon that are executable by the processor to cause the apparatus to,

train a machine learning model to detect normal behavior of one or more services running on a cloud native virtual machine (VM), wherein the machine learning model is trained to detect normal behavior on training data comprising a plurality of discrete behaviors of the one or more services and indications of whether each of the plurality of discrete behaviors corresponds to normal or abnormal behavior;

generate a normal behavior model according to defined capabilities for the one or more services and the trained machine learning model, wherein the defined capabilities indicate at least one of allowed behaviors and denied behaviors for each of the one or more services, further wherein defined capabilities are defined based, at least in part, behaviors for the one or more services that the machine learning model has detected as normal or abnormal; and

detect a behavior that deviates from the normal behavior model, wherein the instructions to detect a behavior that deviates from the normal behavior model comprise instructions executable by the processor to cause the apparatus to at least one of,

detect the behavior as an abnormal behavior by the trained machine learning model,

detect the behavior as not corresponding to an allowed behavior for a defined capability, and

detect the behavior as corresponding to a denied behavior for a defined capability.

16. The apparatus of claim 15 , wherein the instructions to define the capabilities comprise instructions executable by the processor to cause the apparatus to define the capabilities according to hierarchical relationships, wherein the hierarchical relationships define associations between the cloud native VM, the one or more services running on the cloud native VM, the defined capabilities of the one or more services, and behaviors allowed and denied by the defined capabilities.

17. The apparatus of claim 15 , wherein the defined capabilities comprise one or more behavioral rules that define at least one of allowed and denied behaviors for the one or more services.

18. The apparatus of claim 15 , wherein the plurality of discrete behaviors includes at least one of running a process, using an input argument for a process, and accessing a file path.

19. The apparatus of claim 15 , wherein the instructions to create the normal behavior model further comprise instructions executable by the processor to cause the apparatus to:

correlate behaviors among the plurality of discrete behaviors for the one or more services with respect to at least one of a parameter used for a process executed as part of the plurality of discrete behaviors, a socket used as part of the plurality of discrete behaviors, and a type of file created as part of the plurality of discrete behaviors; and

indicate correlated discrete behaviors in capabilities for corresponding ones of the one or more services.

20. The apparatus of claim 15 , further comprising instructions executable by the processor to cause the apparatus to upload the normal behavior model to a cloud service, wherein the normal behavior model is accessible to installations accessing the cloud service when uploaded to the cloud service.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2024
From: TWISTLOCK LTD.
To: PALO ALTO NETWORKS, INC.
Reel/Frame 068685/0195 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2023
From: LEVIN, LIRON; MORELLO, JOHN; STOPEL, DIMA; VELBAUM, MICHAEL; ABRAMOWSKY, ITAY; SCHNITZER, ISAAC
To: TWISTLOCK LTD.
Reel/Frame 064863/0104 →
Continuity (4)
Continuation 17539658 · Dec 1, 2021
Continuation 16108824 · Aug 22, 2018
Provisional Application 62700586 · Jul 19, 2018
Related Publication 20230418637A1 · Dec 28, 2023
References Cited (67)
US 8589403B2 · Marquardt et al. · 2013 [cited by applicant]
US 8769684B2 · Stolfo et al. · 2014 [cited by applicant]
US 8935793B2 · Weinstein · 2015 [cited by applicant]
US 9165142B1 · Sanders et al. · 2015 [cited by applicant]
US 9294501B2 · Mesdaq et al. · 2016 [cited by applicant]
US 9610893B2 · Lopez-Hinojosa et al. · 2017 [cited by applicant]
US 9661018B1 · Aziz · 2017 [cited by examiner]
US 9747440B2 · Gupta · 2017 [cited by examiner]
US 9794275B1 · Benameur et al. · 2017 [cited by applicant]
US 9804909B1 · Fang et al. · 2017 [cited by applicant]
US 9843596B1 · Averbuch et al. · 2017 [cited by applicant]
US 10042697B2 · Ahad · 2018 [cited by applicant]
US 10083071B2 · Sonalker et al. · 2018 [cited by applicant]
US 10110600B1 · Smica · 2018 [cited by applicant]
US 10210329B1 · Malik et al. · 2019 [cited by applicant]
US 10268493B2 · Thomas · 2019 [cited by examiner]
US 10270788B2 · Faigon et al. · 2019 [cited by applicant]
US 10328855B2 · Lopez-Hinojosa et al. · 2019 [cited by applicant]
US 10397255B1 · Bhalotra et al. · 2019 [cited by applicant]
US 10417413B2 · Sikder · 2019 [cited by applicant]
US 10474934B1 · Cosic · 2019 [cited by applicant]
US 10572375B1 · Wagner · 2020 [cited by applicant]
US 10621019B1 · Faulhaber, Jr. et al. · 2020 [cited by applicant]
US 10652274B2 · Barak · 2020 [cited by examiner]
US 10713543B1 · Skuin et al. · 2020 [cited by applicant]
US 10776487B2 · Tora et al. · 2020 [cited by applicant]
US 10795715B2 · Ahmad · 2020 [cited by examiner]
US 10831519B2 · Faulhaber, Jr. · 2020 [cited by examiner]
US 10911474B2 · Chandana · 2021 [cited by examiner]
US 10951648B2 · Doron et al. · 2021 [cited by applicant]
US 10956833B1 · Yamane · 2021 [cited by examiner]
US 10997009B2 · Poghosyan et al. · 2021 [cited by applicant]
US 11238158B2 · Vijayvargiya · 2022 [cited by examiner]
US 11301759B2 · Lin · 2022 [cited by examiner]
US 11403551B2 · Lavid Ben Lulu · 2022 [cited by examiner]
US 11461469B2 · Wolfin · 2022 [cited by examiner]
US 11522887B2 · Dunn · 2022 [cited by examiner]
US 11556633B2 · Mukherjee · 2023 [cited by examiner]
US 11689576B2 · Levin · 2023 [cited by examiner]
US 11846980B2 · Pendyala · 2023 [cited by examiner]
US 20160099963A1 · Mahaffey et al. · 2016 [cited by applicant]
US 20160350173A1 · Ahad · 2016 [cited by applicant]
US 20160359695A1 · Yadav et al. · 2016 [cited by applicant]
US 20170214702A1 · Moscovici et al. · 2017 [cited by applicant]
US 20170220651A1 · Mathew et al. · 2017 [cited by applicant]
US 20170353477A1 · Faigon et al. · 2017 [cited by applicant]
US 20180060581A1 · El-Moussa et al. · 2018 [cited by applicant]
US 20180060582A1 · El-Moussa et al. · 2018 [cited by applicant]
US 20180060744A1 · Achin et al. · 2018 [cited by applicant]
US 20180083833A1 · Zoll et al. · 2018 [cited by applicant]
US 20180091531A1 · El-Moussa et al. · 2018 [cited by applicant]
US 20180130006A1 · Adjaoute · 2018 [cited by examiner]
US 20180196732A1 · Dolev et al. · 2018 [cited by applicant]
US 20180285563A1 · Browne et al. · 2018 [cited by applicant]
US 20180288091A1 · Doron et al. · 2018 [cited by applicant]
US 20180309770A1 · Han et al. · 2018 [cited by applicant]
US 20180351838A1 · Lui et al. · 2018 [cited by applicant]
US 20190044963A1 · Rajasekharan et al. · 2019 [cited by applicant]
US 20190068627A1 · Thampy et al. · 2019 [cited by applicant]
US 20190121979A1 · Chari et al. · 2019 [cited by applicant]
US 20190179678A1 · Banerjee · 2019 [cited by applicant]
US 20190286826A1 · Bargury et al. · 2019 [cited by applicant]
US 20190294477A1 · Koppes et al. · 2019 [cited by applicant]
US 20190294960A1 · Niemi · 2019 [cited by applicant]
US 20190377625A1 · Chintalapati et al. · 2019 [cited by applicant]
US 20200167671A1 · Okada · 2020 [cited by examiner]
US 20200183769A1 · Poghosyan et al. · 2020 [cited by applicant]
Cited By (1)
US 12,615,241