Movatterモバイル変換


[0]ホーム

URL:


ITTO20130216A1 - PROCEDURE FOR ANALYSIS OF VULNERABILITY AND EVALUATION OF RELATED RISKS OF INTERNET APPLICATIONS - Google Patents

PROCEDURE FOR ANALYSIS OF VULNERABILITY AND EVALUATION OF RELATED RISKS OF INTERNET APPLICATIONS
Download PDF

Info

Publication number
ITTO20130216A1
ITTO20130216A1IT000216AITTO20130216AITTO20130216A1IT TO20130216 A1ITTO20130216 A1IT TO20130216A1IT 000216 AIT000216 AIT 000216AIT TO20130216 AITTO20130216 AIT TO20130216AIT TO20130216 A1ITTO20130216 A1IT TO20130216A1
Authority
IT
Italy
Prior art keywords
risk
internet
vulnerability
assessment
analysis
Prior art date
Application number
IT000216A
Other languages
Italian (it)
Inventor
Francesco Beatino
Antonio Massimo Parata
Original Assignee
Euery Srl
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Euery SrlfiledCriticalEuery Srl
Priority to IT000216ApriorityCriticalpatent/ITTO20130216A1/en
Publication of ITTO20130216A1publicationCriticalpatent/ITTO20130216A1/en

Links

Classifications

Landscapes

Description

Translated fromItalian

Descrizione dell'invenzione industriale dal titolo:Description of the industrial invention entitled:

“PROCEDIMENTO PER ANALISI DI VULNERABILITÀ E VALUTAZIONE DEI RISCHI"PROCEDURE FOR VULNERABILITY ANALYSIS AND RISK ASSESSMENT

CORRELATI DI APPLICAZIONI INTERNET"RELATED INTERNET APPLICATIONS "

DESCRIZIONEDESCRIPTION

La presente invenzione concerne un procedimento per analisi di vulnerabilità e valutazion dei rischi correlati di applicazioni internet.The present invention relates to a method for vulnerability analysis and correlated risk assessment of internet applications.

La presente invenzione provvede un procedimento come specificato rivolto principalmente alla sicurezza informatica in applicazioni internet.The present invention provides a method as specified primarily aimed at computer security in internet applications.

Sono noti, nello stato dell arte, procedimenti mediante i quali è possibile individuare problemi tecnico - informatici in grado di mettere a rischio la sicurezza informatica dell<'>applicazione presente sul personal computer dell'utente. Detti procedimenti noti constano di vari passi attraverso i quali vengono testate le funzionalità proprie dell’applicazione in analisi. Durante questo procedimento vengono inviati impulsi in ingresso (input di attacco) contenenti appropriate istruzioni per indurre l'applicazione in errore forzando così il procedimento ad eseguire azioni non codificate. Quando questo accade viene evidenziata la vulnerabilità dell<'>applicazione.In the state of the art, procedures are known by means of which it is possible to identify technical - IT problems capable of putting the IT security of the application on the user's personal computer at risk. Said known procedures consist of various steps through which the functionality of the application under analysis is tested. During this process, input pulses are sent (attack input) containing appropriate instructions to mislead the application thus forcing the process to perform non-coded actions. When this happens, the vulnerability of the application is highlighted.

In particolare, il documento US2003233581A1, rende noto un procedimento che presenta le seguenti fasi principali:In particular, document US2003233581A1 discloses a process which has the following main steps:

<■>Navigazione del sito;<■> Site navigation;

<■>Creazione degli input di attacco,<■> Creating attack inputs,

<■>Invio degli input di attacco,<■> Send attack inputs,

<■>Rilevazione delle vulnerabilità in base ad iterazione dei suesposti passaggi Più nel dettaglio, questo procedimento provvede un metodo per determinare le vulnerabilità di una applicazione in grado di analizzare i messaggi che fluiscono tra il browser di un utente, detto Client, e un server che ospita l'applicazione internet al fine di scoprire la struttura o gli elementi dell'Interfaccia dell’applicazione internet rivolta ai Client esterni. Quindi, basandosi su un set predefiito di regole e di tecniche di attacco : informatico il valutatore simula delle richieste di un utente Client in numerosi modi; generando quindi informazioni che saranno uniche per ogni applicazione internet. Queste informazioni possono quindi essere usate per attaccare l'applicazione internet. L'attacco è monitorato e i risultati sono valutati generando un rapporto all’utente.<■> Vulnerability detection based on the iteration of the above steps More in detail, this procedure provides a method for determining the vulnerabilities of an application capable of analyzing the messages flowing between a user's browser, called Client, and a server which hosts the internet application in order to discover the structure or elements of the internet application interface aimed at external clients. Therefore, based on a predefined set of rules and attack techniques: IT the evaluator simulates the requests of a Client user in numerous ways; thus generating information that will be unique to each internet application. This information can then be used to attack the internet application. The attack is monitored and the results are evaluated by generating a report to the user.

Tuttavia quanto noto nello stato dell'arte presenta degli inconvenienti.However, what is known in the state of the art has some drawbacks.

Questo tipo di approccio, seppur consenta l'identificazione di vulnerabilità di sicurezza all'interno dell’ applicazione e, più specificatamente, all'interno del suo codice sorgente, è alquanto limitato. Infatti, per una completa analisi di sicurezza di un’applicazione internet dovrebbe comprendere, oltre all’identificazione di vulnerabilità nel codice sorgente, almeno i seguenti passaggi:This type of approach, while allowing the identification of security vulnerabilities within the application and, more specifically, within its source code, is somewhat limited. In fact, for a complete security analysis of an internet application it should include, in addition to the identification of vulnerabilities in the source code, at least the following steps:

<■>analisi e rilevazione di configurazioni non ottimali presenti all'interno applicazione internet;<■> analysis and detection of non-optimal configurations present within the internet application;

<■>analisi di presenza di eventuali vulnerabilità note;<■> analysis of the presence of any known vulnerabilities;

<■>analisi e identificazione di risorse nascoste.<■> analysis and identification of hidden assets.

L'assenza di questi passaggi in quanto noto nello stato dell’arte, non consente all’utente una analisi delle applicazioni internet tale da poter ritenersi esaustiva, lasciando in questo modo spazio ad eventuali attacchi dall’esterno con conseguente rischio per la sicurezza informatica.The absence of these steps as known in the state of the art, does not allow the user an analysis of the internet applications that can be considered exhaustive, thus leaving room for any attacks from the outside with a consequent risk for computer security.

Inoltre, l'utilizzo dei procedimenti noti nello stato dell'arte e, in particolare, di quanto descritto da US2G03233581A1 pone l'utente nella condizione di ritenere un’applicazione internet sicura basandosi sui risultati di un metodo come descritto che presenta lacune importanti, facendo incorrere l'utente nel rischio di giudicare un'applicazione internet sicura a fronte di un risultato non esaustivo.Furthermore, the use of the procedures known in the state of the art and, in particular, of what described by US2G03233581A1 puts the user in the condition of considering a secure internet application based on the results of a method as described which has important gaps, making incurring the user in the risk of judging a secure internet application in the face of a non-exhaustive result.

Partendo dalla nozione di tali inconvenienti la presente invenzione intende porvi rimedio. Uno scopo della presente invenzione è di provvedere un procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet che sia in grado di analizzare un’applicazione internet, individuarne i rìschi ad essa correlati e che fornisca inoltre una valutazione attendibile circa la sua sicurezza.Starting from the notion of such drawbacks, the present invention intends to remedy them. An object of the present invention is to provide a procedure for vulnerability analysis and assessment of related risks of internet applications which is able to analyze an internet application, identify its related risks and which also provides a reliable assessment of its security. .

Un altro scopo della presente invenzione è di fornire un procedimento come descritto che sia versatile, in grado dì adattarsi ai mezzi tecnici a disposizione dell utente, e che sia atto alla valutazione di un'applicazione internet, all'individuazione dei rischi ad essa correlati e alla generazione di un risultato attendìbile circa la sicurezza della stessa.Another object of the present invention is to provide a process as described which is versatile, capable of adapting to the technical means available to the user, and which is suitable for evaluating an internet application, identifying the risks related to it and to the generation of a reliable result about the safety of the same.

Ulteriore scopo della presente invenzione è di fornire un procedimento come specificato in grado di rilevare eventuali risorse nascoste dell'applicazione internet.A further object of the present invention is to provide a method as specified capable of detecting any hidden resources of the internet application.

Ancora scopo della presente invenzione è di analizzare e rilevare configurazioni non ottimali presenti nella applicazione internet.Another object of the present invention is to analyze and detect non-optimal configurations present in the internet application.

E’, altresì, scopo delia presente invenzione di fornire un procedimento come illustrato che sia in grado di elevare eventuali rischi per la sicurezza in un’ applicazione internet mediante il confronto con eventuali rischi di sicurezza noti per aitre applicazioni internet. Sarà ancora scopo della presente invenzione di fornire un procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet che sia in grado di integrare le varie funzioni semplificando l'utilizzo per l'utente o, eventualmente, disaccoppiarle per consentire all'utente di scegliere quale attivare, che ottimizzi le risorse tecniche di cui dispone, velocizzandone l'espletamento delle varie funzioni, che sia di facile impiego, di costi contenuti e di facile utilizzo.It is also the purpose of the present invention to provide a process as illustrated that is able to raise any security risks in an internet application by comparing it with any known security risks for other internet applications. It will still be an object of the present invention to provide a procedure for vulnerability analysis and assessment of the correlated risks of internet applications that is able to integrate the various functions, simplifying their use for the user or, possibly, decoupling them to allow the user to choose which one to activate, which optimizes the technical resources at its disposal, speeding up the completion of the various functions, which is easy to use, low cost and easy to use.

In vista di tali scopi la presente invenzione provvede un procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet, la cui caratteristica fondamentale forma oggetto delia rivendicazione 1.In view of these purposes, the present invention provides a method for vulnerability analysis and correlated risk assessment of internet applications, the fundamental characteristic of which forms the subject of claim 1.

Ulteriori caratteristiche vantaggiose sono elencate nelle rivendicazioni dipendenti.Further advantageous features are listed in the dependent claims.

Tutte le nvendicazioni si intendono qui integralmente riportate.All claims are understood to be fully reported here.

La presente invenzione risulterà maggiormente descritta in quanto segue con riferimento al disegno allegato, fornito a solo titolo di esempio illustrativo e non limitativo, in cui:The present invention will be further described in what follows with reference to the attached drawing, provided only as an illustrative and non-limiting example, in which:

la figura 1 è un diagramma a blocchi relativo al funzionamento dei processo di rilevazione delle vulnerabilità della presente invenzione;Figure 1 is a block diagram relating to the operation of the vulnerability detection process of the present invention;

la figura 2 è un diagramma a blocchi relativo al funzionamento di un primo processo della presente invenzione;Figure 2 is a block diagram relating to the operation of a first process of the present invention;

la figura 3 è un diagramma a blocchi relativo alla logica di funzionamento di un secondo processo della presente invenzione;Figure 3 is a block diagram relating to the operating logic of a second process of the present invention;

la figura 4 è un diagramma a blocchi relativo alla logica di funzionamento di un terzo processo della presente invenzione;Figure 4 is a block diagram relating to the operating logic of a third process of the present invention;

la figura 5 è un diagramma a blocchi relativo alla logica di funzionamento di un quarto processo della presente invenzione;Figure 5 is a block diagram relating to the operating logic of a fourth process of the present invention;

la figura 6 è un diagramma a blocchi relativo a! funzionamento del processo di valutazione delia presente invenzione;Figure 6 is a block diagram relating to! operation of the evaluation process of the present invention;

la figura 7 è un diagramma a blocchi relativo al funzionamento del procedimento di valutazione del rischio.Figure 7 is a block diagram relating to the operation of the risk assessment procedure.

La presente invenzione comprende, sostanzialmente, due parti integrate tra loro. La prima si occupa di rilevare, analizzare ed evidenziare le vulnerabilità di un'applicazione internet, mentre la seconda si occupa di valutare i rischi correlati alle vulnerabilità della detta applicazione internet.The present invention substantially comprises two parts integrated together. The first deals with detecting, analyzing and highlighting the vulnerabilities of an internet application, while the second deals with assessing the risks related to the vulnerabilities of said internet application.

Analisi delle vulnerabilità. Visione d’insieme (fig. 1):Vulnerability analysis. Overall view (fig. 1):

la presente prima parte si compone principalmente di quattro processi:this first part mainly consists of four processes:

<■>un processo di scansione (nei seguito: Crawler) 110<■> a scan process (hereinafter: Crawler) 110

<■>un processo di scoperta (nel seguito: Discoverer) 120<■> a discovery process (hereinafter: Discoverer) 120

un processo di identificazione di applicazioni (nel seguito: Web Application Fingerprinter) 130an application identification process (hereinafter: Web Application Fingerprinter) 130

<■>un processo di rivelazione di vulnerabilità (nel seguito: Vuinerabiiity Discoverer) 140<■> a vulnerability disclosure process (hereinafter: Vuinerabiiity Discoverer) 140

I quatro processi sopra elencati sono coordinati da un macroprocesso di integrazione denominato Scan Manager 100, indicato in fig. 1. Tale macroprocesso 100, coordina la interazioni tra i vari processi. In esso è racchiusa la logica del processo di scansione e ad esso è ascritto il compito di smistare le informazioni generate dai vari processi all'interno del procedimento. Questo permette di disaccoppiare fortemente l'architettura del procedimento oggetto della presente invenzione.The four processes listed above are coordinated by an integration macroprocess called Scan Manager 100, shown in fig. 1. This macroprocess 100 coordinates the interactions between the various processes. It contains the logic of the scanning process and the task of sorting the information generated by the various processes within the procedure is ascribed to it. This allows to strongly decouple the architecture of the process object of the present invention.

I processi Crawler 110 e Discoverer 120 (fig, 1) sono processi essenziali (core), in quanto è loro compito guidare l’avanzamento della scansione di sicurezza sulle applicazioni internet. Questi due processi forniscono gli input necessari affinchè il Web Application Fingerprinter 130 ed il Vuinerabiiity Scanner 140 possano funzionare correttamente. Il processo di scansione viene terminato nel momento in cui processi core sono giunti a conclusione.The Crawler 110 and Discoverer 120 processes (fig, 1) are essential processes (core), as it is their task to guide the progress of the security scan on internet applications. These two processes provide the necessary inputs for the Web Application Fingerprinter 130 and the Vuinerabiiity Scanner 140 to function properly. The scanning process is terminated when core processes have come to an end.

Si noti che i processi Crawler 110 e Discoverer 120 funzionano in modalità alternata; ciò significa che i collegamenti internet (link) identificati dal Crawler 110 sono inviati, soto forma di messaggi, al Discoverer 120 al fine di ampliare le applicazioni internet controllate II Discoverer 120, a sua volta, è studiato per informare il Crawler 110 di eventuali nsorse nascoste rilevate da essere analizzate al fine di trovare nuovi link navigabili.Note that the Crawler 110 and Discoverer 120 processes operate in alternate mode; this means that the internet connections (links) identified by Crawler 110 are sent, in the form of messages, to the Discoverer 120 in order to expand the controlled internet applications.The Discoverer 120, in turn, is designed to inform Crawler 110 of any resources hidden found to be analyzed in order to find new navigable links.

In fig. 1, è illustrato un diagramma relativo al funzionamento del macroprocesso Scan Manager 100.In fig. 1, a diagram of the operation of the Scan Manager 100 macroprocess is shown.

In detta figura 1 si può notare come il macroprocesso Scan Manager 100 possa contare sui seguenti passaggi chiave;In said figure 1 it can be seen how the Scan Manager 100 macroprocess can count on the following key steps;

• avvio dei processi Crawler 110, Discoverer 120, Web Application Fingerprinter 130 e Vulnerability scanner 140 attesa da parte degli stessi di ricevere ulteriori istruzioni dallo Scan Manager 100;• start of the Crawler 110, Discoverer 120, Web Application Fingerprinter 130 and Vulnerability scanner 140 processes, waiting for them to receive further instructions from the Scan Manager 100;

• i processi Web Application Fingerprinter 130 e Vulnerability Scanner 140 avviati restano in attesa di istruzioni da parte sia del Crawler 110 che del Discoverer 120. Quando lo Scan Manager 100 riceve i messaggi CrawlerNoWorkDone e DiscovererNoWorkDone, esso imposta due segnalaton (flag) con i valori, rispettivamente, CNWD 111 e DNWD 121 . Nel caso in cui i messaggi ricevuti dallo Scan Manager 100 siano differenti dai due su riportati, i flag CNWD 111 e DNWD 121 vengono rimossi {passaggi rispettivamente 112, 122);• Web Application Fingerprinter 130 and Vulnerability Scanner 140 processes started await instructions from both Crawler 110 and Discoverer 120. When Scan Manager 100 receives CrawlerNoWorkDone and DiscovererNoWorkDone messages, it sets two flags with the values , respectively, CNWD 111 and DNWD 121. If the messages received by the Scan Manager 100 are different from the two above, the CNWD 111 and DNWD 121 flags are removed (steps 112, 122 respectively);

• nel caso in cui, durante la scansione, entrambi i flag CNWD 111 e DNWD 121 ! risultano impostati, questo indica che sia il Crawler 110 che il Discoverer 120 non hanno effettuato alcun processo nell'ultimo ciclo, indicando così che il processo di scoperta è terminato;• if, during the scan, both the CNWD 111 and DNWD 121 flags! are set, this indicates that both Crawler 110 and Discoverer 120 have not carried out any process in the last cycle, thus indicating that the discovery process is finished;

• i processi Web Application Fingerprinter 130 e Vulnerability Scanner 140 vengono quindi portati a termine (passaggi 131, 132, 141 , 142 di fig. 1);• the Web Application Fingerprinter 130 and Vulnerability Scanner 140 processes are then completed (steps 131, 132, 141, 142 of fig. 1);

• quando tutti i processi risultano terminati il processo dì scansione termina.• when all the processes are finished, the scanning process ends.

Analisi di dettaglio dei processiDetailed analysis of the processes

Per l'analisi che segue, al solo scopo di chiarezza espositiva, si considerano tutti i processi come avviati e in attesa di istruzioni da parte dello Scan Manager 100.For the analysis that follows, for the sole purpose of clarity, all the processes are considered as started and awaiting instructions from the Scan Manager 100.

Crawler 110Crawler 110

Il processo Crawler 110 è dedicato all'identificazione di tutti gli indirizzi internet (url) chr compongono l applicazione internet da analizzare, per esempio un sito internet. Detto Crawler 110 riceve l'indirizzo internet (url) mediante immissione diretta da parte dell'utente in un’apposita barra degli indirizzi a disposizione in un'interfaccia utente. Il Crawler 110, quindi, visita tutti gli indirizzi internet (url) delle pagine che compongono il sito internet di interesse, tenendo traccia delle pagine che contengono predeterminati parametri (per esempio l'url http://www.example.com/index.php?param=valore contenente il parametro “parami’ ) e delle pagine che non sono raggiungibili per qual si voglia motivo, per esempio, per degli errori presenti nell'indirizzo internet (uri). Per ogni pagina identificata il Crawler 110 invia dei messaggi allo Scan Manager 100. Lo scopo di detti messaggi è di informare gli albi processi Discoverer 120, Web Application Fingerprinter 130 e Vulnerability Scanner 140 dell’avvenuta scoperta di un nuovo indirizzo internet. Dunque, il Crawler 110 rimane in attesa di due categorie di messaggi da parte degli altri processi in esecuzione (Discoverer 120, Web Application Fingerprinter 130, Vuìnerability Scanner 140) e dallo Scan Manager 100; comandi e notifiche. Si noti che i processi Discoverer 120, Wep Application Fingerprinter 130 e Vuìnerability Scanner 140 inviano al Crawler 110 soltanto notifiche, mentre lo Scan Manager 100 è l’unico ad inviare comandi al suddetto Crawler 110; " I comandi sono dei messaggi che impongono al Crawier 110 l'esecuzione di specifiche azioni come, ad esempio, il suo avvio o la sua interruzione.The Crawler 110 process is dedicated to identifying all the internet addresses (url) that make up the internet application to be analyzed, for example a website. Said Crawler 110 receives the internet address (url) through direct entry by the user in a special address bar available in a user interface. The Crawler 110, therefore, visits all the internet addresses (url) of the pages that make up the website of interest, keeping track of the pages that contain predetermined parameters (for example the url http://www.example.com/index. php? param = value containing the parameter "parami ') and pages that are not reachable for any reason, for example, due to errors in the internet address (uri). For each page identified, Crawler 110 sends messages to Scan Manager 100. The purpose of these messages is to inform the Discoverer 120, Web Application Fingerprinter 130 and Vulnerability Scanner 140 process registers of the discovery of a new internet address. Therefore, the Crawler 110 waits for two categories of messages from the other running processes (Discoverer 120, Web Application Fingerprinter 130, Vuìnerability Scanner 140) and from the Scan Manager 100; commands and notifications. Note that the Discoverer 120, Wep Application Fingerprinter 130 and Vuìnerability Scanner 140 processes only send notifications to the Crawler 110, while the Scan Manager 100 is the only one to send commands to the aforementioned Crawler 110; "The commands are messages that force the Crawier 110 to perform specific actions such as, for example, its start or stop.

Le notifiche sono dei messaggi derivanti da altri processi che sono di interesse per il Crawler 110, per esempio la scoperta di una nuova pagina da analizzare ( AnalyzePage ). Le notifiche sono necessarie al Crawler 110 per aumentare il proprio raggio di azione consentendogli di analizzare porzioni di sito web che non sarebbe in grado di identificare altrimenti.Notifications are messages from other processes that are of interest to Crawler 110, for example the discovery of a new page to analyze (AnalyzePage). Notifications are needed by Crawler 110 to increase its range by allowing it to analyze portions of the website that it would not be able to identify otherwise.

II Crawler 110 invia, infine, dei messaggi che informano gli altri processi (Discoverer 120, Web Application Fingerprinter 130 e Vulnerability Scanner 140 ) di particolari condizioni rilevate dalla scansione del Crawler 110; un esempio di messaggio è la notifica di avvenuto rilevamento di un nuovo indirizzo interne! appartenente al sito internet in analisiFinally, the Crawler 110 sends messages that inform the other processes (Discoverer 120, Web Application Fingerprinter 130 and Vulnerability Scanner 140) of particular conditions detected by the Crawler 110 scan; an example of a message is the notification that a new internal address has been detected! belonging to the website under analysis

( Web Page WithoutParametersAnalyzed) .(Web Page WithoutParametersAnalyzed).

Questa tipologia di architettura permette di isolare il suddetto processo dai restanti, rendendo possibile l'esecuzione di più processi Crawler 110 in parallelo, al fine di analizzare l’applicazione internet da molteplici punti di vista contemporaneamente.This type of architecture allows you to isolate the aforementioned process from the rest, making it possible to run multiple Crawler 110 processes in parallel, in order to analyze the internet application from multiple points of view simultaneously.

Con riferimento alla figura 2, sono analizzati, qui di seguito, i principali passaggi di funzionamento del processo Crawler 110:With reference to Figure 2, the main operating steps of the Crawler 110 process are analyzed below:

1) quando una scansione viene avviata, il Crawler 110 rimane in attesa di istruzioni 113 circa le operazioni da compiere. Detti messaggi di istruzione 113 vengono generati dallo Scan Manager 100, il quale invia come primo messaggio un comando di avvio detto ResumeCrawlìng 114. Aìternartivamente il Crawler 110 rimane in attesa ed invia allo Scan Manager 100 un messaggio di mancanza di attività ( EndCrawlìng ). Nel caso in cui il suddetto messaggio sia ricevuto, si procede con il terminare tutti i processi avviati e con il chiudere tutte le risorse aperte, quindi si conclude il processo con l'invio del messaggio di evento CrawlingCompiate 1151) when a scan is started, the Crawler 110 waits for instructions 113 about the operations to be performed. Said instruction messages 113 are generated by the Scan Manager 100, which sends a start command called ResumeCrawlìng 114 as the first message. In the event that the aforementioned message is received, proceed with terminating all the processes started and closing all the open resources, then the process is concluded by sending the CrawlingCompiate 115 event message

2) Alla ricezione del comando ResumeCrawling 114 il Crawler 110 avvia il proprio processo di scoperta. Da principio vengono rese disponibili tutte le risorse tecniche (hardware e software) necessarie all'analisi degli indirizzi internet (uri) che sono stati ad esso notificati dall'utente, mediante inserimento manuale tramite interfaccia dedicata, o da altri processi (per esempio dal discoverer 120) mediante opportuni messaggi di notifica. Il procedimento analizza tutte le pagine internet che appartengono allo stesso sito internet in analisi. Tutte le pagine non appartenenti al sito internet in analisi non verranno analizzate, a meno di specifiche impostazioni del Crawler 110 gestite dall’utente, mediante apposita interfaccia dedicata, in fase di avvio della scansione.2) Upon receiving the ResumeCrawling 114 command, Crawler 110 starts its discovery process. In principle, all the technical resources (hardware and software) necessary for the analysis of the internet addresses (uri) that have been notified to it by the user, by manual entry through a dedicated interface, or by other processes (for example by the discoverer), are made available. 120) by means of appropriate notification messages. The procedure analyzes all the internet pages that belong to the same internet site under analysis. All pages not belonging to the website being analyzed will not be analyzed, unless specific settings of the Crawler 110 managed by the user, through a special dedicated interface, during the start of the scan.

3) Nel caso in cui il Crawler 110 non abbia indirizzi internet da analizzare invia un' messaggio di notifica detto NoWorkDone 116 e rimane in attesa di nuovi comandi, ritornando al passaggio 1, Questo messaggio 116 avverte lo Scan Manager 100 che il Crawler 110 non ha alcun indirizzo internet da analizzare e che, a meno di nuovi : messaggi da parte di altri processi (per esempio da parte del Discoverer 120), il processo Crawler 110 può essere considerato terminato. Qualora invece il Crawler 110 abbia delle pagine da analizzare il processo passa al punto successivo.3) In the event that the Crawler 110 does not have internet addresses to be analyzed, it sends a notification message called NoWorkDone 116 and waits for new commands, returning to step 1, This message 116 warns the Scan Manager 100 that the Crawler 110 does not has no internet address to analyze and that, unless new: messages from other processes (for example from the Discoverer 120), the Crawler 110 process can be considered terminated. If, on the other hand, the Crawler 110 has some pages to analyze, the process goes to the next point.

4) Per ogni pagina internet notificata, il Crawler 110 verifica che una serie di requisiti 117 siano soddisfatti, ad esempio, al fine di non causare danni all'applicazione internet, è possibile impedire l’analisi di pagine denominate detete.php, velocizzando il processo ed evitando di interferire con le normali operazioni dell’applicazione internet in analisi. i requisiti 117 possono essere configurati dall'utente in fase di creazione della scansione mediante interfaccia dedicata. Se i requisiti sono soddisfatti, il Crawler 110 invierà una richiesta all'indirizzo di suddetta pagina.4) For each notified internet page, the Crawler 110 verifies that a series of requirements 117 are met, for example, in order not to cause damage to the internet application, it is possible to prevent the analysis of pages named detete.php, speeding up the process and avoiding to interfere with the normal operations of the internet application under analysis. the requirements 117 can be configured by the user when creating the scan through a dedicated interface. If the requirements are met, Crawler 110 will send a request to the address on that page.

Qualora il Crawler 110 riceva una richiesta di analisi di una specifica pagina internet (AnalyzePage) da parte, per esempio, del Discoverer 120, prima di procedere all<'>analisi della pagina internet, effettua un controllo di corrispondenza tra l’indirizzo della pagina internet che si intende analizzare e l<'>indirizzo internet della pagina interne scansionata. In caso di effettiva corrispondenza tra i detti due indirizzi internet, il Crawler 110 invia una richiesta alla pagina internet di cui è richiesta l’analisi al fine di ottenere la risposta del server.If the Crawler 110 receives a request for analysis of a specific internet page (AnalyzePage) from, for example, the Discoverer 120, before proceeding with the analysis of the internet page, it performs a correspondence check between the page address internet to be analyzed and the internet address of the scanned internal page. In case of actual correspondence between said two internet addresses, Crawler 110 sends a request to the internet page for which analysis is required in order to obtain the server response.

5) Al ricevimento di dette risposte da parte del server, il Crawler 110 avvia un programma predefinito ausiliario di analisi detto plugin 118 per analizzare le risposte ricevute. In fase di determinazione dei parametri fondamentali della scansione l'utente, mediante opportuna interfaccia dedicata, può decidere quali programmi plugin 118 devono i essere utilizzati dai Crawter 110 per l’analisi delie risposte ricevute dal server e per identificare ulteriori pagine internet navigabili da controllare. Uno dei compiti principali del programma plugin 118 è quello di individuare, estrarre ed inviare al Crawler 110 tutti i collegamenti ipertestuali presenti nella/e pagina/e internet da analizzare5) Upon receipt of said responses from the server, the Crawler 110 starts a predefined auxiliary analysis program called plugin 118 to analyze the responses received. During the determination of the basic parameters of the scan, the user, through an appropriate dedicated interface, can decide which plugin programs 118 should be used by the Crawter 110 for the analysis of the responses received from the server and to identify additional browsable internet pages to be checked. One of the main tasks of the plugin program 118 is to identify, extract and send to Crawler 110 all the hyperlinks present in the internet page (s) to be analyzed

6) Terminato il processo di analisi di un indirizzo internet o di un collegamento ipertestuale si passa all’estrazione del prossimo indirizzo internet dalla lista Nel caso in cui l' indirizzo internet appena processato sia l'ultimo di detta lista il Crawler 110 invia un messaggio di fine lavoro 119 (/n SiandBy) e resta in attesa di nuovi messaggi, ovvero ritorna al punto 1.6) Once the process of analyzing an internet address or a hypertext link is completed, the next internet address is extracted from the list. end of job 119 (/ n SiandBy) and waits for new messages, or returns to point 1.

Discoverer 120Discoverer 120

Il Discoverer 120 è un processo che provvede all'analisi di un’applicazione web (per esempio sito internet) al fine di identificare delle risorse nascoste, come per esempio qualsiasi pagina internet o file che non sia direttamente raggiungibile attraverso la navigazione del sito web mediante collegamento ipertestuale o simili. L’identificazione di dette risorse nascoste avviene mediante l'utilizzo di un elenco di nomi di possibili risorse nascoste. Durante la configurazione di una nuova scansione l’utente potrà scegliere mediante opportuna interfaccia dedicata, quale tipologia di elenco di nomi utilizzare in base alle proprie preferenze oppure procedere con le impostazioni pre-im postate.Discoverer 120 is a process that analyzes a web application (for example a website) in order to identify hidden resources, such as any internet page or file that is not directly accessible by browsing the website through hyperlink or similar. The identification of these hidden resources takes place through the use of a list of names of possible hidden resources. During the configuration of a new scan, the user can choose, through an appropriate dedicated interface, which type of list of names to use according to their preferences or proceed with the pre-set settings.

L’elenco di nomi di possibili risorse nascoste (dizionario) sono utilizzati per creare dei rispettivi indirizzi internet al fine di testarne l'effettiva esistenza interrogando il server. Per esempio, qualora si dovesse provvedere all'individuazione di risorse nascoste nel sito internet http://www.example.com il Discoverer 120 pro ederebbe alla creazione di un indirizzo internet per ogni nome presente all'interno del succitato elenco. Supponendo che nell'elenco si trovasse il nome admin.php, il Discoverer 120 creerebbe un indirizzo http://www.example.com/admin.php. In base alla risposta del server il Discoverer 120 è in grado di dedurre l’esistenza o meno della risorsa nascosta denominata admin.php.The list of names of possible hidden resources (dictionary) are used to create the respective internet addresses in order to test their actual existence by querying the server. For example, if you were to identify hidden resources on the website http://www.example.com, the Discoverer 120 would try to create an internet address for each name in the aforementioned list. Assuming the name admin.php was in the list, the Discoverer 120 would create an address http://www.example.com/admin.php. Based on the server response, the Discoverer 120 is able to deduce the existence or not of the hidden resource called admin.php.

Procedendo, dunque, per iterazione, tutti i nomi di possibili risorse nascoste presenti nell'elenco saranno controllati.Proceeding, therefore, by iteration, all the names of possible hidden resources present in the list will be checked.

Il Discoverer 120 riceve, sostanzialmente, due categorie di messaggi: comandi e notifiche. I primi (comandi) sono messaggi che inducono il Discoverer 120 ad effettuare specifiche azioni come, ad esempio, ravvio o l'interrompersi del processo.The Discoverer 120 basically receives two categories of messages: commands and notifications. The first (commands) are messages that induce the Discoverer 120 to perform specific actions such as, for example, restarting or stopping the process.

I secondi (notifiche) sono messaggi derivanti da altri processi (per esempio il Crawler 110) esterni che riguardano direttamente e/o indirettamente il Discoverer 120.The second (notifications) are messages deriving from other external processes (for example Crawler 110) that directly and / or indirectly concern the Discoverer 120.

Alcuni esempi di notifiche sono la scoperta di una directory da analizzare, messaggio di tipo AnalyzeDirectory. Si voglia notare che, al fine della descrizione della presente invenzione, per directory si intendono indirizzi internet del tipo: http://www.exampte.com/directory/Some examples of notifications are the discovery of a directory to be analyzed, message of type AnalyzeDirectory. It should be noted that, for the purpose of the description of the present invention, by directory we mean internet addresses of the type: http://www.exampte.com/directory/

II Discoverer 120 effettua l'analisi di directory e non di specifiche pagine. Ciò implica che, in caso di notifiche contenenti richieste di analisi di pagine internet specifiche, per esempio httpJ/www.example.com/index.php, il Discoverer 120 effettua l'analisi sulla relativa directory contenente la pagina internet segnalata, in questo esempio: http://www.example.com.The Discoverer 120 scans directories and not specific pages. This implies that, in the event of notifications containing requests for analysis of specific internet pages, for example httpJ / www.example.com / index.php, the Discoverer 120 performs the analysis on the relative directory containing the reported internet page, in this example : http://www.example.com.

Si faccia riferimento alla figura 3. In detta figura è illustrato il funzionamento del processo Discoverer 120 che presenta i seguenti passaggi principali:Refer to figure 3. This figure illustrates the operation of the Discoverer 120 process which presents the following main steps:

1) Lo Scan Manager 100, invia un messaggio di avvio New Msg 123.1 al Discoverer 120 o ResumeDiscoverer 123,2.1) The Scan Manager 100 sends a New Msg 123.1 startup message to the Discoverer 120 or ResumeDiscoverer 123.2.

2) Il Discoverer 120 avvia il proprio processo di scoperta: vengono, dunque, allocate tutte le risorse tecniche necessarie all'analisi delle directory che sono state notificate attraverso i processi a cui è in ascolto (per esempio, dai Crawler 110). Vengono quindi, ad esempio, caricati i dizionari contenenti le possibili risorse nascoste da scoprire.2) The Discoverer 120 starts its own discovery process: therefore, all the technical resources necessary for the analysis of the directories that have been notified through the processes it is listening to are allocated (for example, by the Crawler 110). For example, dictionaries containing possible hidden resources to be discovered are loaded.

3) Se il Discoverer 120 non ha directory da analizzare al suo interno, invia un messaggio di tipo NoWorkDone 124 e si mette in attesa di ulteriori messaggi. Questo messaggio indica allo Scan Manager 100 che non è stato effettuato nessun processo di analisi nell’ultimo ciclo. Se invece il Discoverer 120 ha delle directory da analizzare, estrae dalla lista la prima disponibile e continua con l'analisi di questa,3) If the Discoverer 120 has no directory to analyze inside, it sends a message of type NoWorkDone 124 and waits for further messages. This message indicates to Scan Manager 100 that no analysis process has been carried out in the last cycle. If, on the other hand, the Discoverer 120 has directories to analyze, it extracts the first available from the list and continues with the analysis of this one,

4) La fase di analisi propriamente detta viene preceduta da un controllo di validità della directory, ovvero si controlla che quest' ultima abbia i requisiti per essere analizzata. Ad esempio, al fine di non causare danni all'applicazione internet, é possibile impedire l’analisi della directory denominata Idirectory/, velocizzando il processo ed evitando di interferire con le normali operazioni dell'applicazione internet in analisi. Grazie a questo controllo è possibile escludere dall’analisi determinate directory, a seconda delle preferenze dell’utente dettate impostando dei requisiti 125, al fine di aumentare le performance della scansione o per evitare di causare eventuali danni sull’applicazione. Detti requisiti 125 possono essere personalizzati dall’utente in fase di creazione della scansione; in alternativa possono essere utilizzati quelli di default.4) The analysis phase itself is preceded by a check of the validity of the directory, that is, it is checked that the latter has the requisites to be analyzed. For example, in order not to cause damage to the internet application, it is possible to prevent the analysis of the directory called Idirectory /, speeding up the process and avoiding interfering with the normal operations of the internet application being analyzed. Thanks to this control, it is possible to exclude certain directories from the analysis, depending on user preferences dictated by setting the requirements 125, in order to increase scanning performance or to avoid causing any damage to the application. These requirements 125 can be customized by the user when creating the scan; alternatively, the default ones can be used.

5) Qualora la directory soddisfi i requisiti minimi si procede quindi a verificare se all’interno della directory siano presenti ulteriori risorse nascoste. Per ogni nuova directory e/o pagina identificata viene inviato un messaggio di scoperta / mancata scoperta di risorse nascoste rispettivamente HiddenDirectoryFound I HiddenPageFound. Inoltre, qualora la risorsa risulti essere una directory e l opzione di 'scan ricorsivo’ 126 sia abilitata si procede con l'aggiunta della detta nuova directory nella lista delle directory da analizzare. Si noti che lo scan ricorsivo 126 è una caratteristica che permette di procedere all’analisi delle risorse nascoste anche nelle directory trovate durante il processo.5) If the directory meets the minimum requirements, then proceed to check whether there are additional hidden resources within the directory. For each new directory and / or page identified, a discovery / non-discovery message of hidden resources respectively HiddenDirectoryFound I HiddenPageFound is sent. Furthermore, if the resource is a directory and the 'recursive scan' 126 option is enabled, proceed with adding the said new directory to the list of directories to be analyzed. Note that recursive scan 126 is a feature that allows you to proceed with the analysis of hidden resources even in the directories found during the process.

Per meglio comprendere ii funzionamento dello scan ricorsivo 126 si consideri il seguente esempio in cui si è scelto di attivare detta opzione: qualora, durante il processo, il Discoverer 120 trovi, in fase di scansione, la directoryTo better understand the functioning of the recursive scan 126, consider the following example in which you have chosen to activate this option: if, during the process, the Discoverer 120 finds the directory

http://www, example . com/secret/ allora il detto processo Discoverer 120 verrà ripetuto all'interno di questa nuova directory al fine di individuare eventuali risorse nascoste all'interno della detta nuova directory individuata.http: // www, example. com / secret / then the said Discoverer 120 process will be repeated within this new directory in order to identify any hidden resources within the said new directory identified.

6) Concluso il processo di analisi della directory, si procede con l’estrazione della successiva directory. Nel caso in cui la lista di directory sia vuota, il Discoverer 120 invia il messaggio InStandBy allo Scan Manager 100 mettendosi in attesa di nuovi messaggi,6) Once the directory analysis process has been completed, we proceed with the extraction of the next directory. If the directory list is empty, the Discoverer 120 sends the InStandBy message to the Scan Manager 100 waiting for new messages,

Web Application Fingerprinter 130Web Application Fingerprinter 130

Questo processo consente l’identificazione di applicazioni internet normalmente utilizzate per l' implementazione dei siti internet o per ii loro mantenimento, Esempio di tali applicazioni internet possono essere quindi i diversi CMS (Content-Management-Systems) noti e utilizzati per facilitare lo sviluppo di siti internet nello stato dell'arte.This process allows the identification of internet applications normally used for the implementation of websites or for their maintenance.Example of such internet applications can therefore be the various CMS (Content-Management-Systems) known and used to facilitate the development of state-of-the-art internet sites.

Ulteriori tipologie di applicazioni identificate sono quelle relative aH’amministrazìone del sito web, come ad esempio PhpMyAdmin utilizzata per l'accesso al database dell applicazione mediante una comoda interfaccia web.Additional types of applications identified are those relating to website administration, such as PhpMyAdmin used for accessing the application database through a convenient web interface.

L'identificazione di queste tipologie di applicazioni note {dette anche Commercia/ Off-The-Shelf - COTS ) avviene attraverso l’invio di richieste al server su cui risiede l applicazione da analizzare, il presente processo Web Application Fingerprinter 130 analizza le varie directory a lui notificate dal Crawler 110 e dal Discoverer 120, in modalità analoga a quanto fatto dal Discoverer 120,The identification of these types of known applications (also called Commercia / Off-The-Shelf - COTS) takes place by sending requests to the server on which the application to be analyzed resides, this process Web Application Fingerprinter 130 analyzes the various directories notified to him by the Crawler 110 and the Discoverer 120, in a similar way to what was done by the Discoverer 120,

Per creare queste richieste il componente utilizza opportune firme, ovvero piccoli file contenenti informazioni chiave per l'identificazione dell’applicazione generante le richieste, che vengono pre-caricate dal processo Web Application Fingerprinter 130 in fase di avvio della scansione prelevandole da un database. Le firme contengono al loro interno tutte le informazioni necessarie per identificare una determinata applicazione.To create these requests, the component uses appropriate signatures, which are small files containing key information for identifying the application generating the requests, which are pre-loaded by the Web Application Fingerprinter 130 process at the start of the scan, taking them from a database. Signatures contain all the information necessary to identify a particular application.

Con riferimento alia fig. 4 sono, qui di seguito, illustrati i principali passaggi dei processo in analisi:With reference to fig. 4 the main steps of the process under analysis are illustrated below:

1) All’avvio di una nuova scansione il Web Application Fingerprinter 130 rimane in attesa di nuovi messaggi 133, da parte dello Scan Manager 100, che gli indichino le operazioni da compiere. Sono possibili due tipologie di messaggi: avvio (AnalyzeDirectory) e arresto {EndWebAppUcatìonFingerprinter}. Nel caso in cui il messaggio sia di arresto, ovvero EndWebAppUcatìonFingerprinter, il Web Application Fingerprinter 130 termina il suo processo e chiude tutte le risorse allocate; quindi conclude il processo con l'invio di un messaggio 134 di fine ( WebAppFingComplete ). Nel caso di messaggio di avvio 133 ( AnalyzeDirectory ) da parte dello Scan Manager 100 si procede con il passo 2.1) When starting a new scan, the Web Application Fingerprinter 130 waits for new messages 133, from the Scan Manager 100, indicating the operations to be performed. Two types of messages are possible: start (AnalyzeDirectory) and stop {EndWebAppUcatìonFingerprinter}. In the event that the message is a stop, that is EndWebAppUcatìonFingerprinter, the Web Application Fingerprinter 130 ends its process and closes all the resources allocated; it then concludes the process by sending an end message 134 (WebAppFingComplete). If the Scan Manager 100 starts message 133 (AnalyzeDirectory), proceed to step 2.

2) Prima di avviare la fase di analisi si procede col verificare che la directory in esame abbia i requisiti 135 per essere analizzata. E’ quindi possibile per l'utente configurare il livello di accuratezza del processo di identificazione. Un valore elevato di tale livello permette di ridurre eventuali falsi positivi a discapito della mancata identificazione di applicazioni con configurazioni personalizzate2) Before starting the analysis phase, proceed with verifying that the directory in question has the requisites 135 to be analyzed. It is therefore possible for the user to configure the level of accuracy of the identification process. A high value of this level allows to reduce any false positives to the detriment of the failure to identify applications with customized configurations

I requisiti 135 necessari affinché la directory risulti idonea alla scansione possono essere, come detto, personalizzati dall’utente in fase di creazione di una scansione, mediante opportuna interfaccia; in alternativa possono essere utilizzati quelli di default.The requisites 135 necessary for the directory to be suitable for scanning can be, as mentioned, customized by the user when creating a scan, using an appropriate interface; alternatively, the default ones can be used.

3) Se la directory soddisfa i requisiti 135 il processo avvia la fase di scoperta. Per ogni applicazione internet da rilevare ne ricava le relative firme da verificare.3) If the directory meets the 135 requirements the process starts the discovery phase. For each internet application to be detected, it obtains the relevant signatures to be verified.

Le firme contengono le informazioni necessarie al rilevamento; dete carateristiche sono, principalmente:The signatures contain the information necessary for detection; these characteristics are, mainly:

<■>l’indirizzo della pagina da analizzare;<■> the address of the page to be analyzed;

• il possibile valore di hash MD5 della pagina richiesta.• the possible MD5 hash value of the requested page.

Si noti che l’hash MD5 è uno standard noto nello stato deH’arte e non sarà ulteriormente descritto. Le firme utilizzate per l'identificazione di ciascuna directory sono, generalmente, in numero variabile da 8 a 10. Ogni firma è utilizzata per creare la relativa richiesta da inviare al server. Se la pagina richiesta esiste e la firma contiene un valore da controllare, il Web Application Fingerprinter 130 calcola il valore dì hash MD5 della pagina e lo confronta con quello contenuto nella firma. Se i due valori corrispondono la firma otiene esito positivo, altrimenti ottiene esito negativo. Se al contrario la firma non ha un valore da controllare e la pagina esiste, allora la firma ha un esito positivo, mentre, nel caso in cui la firma non ha un valore da controllare ma la pagina non esiste la firma ha esito negativo. Quando tutte le firme per una determinata applicazione internet sono state inviate, si verifica quante hanno avuto esito positivo e quante esito negativo. Se questo rapporto è maggiore di un determinato valore prestabilito e impostato automaticamente, allora l'applicazione internet che si sta cercando di rilevare è considerata esistente altrimenti si procede con la prossima applicazione.Note that the MD5 hash is a standard known in the state of the art and will not be further described. The signatures used to identify each directory are generally in a variable number from 8 to 10. Each signature is used to create the related request to be sent to the server. If the requested page exists and the signature contains a value to check, the Web Application Fingerprinter 130 calculates the page's MD5 hash value and compares it with that contained in the signature. If the two values match, the signature succeeds, otherwise it fails. If, on the other hand, the signature does not have a value to check and the page exists, then the signature has a positive outcome, while, in the case in which the signature has no value to check but the page does not exist, the signature fails. When all the signatures for a given internet application have been sent, we check how many were successful and how many were unsuccessful. If this ratio is greater than a certain predetermined value and set automatically, then the internet application you are trying to detect is considered to exist otherwise you will proceed with the next application.

4) Terminato il processo di analisi della directory, si procede con l'estrazione della prossima directory. Nel caso in cui la coda sia vuota il Web Application Fingerprinter 130 si mette in attesa di nuovi messaggi.4) Once the directory analysis process is finished, we proceed with the extraction of the next directory. If the queue is empty, the Web Application Fingerprinter 130 waits for new messages.

Vulnerability Scanner 140Vulnerability Scanner 140

Il Vulnerability Scanner 140 è un processo che analizza l'applicazione internet al fine di identificarne le relative vulnerabilità di sicurezza. Per l'identificazione utilizza un’architettura basata su programmi predefiniti ausiliari di analisi detti p!ugin 147. La rilevazione avviene dunque mediante detti plugin 147 comandati dai Vulnerabilty Scanner 140, lasciando a quest’ultimo il solo compito di gestire i plugin 147 in funzione degli ordini inviati dallo Scan Manager 100. in questo modo è possibile estenderne le funzionalità del Vulnerability Scanner 140 senza inficiare direttamente sui passaggi del processo 140, semplificando l'utilizzo e il funzionamento del processo 140 stesso.Vulnerability Scanner 140 is a process that analyzes the internet application in order to identify its related security vulnerabilities. For identification, it uses an architecture based on predefined auxiliary analysis programs called p! Ugin 147. The detection is therefore carried out by means of said plugins 147 controlled by Vulnerabilty Scanners 140, leaving the latter with the sole task of managing the plugins 147 in operation. of the orders sent by the Scan Manager 100. in this way it is possible to extend the functionalities of the Vulnerability Scanner 140 without directly affecting the steps of the process 140, simplifying the use and operation of the process 140 itself.

I passaggi principali del Vulnerability Scanner 140 in esame sono qui di seguito descritti con riferimento alla figura 5:The main steps of the Vulnerability Scanner 140 under examination are described below with reference to Figure 5:

1) All'avvio di una nuova scansione il Vulnerability Scanner 140 rimane in attesa di nuovi messaggi di istruzioni 143 circa le operazioni da compiere. I detti messaggi 143 vengono generati dallo Scan Manager 100 e sono, sostanzialmente, di due tipi:. comandi e notifiche. I comandi modificano lo stato del Vulnerability Scanner 140, come per esempio il comando di arresto [EndVulnerabilìtyScanner) che segnala al Vulnerability Scanner 140 di arrestare ogni attività e di chiudere il processo inviando il messaggio di chiusura ( VulnerabiiityScannerCompleted ).1) When starting a new scan, Vulnerability Scanner 140 waits for new instructions messages 143 about the operations to be performed. The said messages 143 are generated by the Scan Manager 100 and are essentially of two types :. commands and notifications. The commands change the status of the Vulnerability Scanner 140, such as the stop command [EndVulnerabilìtyScanner) which signals the Vulnerability Scanner 140 to stop all activities and to close the process by sending the closing message (VulnerabiiityScannerCompleted).

Le notifiche, invece, segnalano al Vulnerability Scanner 140 nuove azioni da intraprendere, come per esempio di procedere con il processo a seguito di una rilevazione di una nuova pagina.The notifications, on the other hand, signal the Vulnerability Scanner 140 new actions to be taken, such as proceeding with the process following a detection of a new page.

2) La notifica 143 ricevuta dallo Scan Manager 100 viene inoltrata a tutti i necessari plugin 147 al fine di permettere l'identificazione delle varie tipologie di vulnerabilità. Per ogni nuova vulnerabilità identificata il plugin 147 che ha individuato la detta vulnerabilità emette un messaggio di notifica che viene ricevuto dal Vulnerability Scanner 140 ed inoltrato allo Scan Manger 100. Quando l’analisi del messaggio da parte dei vari plugin 147 termina si rimane in attesa di ulteriori messaggi.2) The notification 143 received by the Scan Manager 100 is forwarded to all the necessary plugins 147 in order to allow the identification of the various types of vulnerabilities. For each new vulnerability identified, the plugin 147 that has identified the vulnerability issues a notification message that is received by the Vulnerability Scanner 140 and forwarded to the Scan Manger 100. When the analysis of the message by the various plugins 147 ends, it remains waiting of further messages.

Processo di valutazione del rischio informatico 160 (fig. 6)IT risk assessment process 160 (fig. 6)

Le vulnerabilità individuate dal Vulnerability Scanner 140 vengono quindi rilevate e portate all'attenzione dell’utente da parte dello Scan Manager 100,The vulnerabilities identified by the Vulnerability Scanner 140 are then detected and brought to the user's attention by the Scan Manager 100,

Al fine di fornire una valutazione del rischio informatico imputabile a dette vulnerabilità, il procedimento oggetto della presente invenzione procede fornendo all utente una valutazione di possibile impatto dei detto rischio informatico grazie alla seconda parte della presente invenzione. Mediante questa seconda parte di valutazione è possibile, per l'utente, individuare le necessarie misure di prevenzione, pianificare e attuare azioni idonee a minimizzare e, ove possibile, ad annullare il rischio informatico.In order to provide an assessment of the IT risk attributable to said vulnerabilities, the process object of the present invention proceeds by providing the user with an assessment of the possible impact of said IT risk thanks to the second part of the present invention. Through this second part of the assessment it is possible for the user to identify the necessary prevention measures, plan and implement suitable actions to minimize and, where possible, to cancel the IT risk.

In fig. 6 è illustrato il processo di valutazione del rischio nei suoi passaggi principali.In fig. 6 illustrates the risk assessment process in its main steps.

1 } Avvio del processo e ricezione delle vulnerabilità trovate secondo quanto descritto predentemente.1} Starting the process and receiving the vulnerabilities found as described above.

2) Trasmissione della vulnerabilità (dove con la notazione Vi si indica la i-esima vulnerabilità identificata dal processo di scanner) ad un processo di valorizzazione del rischio detto risk engine 200.2) Transmission of the vulnerability (where the notation Vi indicates the i-th vulnerability identified by the scanner process) to a risk enhancement process called risk engine 200.

3) Detto risk engine 200 riceve in ingresso i dettagli della vulnerabilità Vi e fornisce in output un risultato di rischio Ri = Risk(Vi) 250, valorizzato sia mediante tecnica nota (per esempio Open Web Application Security Project) sia attraverso metodi esposti qui di seguito.3) Said risk engine 200 receives the details of the vulnerability Vi as input and outputs a risk result Ri = Risk (Vi) 250, valued both by known technique (for example Open Web Application Security Project) and by methods described here following.

4) La somma pesata dei vari valori di rischio Ri 250 associati ad ogni vulnerabilità fornisce il rischio complessivo dell'applicazione analizzata.4) The weighted sum of the various risk values Ri 250 associated with each vulnerability provides the overall risk of the analyzed application.

Risk Engine 200Risk Engine 200

Come evidenziato in quanto su esposto, la valutazione del rischio informatico è demandata al processo denominato Risk Engine 200.As highlighted in the foregoing, the IT risk assessment is delegated to the process called Risk Engine 200.

Con riferimento alla Fig. 7, si nota come il processo di valutazione del rischio sia caratterizzato da due sottoprocessi distinti e paralleli 210 e 220, i cui risultati vengono combinati per ottenere il valore di rischio finale per ogni vulnerabilità Ri.With reference to Fig. 7, it is noted how the risk assessment process is characterized by two distinct and parallel sub-processes 210 and 220, the results of which are combined to obtain the final risk value for each vulnerability Ri.

I due sottoprocessi sono finalizzati alla caratterizzazione e valorizzazione di due valoriThe two sub-processes are aimed at the characterization and enhancement of two values

costitutivi del rischio: Probabilità (Likelihood) e Impatto (Impact),constitutive of risk: Likelihood and Impact,

II primo sottoprocesso 210 è votato alla determinazione del valore di probabilità e si fondaThe first sub-process 210 is devoted to determining the probability value and is founded

sulla valutazione di quattro distinti parametri:on the evaluation of four distinct parameters:

Vettore di attacco 211Attack Vector 211

<•>Agente di minaccia 212<•> Threat Agent 212

<•>Diffusione 213<•> Diffusion 213

<•>individuazione 214<•> identification 214

Ognuno di tali parametri è costituito da uno o più gradi di valutazione che concorrono alEach of these parameters consists of one or more grades of evaluation that contribute to

valore finale assegnato. Nel seguito sono esaminati i suddetti parametri.final value assigned. The aforementioned parameters are examined below.

Vettore di attacco 211Attack Vector 211

Il parametro denominato vettore di attacco 211 individua il livello di difficoltà associato alThe parameter called attack vector 211 identifies the level of difficulty associated with the

singolo attacco informatico. In particolare esso è caratterizzato da un valore numerico (0-single cyber attack. In particular, it is characterized by a numerical value (0-

10) secondo la seguente scala suddivisa in quattro categorie di difficoltà: Teorico, Difficile,10) according to the following scale divided into four categories of difficulty: Theoretical, Difficult,

Semplice, Estremamente Semplice.Simple, Extremely Simple.

Agente di minaccia 212Threat Agent 212

Il parametro agente di minaccia 212 individua le capacità tecniche richieste durante unThe threat agent parameter 212 identifies the technical capabilities required during a

possibile evento ostile, per sfruttare la vulnerabilità e le eventuali risorse/condizionipossible hostile event, to exploit the vulnerability and any resources / conditions

necessarie affinché tale vulnerabilità possa essere sfruttata. Tale valore varia all’interno dinecessary for this vulnerability to be exploited. This value varies within

un range compreso fra 0 e 10, dove lo zero indica pericolosità minima e il dieci quellaa range between 0 and 10, where zero indicates minimum danger and ten that

massima.maximum.

L’agente di minaccia è composto da due elementi di valutazione (non illustrati):The threat agent consists of two evaluation elements (not shown):

<■>Skill Level: grado di abilità necessario ad un eventuale attaccante necessario per<■> Skill Level: degree of skill necessary for a possible attacker necessary for

lo sfruttamento della vulnerabilità;exploitation of vulnerability;

<■>Opportunity: livello di accesso e risorse necessarie per mettere in atto l'attacco; Diffusione 213<■> Opportunity: level of access and resources needed to implement the attack; Dissemination 213

Questo parametro 213 misura il livello di notorietà di una vulnerabilità, basandosi sul concetto secondo cui tanto più una vulnerabilità è conosciuta nello stato de ’arte e maggiore sarà la probabilità che sia sfruttata per un attacco e, di conseguenza, maggiore è il rischio ad essa associato.This parameter 213 measures the level of notoriety of a vulnerability, based on the concept that the more a vulnerability is known in the state of the art, the greater the probability that it will be exploited for an attack and, consequently, the greater the risk to it. associated.

individuazione 214identification 214

li parametro individuazione 214 misura la facilità di individuazione delia vulnerabilità. È lecito supporre che le vulnerabilità facilmente individuabili possano essere considerate meno pericolose di quelle di difficile tracciamento.The detection parameter 214 measures the ease of identifying the vulnerability. It is safe to assume that easily identifiable vulnerabilities can be considered less dangerous than those that are difficult to track.

Detti parametri 211, 212, 213, 214 vengono valutati e ad essi è attribuito un valore caratteristico per ogni vulnerabilità analizzata. Quindi viene calcolata una media dei valori di detti parametri il cui risultato fornisce il valore di Probabilità 215 della vulnerabilità di sicurezza in oggetto.Said parameters 211, 212, 213, 214 are evaluated and a characteristic value is attributed to them for each vulnerability analyzed. Then an average of the values of these parameters is calculated, the result of which provides the value of Probability 215 of the security vulnerability in question.

Analogamente a quanto fatto per il sotto processo 210, anche il secondo sotto processo 220, atto al calcolo di un valore di impatto, è costituito da diversi parametri che vengono combinati fra loro.Similarly to what was done for the sub-process 210, also the second sub-process 220, suitable for calculating an impact value, is made up of different parameters which are combined with each other.

Sempre con riferimento alla figura 7, si nota che, in questo caso, i parametri analizzati vengono distinti in due categorie di valutazione:Again with reference to Figure 7, it is noted that, in this case, the analyzed parameters are divided into two evaluation categories:

1) Fattori tecnici 230: mostrano il livello di gravità della vulnerabilità di sicurezza, 2) Fattori di business 240: mostrano il livello di pericolosità che fa minaccia, derivante dalla vulnerabilità in oggetto, può avere sul tipo di business a cui fa capo il sistema. Nei dettaglio l’analisi relativa ai fattori tecnici 230 si focalizza sull’impatto che la vulnerabilità individuata può avere, in caso di attacco informatico, sui dati contenuti e/o gestiti dal sistema e sul sistema stesso; pertanto i parametri analizzati e valorizzati sono:<•>Riservatezza 231;1) Technical factors 230: show the level of severity of the security vulnerability, 2) Business factors 240: show the level of danger that threatens, deriving from the vulnerability in question, can have on the type of business to which the system belongs . In detail, the analysis relating to technical factors 230 focuses on the impact that the identified vulnerability may have, in the event of a cyber attack, on the data contained and / or managed by the system and on the system itself; therefore the parameters analyzed and evaluated are: <•> Confidentiality 231;

<•>Integrità 232;<•> Integrity 232;

<•>Disponibilità 233.<•> Availability 233.

I fattori di business 240 analizzati sono, invece, basati sul tipo di attività commerciale di interesse per l'utente. Quest’ultimo, infatti, mediante apposita interfaccia dedicata, è in grado di individuare il settore di business attinente ai suoi interesse, in modo tale da attribuire più o meno importanza ai singoli parametri che intervengono nel sotto processo. Detti parametri sono:The business factors 240 analyzed are, on the other hand, based on the type of commercial activity of interest to the user. The latter, in fact, through a special dedicated interface, is able to identify the business sector relevant to its interests, in such a way as to attribute more or less importance to the individual parameters involved in the sub-process. These parameters are:

<•>Violazioni Legali 241;<•> Legal Violations 241;

<•>Diffusione delle informazioni sensibili 242;<•> Dissemination of sensitive information 242;

<•>Perdite finanziare 243;<•> Financial losses 243;

<•>Perdita di aderenza agli standard 244,<•> Loss of adherence to standards 244,

<■>Danno d’immagine 245;<■> Damage to image 245;

<•>Disponibilità del servizio 246.<•> Service availability 246.

Violazioni Legali 241Legal Violations 241

II parametro violazioni legali 241 individua quanto e in che modo la vulnerabilità in oggetto, qualora sfruttata, possa portare alla violazione di normative vigenti.The parameter of legal violations 241 identifies how much and in what way the vulnerability in question, if exploited, can lead to the violation of current regulations.

Divulgazione delle informazioni 242Disclosure of information 242

Questo parametro 242, oltre ad identificare la perdita di riservatezza di dati sensibili, quantifica la perdita di riservatezza di dati che, pur non andando ad impattare direttamente sulla privacy, possono essere lesivi per le operazioni di business (es, divulgazioni di informazioni relative ad asset aziendali, strategie di business e simili).This parameter 242, in addition to identifying the loss of confidentiality of sensitive data, quantifies the loss of confidentiality of data which, while not directly impacting privacy, can be harmful to business operations (e.g. disclosure of information relating to assets business, business strategies and the like).

Non conformità (Compliance Mismatch) 243Non-compliance (Compliance Mismatch) 243

Tale parametro 243 quantifica il rischio derivante, a seguito di attacco informatico sfruttante la vulnerabilità in analisi, di un mancato rispetto quindi delle norme regolanti il settore e degli standard richiesti.This parameter 243 quantifies the risk deriving, following a cyber attack exploiting the vulnerability under analysis, of a failure to comply with the regulations governing the sector and the required standards.

Perdite Finanziarie 244Financial Losses 244

Questo parametro 244 determina o meno e quantifica il rischio associato alla potenziale perdita economica causata da un eventuale attacco informatico che sfrutti la vulnerabilità in analisi.This parameter 244 determines whether or not and quantifies the risk associated with the potential economic loss caused by a possible cyber attack that exploits the vulnerability under analysis.

anno d'immagine 245image year 245

Detto parametro quantifica 245 il rischio di danno di immagine aziendale in caso di attacco informatico che sfrutti la vulnerabilità in analisi.This parameter quantifies the risk of damage to the corporate image in the event of a cyber attack that exploits the vulnerability under analysis.

Disponibilità 246Availability 246

Il parametro 246 in oggetto quantifica il rischio di non poter accedere ai propri dati in caso di attacco informatico sfruttante la vulnerabilità in analisi.The parameter 246 in question quantifies the risk of not being able to access one's own data in the event of a cyber attack exploiting the vulnerability under analysis.

Nel caso in cui, durante la fase di creazione della scansione non sia stato indicato nessun settore di appartenenza per il sistema analizzato da parte dell'utente, tutti i precedenti fattori 241 - 246 vengono valorizzati attraverso una valutazione di default, Terminata la valutazione dei parametri su esplicati viene calcolato un valore di impatto 247 come media di essi.In the event that, during the scan creation phase, no sector of belonging for the analyzed system has been indicated by the user, all the previous factors 241 - 246 are evaluated through a default evaluation. an impact value 247 is calculated on the expats as an average of them.

Infine, viene misurato il risultato di rischio 250 relativo alla sicurezza della vulnerabilità in analisi mediante opportuna formula.Finally, the risk result 250 relating to the security of the vulnerability under analysis is measured by means of an appropriate formula.

La somma pesata dei risultati di rischio 250 di ogni vulnerabilità individuata presente nell'applicazione internet in analisi fornisce il valore di rischio complessivo della delta applicazione.The weighted sum of the risk results 250 of each identified vulnerability present in the internet application under analysis provides the overall risk value of the delta application.

Vantaggi.Benefits.

Appare chiaramente, da quanto su esposto, che la presente invenzione risolve vantaggiosamente gli inconvenienti di quanto noto nello stato dell'arte, conseguendo gli scopi elencati nel presente documento.It appears clearly, from the above, that the present invention advantageously solves the drawbacks of what is known in the state of the art, achieving the purposes listed in this document.

Più nel dettaglio, la presente invenzione provvede un procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet in grado di fornire all'utente una chiara visione di insieme dei possibili rischi informatici correlati a determinate applicazioni internet. Vantaggiosamente, infatti, l'utente viene informato non solo delle vulnerabilità presenti in dette applicazioni, ma anche quali vulnerabilità possono essere più gevolmente sfruttate da terzi interessati ad un attacco informatico nei suoi confronti. Ancora, l’utente viene avvertito circa il livello di rischio di dette vulnerabilità e, quindi, gli è fornito un ulteriore strumento di valutazione, del livello di rischio dell'intera applicazione internet, consentendogli in questo modo una visione globale dei rischi a cui è esposto. Vantaggiosamente, inoltre, la presente invenzione provvede un procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet in grado di contestualizzare, secondo le esigenze del settore di business di riferimento dell’utente, il rischio a cui si sottopone il detto utente in caso si avvalga dell'applicazione internet in analisi.More specifically, the present invention provides a method for vulnerability analysis and correlated risk assessment of internet applications capable of providing the user with a clear overview of the possible IT risks related to certain internet applications. Advantageously, in fact, the user is informed not only of the vulnerabilities present in said applications, but also which vulnerabilities can be more easily exploited by third parties interested in a computer attack against him. Furthermore, the user is warned about the level of risk of said vulnerabilities and, therefore, is provided with an additional tool for assessing the risk level of the entire internet application, thus allowing him a global view of the risks to which he is exposed. Advantageously, moreover, the present invention provides a procedure for vulnerability analysis and assessment of correlated risks of internet applications capable of contextualising, according to the needs of the user's reference business sector, the risk to which said user is subjected in if you use the internet application under analysis.

Ulteriore vantaggio delia presente invenzione è di provvedere un procedimento come specificato che si basa su di un’architettura assai versatile die consenta di sfruttare a pieno le potenzialità degli strumenti tecnici a disposizione dell’utente e non richieda configurazioni complesse. Sempre questa architettura presenta il vantaggio di essere assa personalizzabile in base alle esigenze dell'utente e di permettere di frazionare il procedimento in moduli a sé stanti, in modo da adattarsi a qualsiasi struttura hardware. il procedimento presentato nella presente invenzione, rende possibile anche ad utenti non esperti di conoscere il rischio correlato ad una determinata applicazione internet; infatti detto procedimento è totalmente automatizzato e richiede una limitata interazione dell’utente, a cui è demandato il solo compito di indicare l'URL dell'applicazione software da esaminare e, se voluto, di sedare alcuni parametri di preferenze.A further advantage of the present invention is to provide a procedure as specified which is based on a very versatile architecture that allows to fully exploit the potential of the technical tools available to the user and does not require complex configurations. This architecture also has the advantage of being highly customizable according to the user's needs and of allowing the process to be divided into separate modules, so as to adapt to any hardware structure. the process presented in the present invention makes it possible even for non-expert users to know the risk related to a given internet application; in fact, this procedure is fully automated and requires limited user interaction, who is only entrusted with the task of indicating the URL of the software application to be examined and, if desired, of sedating some preference parameters.

Claims (1)

Translated fromItalian
RIVENDICAZIONI1. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazion internet comprendente, sostanzialmente, i seguenti passaggi:- scansione dell’applicazione internet mediante almeno un processo di scansione 10), - individuazione deile vulnerabilità mediante almeno un processo di scoperta {120), - identificazione di una o più applicazioni comprese nella detta applicazione internet mediante almeno un processo di identificazione di applicazioni (130),- rilevazione della/e vulnerabilità presenti nell'applicazione internet mediante almeno un processo di rilevazione di vulnerabilità (140),- valutazione del rischio informatico mediante almeno un processo di valutazione del rischio informatico (160),- attribuzione di un valore al rischio informatico della detta applicazione internet mediante almeno un processo di valorizzazione del rischio informatico (200),in cui detti processi di scansione (110), scoperta (120), identificazione di applicazioni (130 rilevazione di vulnerabilità (140), valutazione del rischio informatico (160), valorizzazione del rischio informatico (200), interagiscono tra loro mediante un macroprocesso di integrazione (100),2. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazion internet secondo la rivendicazione 1 caratterizzato dal fatto che il processo di scoperta (120) comprende al suo interno almeno un elenco di possibili risorse nascoste o, eventualmente, detto almeno un elenco di possibili risorse nascoste viene fornito dall’utente in modo tale da individuare la presenza di possibili nsorse nascoste.3. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazion internet secondo la rivendicazione 1 caratterizzato dal fatto che il processo di identificazione di applicazione (130) interroga l'applicazione internet mediante una o più firme contenute all'interno del processo di identificazione di applicazione (130) e/o prelevandole da un database esterno.4. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet secondo la rivendicazione 1 caratterizzato dal fatto che il processo di rilevazione d vulnerabilità (140) avvia e gestisce almeno un programma predefinito ausiliario di analisi (147).5. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet secondo la rivendicazione 1 caratterizzato dal fatto che il processo di valutazione del rischio informatico (160) comprende, sostanzialmente, i seguenti passaggi: ricezione deil’una o più vulnerabilità individuate, attribuzione di almeno un valore di rischio a dette vulnerabilità individuate, calcolo di almeno un valore di rischio complessivo.6. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet secondo la rivendicazione 5 caratterizzato dal fatto che il processo di valutazione del rischio informatico (160) comprende un processo di valorizzazione del rischio (200) composto, sostanzialmente, da uno o più sottoprocessi (210 - 220)7. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet secondo la rivendicazione 6 caratterizzato dal fatto che un primo sottoprocesso (210) comprende una pluralità di passaggi per l’attribuzione di uno specifico valore ad una pluralità di parametri di rischio (211 , 212, 213, 214).8. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet secondo la rivendicazione 6 caratterizzato dal fatto che un secondo sottoprocesso (220) comprende due o più fattori (230 e 240) presentanti rispettivi valori composti da una pluralità di rispettivi parametri di rischio (231, 232, 233, 241, 242, 243, 244, 245, 246). 9. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di applicazioni internet secondo le rivendicazioni da 6 a 8 caratterizzato dal fatto che il processo di alorizzazione del rischio (200) provvede un risultalo di rischio (250) composto da un valore di rischio (215) e da un valore di impatto (247), caratterizzante ciascuna vulnerabilità.10. Procedimento per analisi di vulnerabilità e valutazione dei rischi correlati di internet secondo le rivendicazioni da 6 a 9 caratterizzato dal fatto che provvede un valore di rischio complessivo, caratterizzante l'applicazione internet, ottenuto mediante . combinazione dei vari risultati di rischio (250), caratterizzanti ciascuna vulnerabilitàCLAIMS1. Procedure for vulnerability analysis and assessment of correlated risks of internet applications essentially comprising the following steps:- scanning of the internet application through at least one scanning process 10), - identification of vulnerabilities through at least one discovery process (120), - identification of one or more applications included in said internet application through at least one application identification process ( 130),- detection of the vulnerability (s) present in the internet application through at least one vulnerability detection process (140),- IT risk assessment using at least one IT risk assessment process (160),- attribution of a value to the IT risk of said internet application through at least one IT risk enhancement process (200),in which said processes of scanning (110), discovery (120), identification of applications (130 detection of vulnerabilities (140), assessment of IT risk (160), enhancement of IT risk (200), interact with each other through a macroprocess of integration (100),2. Procedure for vulnerability analysis and assessment of correlated risks of internet applications according to claim 1 characterized by the fact that the discovery process (120) includes within it at least a list of possible hidden resources or, possibly, said at least a list of possible hidden resources is provided by the user in order to identify the presence of possible hidden resources.3. Procedure for vulnerability analysis and assessment of correlated internet application risks according to claim 1 characterized by the fact that the application identification process (130) queries the internet application through one or more signatures contained within the identification process application (130) and / or taking them from an external database.Method for vulnerability analysis and assessment of correlated risks of internet applications according to claim 1 characterized in that the vulnerability detection process (140) initiates and manages at least one predefined auxiliary analysis program (147).5. Procedure for vulnerability analysis and assessment of correlated risks of internet applications according to claim 1 characterized in that the IT risk assessment process (160) substantially comprises the following steps: reception of the one or more identified vulnerabilities, attribution of at least one risk value to said identified vulnerabilities, calculation of at least one overall risk value.6. Procedure for vulnerability analysis and correlated risk assessment of internet applications according to claim 5 characterized in that the IT risk assessment process (160) comprises a risk assessment process (200) substantially composed of one or more multiple subprocesses (210 - 220)7. Procedure for vulnerability analysis and assessment of correlated risks of internet applications according to claim 6 characterized in that a first sub-process (210) comprises a plurality of steps for attributing a specific value to a plurality of risk parameters ( 211, 212, 213, 214).8. Process for vulnerability analysis and assessment of correlated risks of internet applications according to claim 6 characterized in that a second sub-process (220) comprises two or more factors (230 and 240) having respective values composed of a plurality of respective parameters of risk (231, 232, 233, 241, 242, 243, 244, 245, 246). Method for vulnerability analysis and risk assessment of internet applications according to claims 6 to 8 characterized in that the risk authorization process (200) provides a risk result (250) consisting of a risk value ( 215) and an impact value (247), characterizing each vulnerability.10. Procedure for vulnerability analysis and assessment of the correlated risks of the internet according to claims 6 to 9 characterized in that it provides an overall risk value, characterizing the internet application, obtained by means of. combination of the various risk results (250), characterizing each vulnerability
IT000216A2013-03-212013-03-21 PROCEDURE FOR ANALYSIS OF VULNERABILITY AND EVALUATION OF RELATED RISKS OF INTERNET APPLICATIONSITTO20130216A1 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
IT000216AITTO20130216A1 (en)2013-03-212013-03-21 PROCEDURE FOR ANALYSIS OF VULNERABILITY AND EVALUATION OF RELATED RISKS OF INTERNET APPLICATIONS

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
IT000216AITTO20130216A1 (en)2013-03-212013-03-21 PROCEDURE FOR ANALYSIS OF VULNERABILITY AND EVALUATION OF RELATED RISKS OF INTERNET APPLICATIONS

Publications (1)

Publication NumberPublication Date
ITTO20130216A1true ITTO20130216A1 (en)2014-09-22

Family

ID=48366478

Family Applications (1)

Application NumberTitlePriority DateFiling Date
IT000216AITTO20130216A1 (en)2013-03-212013-03-21 PROCEDURE FOR ANALYSIS OF VULNERABILITY AND EVALUATION OF RELATED RISKS OF INTERNET APPLICATIONS

Country Status (1)

CountryLink
IT (1)ITTO20130216A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2006007229A1 (en)*2004-06-172006-01-19The Regents Of The University Of CaliforniaMethod and apparatus for retrieving and indexing hidden web pages
US20060253423A1 (en)*2005-05-072006-11-09Mclane MarkInformation retrieval system and method
EP1923801A1 (en)*2006-11-172008-05-21Hewlett-Packard Development Company, L.P.Improved web application auditing based on sub-application identification
US20100269168A1 (en)*2009-04-212010-10-21Brightcloud Inc.System And Method For Developing A Risk Profile For An Internet Service

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2006007229A1 (en)*2004-06-172006-01-19The Regents Of The University Of CaliforniaMethod and apparatus for retrieving and indexing hidden web pages
US20060253423A1 (en)*2005-05-072006-11-09Mclane MarkInformation retrieval system and method
EP1923801A1 (en)*2006-11-172008-05-21Hewlett-Packard Development Company, L.P.Improved web application auditing based on sub-application identification
US20100269168A1 (en)*2009-04-212010-10-21Brightcloud Inc.System And Method For Developing A Risk Profile For An Internet Service

Similar Documents

PublicationPublication DateTitle
TWI734466B (en) Risk assessment method and device for leakage of privacy data
Li et al.Block: a black-box approach for detection of state violation attacks towards web applications
CN110929264B (en)Vulnerability detection method and device, electronic equipment and readable storage medium
US8763132B2 (en)Open source security monitoring
US10891393B2 (en)System and method for enterprise privacy information compliance
US9349015B1 (en)Programmatically detecting collusion-based security policy violations
CN102739675B (en)Website security detection method and device
CN109274632B (en) Method and device for identifying a website
US8839351B2 (en)Effective testing of authorization logic of web components which utilize claims-based authorization
US20120324582A1 (en)Service system that diagnoses the vulnerability of a web service in real time mode and provides the result information thereof
CN104753730B (en)A kind of method and device of Hole Detection
Wen et al.A quantitative security evaluation and analysis model for web applications based on OWASP application security verification standard
JP2019519008A (en) Method, apparatus, server and computer readable storage medium for information leak inspection
CN105306467B (en)The analysis method and device that web data is distorted
CN102902917A (en)Method and system for preventing phishing attacks
CN104956372A (en)Determining coverage of dynamic security scans using runtime and static code analyses
CN112671724B (en)Terminal security detection analysis method, device, equipment and readable storage medium
CN107392028A (en)The detection method and its detection means of sensitive information, storage medium, electronic equipment
KR102830397B1 (en)Method, device, and computer readable medium for detecting vulnerability in source code
Senol et al.The double edged sword: identifying authentication pages and their fingerprinting behavior
CN104135467A (en)Method and device for identifying a malicious website
Yan et al.Exploring chatgpt app ecosystem: Distribution, deployment and security
Arkalakis et al.Abandon All Hope Ye Who Enter Here: A Dynamic, Longitudinal Investigation of Android's Data Safety Section
KR20160090566A (en)Apparatus and method for detecting APK malware filter using valid market data
CN113886837B (en) A vulnerability detection tool credibility verification method and system

[8]ページ先頭

©2009-2025 Movatter.jp