修正IP Spoofing、IP载荷替换发送业务日志功能的若干问题

This commit is contained in:
luqiuwen
2018-12-29 18:08:23 +06:00
parent c0131ca066
commit 8d88fe1569
4 changed files with 33 additions and 17 deletions

View File

@@ -9,11 +9,9 @@
#include "kni_replace.h"
#include "kni_entry.h"
#include "kni_utils.h"
#include "kni_sendlog.h"
int g_kni_version_VERSION_20181217;
int g_kni_version_VERSION_20181229;
struct kni_var_comm g_kni_comminfo;
struct kni_var_struct g_kni_structinfo;
@@ -25,8 +23,6 @@ char g_kni_cardname[KNI_CARD_NUM][KNI_CONF_MAXLEN];
int g_kni_threadseq[KNI_MAX_THREADNUM];
int kni_init_pmeinfo(void** pme)
{
struct kni_pme_info* pmeinfo=ALLOC(struct kni_pme_info, 1);
@@ -91,22 +87,42 @@ return :state_flag
kni_bmd:STAT_FLAG_SNIBMD
not kni_bmd:STAT_FLAG_SSL_NOBMD
***************************************************************************************/
/*
int kni_scan_pktbin(char* data,int datalen,int thread_seq,struct kni_pme_info* pmeinfo)
{
int string_scan_num=0;
int found_pos;
struct Maat_rule_t maat_result[KNI_MAX_SAMENUM];
string_scan_num=Maat_full_scan_string(g_kni_maatinfo.maat_feather,g_kni_maatinfo.tableid_pktbin,CHARSET_GBK,data,datalen,maat_result,&found_pos,KNI_MAX_SAMENUM,&(pmeinfo->mid),thread_seq);
=Maat_full_scan_string(g_kni_maatinfo.maat_feather,g_kni_maatinfo.tableid_pktbin,CHARSET_GBK,data,datalen,maat_result,&found_pos,KNI_MAX_SAMENUM,&(pmeinfo->mid),thread_seq);
kni_process_maatresult(string_scan_num,maat_result,pmeinfo);
return string_scan_num;
}
*/
int kni_scan_pktbin(char* data,int datalen,int thread_seq,struct kni_pme_info* pmeinfo)
{
int string_scan_num=0;
int found_pos;
string_scan_num=Maat_full_scan_string(g_kni_maatinfo.maat_feather,g_kni_maatinfo.tableid_pktbin,
CHARSET_GBK,data,datalen,&(pmeinfo->maat_result[pmeinfo->maat_result_num]),
&found_pos,KNI_MAX_SAMENUM-pmeinfo->maat_result_num,&(pmeinfo->mid),thread_seq);
kni_process_maatresult(string_scan_num,&(pmeinfo->maat_result[pmeinfo->maat_result_num]),pmeinfo);
if(string_scan_num >=0)
{
pmeinfo->maat_result_num +=string_scan_num;
}
return string_scan_num;
}
/***************************************************************************************
return :action
default:ipscan_num =0 or =1,not >1
@@ -1829,7 +1845,7 @@ extern "C" char kni_init()
}
init_kni_tunprocess();
kni_sendlog_init();
if(g_kni_switch_info.maat_default_mode==0)
{

View File

@@ -221,7 +221,6 @@ char kni_process_replace(unsigned char dir,int thread_seq,const struct streaminf
// char ret = APP_STATE_DROPPKT | APP_STATE_DROPME;
char ret = APP_STATE_DROPPKT | APP_STATE_GIVEME;
struct kni_replace_info replace_info;
memset(&replace_info,0,sizeof(struct kni_replace_info));
@@ -232,7 +231,8 @@ char kni_process_replace(unsigned char dir,int thread_seq,const struct streaminf
}
kni_log_debug(RLOG_LV_FATAL,(char*)"REPLACE",a_packet,(char*)"config id:%d,original:%s,replace:%s",pmeinfo->cfg_id,replace_info.find,replace_info.replace);
replace_sendlog(pstream, pmeinfo, replace_info.find,replace_info.replace);
if(*(char*)a_packet == 0x45)
{
ret = kni_build_send_ipv4(dir,thread_seq,(struct ip*)a_packet,pmeinfo,&replace_info);

View File

@@ -71,7 +71,7 @@ static rd_kafka_t * create_kafka_handle(const char* brokerlist)
return handle;
}
struct kni_logger* kni_sendlog_init()
void kni_sendlog_init()
{
int ret=-1;
char nic_name[64]={0};
@@ -111,11 +111,11 @@ struct kni_logger* kni_sendlog_init()
}
g_kni_sendlog->topic_name="NTC-OPENVPN-LOG";
g_kni_sendlog->kafka_topic = rd_kafka_topic_new(g_kni_sendlog->kafka_handle,g_kni_sendlog->topic_name, NULL);
return g_kni_sendlog;
return;
error_out:
free(g_kni_sendlog);
return NULL;
return;
}
int kni_send_log(const struct kni_log* log_msg,char* user_region,char* content)

View File

@@ -26,7 +26,7 @@ struct kni_logger
};
struct kni_logger* kni_sendlog_init(const char* profile, const char* section, void* local_logger);
void kni_sendlog_init();
//return 0 if SUCCESS, otherwise return -1
int kni_send_log(const struct kni_log* log_msg,char* user_region,char* content);