Performing vulnerability assessment for a complex system is an important task. However, given the high complexity, manual analysis is usually tedious and error-prone. Therefore, automated methods are usually preferred.
In this project, we will leverage Prolog to perform automated vulnerability assessment. We consider a network that is composed of 7 hosts, which are denoted as H1, H2, H3, H4, H5, H6, and H7. You will get two reports from two teams respectively.
The networking team offers you a report on the network topology, where each pair of hosts below indicates the possibility to establish network connections between them. The “-” in the pair means that this host is accessible from public networks through networks.
<H1, H4>
<H2, H4>
<H4, H5>
<H3, H5>
<H4, H6>
<H5, H7>
<H6, H7>
<H1, ->
<H2, ->
<H3, ->
The security team scans hosts in the network and finds twotypes of vulnerabilities, namely V1 and V2.
1. If a host has V1 vulnerability and an attacker can establish network connection with this host, then the attacker can exploit this vulnerability and gain completely control of this host. One of the implications for the complete-control is that the attacker can instruct this host to establish other hosts.
2. If a host has V2 vulnerability and an attacker can establish network connections to it from at least two hosts simultaneously, then this host can be compromised by the attacker, rendering the attacker full control to this host.
Hosts and their corresponding vulnerabilities are presented as follows:
<H1, V1>
<H2, V1>
<H3, V1>
<H4, V2>
<H5, V1>
<H6, V1>
<H7, V2>
Deliverable
You will deliver a package that contains
1. Source code
2. [login to view URL] to describe your compiling and run-time environment. Team members will also be included in the README.txt.
You will be responsible for converting and integrating these descriptions into a prolog-based model. Your model should be able to answer the following question given a host:
1. Is it possible for this host to be compromised?
Programming Environment
For the programming environment, B-Prolog isrecommended.
Attachments
HI..i am familiar and good at Prolog programming for writing rules, facts and functions/predicates to solve puzzle or simulations and can help you complete the project using B-prolog or GNU Prolog.
Hello,
I hope this finds you well. I have just seen your project requiring;
Java
Linux
Data Processing
Computer Security
Prolog
I believe that my 10-year experience in this field is what you need right away. Avoid the headache of looking further.
Let's save time and focus on the real task. My proposed timelines and budget are just placeholder and an open for negotiation to increase or decrease as per the full requirements at hand.
Allow me to prove how better my review can be. Smile all the way! Click the message button, so initiate the conversation.
Regards,
Fridah