summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author刘学利 <[email protected]>2023-08-08 08:23:07 +0000
committerliuxueli <[email protected]>2023-08-22 15:17:25 +0800
commitff14e14afa36b5afaef14cabbbd372075cfceaf7 (patch)
tree5aec23bc0fd097f03c38474011a650004f18a13e
parente089f98c5a01532fc4c72536fbce55455969ed06 (diff)
TSG-16515: 单数据包多次扫描命中结果超16个时存在非法写导致段错误
-rw-r--r--.gitlab-ci.yml2
-rw-r--r--src/tsg_action.cpp4
-rw-r--r--src/tsg_rule.cpp2
3 files changed, 4 insertions, 4 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8e735c6..199759a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,7 @@ variables:
BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
INSTALL_PREFIX: "/home/mesasoft/sapp_run/"
- INSTALL_DEPENDENCY_LIBRARY: systemd-devel libbreakpad_mini numactl-devel zlib-devel vim-common libMESA_handle_logger-devel libcjson-devel libMESA_field_stat2-devel sapp sapp-devel framework_env libMESA_prof_load-devel http-devel dns-devel ftp-devel mail-devel ssl-devel librdkafka-devel libmaat4-devel quic-devel mesa_sip-devel gtp-devel libMESA_htable-devel libasan mrzcpd rapidjson-devel libMESA_jump_layer-devel stratum-devel rdp-devel dtls-devel-1.0.10.ab7166e libfieldstat3-devel openssl-devel
+ INSTALL_DEPENDENCY_LIBRARY: systemd-devel libbreakpad_mini numactl-devel zlib-devel vim-common libMESA_handle_logger-devel libcjson-devel libMESA_field_stat2-devel sapp sapp-devel framework_env libMESA_prof_load-devel http-devel dns-devel ftp-devel mail-devel ssl-devel librdkafka-devel libmaat4-4.0.31.73887d5 libmaat4-devel-4.0.31.73887d5 quic-devel mesa_sip-devel gtp-devel libMESA_htable-devel libasan mrzcpd rapidjson-devel libMESA_jump_layer-devel stratum-devel rdp-devel dtls-devel-1.0.10.ab7166e libfieldstat3-devel openssl-devel
stages:
- analysis
diff --git a/src/tsg_action.cpp b/src/tsg_action.cpp
index cd0c9f5..7c33051 100644
--- a/src/tsg_action.cpp
+++ b/src/tsg_action.cpp
@@ -228,7 +228,7 @@ static void template_generate(const struct streaminfo *a_stream, int status_code
static int get_response_pages(const struct streaminfo *a_stream, struct maat_rule *p_result, struct compile_user_region *user_region, char **payload, int thread_seq)
{
- int payload_len=0;
+ size_t payload_len=0;
switch(user_region->deny->type)
{
@@ -260,7 +260,7 @@ static int get_response_pages(const struct streaminfo *a_stream, struct maat_rul
}
}
- return payload_len;
+ return (int)payload_len;
}
static int set_tcp_rst_flags(char *packet, int ip_tcp_hdr_len)
diff --git a/src/tsg_rule.cpp b/src/tsg_rule.cpp
index 325f977..f2ec737 100644
--- a/src/tsg_rule.cpp
+++ b/src/tsg_rule.cpp
@@ -2209,7 +2209,7 @@ int srt_attribute_set_subscriber_id(const struct streaminfo *a_stream, struct ma
size_t matche_rules_convert(struct maat *feather,long long *rules, size_t n_rules, struct maat_rule *matched_rules, size_t n_matched_rules)
{
size_t offset=0;
- for(size_t i=0; i<n_rules && offset<n_rules; i++)
+ for(size_t i=0; i<n_rules && offset<n_matched_rules; i++)
{
struct maat_compile *maat_compile=(struct maat_compile *)maat_plugin_table_get_ex_data(feather, g_tsg_maat_rt_para.plugin_tb[MAAT_PLUGIN_SECURITY_COMPILE].id, (const char *)&(rules[i]), sizeof(long long));
if(maat_compile==NULL)