Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/0x00wolf/sfh-scanner
An Nmap emulator in Python
https://github.com/0x00wolf/sfh-scanner
Last synced: 13 days ago
JSON representation
An Nmap emulator in Python
- Host: GitHub
- URL: https://github.com/0x00wolf/sfh-scanner
- Owner: 0x00wolf
- License: unlicense
- Created: 2023-10-11T00:07:21.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-01T00:01:53.000Z (about 1 year ago)
- Last Synced: 2024-11-05T16:06:56.424Z (2 months ago)
- Language: Python
- Size: 10.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## SFH Network Scanner
### Overview:
I wrote this program as a solution to a question on an assigment for Digital Nova Scotia's Skills for Hire cybersecurity career training program. The assignment called for you to craft an icmp packet, and be able to scan a specific port. I added in the command line utility, which was really my efforts to build a wrapper for a larger project later on.
This program is a wrapper for Scapy that emulates the input style and functionality of NMAP. I am in the process of programming a number of additional scanning modes (Null, XMAS, tcp half-open, etc.). As it stands, the wrapper is fully functional, and allows for NMAP like inputs from the user. The current port scan method uses a half open TCP scan to remain somewhat stealthy.
Current modes support TCP port scanning and ICMP device detection.
### Usage:
**To print the help menu:**
```python3 scanner.py -h```
**To ping (make an icmp echo request) to a single device:**
```python3 scanner.py 8.8.8.8 icmp```
**To ping every address in a /24 range just ensure that the last octet is a 0:**
```python3 scanner.py 8.8.8.0 icmp```
**To conduct a TCP port scan on a single device of all the common ports:**
```python3 scanner.py 8.8.8.8 tcp```
**To conduct a TCP port scan on a single device on a specific port, a series of ports, a range of ports, or any mixture:**
```python3 scanner.py 8.8.8.8 tcp -p 21```
```python3 scanner.py 8.8.8.8 tcp -p 21,22,53,80,443```
```python3 scanner.py 8.8.8.8 tcp -p 1-1024```
```python3 scanner.py 8.8.8.8 tcp -p 21,22,53,80,443,1000-2000,65535```
**To conduct a ping sweep of a network, and then conduct a TCP port scan on any found devices(the same rules for port selection apply):**
```python3 scanner.py 8.8.8.0 tcp -p 21,22```