{"id":23820107,"url":"https://github.com/claudiaslibrary/network_vuln_scanner","last_synced_at":"2025-04-13T15:58:20.458Z","repository":{"id":266646467,"uuid":"898934093","full_name":"ClaudiasLibrary/network_vuln_scanner","owner":"ClaudiasLibrary","description":"Network Vulnerability Scanner. This tool will scan a network or a set of IP addresses to identify open ports, potential vulnerabilities, and possible attack surfaces.","archived":false,"fork":false,"pushed_at":"2025-02-17T19:02:17.000Z","size":8,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T06:51:19.590Z","etag":null,"topics":["cybersecurity","ethical-hacking","network-analysis","network-security","penetration-testing"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ClaudiasLibrary.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-05T10:08:36.000Z","updated_at":"2025-03-10T21:20:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"eae29527-29f4-4456-a108-f3bd5986a9a5","html_url":"https://github.com/ClaudiasLibrary/network_vuln_scanner","commit_stats":null,"previous_names":["claudiaslibrary/network_vuln_scanner"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClaudiasLibrary%2Fnetwork_vuln_scanner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClaudiasLibrary%2Fnetwork_vuln_scanner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClaudiasLibrary%2Fnetwork_vuln_scanner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClaudiasLibrary%2Fnetwork_vuln_scanner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ClaudiasLibrary","download_url":"https://codeload.github.com/ClaudiasLibrary/network_vuln_scanner/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248741197,"owners_count":21154252,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cybersecurity","ethical-hacking","network-analysis","network-security","penetration-testing"],"created_at":"2025-01-02T07:19:45.932Z","updated_at":"2025-04-13T15:58:20.422Z","avatar_url":"https://github.com/ClaudiasLibrary.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Network Vulnerability Scanner\n\n## Theory behind the code\n[Network Vulnerability Scans](https://claudiaslibrary.notion.site/Vulnerability-Scans-13219f7568328026a09bfc4a099fddd7)\n\n## Overview\nThis Python-based **Network Vulnerability Scanner** is a tool designed for security professionals, network administrators, and ethical hackers. It automates the process of scanning a network to identify open ports, grab service banners, and check for potential vulnerabilities based on known exploits.\n\nBy leveraging `nmap` for port scanning, `socket` for banner grabbing, and querying Exploit-DB for known vulnerabilities, this tool provides a comprehensive approach to identifying weaknesses in a target network. It outputs the results in an easy-to-understand format and saves them as a JSON file for further analysis.\n\n## Features\n\n- **Port Scanning**: Automatically scans the target for open ports in a specified range (default: 1-1024).\n- **Banner Grabbing**: Retrieves service banners for identified open ports to determine the version and service type.\n- **Vulnerability Scanning**: Queries Exploit-DB for known exploits related to the service and version running on the open ports.\n- **Result Saving**: Saves the results (open ports, banners, vulnerabilities) in a structured JSON format for later analysis.\n\n## Requirements\n\n- Python 3.x\n- `nmap` module: For network scanning.\n- `requests` module: For querying Exploit-DB.\n- `beautifulsoup4` module: For HTML parsing from Exploit-DB pages.\n  \nYou can install the required dependencies using the following command:\n\n```bash\npip install python-nmap requests beautifulsoup4\n```\n\nEnsure that you also have **nmap** installed on your system. On most Linux distributions, you can install it with:\n\n```bash\nsudo apt install nmap\n```\n\n## Usage\n\nTo run the scanner, use the following command:\n\n```bash\npython network_vulnerability_scanner.py \u003ctarget\u003e [-p \u003cport-range\u003e]\n```\n\n- `\u003ctarget\u003e`: The IP address or hostname of the target network to scan.\n- `-p \u003cport-range\u003e`: (Optional) The range of ports to scan (default: `1-1024`).\n\n### Example\n\n```bash\npython network_vulnerability_scanner.py 192.168.1.1 -p 80,443\n```\n\nThis command scans ports **80** and **443** on the target `192.168.1.1`, grabs banners for the services running on those ports, checks for vulnerabilities, and displays the results.\n\n## Output\n\n- **Open Ports**: A list of open TCP ports found on the target.\n- **Banners**: The service banners for each open port, displaying the service name and version.\n- **Vulnerabilities**: Known exploits related to the service and version running on the open ports, fetched from Exploit-DB.\n\nResults will be saved to a JSON file (e.g., `192.168.1.1_scan_results.json`).\n\n## Example Output\n\n```\n[*] Scanning 192.168.1.1 for open ports...\n[*] Open ports on 192.168.1.1: 80, 443\n[*] Grabbing service banners and checking vulnerabilities...\n  Port 80 - HTTP/1.1 200 OK\n  Port 443 - SSL/TLS\n[*] Checking vulnerabilities for HTTP 1.1 on port 80...\n  Port 80:\n    CVE-2020-12345: Remote Code Execution in HTTP 1.1 Server\n  Port 443:\n    No known vulnerabilities detected.\n[*] Results saved to 192.168.1.1_scan_results.json\n```\n\n## Contributing\n\nFeel free to fork the repository, open issues, and submit pull requests. Contributions are welcome to improve the functionality and features of the tool.\n\n## License\n\nThis project is licensed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclaudiaslibrary%2Fnetwork_vuln_scanner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclaudiaslibrary%2Fnetwork_vuln_scanner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclaudiaslibrary%2Fnetwork_vuln_scanner/lists"}