summaryrefslogtreecommitdiff
path: root/detection/vpnservices/windscribevpn.py
diff options
context:
space:
mode:
Diffstat (limited to 'detection/vpnservices/windscribevpn.py')
-rw-r--r--detection/vpnservices/windscribevpn.py27
1 files changed, 21 insertions, 6 deletions
diff --git a/detection/vpnservices/windscribevpn.py b/detection/vpnservices/windscribevpn.py
index 3676232..751228a 100644
--- a/detection/vpnservices/windscribevpn.py
+++ b/detection/vpnservices/windscribevpn.py
@@ -37,13 +37,19 @@ class Windscribevpn(VpnDetector):
"""
result_group = []
+ result_group = []
+
# start finding windscribevpn server name
- windscribevpn_detector = WindscribevpnServername(self.start_time, self.end_time)
- result_group.extend(windscribevpn_detector.find_server())
+ windscribevpn_server_name_detector = WindscribevpnServername(self.start_time, self.end_time)
+ server_name_object = windscribevpn_server_name_detector.find_server()
+ result_group.extend(server_name_object)
# start finding windscribevpn server ip
- windscribevpn_detector = WindscribevpnServerip()
- result_group.extend(windscribevpn_detector.find_server())
+ windscribevpn_server_ip_detector = WindscribevpnServerip()
+ # server_name_list 初始化本周期已查询到的
+ windscribevpn_server_ip_detector.server_name_list = server_name_object[0].server_list if len(
+ server_name_object) > 0 else []
+ result_group.extend(windscribevpn_server_ip_detector.find_server())
return result_group
@@ -73,6 +79,8 @@ class WindscribevpnServerip(VpnDetector):
self.mariadb_ip_tb_name = self.config['mariadb']['ip_table_name']
self.mariadb_domain_tb_name = self.config['mariadb']['domain_table_name']
+ self.server_name_list = []
+
def find_more_servernames(self, server_name_list):
"""
@@ -119,11 +127,18 @@ class WindscribevpnServerip(VpnDetector):
if query_result:
servername_list = [i[0] for i in query_result]
+ self.server_name_list.extend(servername_list)
+
# 判断是否能够访问外网,如果能够访问外网,则从外网获取windscribevpn_servername_list的域名解析地址
if self.config['common']['active_scan']['switch'] and check_internet():
- servername_list = self.find_more_servernames(servername_list)
+ servername_list = self.find_more_servernames(self.server_name_list)
if len(servername_list) > 0:
- resolved_ip_list = self.resolve_dns_for_domain_list(servername_list)
+ resolved_ip_list = self.resolve_dns_for_domain_list(self.server_name_list,
+ max_workers=self.config['common']['active_scan'][
+ 'max_workers'],
+ max_calls_per_second=
+ self.config['common']['active_scan'][
+ 'max_calls_per_sec'])
self.logger.info(
'[{}] - Get {} server ip by resolving server name successfully.'.format(
self.plugin_name, len(resolved_ip_list)))