Skip to content

krimstock/Network-Vulnerability-Scanner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 

Repository files navigation

Network-Vulnerability-Scanner

A shell script program that scans your local networks and identifies the port vulnerablities in your network (Work in progress: 11/11/2020) Goals: Getting system to scan devices on local network, locating open ports on found devices, penetration testing on devices at specified ports while looking for vulnerabilities and a simple gui at the end of it.

[11/11/2020]: I have made a barebone program just getting the nmap command to work and the ability to scan my local network for 100 open hosts to determine which is down and which ones are alive. The roadblocks I’ve encountered during the creation of the shell script is that I’ve ran into a port scanning error through the Linux subsystem for Windows so I had to execute the script on the power shell which is not the basis of this class. It executed perfectly on the power shell but since this is a Linux class I plan to transfer the working environment into a virtual machine so that I can run better testing without going through errors. The goal of this work-in-progress was to get the scanner working/proof of concept. In the next week I hope to complete this project before November 16th giving a working script that runs multiple scripts. The remainder of my time on this project after the finished product will be mostly on the presenting side. I do plan to develop a simple terminal GUI for these scripts to be executed. The percentage completed on this project would be at least 20% with bigger advances throughout the future days. Since I am working on this project by myself, I have only been looking at outside sources to perfect my code but besides that, it is just me. I have put in at least 3 hours into the project for the measly 20% but only because I have run into the port scanning error. There is not going to be a video for this week because it is still bare bone, but I will take screenshots of the output of what I have got and the errors I’ve experienced in the subshell. For this project I will be implementing different text editors to feel the gist of the differences. I’ve started doing it in nano as I am more experienced with it, but I will remake it with vi and vim to get more experience with it and I will also include pictures of what I’ve done differently than nano. I have been late with the beginning work of this project, but I will make it up in the last couple of weeks to keep up with deadlines. I have not implemented the source into GitHub but will as soon as possible store it at my latest convenience. To sum it up, the majority of the three hours I have spent on this project was learning all the different flags to do certain scans whether it’s skipping ports, a certain port range, no discovery range, individual and multiple hosts and learning why the script doesn’t work on the Linux subshell for Windows, which is not having access to the networking sockets used in the scan making it not communicable. I had to do a loophole like I stated in the introduction. The downside to this is that if I integrate this to the virtual machine, live tests will be unable to be completed since it is a virtual machine. Therefore, I am going to be showing different outputs on different subshells.

[11/16/2020]: For this progress report, I have accomplished many things which include basically the full functionality of my port vulnerability scanner. I have set up so that only the live hosts show instead of every single host active or unactive. The port scanning option now works, and it shows a GUI for the progress bar updating every 0.5 seconds. The progress bar by itself took the longest. It was the major roadblock because I had to run nmap and the progress in sync so if there was a new update in the new child shell where nmap was being run, you had to pipe the output into the parent shell. I had to do a little research on how bash handles standard inputs and standard outputs of subshells in order to pass the output of the subshell into the parent shell without having a system waiting on the subshell to finish. ( a system hang) This was a big achievement because there was no documentation for using nmap for the progress bar. I plan to work more on the presenting side of the project because everything is basically done. The project is now at a 90% complete because I would like to do the penetration testing of the project and display the open ports. I have spent roughly 16 hours for the progress of the project including 10 hrs. for researching the project.

[12/03/2020]: For this progress report, I flushed out the UI and cleaned it up so that it is more user friendly and squashed some bugs out. I also restructured the shell script code so that it is more maintainable by implementing object-oriented programming which makes everything isolated in their own functions. So, everything is readable and maintainable for future updates and additions and expandability. I also threw in a couple fun pictures and images and I’ve refined the vulnerability scanner and we leveraged nmaps built-in script engine that I just found out the previous week to use it to further enhance the abilities of the script to detect any vulnerabilities based on the OS version of the given software found from the scans. The script that I am using is called nmap-vulners. The only major roadblock that I’ve encountered was the usage of VULCAN ( a third-party script) which is used to further enhance nmaps’ vulners script for vulnerability detecting. I’ve also added a secondary script used to install the dependencies for any user that downloads the program, for an example if they don’t have certain software such as github/nmap and install it through the program without it being intrusive for them to easily remove it. I cannot overcome this because it would require the assistance of an engineer and its out of the scope of the class and requires me to go into the Lua code. I do not think there is anything to add as of right now besides extra stuff so now I just plan to finish the presenting portion of the project. The project is now 95-97% complete as I still need to work on minor tweaks. For this progress report, I have spent 12 hours on researching, and then it took around 5-6 hours to implement the knowledge into the code. FINAL FIN?AL Version next week.

About

A shell script program that scans your local networks and identifies the port vulnerablities in your network (Work in progress: 11/11/2020) Goals: Getting system to scan devices on local network, locating open ports on found devices, penetration testing on devices at specified ports while looking for vulnerabilities and a simple gui at the end o…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages