SnakeScan 1.8.8__tar.gz → 1.9.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {snakescan-1.8.8 → snakescan-1.9.0}/PKG-INFO +5 -8
- {snakescan-1.8.8 → snakescan-1.9.0}/README.md +4 -7
- {snakescan-1.8.8 → snakescan-1.9.0}/SnakeScan/CLI.py +31 -20
- {snakescan-1.8.8 → snakescan-1.9.0}/SnakeScan/__init__.py +1 -1
- {snakescan-1.8.8 → snakescan-1.9.0}/LICENSE +0 -0
- {snakescan-1.8.8 → snakescan-1.9.0}/SnakeScan/Check_subnet.py +0 -0
- {snakescan-1.8.8 → snakescan-1.9.0}/SnakeScan/Get_ssl.py +0 -0
- {snakescan-1.8.8 → snakescan-1.9.0}/pyproject.toml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: SnakeScan
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.9.0
|
|
4
4
|
Summary: Unlock the potential of your network with this powerful IPv4 address scanner. Easily scan IP address ranges, identify active hosts, and even extract IPv4 addresses from IPv6 environments. Enhance your network monitoring, troubleshooting, and security analysis!
|
|
5
5
|
Author: Den*Ram
|
|
6
6
|
Requires-Python: >=3.7
|
|
@@ -20,12 +20,11 @@ This documentation was created with GeekBot Language Model and Den*Ram
|
|
|
20
20
|
|
|
21
21
|
A versatile and efficient Python library designed for comprehensive network port scanning.
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
This version has been improved and some minor bugs have been fixed and now scanning is supported -p argument if the host is not available then it will not be scanned and now when using ranges from the initial to the final number then it will now be taken into account, for example, as if you entered 80-100 then 21 ports will be scanned, of which there will be one additional one, that is, 80-101, and there is no need to write 79-100, because the initial one will now be taken into account.
|
|
24
24
|
|
|
25
|
+
[](https://pypi.org/project/SnakeScan/)
|
|
25
26
|
[](https://opensource.org/licenses/MIT)
|
|
26
|
-
|
|
27
27
|
[](https://www.python.org/)
|
|
28
|
-
|
|
29
28
|
[](https://img.shields.io/badge/Status-Stable-green)
|
|
30
29
|
|
|
31
30
|
**SnakeScan** provides a flexible and powerful solution for network administrators, security professionals, and developers who need reliable port scanning capabilities. From simple port checks to advanced, multi-threaded subnet analysis, SnakeScan provides the tools necessary for effective network assessment.
|
|
@@ -50,16 +49,14 @@ A versatile and efficient Python library designed for comprehensive network port
|
|
|
50
49
|
|
|
51
50
|
## ⬇️ Installation:
|
|
52
51
|
|
|
53
|
-
**It is strongly recommended to install this specific version of SnakeScan (1.8.8) as it includes significant enhancements and bug fixes that improve reliability and operational stability. The updates are aimed at ensuring optimal performance and eliminating issues encountered in previous versions.**
|
|
54
|
-
|
|
55
52
|
**Installation via pip (recommended):**
|
|
56
53
|
|
|
57
54
|
|
|
58
|
-
|
|
59
55
|
bash
|
|
60
56
|
|
|
61
57
|
pip install SnakeScan
|
|
62
58
|
|
|
59
|
+
|
|
63
60
|
**Alternative Installation from Source Code Archive:**
|
|
64
61
|
|
|
65
62
|
SnakeScan is distributed with open source code. This means you can download the code archive, examine it, make necessary changes, and fix any errors that occur during use.
|
|
@@ -144,5 +141,5 @@ watcher.start() # Start monitoring!
|
|
|
144
141
|
|
|
145
142
|
---
|
|
146
143
|
|
|
147
|
-
**Last Updated:** 1.
|
|
144
|
+
**Last Updated:** 1.9.0 (Automatic Home Directory Detection, Added `-home` and `--homedir` arguments. Added `-a` or `--asynchronous` arguments for scan allports from dictionaries. All config files are stored outside the installed library for permanent and secure customization.)
|
|
148
145
|
|
|
@@ -7,12 +7,11 @@ This documentation was created with GeekBot Language Model and Den*Ram
|
|
|
7
7
|
|
|
8
8
|
A versatile and efficient Python library designed for comprehensive network port scanning.
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
This version has been improved and some minor bugs have been fixed and now scanning is supported -p argument if the host is not available then it will not be scanned and now when using ranges from the initial to the final number then it will now be taken into account, for example, as if you entered 80-100 then 21 ports will be scanned, of which there will be one additional one, that is, 80-101, and there is no need to write 79-100, because the initial one will now be taken into account.
|
|
11
11
|
|
|
12
|
+
[](https://pypi.org/project/SnakeScan/)
|
|
12
13
|
[](https://opensource.org/licenses/MIT)
|
|
13
|
-
|
|
14
14
|
[](https://www.python.org/)
|
|
15
|
-
|
|
16
15
|
[](https://img.shields.io/badge/Status-Stable-green)
|
|
17
16
|
|
|
18
17
|
**SnakeScan** provides a flexible and powerful solution for network administrators, security professionals, and developers who need reliable port scanning capabilities. From simple port checks to advanced, multi-threaded subnet analysis, SnakeScan provides the tools necessary for effective network assessment.
|
|
@@ -37,16 +36,14 @@ A versatile and efficient Python library designed for comprehensive network port
|
|
|
37
36
|
|
|
38
37
|
## ⬇️ Installation:
|
|
39
38
|
|
|
40
|
-
**It is strongly recommended to install this specific version of SnakeScan (1.8.8) as it includes significant enhancements and bug fixes that improve reliability and operational stability. The updates are aimed at ensuring optimal performance and eliminating issues encountered in previous versions.**
|
|
41
|
-
|
|
42
39
|
**Installation via pip (recommended):**
|
|
43
40
|
|
|
44
41
|
|
|
45
|
-
|
|
46
42
|
bash
|
|
47
43
|
|
|
48
44
|
pip install SnakeScan
|
|
49
45
|
|
|
46
|
+
|
|
50
47
|
**Alternative Installation from Source Code Archive:**
|
|
51
48
|
|
|
52
49
|
SnakeScan is distributed with open source code. This means you can download the code archive, examine it, make necessary changes, and fix any errors that occur during use.
|
|
@@ -131,4 +128,4 @@ watcher.start() # Start monitoring!
|
|
|
131
128
|
|
|
132
129
|
---
|
|
133
130
|
|
|
134
|
-
**Last Updated:** 1.
|
|
131
|
+
**Last Updated:** 1.9.0 (Automatic Home Directory Detection, Added `-home` and `--homedir` arguments. Added `-a` or `--asynchronous` arguments for scan allports from dictionaries. All config files are stored outside the installed library for permanent and secure customization.)
|
|
@@ -15,7 +15,7 @@ from tqdm import tqdm
|
|
|
15
15
|
from SnakeScan.Check_subnet import Check_network
|
|
16
16
|
from SnakeScan.Get_ssl import Get_ssl
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
excepthost = []
|
|
19
19
|
OpenPorts = []
|
|
20
20
|
threads = []
|
|
21
21
|
portsopen = 0
|
|
@@ -108,6 +108,7 @@ async def is_port_run_threads(host, ports):
|
|
|
108
108
|
except Exception as e:
|
|
109
109
|
print(f"|{host[n]}|".center(60, "—"))
|
|
110
110
|
print(e)
|
|
111
|
+
print("".center(60, "—"))
|
|
111
112
|
|
|
112
113
|
|
|
113
114
|
def Load_config(ports):
|
|
@@ -215,7 +216,7 @@ else:
|
|
|
215
216
|
if __name__ == "__main__":
|
|
216
217
|
main()
|
|
217
218
|
|
|
218
|
-
version = "1.
|
|
219
|
+
version = "1.9.0"
|
|
219
220
|
|
|
220
221
|
|
|
221
222
|
def is_port_open(host, port):
|
|
@@ -548,7 +549,20 @@ if SnakeArgs().ports:
|
|
|
548
549
|
except Exception as e:
|
|
549
550
|
print(f"Incorrect input,please check the help documentation:{e}")
|
|
550
551
|
sys.exit()
|
|
552
|
+
for n in host:
|
|
553
|
+
try:
|
|
554
|
+
socket.gethostbyname(n)
|
|
555
|
+
except Exception as e:
|
|
556
|
+
excepthost.append(n)
|
|
557
|
+
print(f"|{n}|".center(60, "—"))
|
|
558
|
+
print(e)
|
|
559
|
+
print(f"".center(60, "—"))
|
|
560
|
+
if excepthost:
|
|
561
|
+
bad_hosts = set(excepthost)
|
|
562
|
+
host = [n for n in host if n not in bad_hosts]
|
|
563
|
+
excepthost = []
|
|
551
564
|
for n in range(len(host)):
|
|
565
|
+
OpenPorts = []
|
|
552
566
|
for port in range(len(port_user)):
|
|
553
567
|
if is_port_open(host[n], port_user[port]):
|
|
554
568
|
print(
|
|
@@ -573,32 +587,26 @@ if SnakeArgs().ports:
|
|
|
573
587
|
second[i] = first[i]
|
|
574
588
|
first[i] = number
|
|
575
589
|
for i in range(minimal):
|
|
576
|
-
for port in tqdm(range(int(first[i])
|
|
590
|
+
for port in tqdm(range(int(first[i]), int(second[i]) + 1)):
|
|
577
591
|
if is_port_open(host[n], port):
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
portsopen += 1
|
|
592
|
+
if port in ports:
|
|
593
|
+
OpenPorts.append(port)
|
|
594
|
+
portsopen += 1
|
|
582
595
|
else:
|
|
583
596
|
portsclosed += 1
|
|
584
597
|
if OpenPorts:
|
|
585
598
|
for i in OpenPorts:
|
|
586
599
|
print(f"Open{colored('|√|','green')}-->{ports[i]}|{i}|")
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
print(f"|{host[n]}|".center(60, "—"))
|
|
595
|
-
print(f"Closed{colored('|X|','red')}:{portsclosed}")
|
|
596
|
-
portsclosed = 0
|
|
597
|
-
print(f"Open{colored('|√|','green')}:{portsopen}")
|
|
598
|
-
portsopen = 0
|
|
599
|
-
print("—" * 60)
|
|
600
|
+
print(f"|{host[n]}|".center(60, "—"))
|
|
601
|
+
print(f"Closed{colored('|X|','red')}:{max(0,portsclosed - 1)}")
|
|
602
|
+
print(f"Open{colored('|√|','green')}:{portsopen}")
|
|
603
|
+
portsopen = 0
|
|
604
|
+
portsclosed = 0
|
|
605
|
+
OpenPorts = []
|
|
606
|
+
print("—" * 60)
|
|
600
607
|
except Exception as e:
|
|
601
608
|
print(e)
|
|
609
|
+
print("".center(60, "—"))
|
|
602
610
|
sys.exit()
|
|
603
611
|
if SnakeArgs().check:
|
|
604
612
|
for n in range(len(host)):
|
|
@@ -638,6 +646,7 @@ if SnakeArgs().info:
|
|
|
638
646
|
hostname, list, iplist = socket.gethostbyaddr(host[n])
|
|
639
647
|
except Exception as e:
|
|
640
648
|
print(e)
|
|
649
|
+
print("".center(60, "—"))
|
|
641
650
|
sys.exit()
|
|
642
651
|
|
|
643
652
|
hosting = ""
|
|
@@ -671,6 +680,7 @@ if SnakeArgs().info:
|
|
|
671
680
|
pass
|
|
672
681
|
except Exception as e:
|
|
673
682
|
print(e)
|
|
683
|
+
print("".center(60, "—"))
|
|
674
684
|
print(f"Type IP: {type(ip_obj)}")
|
|
675
685
|
print(f"Version IP: {ip_obj.version}")
|
|
676
686
|
network_obj = ipaddress.ip_network(network)
|
|
@@ -711,6 +721,7 @@ if SnakeArgs().thread:
|
|
|
711
721
|
except Exception as e:
|
|
712
722
|
print(f"|{host[n]}|".center(60, "—"))
|
|
713
723
|
print(e)
|
|
724
|
+
print("".center(60, "—"))
|
|
714
725
|
|
|
715
726
|
if SnakeArgs().version:
|
|
716
727
|
print("|Version|".center(60, "—"))
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""Unlock the potential of your network with this powerful IPv4 address scanner. Easily scan IP address ranges, identify active hosts, and even extract IPv4 addresses from IPv6 environments. Enhance your network monitoring, troubleshooting, and security analysis!"""
|
|
2
2
|
|
|
3
|
-
__version__ = "1.
|
|
3
|
+
__version__ = "1.9.0"
|
|
4
4
|
import socket
|
|
5
5
|
from time import sleep
|
|
6
6
|
from termcolor import colored
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|