feat(virus): 病毒和漏洞

test
jshixiong 1 year ago
parent 5a6f068b0b
commit fc972431ec

@ -0,0 +1,70 @@
import threading
import time
import random
import string
from flask import jsonify
# 模拟队列
virus_queue = []
bugs_queue = []
virus_prefix = "py-virus"
bugs_prefix = "sec-bugs"
def generate_random_string(length=10):
letters = string.ascii_lowercase
return ''.join(random.choice(letters) for _ in range(length))
def initialize_virus_queue():
global virus_queue
for _ in range(5):
random_string = generate_random_string()
virus_queue.append(f'{virus_prefix}-{random_string}')
def initialize_bugs_queue():
global bugs_queue
for _ in range(5):
random_string = generate_random_string()
bugs_queue.append(f'{bugs_prefix}-{random_string}')
# 定时检查病毒和漏洞数量
def check_queue_length():
while True:
time.sleep(600) # 每10分钟检查一次
if len(virus_queue) < 5:
for _ in range(5 - len(virus_queue)):
random_string = generate_random_string()
virus_queue.append(f'{virus_prefix}-{random_string}')
if len(bugs_queue) < 5:
for _ in range(5 - len(bugs_queue)):
random_string = generate_random_string()
bugs_queue.append(f'{bugs_prefix}-{random_string}')
def get_virus_queue_data():
return jsonify({"virus_queue": virus_queue})
def delete_virus_queue_data(names_list):
global virus_queue
for name in names_list:
virus_queue = [data for data in virus_queue if data != name]
return jsonify({"message": "Data deleted successfully"})
def get_bugs_queue_data():
return jsonify({"bugs_queue": bugs_queue})
def delete_bugs_queue_data(names_list):
global bugs_queue
for name in names_list:
bugs_queue = [data for data in bugs_queue if data != name]
return jsonify({"message": "Data deleted successfully"})
# 初始化队列
initialize_virus_queue()
initialize_bugs_queue()
# 启动后台线程
thread = threading.Thread(target=check_queue_length)
thread.daemon = True
thread.start()

@ -6,6 +6,7 @@ import app.memory_usage as memory_usage
import app.network as network_usage
import app.login_info as login_info
import app.request_info as request_info
import app.imitate_thread as imitate_thread
route_bp = Blueprint('route', __name__)
@ -44,4 +45,27 @@ def get_request_info():
page_index = int(request.args.get('page_index', 1))
page_size = int(request.args.get('page_size', 10))
data = request_info.get_request_info(page_index, page_size)
return jsonify(data)
return jsonify(data)
# 病毒列表
@route_bp.route('/sys/virus_get', methods=['GET'])
def get_virus():
return imitate_thread.get_virus_queue_data()
# 清理病毒
@route_bp.route('/sys/virus_clean', methods=['GET'])
def delete_virus():
names_list = request.json.get('names_list', [])
return imitate_thread.delete_virus_queue_data(names_list)
# 漏洞列表
@route_bp.route('/sys/bugs_get', methods=['GET'])
def get_bugs():
return imitate_thread.get_bugs_queue_data()
# 清理漏洞
@route_bp.route('/sys/bugs_clean', methods=['GET'])
def delete_bugs():
names_list = request.json.get('names_list', [])
return imitate_thread.delete_bugs_queue_data(names_list)
Loading…
Cancel
Save