0% found this document useful (0 votes)
7 views6 pages

Patch Intelligence System Development

The Patch Intelligence project aims to create a comprehensive information system that addresses the disconnect between vulnerabilities and patches in modern Patch Management. Key goals include collecting patch data, correlating it with existing vulnerability information, and building a knowledge graph to enhance decision-making for IT and Development teams. Deliverables include a graph database for application libraries and sustainable automation processes for data collection and knowledge graph updates.

Uploaded by

aasispvt
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views6 pages

Patch Intelligence System Development

The Patch Intelligence project aims to create a comprehensive information system that addresses the disconnect between vulnerabilities and patches in modern Patch Management. Key goals include collecting patch data, correlating it with existing vulnerability information, and building a knowledge graph to enhance decision-making for IT and Development teams. Deliverables include a graph database for application libraries and sustainable automation processes for data collection and knowledge graph updates.

Uploaded by

aasispvt
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Patch Intelligence

Project Outline
22nd April 2023

OVERVIEW
The objective of this research project is to collect, correlate and organize data to create a
Patch Intelligence Information System.

PROBLEM STATEMENT
Modern day Patch Management has two prominent issues:

● Disconnect in information between vulnerabilities and patches.


○ This leads to an overhead in Vulnerability Management, wherein conveying
the actions that need to be taken by the IT/Development becomes a
challenge.
● Lack of critical ITSM information on patches such as Known Issues, Failure rate
and Crash data.
○ A confidence score in patches can help IT/Development teams take
decisions on patch application and ensure the infrastructure is not
operationally impacted.
● Cataloging of available mitigation and workaround information
○ If patches can’t be applied due to known issues, how to stay secure?

Building a Patch Intelligence solution that solves the above problems can vastly improve
Vulnerability and Patch Management programs for organizations worldwide.

GOALS
1. Collect patch information for top application libraries.
2. Correlate patch information with CPEs (Common Product Enumeration) and CVEs
(Common Vulnerability Enumeration).
3. Build an n-n Knowledge Graph for CVEs -> CPEs -> Patch-Intel.

SPECIFICATIONS
Securin’s Vulnerability Intelligence currently holds correlated data on CVEs and CPEs.
Majority of the information sources on CVEs, chiefly NVD (National Vulnerability
Database) and MITRE fail to collate Patch Data. NVD’s references or patch links mostly
point to advisories rather than actual patches.

For a few vendors, the Securin VI has already captured the patch information such as
Microsoft, Apple, Red Hat etc.

The actionable structure of Patch Information must have the following components:

● Vendor
● Product
● Fixed Version
● Reference Knowledge Base
● Vulnerabilities Fixed
● Corresponding NVD CPE

In addition, for the second use case we are required to gather intelligence from vendor
disclosures, open source, forums etc. to keep record of various decisive features for the
patch. For example,

● Known Performance Issues


● Crash Likelihood
● Reboot Requirements
● End of Lifecycle Information
● And more..
Thus building a bidirectional knowledge graph as follows:

Vulnerability
Intelligence

CVE

Patch Info
Vendor
Components
Product CPE Patch
Type Risk and
Version Crash

MILESTONES

Collection
As detailed above, the first initiative will be directed towards collecting the Patch Data,
from vendors or known databases, and putting it together in the actionable structure.

The Patch Risk and Crash intelligence components may be available in vendor
disclosures or in open source forums.

Correlation
The Patch Data will need definitive relationships to CVEs and CPEs information present in
VI Data.

Organization

Build a parsable Knowledge Graph as depicted in the specifications.

Automation
Create automations to support periodic updation of the data.
DELIVERABLES

Application Libraries Graph Database


Deliver a Graph Database for information collected on the following package libraries

● npm
● Maven
● PyPi
● Linux
● NuGet

The components of the database must include:

● Name
● Environment
● Version
● Security Issues
○ Impacted & Fixed Versions
● Bugs/Caveats/Performance Issues
○ Impacted Versions & Fixed Versions
○ Severity of operational impact (if available)
● Metadata

Knowledge Graph Implementation


Knowledge graph by associating data collected with known vulnerabilities (CVEs) or non-
CVE security issues, and create CVE-CPE-Patch relationships as specified above.

For every package version node, the graph must at the minimum provide connected
nodes to:

● Security Issues (CVE/Non-CVE) it is vulnerable to.


● Security Issues (CVE/Non-CVE) fixed in this version.
● Bugs/Caveats introduced in this version.
● Bugs/Caveats fixed in this version.
● Supersedence information.

Sustainable Automation
Automate the process for sustainability & repeatability from data collection to knowledge
graph updation. The implementation must be aligned with the requirements set by the
Securin Product team.

● Python-based implementation.
● Graph DB used must support API functionalities.

Technical Documentation
Documentation providing in depth details on concept, technicals & codebase in the format
provided by Securin.

KNOWLEDGE & SKILLS REQUIRED

Research & Analytics


Research web-wide available sources for:

● Data collection
● Pattern Recognition
● Enumerating statistical analyses

Graphs in Data Structure

Understanding of Graphs basics -

● Graph Terminology
● Directed and Undirected Graphs
● Parent:Child Relationships
● Graphs Implementation as Data Structures
○ ArangoDB/Neptune

Python Basics

Basic Python web-scraping and data structure implementation skills.

● BeautifulSoup
● Pandas

Information Technology Basics


Understanding of Information Technology basics such as operating systems, application
softwares and IT infrastructure.

Information Security Basics


Understanding of Information Security basics such as vulnerabilities, impact by vendors-
products, patches and remediation activities.

Common questions

Powered by AI

Organizing patch data into a graph database supports efficient IT/Development team operations by allowing for powerful querying capabilities and visualization of complex relationships between vulnerabilities, affected products, and fixes. This structure helps teams quickly identify patches needed for specific products or vulnerabilities, assess the risk associated with each update, and track performance issues or dependencies. Consequently, it streamlines the process of updating infrastructure without unnecessary disruption .

The essential components for a graph database implementation in patch management include nodes representing package names, environments, versions, and associated security issues. It should also capture bugs and performance issues specified by impacted and fixed versions, severity of operational impacts, and supersedence information. This data structure needs to enable connection to security issues and support for Python-based automation, satisfying API functional requirements .

Python is employed for implementing automation processes in the Patch Intelligence Information System, enabling sustainable and repeatable data collection and knowledge graph updating. It is used for web scraping and data structure handling with libraries like BeautifulSoup and Pandas. Meanwhile, graph databases such as ArangoDB or Neptune are utilized to support API functionalities for the establishment of a knowledge graph, which connects data on package versions, security issues, and supersedence information .

A bidirectional knowledge graph enhances the functionality of a Patch Intelligence Information System by providing a structured way to organize and visualize relationships between CVEs, CPEs, and patch information. It supports efficient correlation of vulnerabilities with their patches and associated risks, known performance issues, and other critical intelligence. This organization allows stakeholders to easily access comprehensive data required for timely and informed decision-making in patch management processes .

Securin's Vulnerability Intelligence holds correlated data on CVEs and CPEs and primarily sources its data from platforms such as the NVD and MITRE. However, a major limitation is the lack of naturally collated patch data within these sources, as they often provide only links to advisories instead of direct patch information. Moreover, the need for maintaining additional intelligence on patch risks, performance issues, and vendor disclosures is not fully addressed by existing systems, limiting the comprehensive assessment of patches .

Deficiencies in ITSM information regarding patches can severely impact organizational security and operations by hindering the proper assessment of patch applicability and risk. Without accurate data on known issues, crash likelihood, or reboot requirements, decision-making processes are based on incomplete information, potentially leading to delayed patch application or applying patches that disrupt services. This, in turn, may expose the organization to security vulnerabilities or operational downtime, stressing the need for comprehensive patch intelligence .

Having a confidence score for patches in a Patch Management System is important because it helps IT/Development teams evaluate the reliability of a patch with regard to its known issues and failure rates. This scoring assists in making data-driven decisions about whether to apply patches immediately or delay based on potential operational impacts. Confidence scores thereby provide a quantifiable way to manage patch application risks and maintain infrastructure stability .

Modern patch management faces challenges such as disconnected information between vulnerabilities and patches, leading to overhead in conveying necessary actions for IT/Development teams. Lack of critical ITSM information on patches, like known issues, failure rates, and crash data, complicates decision-making about patch application. A Patch Intelligence solution can address these challenges by correlating patch information with CVEs and CPEs, and cataloging mitigation and workaround information to improve the efficiency of vulnerability management programs .

The actionable structure of patch information crucial for improving vulnerability management must include details like the vendor, product, fixed version, reference knowledge base, vulnerabilities fixed, and corresponding NVD CPE. Additionally, it requires intelligence on known performance issues, crash likelihood, reboot needs, and end of lifecycle information. This comprehensive structure allows IT teams to make informed decisions about patch applications and minimize operational impact .

To collect critical patch and vulnerability information effectively from diverse sources, strategies such as employing web scraping technologies (e.g., Python's BeautifulSoup), integrating APIs from major vulnerability databases, and manual extraction from vendor disclosures and open-source communities are necessary. This diversified approach ensures comprehensive coverage and keeps data current. Furthermore, leveraging natural language processing (NLP) methods to parse and structure unstructured data from forums or advisories could enhance data usability and accuracy .

You might also like