cloudcheck 8.6.1__cp313-cp313-musllinux_1_2_armv7l.whl → 8.7.1__cp313-cp313-musllinux_1_2_armv7l.whl
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.
- cloudcheck/cloudcheck.cpython-313-arm-linux-musleabihf.so +0 -0
- cloudcheck/providers/baidu.py +17 -0
- cloudcheck/providers/base.py +31 -3
- cloudcheck/providers/cdnetworks.py +14 -0
- cloudcheck/providers/gabia.py +12 -0
- cloudcheck/providers/gcore.py +27 -0
- cloudcheck/providers/gocache.py +17 -0
- cloudcheck/providers/hostway.py +13 -0
- cloudcheck/providers/kinx.py +14 -0
- cloudcheck/providers/ktcloud.py +14 -0
- cloudcheck/providers/lgtelecom.py +13 -0
- cloudcheck/providers/microsoft365.py +33 -0
- cloudcheck/providers/navercloud.py +15 -0
- cloudcheck/providers/nhncloud.py +15 -0
- cloudcheck/providers/skbroadband.py +13 -0
- cloudcheck/providers/tencent.py +1 -1
- cloudcheck/providers/zscaler.py +25 -0
- {cloudcheck-8.6.1.dist-info → cloudcheck-8.7.1.dist-info}/METADATA +94 -18
- {cloudcheck-8.6.1.dist-info → cloudcheck-8.7.1.dist-info}/RECORD +21 -7
- {cloudcheck-8.6.1.dist-info → cloudcheck-8.7.1.dist-info}/WHEEL +1 -1
|
Binary file
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Baidu(BaseProvider):
|
|
6
|
+
v2fly_company: str = "baidu"
|
|
7
|
+
tags: List[str] = ["cdn"]
|
|
8
|
+
short_description: str = "Baidu Cloud Acceleration (百度云加速)"
|
|
9
|
+
long_description: str = "A Chinese content delivery network and cloud acceleration service provided by Baidu."
|
|
10
|
+
# {"org_id": "BUL-5-ARIN", "org_name": "Baidu USA LLC", "country": "US", "asns": [63288]}
|
|
11
|
+
# {"org_id": "ORG-BKL1-AP-APNIC", "org_name": "Baidu (Hong Kong) Limited", "country": "HK", "asns": [133746]}
|
|
12
|
+
# {"org_id": "ORG-BKL4-RIPE", "org_name": "Baidu (Hong Kong) Limited", "country": "HK", "asns": [199506]}
|
|
13
|
+
org_ids: List[str] = [
|
|
14
|
+
"BUL-5-ARIN",
|
|
15
|
+
"ORG-BKL1-AP-APNIC",
|
|
16
|
+
"ORG-BKL4-RIPE",
|
|
17
|
+
]
|
cloudcheck/providers/base.py
CHANGED
|
@@ -79,14 +79,42 @@ class BaseProvider(BaseModel):
|
|
|
79
79
|
def update_domains(self):
|
|
80
80
|
# update dynamic domains
|
|
81
81
|
errors = []
|
|
82
|
+
domains = set()
|
|
83
|
+
|
|
84
|
+
# fetch any dynamically-updated lists of domains
|
|
85
|
+
try:
|
|
86
|
+
dynamic_domains = self.fetch_domains()
|
|
87
|
+
print(f"Got {len(dynamic_domains)} dynamic domains for {self.name}")
|
|
88
|
+
domains.update(dynamic_domains)
|
|
89
|
+
except Exception as e:
|
|
90
|
+
errors.append(
|
|
91
|
+
f"Failed to fetch dynamic domains for {self.name}: {e}:\n{traceback.format_exc()}"
|
|
92
|
+
)
|
|
93
|
+
|
|
82
94
|
if self.v2fly_company:
|
|
83
|
-
|
|
84
|
-
if
|
|
85
|
-
|
|
95
|
+
_domains, _errors = self.fetch_v2fly_domains()
|
|
96
|
+
if _domains:
|
|
97
|
+
domains.update(_domains)
|
|
86
98
|
else:
|
|
87
99
|
errors.append(
|
|
88
100
|
f"No v2fly domains were found for {self.name} (company name: {self.v2fly_company})"
|
|
89
101
|
)
|
|
102
|
+
errors.extend(_errors)
|
|
103
|
+
|
|
104
|
+
# finally, put in any manually-specified domains
|
|
105
|
+
print(f"Adding {len(self.domains)} manually-specified domains for {self.name}")
|
|
106
|
+
if self.domains:
|
|
107
|
+
domains.update(self.domains)
|
|
108
|
+
|
|
109
|
+
print(f"Total {len(domains)} domains for {self.name}")
|
|
110
|
+
|
|
111
|
+
try:
|
|
112
|
+
self.domains = self.validate_domains(domains)
|
|
113
|
+
except Exception as e:
|
|
114
|
+
errors.append(
|
|
115
|
+
f"Error validating domains for {self.name}: {e}:\n{traceback.format_exc()}"
|
|
116
|
+
)
|
|
117
|
+
|
|
90
118
|
return errors
|
|
91
119
|
|
|
92
120
|
def update_cidrs(self):
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Cdnetworks(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cdn"]
|
|
7
|
+
short_description: str = "CDNetworks (씨디네트웍스)"
|
|
8
|
+
long_description: str = (
|
|
9
|
+
"A Korean content delivery network provider offering CDN and cloud services."
|
|
10
|
+
)
|
|
11
|
+
# {"org_id": "CDNET-ARIN", "org_name": "CDNetworks Inc.", "country": "US", "asns": [36408,40366]}
|
|
12
|
+
org_ids: List[str] = [
|
|
13
|
+
"CDNET-ARIN",
|
|
14
|
+
]
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Gabia(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "Gabia (가비아)"
|
|
8
|
+
long_description: str = "A Korean cloud hosting and infrastructure provider."
|
|
9
|
+
# {"org_id": "@aut-17589-APNIC", "org_name": null, "country": null, "asns": [17589]}
|
|
10
|
+
org_ids: List[str] = [
|
|
11
|
+
"@aut-17589-APNIC",
|
|
12
|
+
]
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Gcore(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cdn"]
|
|
7
|
+
short_description: str = "G-Core Labs"
|
|
8
|
+
long_description: str = "A content delivery network and cloud infrastructure provider offering CDN, cloud computing, and edge services."
|
|
9
|
+
# {"org_id": "ORG-GLS1-AP-APNIC", "org_name": "G-Core Labs S.A", "country": "LU", "asns": [59245]}
|
|
10
|
+
# {"org_id": "ORG-WIG6-RIPE", "org_name": "G-Core Labs S.A.", "country": "LU", "asns": [199524,202422,210559]}
|
|
11
|
+
org_ids: List[str] = [
|
|
12
|
+
"ORG-GLS1-AP-APNIC",
|
|
13
|
+
"ORG-WIG6-RIPE",
|
|
14
|
+
]
|
|
15
|
+
|
|
16
|
+
_ips_url = "https://api.gcore.com/cdn/public-ip-list"
|
|
17
|
+
|
|
18
|
+
def fetch_cidrs(self):
|
|
19
|
+
response = self.request(self._ips_url)
|
|
20
|
+
ranges = set()
|
|
21
|
+
if getattr(response, "status_code", 0) == 200:
|
|
22
|
+
response_json = response.json()
|
|
23
|
+
if isinstance(response_json, dict):
|
|
24
|
+
for key in "addresses", "addresses_v6":
|
|
25
|
+
for ip_range in response_json.get(key, []):
|
|
26
|
+
ranges.add(ip_range)
|
|
27
|
+
return list(ranges)
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Gocache(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cdn"]
|
|
7
|
+
short_description: str = "GoCache"
|
|
8
|
+
long_description: str = "A Brazilian content delivery network provider offering CDN services."
|
|
9
|
+
|
|
10
|
+
_ips_url = "https://gocache.com.br/ips"
|
|
11
|
+
|
|
12
|
+
def fetch_cidrs(self):
|
|
13
|
+
response = self.request(self._ips_url)
|
|
14
|
+
ranges = set()
|
|
15
|
+
if getattr(response, "status_code", 0) == 200:
|
|
16
|
+
ranges.update(response.text.splitlines())
|
|
17
|
+
return list(ranges)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Hostway(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "Hostway (호스트웨이)"
|
|
8
|
+
long_description: str = "A Korean cloud hosting and infrastructure provider."
|
|
9
|
+
# {"org_id": "@aut-9952-APNIC", "org_name": null, "country": null, "asns": [9952]}
|
|
10
|
+
# {"asn":9952,"asn_name":"HOSTWAY-AS-KR","org_id":"@aut-9952-APNIC"}
|
|
11
|
+
org_ids: List[str] = [
|
|
12
|
+
"@aut-9952-APNIC",
|
|
13
|
+
]
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kinx(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cdn"]
|
|
7
|
+
short_description: str = "KINX (한국인터넷인프라)"
|
|
8
|
+
long_description: str = (
|
|
9
|
+
"A Korean content delivery network and cloud infrastructure provider."
|
|
10
|
+
)
|
|
11
|
+
# {"org_id": "@aut-9286-APNIC", "org_name": null, "country": null, "asns": [9286,9957,17604]}
|
|
12
|
+
org_ids: List[str] = [
|
|
13
|
+
"@aut-9286-APNIC",
|
|
14
|
+
]
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Ktcloud(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "KT Cloud (KT클라우드)"
|
|
8
|
+
long_description: str = (
|
|
9
|
+
"A Korean cloud computing service provided by KT Corporation."
|
|
10
|
+
)
|
|
11
|
+
# {"asn":9947,"asn_name":"KTC-AS-KR","country":null,"org":null,"org_id":"@aut-152232-APNIC","rir":null,"subnets":["61.100.71.0/24","61.100.72.0/24"]}
|
|
12
|
+
org_ids: List[str] = [
|
|
13
|
+
"@aut-152232-APNIC",
|
|
14
|
+
]
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Lgtelecom(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cdn"]
|
|
7
|
+
short_description: str = "LG U+ (LG유플러스)"
|
|
8
|
+
long_description: str = "A Korean telecommunications company offering CDN services."
|
|
9
|
+
# {"org_id": "@aut-17853-APNIC", "org_name": null, "country": null, "asns": [17853]}
|
|
10
|
+
# {"asn":17853,"asn_name":"LGTELECOM-AS-KR","org_id":"@aut-17853-APNIC"}
|
|
11
|
+
org_ids: List[str] = [
|
|
12
|
+
"@aut-17853-APNIC",
|
|
13
|
+
]
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Microsoft365(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "Microsoft 365"
|
|
8
|
+
long_description: str = "A cloud-based productivity suite provided by Microsoft, including Office applications and cloud services."
|
|
9
|
+
|
|
10
|
+
_ips_url = "https://endpoints.office.com/endpoints/worldwide?clientrequestid=b10c5ed1-bad1-445f-b386-b919946339a7"
|
|
11
|
+
|
|
12
|
+
def fetch_cidrs(self):
|
|
13
|
+
response = self.request(self._ips_url)
|
|
14
|
+
ranges = set()
|
|
15
|
+
if getattr(response, "status_code", 0) == 200:
|
|
16
|
+
response_json = response.json()
|
|
17
|
+
if isinstance(response_json, list):
|
|
18
|
+
for item in response_json:
|
|
19
|
+
if isinstance(item, dict):
|
|
20
|
+
ranges.update(item.get("ips", []))
|
|
21
|
+
return list(ranges)
|
|
22
|
+
|
|
23
|
+
def fetch_domains(self):
|
|
24
|
+
response = self.request(self._ips_url)
|
|
25
|
+
domains = set()
|
|
26
|
+
if getattr(response, "status_code", 0) == 200:
|
|
27
|
+
response_json = response.json()
|
|
28
|
+
if isinstance(response_json, list):
|
|
29
|
+
for item in response_json:
|
|
30
|
+
if isinstance(item, dict):
|
|
31
|
+
for domain in item.get("urls", []):
|
|
32
|
+
domains.add(domain.strip("*."))
|
|
33
|
+
return list(domains)
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Navercloud(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "Naver Cloud Platform (네이버 클라우드 플랫폼)"
|
|
8
|
+
long_description: str = (
|
|
9
|
+
"A Korean cloud computing platform provided by Naver Corporation."
|
|
10
|
+
)
|
|
11
|
+
# "org_id": "@aut-23576-APNIC", "org_name": null, "country": null, "asns": [23576,23982]}
|
|
12
|
+
# {"asn":23576,"asn_name":"nhn-AS-KR","org_id":"@aut-23576-APNIC"}
|
|
13
|
+
org_ids: List[str] = [
|
|
14
|
+
"@aut-23576-APNIC",
|
|
15
|
+
]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Nhncloud(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "NHN Cloud (NHN클라우드)"
|
|
8
|
+
long_description: str = (
|
|
9
|
+
"A Korean cloud computing platform provided by NHN Corporation."
|
|
10
|
+
)
|
|
11
|
+
# {"org_id": "@aut-10038-APNIC", "org_name": null, "country": null, "asns": [10038,45974,152291]}
|
|
12
|
+
# {"asn":45974,"asn_name":"NHN-AS-KR","org_id":"@aut-10038-APNIC"}
|
|
13
|
+
org_ids: List[str] = [
|
|
14
|
+
"@aut-10038-APNIC",
|
|
15
|
+
]
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Skbroadband(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cdn"]
|
|
7
|
+
short_description: str = "SK Broadband (SK브로드밴드)"
|
|
8
|
+
long_description: str = "A Korean telecommunications company offering CDN services."
|
|
9
|
+
# {"org_id": "@aut-10049-APNIC", "org_name": null, "country": null, "asns": [9705,10049]}
|
|
10
|
+
# {"asn":10049,"asn_name":"SKNET-AS","country":null,"org":null,"org_id":"@aut-10049-APNIC"}
|
|
11
|
+
org_ids: List[str] = [
|
|
12
|
+
"@aut-10049-APNIC",
|
|
13
|
+
]
|
cloudcheck/providers/tencent.py
CHANGED
|
@@ -5,7 +5,7 @@ from typing import List
|
|
|
5
5
|
class Tencent(BaseProvider):
|
|
6
6
|
v2fly_company: str = "tencent"
|
|
7
7
|
tags: List[str] = ["cloud"]
|
|
8
|
-
short_description: str = "Tencent Cloud"
|
|
8
|
+
short_description: str = "Tencent Cloud (腾讯云)"
|
|
9
9
|
long_description: str = "A Chinese cloud computing service provider and subsidiary of Tencent, offering cloud infrastructure and platform services."
|
|
10
10
|
# {"org_id": "ORG-STCS1-AP-APNIC", "org_name": "Shenzhen Tencent Computer Systems Company Limited", "country": "CN", "asns": [132203,132591]}
|
|
11
11
|
# {"org_id": "ORG-TCCC1-AP-APNIC", "org_name": "Tencent Cloud Computing (Beijing) Co., Ltd", "country": "CN", "asns": [133478]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from cloudcheck.providers.base import BaseProvider
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Zscaler(BaseProvider):
|
|
6
|
+
tags: List[str] = ["cloud"]
|
|
7
|
+
short_description: str = "Zscaler"
|
|
8
|
+
long_description: str = "A cloud security company providing secure internet access, cloud security, and zero trust network access services."
|
|
9
|
+
|
|
10
|
+
_ips_url = "https://api.config.zscaler.com/zscaler.net/cenr/json"
|
|
11
|
+
|
|
12
|
+
def fetch_cidrs(self):
|
|
13
|
+
response = self.request(self._ips_url)
|
|
14
|
+
ranges = set()
|
|
15
|
+
if getattr(response, "status_code", 0) == 200:
|
|
16
|
+
response_json = response.json()
|
|
17
|
+
if isinstance(response_json, dict):
|
|
18
|
+
for domain, data in response_json.items():
|
|
19
|
+
for continent, cities in data.items():
|
|
20
|
+
for city, ranges_list in cities.items():
|
|
21
|
+
for range_data in ranges_list:
|
|
22
|
+
range_str = range_data.get("range")
|
|
23
|
+
if range_str:
|
|
24
|
+
ranges.add(range_str)
|
|
25
|
+
return list(ranges)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cloudcheck
|
|
3
|
-
Version: 8.
|
|
3
|
+
Version: 8.7.1
|
|
4
4
|
Summary: Detailed database of cloud providers. Instantly look up a domain or IP address
|
|
5
5
|
Requires-Python: >=3.9
|
|
6
6
|
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
@@ -16,6 +16,9 @@ Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
|
16
16
|
[](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/rust-tests.yml)
|
|
17
17
|
[](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/python-tests.yml)
|
|
18
18
|
[](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/pipeline-tests.yml)
|
|
19
|
+
[](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/docker-tests.yml)
|
|
20
|
+
|
|
21
|
+
### UPDATE 01-2026: Now supports REST API!
|
|
19
22
|
|
|
20
23
|
### UPDATE 12-2025: Now supports government agencies (DoD, FBI, UK MoD, RU FSO)!
|
|
21
24
|
|
|
@@ -39,24 +42,43 @@ Used by [BBOT](https://github.com/blacklanternsecurity/bbot) and [BBOT Server](h
|
|
|
39
42
|
# installation
|
|
40
43
|
cargo install cloudcheck
|
|
41
44
|
|
|
42
|
-
#
|
|
43
|
-
cloudcheck 8.8.8.8
|
|
45
|
+
# lookup command
|
|
46
|
+
cloudcheck lookup 8.8.8.8
|
|
44
47
|
# output:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
"cloud"
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
[
|
|
49
|
+
{
|
|
50
|
+
"name": "Google",
|
|
51
|
+
"tags": ["cloud"],
|
|
52
|
+
"short_description": "A suite of cloud computing services provided by Google",
|
|
53
|
+
"long_description": "Google Cloud Platform provides infrastructure, platform, and software services for businesses and developers"
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
|
|
57
|
+
cloudcheck lookup asdf.amazon.com
|
|
53
58
|
# output:
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
"cloud"
|
|
58
|
-
|
|
59
|
-
|
|
59
|
+
[
|
|
60
|
+
{
|
|
61
|
+
"name": "Amazon",
|
|
62
|
+
"tags": ["cloud"],
|
|
63
|
+
"short_description": "A comprehensive cloud computing platform provided by Amazon",
|
|
64
|
+
"long_description": "Amazon Web Services offers infrastructure services, storage, and computing power"
|
|
65
|
+
}
|
|
66
|
+
]
|
|
67
|
+
|
|
68
|
+
# serve command - start REST API server
|
|
69
|
+
cloudcheck serve
|
|
70
|
+
# Server listening on http://127.0.0.1:8080
|
|
71
|
+
# Swagger UI available at http://127.0.0.1:8080/swagger-ui
|
|
72
|
+
# OpenAPI spec available at http://127.0.0.1:8080/api-docs/openapi.json
|
|
73
|
+
|
|
74
|
+
# serve with custom host and port
|
|
75
|
+
cloudcheck serve --host 0.0.0.0 --port 3000
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## REST API
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
curl http://127.0.0.1:8080/lookup/8.8.8.8
|
|
60
82
|
```
|
|
61
83
|
|
|
62
84
|
## Python Library Usage
|
|
@@ -127,7 +149,7 @@ When adding a new cloud provider:
|
|
|
127
149
|
In addition to the above attributes, if you have a custom source of CIDRs or domains, you can override the `fetch_cidrs()` or `fetch_domains()` methods (which by default return an empty list) to go fetch your custom TXT/JSON file, etc.
|
|
128
150
|
|
|
129
151
|
<!--PROVIDERTABLE-->
|
|
130
|
-
## Cloud Providers (
|
|
152
|
+
## Cloud Providers (55)
|
|
131
153
|
|
|
132
154
|
| Name | Description | Tags | Domains | Subnets |
|
|
133
155
|
|------|-------------|------|---------|----------|
|
|
@@ -136,7 +158,9 @@ When adding a new cloud provider:
|
|
|
136
158
|
| Amazon Web Services | A comprehensive cloud computing platform provided by Amazon, offering infrastructure services, storage, and computing power. | cloud | 231 | 14090 |
|
|
137
159
|
| Arvancloud | An Iranian cloud computing and content delivery network provider offering cloud infrastructure and CDN services. | cdn | 1 | 20 |
|
|
138
160
|
| Backblaze | A cloud storage and backup service provider offering data backup and cloud storage solutions. | cloud | 2 | 26 |
|
|
161
|
+
| Baidu Cloud Acceleration (百度云加速) | A Chinese content delivery network and cloud acceleration service provided by Baidu. | cdn | 134 | 0 |
|
|
139
162
|
| CacheFly | A content delivery network provider offering global CDN services. | cdn | 0 | 23 |
|
|
163
|
+
| CDNetworks (씨디네트웍스) | A Korean content delivery network provider offering CDN and cloud services. | cdn | 0 | 3 |
|
|
140
164
|
| Cisco | A multinational technology corporation that designs, manufactures, and sells networking hardware, software, and telecommunications equipment. | cloud | 121 | 629 |
|
|
141
165
|
| Cloudflare | A web infrastructure and security company providing content delivery network services, DDoS mitigation, and web security solutions. | cdn | 60 | 2674 |
|
|
142
166
|
| Amazon CloudFront | A content delivery network service provided by Amazon Web Services that delivers data, videos, applications, and APIs to customers globally. | cdn | 0 | 172 |
|
|
@@ -146,17 +170,27 @@ When adding a new cloud provider:
|
|
|
146
170
|
| Department of Defense | A U.S. government agency responsible for coordinating and supervising all agencies and functions of the government directly related to national security and the United States Armed Forces. | gov | 3 | 9226 |
|
|
147
171
|
| Federal Bureau of Investigation | A U.S. government agency that serves as the domestic intelligence and security service, responsible for investigating federal crimes and protecting national security. | gov | 3 | 21 |
|
|
148
172
|
| Fastly | A content delivery network and edge cloud platform that provides edge computing, security, and performance services. | cdn | 8 | 1026 |
|
|
173
|
+
| Gabia (가비아) | A Korean cloud hosting and infrastructure provider. | cloud | 0 | 48 |
|
|
174
|
+
| G-Core Labs | A content delivery network and cloud infrastructure provider offering CDN, cloud computing, and edge services. | cdn | 0 | 1405 |
|
|
149
175
|
| GitHub | A web-based platform for version control and collaboration using Git, providing hosting for software development and code repositories. | cdn | 33 | 4277 |
|
|
176
|
+
| GoCache | A Brazilian content delivery network provider offering CDN services. | cdn | 0 | 28 |
|
|
150
177
|
| Google Cloud | A suite of cloud computing services provided by Google, including infrastructure, platform, and software services for businesses and developers. | cloud | 1095 | 1863 |
|
|
151
178
|
| Hewlett Packard Enterprise | A multinational enterprise information technology company that provides servers, storage, networking, and cloud services. | cloud | 16 | 38 |
|
|
152
179
|
| Heroku | A cloud platform as a service that enables developers to build, run, and operate applications entirely in the cloud. | cloud | 12 | 0 |
|
|
153
180
|
| Hetzner | A German cloud hosting provider offering dedicated servers, cloud instances, and storage solutions. | cloud | 14 | 126 |
|
|
181
|
+
| Hostway (호스트웨이) | A Korean cloud hosting and infrastructure provider. | cloud | 0 | 59 |
|
|
154
182
|
| Huawei | A Chinese multinational technology corporation that designs, develops, and sells telecommunications equipment, consumer electronics, and cloud services. | cloud | 338 | 270 |
|
|
155
183
|
| IBM | A multinational technology corporation that provides hardware, software, cloud computing, and consulting services. | cloud | 20 | 394 |
|
|
156
184
|
| Imperva | A cybersecurity company that provides web application firewall, DDoS protection, and data security solutions. | waf | 1 | 23 |
|
|
157
185
|
| Kamatera | A cloud infrastructure provider offering virtual private servers, cloud servers, and managed cloud services. | cloud | 1 | 163 |
|
|
186
|
+
| KINX (한국인터넷인프라) | A Korean content delivery network and cloud infrastructure provider. | cdn | 0 | 136 |
|
|
187
|
+
| KT Cloud (KT클라우드) | A Korean cloud computing service provided by KT Corporation. | cloud | 0 | 8 |
|
|
158
188
|
| Leaseweb | A global hosting and cloud infrastructure provider offering dedicated servers, cloud hosting, and CDN services. | cloud | 0 | 1487 |
|
|
189
|
+
| LG U+ (LG유플러스) | A Korean telecommunications company offering CDN services. | cdn | 0 | 168 |
|
|
159
190
|
| Microsoft | A multinational technology corporation that develops, manufactures, licenses, supports and sells computer software, consumer electronics and personal computers. Known for products like Windows, Office, Azure cloud services, and Xbox. | cloud | 689 | 2452 |
|
|
191
|
+
| Microsoft 365 | A cloud-based productivity suite provided by Microsoft, including Office applications and cloud services. | cloud | 0 | 82 |
|
|
192
|
+
| Naver Cloud Platform (네이버 클라우드 플랫폼) | A Korean cloud computing platform provided by Naver Corporation. | cloud | 0 | 73 |
|
|
193
|
+
| NHN Cloud (NHN클라우드) | A Korean cloud computing platform provided by NHN Corporation. | cloud | 0 | 122 |
|
|
160
194
|
| OVHcloud | A French cloud computing company that provides web hosting, dedicated servers, and cloud infrastructure services. | cloud | 3 | 517 |
|
|
161
195
|
| Oracle | A multinational technology corporation that provides database software, cloud engineering systems, and enterprise software products. | cloud | 18 | 2329 |
|
|
162
196
|
| Qrator | A DDoS protection and content delivery network service provider. | cdn | 0 | 19 |
|
|
@@ -165,6 +199,7 @@ When adding a new cloud provider:
|
|
|
165
199
|
| Rackspace | A managed cloud computing company that provides hosting, cloud services, and managed infrastructure solutions. | cloud | 1 | 199 |
|
|
166
200
|
| Salesforce | A cloud-based software company that provides customer relationship management services and enterprise cloud computing solutions. | cloud | 39 | 48 |
|
|
167
201
|
| Scaleway | A French cloud computing company that provides virtual private servers, bare metal servers, and cloud infrastructure services. | cloud | 1 | 40 |
|
|
202
|
+
| SK Broadband (SK브로드밴드) | A Korean telecommunications company offering CDN services. | cdn | 0 | 22 |
|
|
168
203
|
| StormWall | A DDoS protection and web application firewall service provider. | cdn | 0 | 20 |
|
|
169
204
|
| Sucuri | A website security and web application firewall service provider. | waf | 0 | 16 |
|
|
170
205
|
| Tencent Cloud | A Chinese cloud computing service provider and subsidiary of Tencent, offering cloud infrastructure and platform services. | cloud | 580 | 368 |
|
|
@@ -172,4 +207,45 @@ When adding a new cloud provider:
|
|
|
172
207
|
| Wasabi | A cloud storage provider offering hot cloud storage services with high performance and low cost. | cloud | 1 | 20 |
|
|
173
208
|
| X4B | A DDoS protection and content delivery network service provider. | cdn | 0 | 3 |
|
|
174
209
|
| Zoho | An Indian software company that provides cloud-based business software and productivity tools including CRM, email, and office suites. | cloud | 13 | 91 |
|
|
210
|
+
| Zscaler | A cloud security company providing secure internet access, cloud security, and zero trust network access services. | cloud | 0 | 247 |
|
|
175
211
|
<!--ENDPROVIDERTABLE-->
|
|
212
|
+
|
|
213
|
+
## Development
|
|
214
|
+
|
|
215
|
+
### Python
|
|
216
|
+
|
|
217
|
+
#### Setup
|
|
218
|
+
```bash
|
|
219
|
+
uv sync
|
|
220
|
+
uv run maturin develop --release
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
#### Running Tests
|
|
224
|
+
```bash
|
|
225
|
+
# python tests
|
|
226
|
+
uv run pytest test_cloudcheck.py -v
|
|
227
|
+
|
|
228
|
+
# docker tests
|
|
229
|
+
python test_docker.py
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
#### Linting
|
|
233
|
+
```bash
|
|
234
|
+
# Check for linting issues
|
|
235
|
+
uv run ruff check && uv run ruff format .
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### Rust
|
|
239
|
+
|
|
240
|
+
#### Running Tests
|
|
241
|
+
```bash
|
|
242
|
+
cargo test --verbose --all-features
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
#### Formatting
|
|
246
|
+
```bash
|
|
247
|
+
cargo fmt --all
|
|
248
|
+
|
|
249
|
+
cargo clippy --all-targets --all-features -- -D warnings
|
|
250
|
+
```
|
|
251
|
+
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
cloudcheck-8.6.1.dist-info/METADATA,sha256=aG_IZP-BGxR_mANtf7j_jJC_l9ObGTfOSFPi6Nr5XQ0,12153
|
|
2
|
-
cloudcheck-8.6.1.dist-info/WHEEL,sha256=qGBlEHaOgfAagguPug1z7vImco5O0dK7-1J1I6fWMsM,108
|
|
3
|
-
cloudcheck.libs/libgcc_s-262c4f60.so.1,sha256=xPsZgCvL7EO-llmjqc5bm96baehLsO4avBqUhih0xZg,2810501
|
|
4
1
|
cloudcheck/__init__.py,sha256=Bhl6yAlOs8SFIL9Qw-EX8QGeHWeKfo7_IyXOeAefMgU,61
|
|
5
|
-
cloudcheck/cloudcheck.cpython-313-arm-linux-musleabihf.so,sha256=
|
|
2
|
+
cloudcheck/cloudcheck.cpython-313-arm-linux-musleabihf.so,sha256=aS98fUE_EqeBtiFPX1w3js8Z5aKfBJ7LmFznlyq91EI,8654789
|
|
6
3
|
cloudcheck/helpers.py,sha256=WQElEwBVpClsdDPXtA8ru-z4g2xubw1-0MpIvslSHvU,7635
|
|
7
4
|
cloudcheck/providers/__init__.py,sha256=CeokJETwsKYZUlArE723UTPtize7OJ799YLPcyIv3z0,1651
|
|
8
5
|
cloudcheck/providers/akamai.py,sha256=Czph3Sfo0uq6YCMDpi6WVZf9qJV3bZcmLenonrxnVMk,1822
|
|
@@ -10,8 +7,10 @@ cloudcheck/providers/alibaba.py,sha256=kN_HgkfmeVZGMxo-bOHthObdokWx-R-0K7OFmQ4iS
|
|
|
10
7
|
cloudcheck/providers/amazon.py,sha256=5r8psEU4PJPa7PpPFi2B2X5MWAD1Bdi9jOyybElaYOc,1845
|
|
11
8
|
cloudcheck/providers/arvancloud.py,sha256=PeFy02lcOdWE8fWv3eq11al3e0ZaQ6FPSQffPWqL_eI,851
|
|
12
9
|
cloudcheck/providers/backblaze.py,sha256=xX6kxi2oLj-VCtMGQkbXRU7bYkT-wYkE-M-_c6BqReA,527
|
|
13
|
-
cloudcheck/providers/
|
|
10
|
+
cloudcheck/providers/baidu.py,sha256=66U_AEbTUeJZhuDJ3J_qr_JTpMHszn2CkUsMf9NRqqQ,783
|
|
11
|
+
cloudcheck/providers/base.py,sha256=lmxSGWnVanF7SWbSxnVxE4VZMeEtPBegz94FnVIbpiU,11254
|
|
14
12
|
cloudcheck/providers/cachefly.py,sha256=YCq4EyUOiMpkdi_d16I8398Il3JI-FTtDv1g3LcWHVE,860
|
|
13
|
+
cloudcheck/providers/cdnetworks.py,sha256=tZWlPWUZEqZKud8MGv364ZuedyVPWJJjzslI3OgqsDg,481
|
|
15
14
|
cloudcheck/providers/cisco.py,sha256=IaJIpyor35pq0TZP2S0tMVBF3yjJ-nebwNak-nVhXQ0,2434
|
|
16
15
|
cloudcheck/providers/cloudflare.py,sha256=G0fxIIGB_sz8Dzg8G4XFU3HjRZl0kpekL37Gf8AUBgE,1984
|
|
17
16
|
cloudcheck/providers/cloudfront.py,sha256=4_4D8GJPtATaNZyYxTIGVSGwSuC8OJLiNHy1e2NA9yk,804
|
|
@@ -21,17 +20,27 @@ cloudcheck/providers/digitalocean.py,sha256=lZsSB2lXr0ggw_exdPb9PLazhcgs-Q2nh6tv
|
|
|
21
20
|
cloudcheck/providers/dod.py,sha256=WTA1AGNBVFfJ7TousuUtpl5R-b-lKT9CI7oJZX54q7g,1358
|
|
22
21
|
cloudcheck/providers/fastly.py,sha256=0SZBmthVvh11Jdkc9xZgHQ6XMTPoPxFm1niK3HDHyeY,881
|
|
23
22
|
cloudcheck/providers/fbi.py,sha256=SFWfi9Ll9vQYlEpZX7uGXO6GrZZJWYmehiZ1IXKMrr0,633
|
|
23
|
+
cloudcheck/providers/gabia.py,sha256=bP4fIiuQdh1yzdwO8_aNkbuGIwdKVjYQcxmWBLFTV4s,417
|
|
24
|
+
cloudcheck/providers/gcore.py,sha256=QuJ_UworZYbcdi_HKUB_x7bMy1SlsufiImOVZcTWQ1M,1120
|
|
24
25
|
cloudcheck/providers/github.py,sha256=h-ESNNl1tQXSO8q_HswME4x8h-Qu9O-h7d4Z7FpyUOI,1036
|
|
26
|
+
cloudcheck/providers/gocache.py,sha256=blnXP4e_X-bBhp1DpeJrmugFLxb4Lo1WDlXQmRSwgE8,554
|
|
25
27
|
cloudcheck/providers/google.py,sha256=KkkQEFwXN8xTxy4h7t1O8JNBcVIJx6UXMYw4n-ZU21Q,3427
|
|
26
28
|
cloudcheck/providers/heroku.py,sha256=0bRaIP44hWOwEqlHJ9U_vf8I0sAYTy5DRl0gKgg-HIY,356
|
|
27
29
|
cloudcheck/providers/hetzner.py,sha256=MT-d0ylPVcqeHZOBMrO69SF7zaHvYj7MuRaiOhs_U24,810
|
|
30
|
+
cloudcheck/providers/hostway.py,sha256=R1zFZ9pZYmgMVJl6dHTINRNSevj33JK1jarcMhRO_VM,497
|
|
28
31
|
cloudcheck/providers/hpe.py,sha256=aiZQK2KzHpG00AFHp6InYVxnRxNYfmcAu_TnRPFqNBo,726
|
|
29
32
|
cloudcheck/providers/huawei.py,sha256=w8996PLDGATXwEZUTGdvygyNAPG4d4lLbgW6WRmzR8M,1024
|
|
30
33
|
cloudcheck/providers/ibm.py,sha256=WqSe6G5KinmUDrUkJRUehcrd_diFexcNKmDsvt2vN-k,3776
|
|
31
34
|
cloudcheck/providers/imperva.py,sha256=oQWCCYJ_A7d2aSl2zjyJkmZtq2N4BGTTfsSW2LD-1xk,1008
|
|
32
35
|
cloudcheck/providers/kamatera.py,sha256=QfjvU3vkQW10BBYtk2kOOZKQ0K7r6Oa5o6e2GKt2Ee8,816
|
|
36
|
+
cloudcheck/providers/kinx.py,sha256=QPc8Y2JE92hmHBZcISzsu2LaMHjFUymifXpVIJ_6MOw,469
|
|
37
|
+
cloudcheck/providers/ktcloud.py,sha256=3nLHtovucQ1vRfuUyEQ3iM1m80QvoHFS5ufgC5tfpIc,518
|
|
33
38
|
cloudcheck/providers/leaseweb.py,sha256=aNMq2Z0JkQBJSs7_YGZPsiJShjEmkGxgMVaKZjkBmII,1921
|
|
39
|
+
cloudcheck/providers/lgtelecom.py,sha256=kZn_uOHYk2DJqh560hxzSlYP2FBcz1Y4CnagM7BzPXo,508
|
|
34
40
|
cloudcheck/providers/microsoft.py,sha256=MHxeRtUs43aIVUECnsFTZdwcbZ55NG4DlfC-KERmqDI,2302
|
|
41
|
+
cloudcheck/providers/microsoft365.py,sha256=zfZSbx52sbI_9pHSt12Alu_xKn_JB7cSyCLGB08MfcE,1353
|
|
42
|
+
cloudcheck/providers/navercloud.py,sha256=yJvOic5Hnmz2HpBzeKUuSn0yLOJoTzY6lDBoW1pDaxs,565
|
|
43
|
+
cloudcheck/providers/nhncloud.py,sha256=apqUzF8PMzPte6bZAc4sGBYnUOuF61SBMRI5ZZ1jvwo,541
|
|
35
44
|
cloudcheck/providers/oracle.py,sha256=1O0_phByV3t_0cfZsD4mdl5_RlYHbaIlQUtCNX5tKgI,1921
|
|
36
45
|
cloudcheck/providers/ovh.py,sha256=i-GM5bDhHzxHabCoqkmZyp4OSHkSUwdBCmsHLJWULcU,562
|
|
37
46
|
cloudcheck/providers/qrator.py,sha256=5Pnt7oIiRXXgUlJKn2IeBH_sz2JHpIso5Xe5IZ5P6xo,593
|
|
@@ -40,11 +49,16 @@ cloudcheck/providers/rackspace.py,sha256=je_1Ds25Hd70hbsbJP_Ex56n1cX1_3fGPazW_2L
|
|
|
40
49
|
cloudcheck/providers/ru_fso.py,sha256=Uok9sD4EeWiBZbaTSKB5EGgAM9byWc0d4GSt_UBvk-g,467
|
|
41
50
|
cloudcheck/providers/salesforce.py,sha256=N-BOrUpIyf62zsMGaK2J-WsLFYyT9MO6uCclP02Snjw,851
|
|
42
51
|
cloudcheck/providers/scaleway.py,sha256=EmS-MobNspdoqHsZQvxgl6j__yXXj7elKet44WcuTx4,689
|
|
52
|
+
cloudcheck/providers/skbroadband.py,sha256=N8drXa_784lVmXxj6BlPLKQ1FLvviG3cWrHkYzm7LRA,544
|
|
43
53
|
cloudcheck/providers/stormwall.py,sha256=PyUsMxJeK0lJMjD-OwA3-N5LBWxuZaNjVKqAislVl3E,456
|
|
44
54
|
cloudcheck/providers/sucuri.py,sha256=LTGNb9f5esF617JnXuT3SyoT0lEAzdK55W8nXwCi_vA,431
|
|
45
|
-
cloudcheck/providers/tencent.py,sha256=
|
|
55
|
+
cloudcheck/providers/tencent.py,sha256=Q4yHQDGMa1CdcTR2MvEgqOuDeJqAU4gwVdaKLtzPxnA,908
|
|
46
56
|
cloudcheck/providers/uk_mod.py,sha256=UEoeQmDiw2tJfOtCEe-e6TWkdCUpUa-rouNZkp0GDSY,524
|
|
47
57
|
cloudcheck/providers/wasabi.py,sha256=MJ1c46qauijwJR8Q1pxk2D4QZ1MXaYR4QHA7tNmGn6U,665
|
|
48
58
|
cloudcheck/providers/x4b.py,sha256=btHtR8QMpAlN9qbK6w6yOTMxeRNIswovmH-VesYxNSI,430
|
|
49
59
|
cloudcheck/providers/zoho.py,sha256=bo_bhd1OP3n_66abQmjIexYiuNQFAQe8VHyJONyv5so,1498
|
|
50
|
-
cloudcheck
|
|
60
|
+
cloudcheck/providers/zscaler.py,sha256=jW6W7GcFdeCd1X9M7QH9ChoVSLxK7rJfT9N8bd8arhY,1080
|
|
61
|
+
cloudcheck-8.7.1.dist-info/METADATA,sha256=67Ul4GOmt4x2GeNaVHGZ52sZnrFD4C8AovOTRqKG0_A,15444
|
|
62
|
+
cloudcheck-8.7.1.dist-info/WHEEL,sha256=wMYMTUJDVeLsNwWLd3HbfPfwLHicHwmMaHeaf4bFLf8,108
|
|
63
|
+
cloudcheck.libs/libgcc_s-262c4f60.so.1,sha256=xPsZgCvL7EO-llmjqc5bm96baehLsO4avBqUhih0xZg,2810501
|
|
64
|
+
cloudcheck-8.7.1.dist-info/RECORD,,
|