summaryrefslogtreecommitdiff
path: root/src/inc
diff options
context:
space:
mode:
authorgit commit -m first <[email protected]>2019-06-13 16:38:20 +0800
committergit commit -m first <[email protected]>2019-06-13 16:38:20 +0800
commit6c04f7f8da401a51399994eb45e603d122ff9731 (patch)
tree7133b12f1da60cc0b3e4a1e551f2ebcb3641789d /src/inc
add source codeHEADmaster
Diffstat (limited to 'src/inc')
-rw-r--r--src/inc/DocumentAnalyze.h235
-rw-r--r--src/inc/dj_rule.h69
-rw-r--r--src/inc/qdjcq_magellan_id.h187
3 files changed, 491 insertions, 0 deletions
diff --git a/src/inc/DocumentAnalyze.h b/src/inc/DocumentAnalyze.h
new file mode 100644
index 0000000..8b39239
--- /dev/null
+++ b/src/inc/DocumentAnalyze.h
@@ -0,0 +1,235 @@
+/*
+ *
+ * Copyright (c) 2014
+ * String Algorithms Research Group
+ * Institute of Information Engineering, Chinese Academy of Sciences (IIE-CAS)
+ * National Engineering Laboratory for Information Security Technologies (NELIST)
+ * All rights reserved
+ *
+ * Written by: LIU YANBING ([email protected])
+ LU YUHAI ([email protected])
+
+ * Last modification: 2014-9-22
+ *
+ * This code is the exclusive and proprietary property of IIE-CAS and NELIST.
+ * Usage for direct or indirect commercial advantage is not allowed without
+ * written permission from the authors.
+ *
+ */
+
+#ifndef H_DOCUMENT_ANALYZE_H
+#define H_DOCUMENT_ANALYZE_H
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+#define DOC_PRO_OK 0
+#define DOC_PRO_ERR -1
+
+ /* ��ʽ�ĵ����Ͷ��� */
+ enum DocumentType
+ {
+ DOC_UNKNOWN_TYPE = 0, /* δ֪�ĵ����� */
+
+ DOC_TXT_TYPE, /* ���ı� */
+
+ /* Office 97-2003�ĵ����� */
+ DOC_DOC_TYPE, /* Word 97-2003 */
+ DOC_PPT_TYPE, /* Powerpoint 97-2003 */
+ DOC_XLS_TYPE, /* Excel 97-2003 */
+
+ /* Office 2007�ĵ����� */
+ DOC_DOCX_TYPE, /* Word 2007 */
+ DOC_PPTX_TYPE, /* Powerpoint 2007 */
+ DOC_XLSX_TYPE, /* Excel 2007 */
+
+ /* Open Office�ĵ����� */
+ DOC_ODT_TYPE, /* ODT��ʽ */
+ DOC_ODS_TYPE, /* ODS��ʽ */
+ DOC_ODP_TYPE, /* ODP��ʽ */
+
+ /* iWork�ĵ����� */
+ DOC_PAGES_TYPE, /* iWork Page */
+ DOC_KEY_TYPE, /* iWork Keynote */
+ DOC_NUMBERS_TYPE, /* iWork Numbers */
+
+ /* ���������ĵ����� */
+ DOC_PDF_TYPE, /* pdf��ʽ */
+ DOC_EML_TYPE, /* eml��ʽ */
+ DOC_HTML_TYPE, /* HTML��ʽ */
+ DOC_CHM_TYPE, /* chm��ʽ */
+ DOC_RTF_TYPE, /* rtf��ʽ */
+ DOC_MDB_TYPE, /* Microsoft Access���ݿ��ļ� */
+
+ /* ѹ���ļ���ʽ */
+ DOC_ZIP_TYPE, /* zip��ʽ */
+ DOC_RAR_TYPE, /* rar��ʽ */
+ DOC_GZIP_TYPE, /* gzip��ʽ */
+ DOC_BZIP_TYPE, /* bzip��ʽ */
+ DOC_7Z_TYPE, /* 7z��ʽ */
+ DOC_DEFLATE_TYPE, /* deflate��ʽ */
+
+ /* ͼ���ļ���ʽ */
+ DOC_BMP_TYPE, /* bmp��ʽ */
+ DOC_GIF_TYPE, /* gif��ʽ */
+ DOC_JPEG_TYPE, /* jpeg��ʽ */
+ DOC_RAW_TYPE, /* raw��ʽ */
+ DOC_EMF_TYPE, /* emf��ʽ */
+ DOC_WMF_TYPW, /* wmf��ʽ */
+ DOC_PNG_TYPE, /* png��ʽ */
+ DOC_PCT_TYPE, /* pct��ʽ */
+ DOC_PBM_TYPE, /* pbm��ʽ */
+ DOC_PPM_TYPE, /* ppm��ʽ */
+
+ /* ��Ƶ�ļ���ʽ */
+ DOC_MPEG4_TYPE, /* mpeg4��ʽ */
+ DOC_AV_TYPE, /* av��ʽ */
+ DOC_3GP_TYPE, /* 3gp��ʽ */
+ DOC_ASF_TYPE, /* asf��ʽ */
+ DOC_AVI_TYPE, /* avi��ʽ */
+ DOC_MKV_TYPE, /* mkv��ʽ */
+ DOC_MOV_TYPE, /* mov��ʽ */
+ DOC_MP4_TYPE, /* mp4��ʽ */
+ DOC_RMVB_TYPE, /* rmvb��ʽ */
+ DOC_RM_TYPE, /* rm��ʽ */
+ DOC_WMV_TYPE, /* wmv��ʽ */
+
+ /* ��Ƶ�ļ���ʽ */
+ DOC_MP3_TYPE, /* mp3��ʽ */
+ DOC_WAV_TYPE, /* wav��ʽ */
+ DOC_WMA_TYPE, /* wma��ʽ */
+ DOC_AAC_TYPE, /* aac��ʽ */
+ DOC_OGG_TYPE, /* ogg��ʽ */
+ DOC_APE_TYPE, /* ape��ʽ */
+ DOC_FLAC_TYPE, /* flac��ʽ */
+
+ /* ��ִ���ļ���ʽ */
+ DOC_PE_TYPE, /* Windows��ִ���ļ���ʽ��������exe��dll��vxd��sys��vdm�� */
+ DOC_ELF_TYPE, /* Linux��ִ���ļ���ʽ */
+ };
+
+ /* ����ı��ı������� */
+ enum CodeType
+ {
+ CODE_UNKNOWN_TYPE = 0, /* δ֪���� */
+ CODE_GBK_TYPE, /* GBK */
+ CODE_BIG5_TYPE, /* BIG5 */
+ CODE_UNICODE_TYPE, /* UNICODE */
+ CODE_UTF8_TYPE, /* UTF8 */
+ CODE_UTF7_TYPE, /* UTF7 */
+ };
+
+ /* zip��ѹ���ĵ���eml����Ҫʹ�õ������ĵ����� */
+ enum DocumentSubType
+ {
+ DOC_UNKNOW_SUBTYPE = 0, /* δ֪������ */
+ DOC_FILENAME_SUBTYPE, /* ���ĵ����ļ��� */
+ DOC_CONTENT_SUBTYPE, /* ���ĵ������� */
+ };
+
+ typedef struct _docanalyze_result_t
+ {
+ char * presult; /* ���ݵ����� */
+ int size; /* ���ݵij��� */
+ enum DocumentType doc_type; /* �˶������������ĵ����� */
+ enum DocumentSubType doc_sub_type; /* �˶��������������ĵ����� */
+ enum CodeType code_type; /* �˶����ݵĵ�ǰ�������� */
+ }docanalyze_result_t;
+
+ typedef struct _result_array_t
+ {
+ int result_num; /* ��������Ԫ�ظ��� */
+ docanalyze_result_t * result_buff; /* ������� */
+ }result_array_t;
+
+ typedef void * docanalyze_instance_t;
+ typedef void * docanalyze_streamparam_t;
+
+ /************************��ʽ�ĵ�������غ���*********************************/
+
+ /*
+ ���ܣ�
+ ��ʽ�ĵ�����ʶ�𣬸����ĵ�ͷ����Ϣʶ���ĵ������ͣ������ṩ��ͷ�����ݳ���hlen����64�ֽڡ�
+ ������
+ header : �ļ�ͷ��
+ hlen : �ļ�ͷ���ȣ�
+ ����ֵ��
+ ʶ������ĵ����ͣ��޷�ʶ�𷵻� DOC_UNKNOWN_TYPE��
+ */
+ enum DocumentType docanalyze_identify(const char * header, unsigned int hlen);
+
+ /*
+ ���ܣ�
+ ��ʽ�ĵ��������ij�ʼ�������ݴ��������ĵ����ʹ�����Ӧ���ĵ�������
+ �Լ���Ӧ�Ĺ������ݽṹ
+ ������
+ doc_type[in] ���ĵ����ͣ�
+ max_thread_num [in]: ɨ�����ɲ���ִ�е��߳�����
+ ����ֵ��
+ �ֵ�������ָ�룬��ʧ���򷵻� NULL��
+ */
+ docanalyze_instance_t docanalyze_initialize(unsigned int max_thread_num);
+
+ /*
+ ���ܣ�
+ �ͷ�ÿ���ĵ����͵ķ������Լ���Ӧ�Ĺ������ݽṹ
+ ������
+ instance[in]���ĵ����������
+ ����ֵ��
+ DOC_PRO_OK ��������
+ DOC_PRO_ERR ��ʧ�ܡ�
+ */
+ int docanalyze_destroy(docanalyze_instance_t instance);
+
+ /*
+ ���ܣ�
+ ����һ����ʽ�ֵ����������뱣����״̬�IJ�����
+ ������
+ instance [in]: �ĵ�������ָ�룻
+ thread_id [in]: ��ǰִ���ĵ��������߳�id�������ڷ�Χ[0, max_thread_num-1]֮�ڡ�
+ ����ֵ��
+ ���ر�����״̬�IJ���������ֵΪNULLʱ����ʾʧ�ܡ�
+ */
+ docanalyze_streamparam_t docanalyze_startstream(enum DocumentType doc_type, docanalyze_instance_t instance, unsigned int thread_id);
+
+ /*
+ ���ܣ�
+ ��ʽ�ĵ������ӿڣ�����һ�������ԭʼ�ĵ�����data����״̬��һЩ����м���������stream_param�У�
+ �����Ľ�������res�У��ռ��ɱ������ڲ�����,������������Ҫ����docanalyze_freeresult�ͷ�res���ڴ�ռ䡣
+ ������
+ stream_param [in] : ������״̬�IJ�����
+ data[in] �����������ĵ����ݣ�
+ dlen[in] �����ݳ��ȣ�
+ result_array[out] �������Ľ����
+ ����ֵ��
+ DOC_PRO_OK ������������
+ DOC_PRO_ERR ������ʧ�ܡ�
+ */
+ int docanalyze_parsestream(docanalyze_streamparam_t stream_param, const char * data, unsigned int dlen, result_array_t * result_array);
+
+ /*
+ ���ܣ�
+ �û�ʹ����Ϻ󣬵��ô˺����ͷŽ��result_array���ڴ�ռ�,���������Ҫ��docanalyze_parsestream�ɶ�ʹ��
+ ����ֵ��
+ DOC_PRO_OK ��������
+ DOC_PRO_ERR ��ʧ�ܡ�
+ */
+ int docanalyze_freeresult(result_array_t * result_array);
+
+ /*
+ ���ܣ�������ʽ�������ͷ���������
+ ������
+ stream_param [in]: ������ָ�롣
+ ����ֵ��
+ DOC_PRO_OK ��������
+ DOC_PRO_ERR ��ʧ�ܡ�
+ */
+ int docanalyze_endstream(docanalyze_streamparam_t stream_param);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*end of defined H_DOCUMENT_ANALYZE_H*/ \ No newline at end of file
diff --git a/src/inc/dj_rule.h b/src/inc/dj_rule.h
new file mode 100644
index 0000000..f8dbe3d
--- /dev/null
+++ b/src/inc/dj_rule.h
@@ -0,0 +1,69 @@
+#ifndef _DJ_RULE_H_
+#define _DJ_RULE_H_
+
+#include <MESA/Maat_rule.h>
+#include <MESA/stream.h>
+#include <MESA/field_stat.h>
+#include <MESA/magellan_logger.h>
+//global maat scanner
+extern void* g_dj_feather;
+extern void* g_dj_stat_handle;
+
+//global doc analyse instance
+extern void* g_dj_doc_instance;
+
+
+/*cache and send*/
+typedef enum
+{
+ COMPLETE=0,
+ FRAG=1,
+ FRAG_END=2,
+}APPD_MSG_TYPE;
+
+typedef void* opt_unit_t;
+typedef void* dj_cache_t;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/*for 056jcq jt and audit*/
+int32_t dj_magellan_write_log (const struct streaminfo* a_tcp,const int user_id, const int table_id, magellan_opt_t* opt_array, int opt_num,int t_id);
+
+dj_cache_t create_dj_cache(const char* protocol, struct streaminfo* a_stream);
+void set_dj_cache_send(dj_cache_t handle);
+void destroy_dj_cache(dj_cache_t handle);
+/*
+*if set_dj_cache_send, callback add_dj_cache will send cache data, otherwise only cache not send
+*return -1: get mem_limit ; return 0: OK
+*opt will be free by add_dj_cache
+*/
+int add_dj_cache(dj_cache_t handle, APPD_MSG_TYPE status, opt_unit_t opt);
+
+/*
+*NULL value means nested option, otherwise is simple option
+*opt will be free by dj_cache, if not add_dj_cache, please do not create_opt_unit
+*/
+opt_unit_t create_opt_unit(const char* opt_name, const void* opt_value, int opt_len);
+void append_opt_nested_value(opt_unit_t ext_opt, opt_unit_t inner_opt);
+
+//return 1 if type match, otherwise return 0;
+int is_zip_type(int doctype);
+int is_scan_type(int doctype);
+
+/*
+ * dj_thread_safe_ctime: thread safe(no lock) time to string
+ * tp:current time
+ * buf: [out] to store the time string
+ * len:buffer length
+ */
+char *dj_thread_safe_ctime(const time_t *tp, char *buf, int len);
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/src/inc/qdjcq_magellan_id.h b/src/inc/qdjcq_magellan_id.h
new file mode 100644
index 0000000..419f88c
--- /dev/null
+++ b/src/inc/qdjcq_magellan_id.h
@@ -0,0 +1,187 @@
+#ifndef __QDJCQ_MAGELLAN_ID_H__
+#define __QDJCQ_MAGELLAN_ID_H__
+
+#define MAX_OPT_VALUE_LEN 10485760
+
+//ѡ��ID
+#define MAGELLAN_OPT_ID 1
+#define MAGELLAN_OPT_BUSINESS_DETECT_ID 2
+#define MAGELLAN_OPT_NAME 3
+#define MAGELLAN_OPT_STATUS 4
+#define MAGELLAN_OPT_SUBMODULE_NAME 5
+#define MAGELLAN_OPT_SUBMODULE_STATUS 6
+#define MAGELLAN_OPT_SUBMODULE_VERSION 7
+#define MAGELLAN_OPT_SUBMODULE_WARNING 8
+#define MAGELLAN_OPT_INSERT_TIME 9
+#define MAGELLAN_OPT_CAP_TIME 10
+#define MAGELLAN_OPT_FILENAME 11
+#define MAGELLAN_OPT_FILEPATH 12
+#define MAGELLAN_OPT_CHECKSUM 13
+#define MAGELLAN_OPT_FILESIZE 14
+#define MAGELLAN_OPT_FILETYPE 15
+#define MAGELLAN_OPT_PROTOCOL 16
+#define MAGELLAN_OPT_ACCOUNT 17
+#define MAGELLAN_OPT_DOMAIN 18
+#define MAGELLAN_OPT_SYSTEM_DETECT_ID 19
+#define MAGELLAN_OPT_PHYSICAL_ID 20
+#define MAGELLAN_OPT_CPU_USAGE 21
+#define MAGELLAN_OPT_RULE_ID 22
+#define MAGELLAN_OPT_NUM 23
+#define MAGELLAN_OPT_SIP 24
+#define MAGELLAN_OPT_SPORT 25
+#define MAGELLAN_OPT_SMAC 26
+#define MAGELLAN_OPT_DIP 27
+#define MAGELLAN_OPT_DPORT 28
+#define MAGELLAN_OPT_DMAC 29
+#define MAGELLAN_OPT_ALERT_TYPE 30
+#define MAGELLAN_OPT_ALERT_POLICY 31
+#define MAGELLAN_OPT_ALERT_DESC 32
+#define MAGELLAN_OPT_RISK 33
+#define MAGELLAN_OPT_ATTACK_TYPE 34
+#define MAGELLAN_OPT_APPLICATION 35
+#define MAGELLAN_OPT_OS 36
+#define MAGELLAN_OPT_IS_UPLOAD 37
+#define MAGELLAN_OPT_PWD 38
+#define MAGELLAN_OPT_TRANS_DIR 39
+#define MAGELLAN_OPT_PLUGIN_ID 40
+#define MAGELLAN_OPT_CPU_RANGE 41
+#define MAGELLAN_OPT_MEM_RANGE 42
+#define MAGELLAN_OPT_MEM_USAGE 43
+#define MAGELLAN_OPT_DISK_UASAGE 44
+#define MAGELLAN_OPT_APP 45
+#define MAGELLAN_OPT_TIME 46
+#define MAGELLAN_OPT_REQUEST 47
+#define MAGELLAN_OPT_RESPONSE 48
+#define MAGELLAN_OPT_UPTIME 49
+#define MAGELLAN_OPT_SOFT_VERSION 50
+#define MAGELLAN_OPT_MALWARE_TYPE 51
+#define MAGELLAN_OPT_MALWARE_NAME 52
+#define MAGELLAN_OPT_PROTO_INFO 53
+#define MAGELLAN_OPT_TROJAN_ID 54
+#define MAGELLAN_OPT_TROJAN_NAME 55
+#define MAGELLAN_OPT_TROJAN_TYPE 56
+#define MAGELLAN_OPT_DESC 57
+#define MAGELLAN_OPT_URL 58
+#define MAGELLAN_OPT_METHOD 59
+#define MAGELLAN_OPT_RET_CODE 60
+#define MAGELLAN_OPT_USER_AGENT 61
+#define MAGELLAN_OPT_COOKIE 62
+#define MAGELLAN_OPT_SERVER 63
+#define MAGELLAN_OPT_REFER 64
+#define MAGELLAN_OPT_MEM 65
+#define MAGELLAN_OPT_DISK 66
+#define MAGELLAN_OPT_FINGER 67
+#define MAGELLAN_OPT_COUNTRY 68
+#define MAGELLAN_OPT_ORGANIZE 69
+#define MAGELLAN_OPT_CNAME 70
+#define MAGELLAN_OPT_SNI 71
+#define MAGELLAN_OPT_UORGANIZE 72
+#define MAGELLAN_OPT_UCNAME 73
+#define MAGELLAN_OPT_DNS 74
+#define MAGELLAN_OPT_DOMAIN_IP 75
+#define MAGELLAN_OPT_EVENT_TYPE 76
+#define MAGELLAN_OPT_MSG 77
+#define MAGELLAN_OPT_IP 78
+#define MAGELLAN_OPT_USER 79
+#define MAGELLAN_OPT_PROGRAM 80
+#define MAGELLAN_OPT_OBJECT 81
+#define MAGELLAN_OPT_RESULT 82
+#define MAGELLAN_OPT_SM_INPATH 83
+#define MAGELLAN_OPT_SM_SUMMARY 84
+#define MAGELLAN_OPT_SM_DESC 85
+#define MAGELLAN_OPT_XM_DIR 86
+#define MAGELLAN_OPT_PROTOCOL_TYPE 87
+#define MAGELLAN_OPT_PROTOCOL_ID 88
+#define MAGELLAN_OPT_SENDER 89
+#define MAGELLAN_OPT_RECEIVER 90
+#define MAGELLAN_OPT_MSG_CONTENT 91
+#define MAGELLAN_OPT_TCP_FLAG 92
+#define MAGELLAN_OPT_IN_BYTES 93
+#define MAGELLAN_OPT_OUT_BYTES 94
+#define MAGELLAN_OPT_IN_PKTS 95
+#define MAGELLAN_OPT_OUT_PKTS 96
+#define MAGELLAN_OPT_START_TIME 97
+#define MAGELLAN_OPT_END_TIME 98
+#define MAGELLAN_OPT_INTERFACE_SEQ 99
+#define MAGELLAN_OPT_INTERFACE_FLAG 100
+#define MAGELLAN_OPT_INTERFACE_STAT 101
+#define MAGELLAN_OPT_INTERFACE_FLOW 102
+#define MAGELLAN_OPT_INTERFACE_ERROR 103
+#define MAGELLAN_OPT_INTERFACE_DROP 104
+#define MAGELLAN_OPT_DURATION_TIME 105
+#define MAGELLAN_OPT_CC 106
+#define MAGELLAN_OPT_BCC 107
+#define MAGELLAN_OPT_SUBJECT 108
+#define MAGELLAN_OPT_AUTHINFO 109
+#define MAGELLAN_OPT_ATTACHMENT 110
+#define MAGELLAN_OPT_MAIL_CONTENT 111
+#define MAGELLAN_OPT_ATTACHMENT_NAME 112
+#define MAGELLAN_OPT_PLUGIN_VERSION 113
+#define MAGELLAN_OPT_PLUGIN_POLICY_VERSION 114
+#define MAGELLAN_OPT_PLUG_ID 115
+
+//AUTHINFO����ʱ��ʹ��
+#define MAGELLAN_OPT_MAIL_FROM 116
+#define MAGELLAN_OPT_RCPT_TO 117
+#define MAGELLAN_OPT_EHLO 118
+
+
+//�ļ�/PCAPѡ��
+#define MAGELLAN_OPT_STREAM_START 200
+#define MAGELLAN_OPT_STREAM_CONT 201
+#define MAGELLAN_OPT_STREAM_END 202
+
+#define MAGELLAN_OPT_PCAP_START MAGELLAN_OPT_STREAM_START
+#define MAGELLAN_OPT_PCAP_CONT MAGELLAN_OPT_STREAM_CONT
+#define MAGELLAN_OPT_PCAP_END MAGELLAN_OPT_STREAM_END
+
+//��ID
+#define TABID_BUSINESS_MODULE_DETECT_INFO 1
+#define TABID_COMPRESS_ALARM_FILE 2
+#define TABID_KEYWORD_ALARM_FILE 3
+#define TABID_SM_NETDISK_ELEMENT 4
+#define TABID_SYSTEM_CPU_DETECT_INFO 5
+#define TABID_DOMAIN_LISTEN_FILE 9 //9
+#define TABID_ABNORMAL_ALARM 7
+#define TABID_IP_LISTEN_FILE 8
+#define TABID_ATTACK_ALARM 6
+#define TABID_URL_LISTEN_FILE 10 //10
+#define TABID_SM_FILETRANSFER_ELEMENT 38
+#define TABID_SYSTEM_PLUGIN_DETECT_INFO 12
+#define TABID_DNS_AUDIT_LOG 13
+#define TABID_MALWARE_ALARM_FILE 14
+#define TABID_BUSINESS_DETECT_INFO 15
+#define TABID_MALWARE_ALARM 16
+#define TABID_TROJAN_ALARM 17
+#define TABID_FILE_TRNS_AUDIT_LOG 18
+#define TABID_ATTACK_ALARM_FILE 19
+#define TABID_SM_HTTP_ELEMENT 20
+#define TABID_SENSITIVE_ALARM_FILE 21
+#define TABID_SYSTEM_DETECT_INFO 22
+#define TABID_SSL_AUDIT_LOG 23
+#define TABID_DOMAIN_LISTEN_ALARM 24
+#define TABID_ABNORMAL_FILE 25
+#define TABID_URL_LISTEN_ALARM 26
+#define TABID_BUSINESS_SUSPECTED_DETECT_INFO 27
+#define TABID_SYSTEM_AUDIT_LOG 28
+#define TABID_TROJAN_ALARM_FILE 29
+#define TABID_SM_CONTENT_ALARM 30
+#define TABID_SM_IM_ELEMENT 31
+#define TABID_PICTURE_ALARM_FILE 32
+#define TABID_NET_AUDIT 33
+#define TABID_BUSINESS_INTERFACE_DETECT_INFO 34
+#define TABID_SM_EMAIL_ELEMENT 35
+#define TABID_STYLE_ALARM_FILE 36
+#define TABID_MAIL_AUDIT_LOG 37
+#define TABID_ACCOUNT_LISTEN_FILE 11 //11
+#define TABID_WEB_AUDIT_LOG 39
+#define TABID_ENCRYPT_ALARM_FILE 40
+#define TABID_ACCOUNT_LISTEN_ALARM 41
+#define TABID_BUSINESS_PLUGIN_DETECT_INFO 42
+#define TABID_IP_LISTEN_ALARM 43
+#define TABID_PLUG_STATUS_INFO 44
+
+//�û�ID
+#define QDJCQ_MGLL_USERID 1
+
+#endif