Method for securing at least one application associated with an application protection agent, corresponding computer program product and devices

EP4702480A1Pending Publication Date: 2026-03-04NAGRAVISION SA
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-24
Publication Date
2026-03-04

AI Technical Summary

Technical Problem

Current security measures for applications, such as web-applications, are largely reactive and struggle to protect against Zero-Day vulnerabilities and other threats, as they rely on external controls like Web Application Firewalls that can be bypassed, and Runtime Application Self-Protection (RASP) solutions are complex to implement and operate effectively.

Method used

A method is introduced where a first security agent in a server associated with an application protection agent receives and sends threat detection information to a second security agent, allowing for proactive security rule updates and alerting network protection agents or operating systems about potential threats, thereby enhancing application security.

Benefits of technology

This approach enables proactive and reactive security measures, reducing the risk of undetected vulnerabilities and improving overall application security by leveraging a communication framework between security agents to enhance threat detection and response.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2024061165_31102024_PF_FP_ABST
    Figure EP2024061165_31102024_PF_FP_ABST
Patent Text Reader

Abstract

A method is proposed for securing at least one application operated in a first server communicatively connected to a second server. An application protection agent of a RASP type is associated with the application in the first server. A second security agent is implemented in the second server. According to such method, a first security agent implemented in the first server executes: - receiving (S430), from the application protection agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and - sending (S440), to the second security agent, the at least one first information.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Method for securing at least one application associated with an application protection agent, corresponding computer program product and devices.

[0002] 1. FIELD OF THE DISCLOSURE

[0003] The field of the disclosure is that of the execution of applications on electronic devices such as servers.

[0004] More specifically, the disclosure relates to a method for securing such applications.

[0005] The disclosure can be of interest in any field wherein such applications are subject to threats. This is the case for instance for applications running in an environment in communication with the internet (web-applications).

[0006] 2. TECHNOLOGICAL BACKGROUND

[0007] Security controls for applications, e.g. web-applications, are mostly reactive today, such as updating vulnerable libraries and patching operating systems when vulnerabilities are discovered. There may be a gap between the moment the vulnerability is discovered and the time it is fixed, depending on the vulnerability disclosure process followed and the vendor's response. Public disclosure of a Zero-Day vulnerability without prior communication with the vendor can have a significant impact on publicly exposed services and applications.

[0008] This reactive approach leaves engineers always one step behind bad actors, which makes catching Zero-Days as hard as it is. For instance, certain vulnerabilities are kept private and are for sale on the darkweb. Threats actors with financial support (state- sponsored or ransomware gangs) can exploit these vulnerabilities often for extended periods of time without being noticed.

[0009] Moreover, most applications cannot protect themselves, so people who deploy them in production usually rely on external controls, again, controls that are reactive, such as Web Application Firewalls (WAF). Even though coding languages offer secure ways to perform certain actions, such as sanitizing user input or executing secure deserialization, these controls are not mandatory, so developers often overlook them, leaving their applications vulnerable to a broad subset of Open Web Application Security Project (OWASP) top 10 vulnerabilities. Furthermore, external controls like WAFs can sometimes be bypassed using different techniques, like encoding the payload differently or wrapping the attack payload around special characters.

[0010] The problems highlighted above can be mitigated using Runtime Application Self Protection (RASP) techniques. However, RASP is hard to implement and to operate. RASP is not a plug-and-play technology; it requires a full cycle of validation with existing applications to ensure functionality and performance are not adversely affected. Moreover, such RASP solutions require deep understanding of threats.

[0011] There is thus a need for a solution for improving the security of applications, even when such application is associated with a protection agent, e.g. of the RASP type.

[0012] 3. SUMMARY

[0013] A particular aspect of the present disclosure relates to a method for securing at least one application operated in a first server communicatively connected to a second server. An application protection agent of a RASP type is associated with the application in the first server. A second security agent is implemented in the second server. According to such method, a first security agent implemented in the first server executes: receiving, from the application protection agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and sending, to the second security agent, the at least one first information.

[0014] Thus, the present disclosure proposes a new and inventive solution for improving the security of applications even when such application is associated with a protection agent, e.g. of the RASP type.

[0015] More particularly, the implementation of the first security agent in the server the application is implemented in allows receiving (e.g. through polling of the application protection agent) information indicative that a threat has been detected by the application protection agent in the application. Such information can be sent to the second security agent for further actions to be taken for protecting the application.

[0016] In some embodiments, the first security agent executes: receiving, from the application protection agent, at least one second information representative of an operation state of the application and / or of an operation state of the application protection agent.

[0017] For instance, the operation state is indicative that the application and / or the application protection agent is still active (or live).

[0018] In some embodiments, the receiving, from the application protection agent, at least one second information is executed responsive to sending, to the application protection agent, a request for the at least one second information.

[0019] In some embodiments, the sending, to the application protection agent, a request for the at least one second information is executed periodically.

[0020] In some embodiments, the mechanism of sending the request and receiving the corresponding at least one second information is performed through a polling scheme.

[0021] In some embodiments, the first security agent executes: sending, to the second security agent, the at least one second information.

[0022] Thus, the second security agent has the knowledge of the second information e.g. for further actions to be taken for protecting the application.

[0023] In some embodiments, the first security agent executes: receiving, from the second security agent, security rules; and sending, to the application protection agent, the security rules.

[0024] The at least one first information is indicative that a threat has been detected in the application by the application protection agent based on the security rules.

[0025] Thus, the security rules to be used by the application protection agent can be updated quickly in a proactive way (e.g. at any time) or in a reactive way (e.g. after a threat has been detected by the application protection agent in the application).

[0026] According to such method, the second security agent implemented in the second server executes, for the at least one application: receiving, from the first security agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and sending, to a network protection agent of the first server or to an operating system operating the application, an alert information indicative that a threat has been detected in the application.

[0027] For instance, the network protection agent is an Application Programming Interface (API) gateway or a firewall.

[0028] In some embodiments, the second security agent executes: receiving, from the first security agent, at least one second information representative of an operation state of the application and / or of an operation state of the application protection agent.

[0029] Thus, the second security agent can decide actions to be taken for protecting the application relying on more information about the application and / or the application protection agent.

[0030] In some embodiments, the second security agent executes: analyzing the at least one first information and / or the at least one second information delivering a decision information indicative of a decision about the reality of the threat in the application. The sending an alert information is executed when the decision information is indicative that it has been decided that the threat in the application is real.

[0031] Thus, a false alarm can be avoided based on such analysis. For instance, the analysis implements a forensic analysis of the first information and / or second information.

[0032] In some embodiments, the second security agent executes: sending, to the first security agent, security rules. The at least one first information is indicative that a threat has been detected in the application by the application protection agent based on the security rules.

[0033] Another aspect of the present disclosure relates to a computer program product comprising program code instructions for implementing the above-mentioned method for securing at least one application associated with an application protection agent (in any of the different embodiments discussed above), when the program is executed on a computer or a processor.

[0034] Another aspect of the present disclosure relates to an electronic device comprising means configured for executing all or part of the steps of the above- mentioned method for securing at least one application associated with an application protection agent as executed by the first security agent (in any of the different embodiments discussed above). Thus, the features and advantages of this device are the same as those of the corresponding steps of said method. Therefore, they are not detailed any further.

[0035] Another aspect of the present disclosure relates to an electronic device comprising means configured for implementing all or part of the steps of the above- mentioned method for securing at least one application associated with an application protection agent as executed by the second security agent (in any of the different embodiments discussed above). Thus, the features and advantages of this device are the same as those of the corresponding steps of said method. Therefore, they are not detailed any further.

[0036] Another aspect of the present disclosure relates to a server comprising an electronic device as discussed above (in any of the different embodiments discussed above).

[0037] 4. LIST OF FIGURES

[0038] Other features and advantages of embodiments shall appear from the following description, given by way of indicative and non-exhaustive examples and from the appended drawings, of which:

[0039] Figure 1 illustrates a plurality of first servers implementing an application, an application protection agent and a first security agent, the first servers being communicatively connected to a second server implementing a second security agent, according to one embodiment of the present disclosure;

[0040] Figure 2 illustrates an example of the structural blocks of an electronic device allowing steps of the method of Figure 4 to be executed by the first servers of Figure 1 according to one embodiment of the present disclosure;

[0041] Figure 3 illustrates an example of the structural blocks of an electronic device allowing steps of the method of Figure 4 to be executed by the second server of Figure 1 according to one embodiment of the present disclosure;

[0042] Figure 4 illustrates a flowchart of a method for securing at least one application associated with an application protection agent according to one embodiment of the present disclosure. 5. DETAILED DESCRIPTION

[0043] In all of the figures of the present document, the same numerical reference signs designate similar elements and steps.

[0044] Referring now to figure 1, we illustrate a plurality of first servers 150 1, 150 2, 150_n implementing an application 150app, the first servers 150_l, 150_2, ..., 150_n being communicatively connected to a second server 110 according to one embodiment of the present disclosure.

[0045] More particularly, the first servers 150_l, 150_2, ..., 150_n are communicatively connected to the second server 110 through a wired communications link, e.g. a xDSL communications link implementing an internet protocol, going through a core network 120. However, in other embodiments, the first servers 150_l, 150_2, ..., 150_n are communicatively connected to a second server 110 through a wireless communications link, e.g. based on a cellular protocol (e.g. a 3GPP 2G, 3G, 4G or 5G protocol), on a WIFI protocol or on a WiMAX protocol.

[0046] Back to Figure 1, a terminal equipment 100 (e.g. a smartphone or a tablet) is communicatively connected to one or more of the first servers 150_l, 150_2, ..., 150_n in order to access an application 150app (e.g. a web-application) executed on a respective first server 150_l or 150_2 or ... or 150_n. In the present embodiment, the communication between the terminal equipment 100 and the core network 120 goes through a base station 130 belonging to a wireless communications link, e.g. based on a cellular protocol (e.g. a 3GPP 2G, 3G, 4G or 5G protocol), on a WIFI protocol or on a WiMAX protocol. However, in other embodiments, such communication between the terminal equipment 100 and the core network 120 goes through a wired communications link, e.g. a xDSL communications link implementing an internet protocol.

[0047] Back to Figure 1, intentionally or not, such terminal equipment 100 may infect the application 150app executed on a respective first server 150_l or 150_2 or ... or 150_n. In order to protect the application 150app from such threat (e.g. one of the Open Worldwide Application Security Project, OWASP, identified threats), an application protection agent 150apa of a RASP type is associated with the application 150apa in the respective first server 150_l or 150_2 or ... or 150_n. However, as discussed above in relation with the "technological background" section, such RASP is hard to implement and to operate. In order to improve the security of the application 150app, the first servers 150_l, 150_2, ..., 150_n implement a first security agent 150sal and the second server 110 implement a second security agent 110sa2 according to the present disclosure. Indeed, as detailed below in relation with Figure 4, the implementation of the first security agent 150sal in the first servers 150_l, 150_2, ..., 150_n wherein an application 150app is implemented in allows receiving (e.g. through polling of the respective application protection agents 150apa) information indicative that a threat has been detected in a respective application 150app. Such information can be sent to the second security agent 110sa2 for further actions to be taken for protecting such application 150app, thus improving the security of said application 150app.

[0048] More particularly, for improving the security of an application 150app, the first security agent 150sal executes some steps of the method for securing at least one application associated with an application protection agent as detailed below in relation with Figure 4 (in the various embodiments disclosed below in relationship with Figure 4). For that, a first electronic device 150ed comprises means configured for executing the first security agent 150sal, and in particular for executing all or part of the steps of the method for securing at least one application associated with an application protection agent, as detailed below in relation with Figure 4 (in the various embodiments disclosed below in relationship with Figure 4), as executed by the first security agent 150sal. More particularly, in some embodiments the first electronic device 150ed comprises (Figure 2): a non-volatile memory 203 (e.g. a read-only memory (ROM), a hard disk, a flash memory, etc.); a volatile memory 201 (e.g. a random-access memory or RAM) and a processor 202.

[0049] The non-volatile memory 203 is a non-transitory computer-readable carrier medium. It stores executable program code instructions, which are executed by the processor 202 in order to enable implementation of some steps of the method described below (method for securing at least one application associated with an application protection agent) in the various embodiments disclosed below in relationship with Figure 4.

[0050] Upon initialization, the aforementioned program code instructions are transferred from the non-volatile memory 203 to the volatile memory 201 so as to be executed by the processor 202. The volatile memory 201 likewise includes registers for storing the variables and parameters required for this execution.

[0051] The steps of the method for securing at least one application associated with an application protection agent may be implemented equally well: by the execution of a set of program code instructions executed by a reprogrammable computing machine such as a PC type apparatus, a DSP (digital signal processor) or a microcontroller. This program code instructions can be stored in a non- transitory computer-readable carrier medium that is detachable (for example a CD-ROM, a DVD-ROM, a USB key) or non-detachable; or by a dedicated machine or component, such as an FPGA (Field Programmable Gate Array), an ASIC (Application-Specific Integrated Circuit) or any dedicated hardware component.

[0052] In other words, the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it may also be implemented in hardware form or any form combining a hardware portion and a software portion.

[0053] In some embodiments, the first electronic device 150ed is implemented in one or more of the first servers 150 1, 150 2, ..., 150_n.

[0054] Back to Figure 1, for improving the security of the application 150app, the second security agent 110sa2 executes some steps of the method for securing at least one application associated with an application protection agent as detailed below in relation with Figure 4 (in the various embodiments disclosed below in relationship with Figure 4). For that, a second electronic device 150ed comprises means configured for executing the second security agent 110sa2, and in particular for executing all or part of the steps of the method for securing at least one application associated with an application protection agent, as detailed below in relation with Figure 4 (in the various embodiments disclosed below in relationship with Figure 4), as executed by the second security agent 110sa2. More particularly, in some embodiments the second electronic device HOed comprises (Figure 3): a non-volatile memory 303 (e.g. a read-only memory (ROM), a hard disk, a flash memory, etc.); a volatile memory 301 (e.g. a random-access memory or RAM) and a processor 302.

[0055] The non-volatile memory 303 is a non-transitory computer-readable carrier medium. It stores executable program code instructions, which are executed by the processor 302 in order to enable implementation of some steps of the method described below (method for securing at least one application associated with an application protection agent) in the various embodiments disclosed below in relationship with Figure 4.

[0056] Upon initialization, the aforementioned program code instructions are transferred from the non-volatile memory 303 to the volatile memory 301 so as to be executed by the processor 302. The volatile memory 301 likewise includes registers for storing the variables and parameters required for this execution.

[0057] The steps of the method for securing at least one application associated with an application protection agent may be implemented equally well: by the execution of a set of program code instructions executed by a reprogrammable computing machine such as a PC type apparatus, a DSP (digital signal processor) or a microcontroller. This program code instructions can be stored in a non- transitory computer-readable carrier medium that is detachable (for example a CD-ROM, a DVD-ROM, a USB key) or non-detachable; or by a dedicated machine or component, such as an FPGA (Field Programmable Gate Array), an ASIC (Application-Specific Integrated Circuit) or any dedicated hardware component.

[0058] In other words, the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it may also be implemented in hardware form or any form combining a hardware portion and a software portion.

[0059] In some embodiments, the second electronic device llOed is implemented in the second server 110.

[0060] In some embodiments, only one first server 150_l or 150_2 or ... or 150_n is connected to the second server 110 implementing the second security agent 110sa2. In some embodiments, a plurality of first servers 150_l or 150_2 or ... or 150_n is connected to the second server 110 implementing the second security agent 110sa2. In other words, in the present description, depending on the considered embodiment the index n in the numeral references may be any natural integer, e.g. n = 1, 2, 3, etc.

[0061] Referring now to Figure 4, we describe the steps of a method for securing at least one application 150app associated with an application protection agent 150apa according to one embodiment of the present disclosure and taking as an illustrative example the configuration discussed above in relation with Figure 1.

[0062] More particularly, in a step S400, the second security agent 110sa2 implemented in the second server 110 sends security rules to one or more of the first security agents 150sal implemented in the first servers 150_l, 150_2, ..., 150_n. Conversely, during the step S400, one or more of the first security agents 150sal implemented in the first servers 150_l, 150_2, ..., 150_n receive the security rules sent by the second security agent 110sa2. For instance: in step S400_l, the first security agents 150sal implemented in the first server 150 1 receives the security rules sent by the second security agent 110sa2; in step S400_2, the first security agents 150sal implemented in the first server 150_2 receives the security rules sent by the second security agent 110sa2;

[0063] ...; and in step S400_n, the first security agents 150sal implemented in the first server 150_n receives the security rules sent by the second security agent 110sa2.

[0064] Such security rules allow the first security agents 150sal to program or update in a proactive way the application protection agent 150apa associated with the application 150app in the respective first server 150_l or 150_2 or ... or 150_n. More generally, the step S400 can be executed whether in a proactive way (e.g. at any time) or in a reactive way (e.g after a detection of a threat happens. This can be the case e.g. after the execution of step S480 detailed below).

[0065] In a step S410, the first security agents 150sal that received security rules during step S400 send said security rules to the application protection agent 150apa implemented in the respective first server 150_l, 150_2, ..., 150_n. For instance: in step S410_l, the first security agents 150sal implemented in the first server 150_l sends the security rules to the application protection agent 150apa associated with the application 150apa in the first server 150 1; in step S410_2, the first security agents 150sal implemented in the first server 150_2 sends the security rules to the application protection agent 150apa associated with the application 150apa in the first server 150_2;

[0066] ...; and in step S410_n, the first security agents 150sal implemented in the first server 150_n sends the security rules to the application protection agent 150apa associated with the application 150apa in the first server 150_n.

[0067] In a step S420, the terminal equipment 100 is at the origin of an attack directed to at least one application 150apa implemented in a respective first server 150_l or 150_2 or ... or 150_n (e.g. an attack corresponding to one of the threats identified by the OWASP). For instance: in step S420_l, the terminal equipment 100 is at the origin of an attack directed to the application 150apa implemented in the first server 150 1; in step S420_2, the terminal equipment 100 is at the origin of an attack directed to the application 150apa implemented in the first server 150_2;

[0068] ...; and in step S420_n, the terminal equipment 100 is at the origin of an attack directed to the application 150apa implemented in the first server 150_n.

[0069] In a stepS430, at least one first security agent 150sal implemented in a respective first server 150_l or 150_2 or ... or 150_n wherein an application 150app is subject to an attack receives, from the respective application protection agent 150apa, respective at least one first information indicative that a threat has been detected in the application 150app by the application protection agent 150apa. For instance: in step S430_l, the first security agent 150sal implemented in the first server 150 1 receives, from the application protection agent 150apa implemented in the first server 150_l, at least one first information indicative that a threat has been detected in the application 150app executed on the first server 150_l by said application protection agent 150apa; in step S430_2, the first security agent 150sal implemented in the first server 150 2 receives, from the application protection agent 150apa implemented in the first server 150_2, at least one first information indicative that a threat has been detected in the application 150app executed on the first server 150_2 by said application protection agent 150apa; and in step S430_n, the first security agent 150sal implemented in the first server 150_n receives, from the application protection agent 150apa implemented in the first server 150_n, at least one first information indicative that a threat has been detected in the application 150app executed on the first server 150_n by said application protection agent 150apa.

[0070] For instance, the first information is representative that a threat has been detected in the respective application 150app by the application protection agent 150apa based on the security rules that have been uploaded during step S400 detailed above.

[0071] In a step S440, the at least one first security agent 150sal that received at least one first information during step S430 sends, to the second security agent 110sa2, the respective at least one first information. Conversely, during step S440, the second security agent 110sa2 receives, from the at least one first security agent 150sal that received at least one first information during step S430, the respective at least one first information. For instance: in step S440_l, the second security agent 110sa2 receives from the first security agent 150sal implemented in the first server 150_l, the at least one first information indicative that a threat has been detected in the application 150app executed on the first server 150_l; in step S440_2, the second security agent 110sa2 receives from the first security agent 150sal implemented in the first server 150 2, the at least one first information indicative that a threat has been detected in the application 150app executed on the first server 150_2; and in step S440_n, the second security agent 110sa2 receives from the first security agent 150sal implemented in the first server 150_n, the at least one first information indicative that a threat has been detected in the application 150app executed on the first server 150_n.

[0072] In a step S450, at least one first security agents 150sal implemented in a respective first server 150_l, 150_2, 150_n receives, from the respective application protection agent 150apa, respective at least one second information representative of an operation state of the respective application 150app and / or of an operation state of the respective application protection agent 150apa. For instance: in step S450_l, the first security agent 150sal implemented in the first serversl50_l receives, from the application protection agent 150apa implemented in the first server 150_l, at least one second information representative of an operation state of the application 150app executed on the first server 150_l and / or of an operation state of said application protection agent 150apa; in step S450 2, the first security agent 150sal implemented in the first server 150_2 receives, from the application protection agent 150apa implemented in the first server 150_2, at least one second information representative of an operation state of the application 150app executed on the first server 150_2 and / or of an operation state of said application protection agent 150apa; and in step S450_n, the first security agent 150sal implemented in the first server 150_n receives, from the application protection agent 150apa implemented in the first server 150_n, at least one second information representative of an operation state of the application 150app executed on the first server 150_n and / or of an operation state of said application protection agent 150apa.

[0073] For instance, the operation state is indicative that the respective application 150app and / or the respective application protection agent 150apa is still active (or live).

[0074] In some embodiments, the step S450 (and thus the steps S450_l, S450_2, ..., S450_n) is executed responsive to sending, by the first security agent 150sal to the respective application protection agent 150apa, a request for the respective at least one second information.

[0075] In some embodiments, said sending, to the respective application protection agent 150apa, a request for the respective at least one second information is executed periodically. For instance, the mechanism of sending the request and receiving the respective second information sent by the respective application protection agent 150apa is performed through a polling scheme.

[0076] Back to Figure 4, in a step S460, the at least one first security agent 150sal that received the respective at least one second information during step S430 send, to the second security agent 110sa2, said respective at least one second information. Conversely, during step S460, the second security agent 110sa2 receives, from the at least one first security agent 150sal that received respective at least one second information during step S430, said respective at least one second information. For instance: in step S460_l, the second security agent 110sa2 receives, from the first security agent 150sal implemented in the first server 150_l, the at least one second information representative of an operation state of the application 150app executed on the first server 150_l and / or of an operation state of the application protection agent 150apa implemented in the first server 150_l; in step S460_2, the second security agent 110sa2 receives, from the first security agent 150sal implemented in the first server 150_2, the at least one second information representative of an operation state of the application 150app executed on the first server 150_2 and / or of an operation state of the application protection agent 150apa implemented in the first server 150_2;

[0077] ...; and in step S460_n, the second security agent 110sa2 receives from the first security agent 150sal implemented in the first server 150_n, the at least one second information representative of an operation state of the application 150app executed on the first server 150_n and / or of an operation state of the application protection agent 150apa implemented in the first server 150_n.

[0078] Thus, the second security agent 110sa2 can decide actions to be taken for protecting the application 150app relying on more information about the application(s) 150app and / or the application protection agent(s) 150apa.

[0079] In a step S470, the second security agent 110sa2 analyzes the at least one first information received during execution of the step S440 (and thus the steps S440_l, S440_2, S440_n), and the at least one second information received during execution of the step 5460 (and thus the steps S460_l, S460_2, S460_n). The execution of step

[0080] S470 delivers a decision information indicative of a decision about the reality of the threat detected in relation with a given application 150app executed on a respective first server 150_l or 150_2 or ... or 150_n.

[0081] Thus, false alarms can be avoided based on such analysis. For instance, the analysis implements a forensic analysis of the at least one first information and / or of the at least one second information.

[0082] However, in some embodiments, during step S470, the second security agent 110sa2 analyzes the at least one first information received during execution of the step S440 (and thus the steps S440_l, S440_2, ..., S440_n) only. In such embodiments, the steps 5450 (and thus the steps S450 1, S450 2, ..., S450_n) and S460 (and thus the steps S460_l, S460_2, ..., S460_n) are not necessarily executed.

[0083] In some embodiments, during step 5470, the second security agent 110sa2 analyzes the at least one second information received during execution of the step 5460 (and thus the steps S460_l, S460_2, ..., S460_n) only. In such embodiments, the steps S430 (and thus the steps 5430 1, S430 2, ..., S430_n) and 5440 (and thus the steps S440_l, S440_2, ..., S440_n) are not necessarily executed. In a step S480, the second security agent 110sa2 sends, for at least one first server 150_l or 150_2 or ... or 150_n for which it has been decided during step S470 that there is a threat associated with an application 150app executed on said first server: to a network protection agent (e.g. the network protection agent is an API gateway or a firewall) of said first server 150_l or 150_2 or ... or 150_n; or to an operating system operating the application 150app in said first server 150_l or 150_2 or ... or 150_n, an alert information indicative that a threat has been detected in the respective application 150app. This allows the network protection agent or the operating system to put in place additional protection mechanisms or to trigger them automatically (e.g. based on automated Security Orchestration and Response (SOAR) capabilities in an API).

[0084] In some embodiments, the step S470 is not executed. In such embodiments, during the step S480, the second security agent 110sa2 sends at least one alert information responsive to receiving a respective at least one first information (step S440 (and thus the steps S440_l, S440_2, ..., S440_n)) and / or a respective at least one second information (step S460 (and thus the steps S460_l, S460_2, ..., S460_n)). In those embodiments, the step S480 is executed responsive: to the execution of step S440 (and thus the steps S440_l, S440_2, ..., S440_n), i.e. when the second security agent 110sa2 receives at least one first information sent by the first security agent 150sal implemented in a respective first server 150_l or 150_2 or ... or 150_n; and / or to the execution of step S460 (and thus the steps S460 1, S460 2, ..., S460_n), i.e. when the second security agent 110sa2 receives at least one second information sent by the first security agent 150sal implemented in a respective first server 150_l or 150_2 or ... or 150_n.

[0085] More particularly, the second security agent 110sa2 sends at least one alert information to a network protection agent or to an operating system operating executed by a respective first server 150_l or 150_2 or ... or 150_n that implements a first security agent 150sal that sent at least one first information (during step S440) and / or at least one second information (during step S460). In some embodiments, the step S400 is executed responsive to the execution of the step S480. In such embodiments, the security rules are updated in the application protection agent 150apa in a reactive way, i.e. after detection of a threat.

[0086] In some embodiments, a same application 150app is executed on a plurality of first servers 150_l, 150_2, ..., 150_n. In such case, when a threat is detected by the second security agent 110sa2, the solution can be deployed at the same time in all or part of the first servers of the plurality of first servers 150_l, 150_2, ..., 150_n, even if only part of the first security agent 150sal sent first information and / or second information to the second security agent 110sa2. This improves the overall protection process associated with an application 150app of a given type executed by different servers.

Claims

CLAIMS1. Method for securing at least one application (150app) operated in a first server (150 1, 150 2, 150c) communicatively connected to a second server (110), an application protection agent (150apa) of a run-time application self-protection, hereafter RASP, type, associated with the application in the first server, a second security agent (110sa2) implemented in the second server, characterized in that a first security agent (150sal) implemented in the first server executes: receiving (S430), from the application protection agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and sending (S440), to the second security agent, the at least one first information.

2. Method according to claim 1, wherein the first security agent executes: receiving (S450), from the application protection agent, at least one second information representative of an operation state of the application and / or of an operation state of the application protection agent.

3. Method according to claim 2, wherein said receiving, from the application protection agent, at least one second information is executed responsive to sending, to the application protection agent, a request for said at least one second information.

4. Method according to claim 3, wherein said sending, to the application protection agent, a request for said at least one second information is executed periodically.

5. Method according to claim 3 or 4, wherein the mechanism of sending the request and receiving the corresponding at least one second information is performed through a polling scheme.

6. Method according to any of the claims 2 to 5, wherein the first security agent executes: sending (S460), to the second security agent, the at least one second information.

7. Method according to any of the claims 1 to 6, wherein the first security agent executes: receiving (S400), from the second security agent, security rules; and sending (S410), to the application protection agent, the security rules, and wherein the at least one first information is indicative that a threat has been detected in the application by the application protection agent based on the security rules.

8. Method for securing at least one application (150app) operated in a first server (150_l, 150_2, 150c) communicatively connected to a second server (110), an application protection agent (150apa) of a run-time application self-protection, hereafter RASP, type, associated with the application in the first server, a first security agent (150sal) implemented in the first server, characterized in that a second security agent (110sa2) implemented in the second server executes for said at least one application: receiving (S440), from the first security agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and sending (S480), to a network protection agent of the first server or to an operating system operating the application, an alert information indicative that a threat has been detected in the application.

9. Method according to claim 8, wherein the second security agent executes: receiving (S460), from the first security agent, at least one second information representative of an operation state of the application and / or of an operation state of the application protection agent.

10. Method according to claim 8 or 9, wherein the second security agent executes: analyzing (S470) the at least one first information and / or the at least one second information delivering a decision information indicative of a decision about the reality of the threat in the application, and wherein said sending an alert information is executed when the decision information is indicative that it has been decided that the threat in the application is real.

11. Method according to any of the claims 8 to 10, wherein the second security agent executes: sending (S400), to the first security agent, security rules, and wherein the at least one first information is indicative that a threat has been detected in the application by the application protection agent based on the security rules.

12. Computer program product characterized in that it comprises program code instructions for implementing a method according to at least one of the claims 1 to 11, when said program is executed on a computer or a processor.

13. Device (lOOed) for securing at least one application (150app) operated in a first server (150_l, 150_2, 150c) communicatively connected to a second server (110), an application protection agent (150apa) of a run-time application self-protection, hereafter RASP, type, associated with the application in the first server, a second security agent (110sa2) implemented in the second server, characterized in that it comprises a processor (202) or a dedicated computing machine configured for executing, when implemented in the first server: receiving, from the application protection agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and sending, to the second security agent, the at least one first information.

14. Device (150ed) for securing at least one application (150app) operated in a firstserver (150_l, 150_2, 150c) communicatively connected to a second server (110), an application protection agent (150apa) of a run-time application self-protection, hereafter RASP, type, associated with the application in the first server, a first security agent (150sal) implemented in the first server, characterized in that it comprises a processor (302) or a dedicated computing machine configured for executing, for said at least one application, when implemented in the second server: receiving, from the first security agent, at least one first information indicative that a threat has been detected in the application by the application protection agent; and sending, to a network protection agent of the first server or to an operating system operating the application, an alert information indicative that a threat has been detected in the application.

15. Server comprising a device according to claim 13 or 14.