Snort.conf


版本 2.9.8.3

编译可用选项:

  1. --enable-gre
  2. --enable-mpls
  3. --enable-targetbased
  4. --enable-ppm
  5. --enable-perfprofiling
  6. --enable-zlib
  7. --enable-active-response
  8. --enable-normalizer
  9. --enable-reload
  10. --enable-react
  11. --enable-flexresp3

附加信息:

运行 test mode -T 需要使用 -i <interface> 指定网卡,否则 snort 认为配置无效无法启动。

配置文件分为9个部分:

  1. 配置网络环境变量
  2. 配置解码器
  3. 配置基本检测引擎
  4. 配置动态加载库
  5. 配置预处理器
  6. 配置输出插件
  7. 定制用户规则集
  8. 定制预处理器和解码器规则集
  9. 定制共享目标规则集


1.网络环境变量

第一步是配置网络环境变量,查看更多信息阅读 README.variables

  1. #配置要保护的家庭网
  2. ipvar HOME_NET any
  3. #配置外部的网络地址,多少情况用“any”
  4. ipvar EXTERNAL_NET any
  5. #列出网络中的DNS服务
  6. ipvar DNS_SERVERS $HOME_NET
  7. #列出网络中的SMTP服务
  8. ipvar SMTP_SERVERS $HOME_NET
  9. #列出网络中的HTTP服务
  10. ipvar HTTP_SERVERS $HOME_NET
  11. #列出网络中的SQL服务
  12. ipvar SQL_SERVERS $HOME_NET
  13. #列出网络中的TELNET服务
  14. ipvar TELNET_SERVERS $HOME_NET
  15. #列出网络中的SSH服务
  16. ipvar SSH_SERVERS $HOME_NET
  17. #列出网络中的FTP服务
  18. ipvar FTP_SERVERS $HOME_NET
  19. #列出网络中的SIP服务
  20. ipvar SIP_SERVERS $HOME_NET
  21. #网络上开放的HTTP的端口,可以指定多个,snorby默认的是 3000
  22. portvar HTTP_PORTS [36,80,81,82,83,84,85,86,87,88,89,90,311,383,555,591,593,631,801,808,818,901,972,1158,1220,1414,1533,1741,1830,1942,2231,2301,2381,2578,2809,2980,3029,3037,3057,3128,3443,3702,4000,4343,4848,5000,5117,5250,5600,5814,6080,6173,6988,7000,7001,7005,7071,7144,7145,7510,7770,7777,7778,7779,8000,8001,8008,8014,8015,8020,8028,8040,8080,8081,8082,8085,8088,8090,8118,8123,8180,8181,8182,8222,8243,8280,8300,8333,8344,8400,8443,8500,8509,8787,8800,8888,8899,8983,9000,9002,9060,9080,9090,9091,9111,9290,9443,9447,9710,9788,9999,10000,11371,12601,13014,15489,19980,29991,33300,34412,34443,34444,40007,41080,44449,50000,50002,51423,53331,55252,55555,56712 3000]
  23. #网络上开放的SHELL端口 !取非
  24. portvar SHELLCODE_PORTS !80
  25. #网络上开放的ORCLE数据库端口
  26. portvar ORACLE_PORTS 1024:
  27. #网络上开放的SSH端口
  28. portvar SSH_PORTS 22
  29. #网络上开放的FTP端口
  30. portvar FTP_PORTS [21,2100,3535]
  31. #网络上开放的SIP端口
  32. portvar SIP_PORTS [5060,5061,5600]
  33. #网络上开放的文件数据端口
  34. portvar FILE_DATA_PORTS [$HTTP_PORTS,110,143]
  35. #网络上开放的GTP端口
  36. portvar GTP_PORTS [2123,2152,3386]
  37. #其他的参数,不需要修改
  38. ipvar AIM_SERVERS [64.12.24.0/23,64.12.28.0/23,64.12.161.0/24,64.12.163.0/24,64.12.200.0/24,205.188.3.0/24,205.188.5.0/24,205.188.7.0/24,205.188.9.0/24,205.188.153.0/24,205.188.179.0/24,205.188.248.0/24]

配置rules文件路径(windows推荐使用绝对目录):

  1. #规则路径
  2. var RULE_PATH /etc/snort/rules
  3. #共享函数库规则路径
  4. var SO_RULE_PATH ../so_rules
  5. #预处理器规则路径
  6. var PREPROC_RULE_PATH ../preproc_rules
  7. #允许列表和屏蔽列表地址
  8. var WHITE_LIST_PATH c:\snort\rules
  9. var BLACK_LIST_PATH c:\snort\rules


2.配置解码器

第二步是配置解码器,查看详细信息阅读 README.decode

  1. #停止一般解码事件
  2. config disable_decode_alerts
  3. #停止实验性TCP可选警报
  4. config disable_tcpopt_experimental_alerts
  5. #停止实验性TCP绝对警报
  6. config disable_tcpopt_obsolete_alerts
  7. #停止T/TCP警报
  8. config disable_tcpopt_ttcp_alerts
  9. #停止所有其他的TCP类型可选警报
  10. config disable_tcpopt_alerts
  11. #停止无效的IP可选警报
  12. config disable_ipopt_alerts
  13. #如果长度范围的值(IP TCP UDP)比分组的 th elength 大则警报
  14. # config enable_decode_oversized_alerts
  15. # 同上,但是如果在 Inline 模式下会丢弃分组(需要enable_decode_oversized_alerts)
  16. # config enable_decode_oversized_drops
  17. #配置 IP/TCP checksum 模式
  18. config checksum_mode: all
  19. # 配置最大参考flowbit数字,查看更多阅读 README.flowbits
  20. # config flowbits_size: 64
  21. # 配置忽略的端口
  22. # config ignore_ports: tcp 21 6667:6671 1356
  23. # config ignore_ports: udp 1:17 53
  24. # 配置非inline运行时活动的反应 查看更多阅读REAMDE.active
  25. # config response: eth0 attempts 2
  26. # 配置inline时DQA相关选项,查看更多阅读README.daq
  27. #
  28. # config daq: <type>
  29. # config daq_dir: <dir>
  30. # config daq_mode: <mode>
  31. # config daq_var: <var>
  32. #
  33. # <type> ::= pcap | afpacket | dump | nfq | ipq | ipfw
  34. # <mode> ::= read-file | passive | inline
  35. # <var> ::= arbitrary <name>=<value passed to DAQ
  36. # <dir> ::= 指定DAQ模块的so库路径
  37. # 配置指定的UID和GID,如果丢掉privs之后运行的snort,查看更多使用命令行 snort -h
  38. #
  39. # config set_gid:
  40. # config set_uid:
  41. # 配置默认的snaplen,snort使用的接口的默认的MTU,查看更多阅读 README
  42. #
  43. # config snaplen:
  44. #
  45. # 配置snort捕获流量过滤器默认的规则文件,查看更多使用命令行 snort -h 或者 -F
  46. #
  47. # config bpf_file:
  48. #
  49. # 配置snort输出日志的默认的文件夹,查看更多使用命令行 snort -h 或者 -l
  50. #
  51. # config logdir:


3.配置基本的检测引擎

第三步配置基本的检测引擎,查看更多信息阅读 README.decode

  1. # 配置 PCRE 匹配限制
  2. config pcre_match_limit: 3500
  3. config pcre_match_limit_recursion: 1500
  4. # 配置检测引擎,查看更多阅读 Snort Manual, Configuring Snort - Includes - Config
  5. config detection: search-method ac-split search-optimize max-pattern-len 20
  6. # 配置事件队列,查看更多阅读 README.event_queue
  7. config event_queue: max_queue 8 log 5 order_events content_length
  8. # 配置 GTP 是否启用, 查看更多请阅读 README.GTP
  9. # config enable_gtp
  10. # 每个分组和规则延迟执行,查看更多请阅读 README.ppm
  11. # 配置每个分组延迟执行时间
  12. #config ppm: max-pkt-time 250, \
  13. # fastpath-expensive-packets, \
  14. # pkt-log
  15. # 配置每个规则延迟执行时间
  16. #config ppm: max-rule-time 200, \
  17. # threshold 3, \
  18. # suspend-expensive-rules, \
  19. # suspend-timeout 20, \
  20. # rule-log alert
  21. # 配置debug时性能审查(Perf Profiling),查看更多阅读 README.PerfProfiling
  22. #config profile_rules: print all, sort avg_ticks
  23. #config profile_preprocs: print all, sort avg_ticks
  24. # 配置捕获的协议刷新大小,查看更多阅读 README.stream5
  25. config paf_max: 16000


4.配置动态加载库

第四步配置动态加载库,更多信息查看 Snort Manual, Configuring Snort - Dynamic Modules

  1. # 动态预处理器库路径
  2. dynamicpreprocessor directory /usr/local/lib/snort_dynamicpreprocessor/
  3. # 基本预处理器引擎路径
  4. dynamicengine /usr/local/lib/snort_dynamicengine/libsf_engine.so
  5. # 动态规则库路径
  6. dynamicdetection directory /usr/local/lib/snort_dynamicrules


5.配置预处理器

第四步配置预处理器,更多信息查看 Snort - manual, Configuring Snort - Preprocessors

  1. # GTO 控制信道预处理器,查看更多阅读 README.GTP
  2. # preprocessor gtp: ports { 2123 3386 2152 }
  3. # Inline 分组一般化,查看更多阅读 README.normalize
  4. # IDS 模式无作用
  5. preprocessor normalize_ip4
  6. preprocessor normalize_tcp: block, rsv, pad, urp, req_urg, req_pay, req_urp, ips, ecn stream
  7. preprocessor normalize_icmp4
  8. preprocessor normalize_ip6
  9. preprocessor normalize_icmp6
  10. # 目标基础(Target-based)IP碎片整理(defragmentation),查看更多阅读 README.frag3
  11. preprocessor frag3_global: max_frags 65536
  12. preprocessor frag3_engine: policy windows detect_anomalies overlap_limit 10 min_fragment_length 100 timeout 180
  13. # 目标基础检查/流重组,查看更多阅读 README.stream5
  14. preprocessor stream5_global: track_tcp yes, \
  15. track_udp yes, \
  16. track_icmp no, \
  17. max_tcp 262144, \
  18. max_udp 131072, \
  19. max_active_responses 2, \
  20. min_response_seconds 5
  21. preprocessor stream5_tcp: policy windows, detect_anomalies, require_3whs 180, \
  22. overlap_limit 10, small_segments 3 bytes 150, timeout 180, \
  23. ports client 21 22 23 25 42 53 70 79 109 110 111 113 119 135 136 137 139 143 \
  24. 161 445 513 514 587 593 691 1433 1521 1741 2100 3306 6070 6665 6666 6667 6668 6669 \
  25. 7000 8181 32770 32771 32772 32773 32774 32775 32776 32777 32778 32779, \
  26. ports both 36 80 81 82 83 84 85 86 87 88 89 90 110 311 383 443 465 563 555 591 593 631 636 801 808 818 901 972 989 992 993 994 995 1158 1220 1414 1533 1741 1830 1942 2231 2301 2381 2578 2809 2980 3029 3037 3057 3128 3443 3702 4000 4343 4848 5000 5117 5250 5600 5814 6080 6173 6988 7907 7000 7001 7005 7071 7144 7145 7510 7802 7770 7777 7778 7779 \
  27. 7801 7900 7901 7902 7903 7904 7905 7906 7908 7909 7910 7911 7912 7913 7914 7915 7916 \
  28. 7917 7918 7919 7920 8000 8001 8008 8014 8015 8020 8028 8040 8080 8081 8082 8085 8088 8090 8118 8123 8180 8181 8182 8222 8243 8280 8300 8333 8344 8400 8443 8500 8509 8787 8800 8888 8899 8983 9000 9002 9060 9080 9090 9091 9111 9290 9443 9447 9710 9788 9999 10000 11371 12601 13014 15489 19980 29991 33300 34412 34443 34444 40007 41080 44449 50000 50002 51423 53331 55252 55555 56712
  29. preprocessor stream5_udp: timeout 180
  30. # 性能统计,查看更多阅读 Snort Manual, Configuring Snort - Preprocessors - Performance Monitor
  31. # preprocessor perfmonitor: time 300 file /var/snort/snort.stats pktcnt 10000
  32. # **HTTP一般化和异常检测** 查看更多阅读 README.http_inspect
  33. preprocessor http_inspect: global iis_unicode_map unicode.map 1252 compress_depth 65535 decompress_depth 65535
  34. preprocessor http_inspect_server: server default \
  35. http_methods { GET POST PUT SEARCH MKCOL COPY MOVE LOCK UNLOCK NOTIFY POLL BCOPY BDELETE BMOVE LINK UNLINK OPTIONS HEAD DELETE TRACE TRACK CONNECT SOURCE SUBSCRIBE UNSUBSCRIBE PROPFIND PROPPATCH BPROPFIND BPROPPATCH RPC_CONNECT PROXY_SUCCESS BITS_POST CCM_POST SMS_POST RPC_IN_DATA RPC_OUT_DATA RPC_ECHO_DATA } \
  36. chunk_length 500000 \
  37. server_flow_depth 0 \
  38. client_flow_depth 0 \
  39. post_depth 65495 \
  40. oversize_dir_length 500 \
  41. max_header_length 750 \
  42. max_headers 100 \
  43. max_spaces 200 \
  44. small_chunk_length { 10 5 } \
  45. ports { 36 80 81 82 83 84 85 86 87 88 89 90 311 383 555 591 593 631 801 808 818 901 972 1158 1220 1414 1533 1741 1830 1942 2231 2301 2381 2578 2809 2980 3029 3037 3057 3128 3443 3702 4000 4343 4848 5000 5117 5250 5600 5814 6080 6173 6988 7000 7001 7005 7071 7144 7145 7510 7770 7777 7778 7779 8000 8001 8008 8014 8015 8020 8028 8040 8080 8081 8082 8085 8088 8090 8118 8123 8180 8181 8182 8222 8243 8280 8300 8333 8344 8400 8443 8500 8509 8787 8800 8888 8899 8983 9000 9002 9060 9080 9090 9091 9111 9290 9443 9447 9710 9788 9999 10000 11371 12601 13014 15489 19980 29991 33300 34412 34443 34444 40007 41080 44449 50000 50002 51423 53331 55252 55555 56712 } \
  46. non_rfc_char { 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 } \
  47. enable_cookie \
  48. extended_response_inspection \
  49. inspect_gzip \
  50. normalize_utf \
  51. unlimited_decompress \
  52. normalize_javascript \
  53. apache_whitespace no \
  54. ascii no \
  55. bare_byte no \
  56. directory no \
  57. double_decode no \
  58. iis_backslash no \
  59. iis_delimiter no \
  60. iis_unicode no \
  61. multi_slash no \
  62. utf_8 no \
  63. u_encode yes \
  64. webroot no
  65. # ONC-RPC 一般化和异常检测,查看更多阅读 Snort Manual, Configuring Snort - Preprocessors - RPC Decode
  66. preprocessor rpc_decode: 111 32770 32771 32772 32773 32774 32775 32776 32777 32778 32779 no_alert_multiple_requests no_alert_large_fragments no_alert_incomplete
  67. # 后门检测
  68. preprocessor bo
  69. # FTP / Telnet 一般化和异常检测,查看更多阅读 README.ftptelnet
  70. preprocessor ftp_telnet: global inspection_type stateful encrypted_traffic no check_encrypted
  71. preprocessor ftp_telnet_protocol: telnet \
  72. ayt_attack_thresh 20 \
  73. normalize ports { 23 } \
  74. detect_anomalies
  75. preprocessor ftp_telnet_protocol: ftp server default \
  76. def_max_param_len 100 \
  77. ports { 21 2100 3535 } \
  78. telnet_cmds yes \
  79. ignore_telnet_erase_cmds yes \
  80. ftp_cmds { ABOR ACCT ADAT ALLO APPE AUTH CCC CDUP } \
  81. ftp_cmds { CEL CLNT CMD CONF CWD DELE ENC EPRT } \
  82. ftp_cmds { EPSV ESTA ESTP FEAT HELP LANG LIST LPRT } \
  83. ftp_cmds { LPSV MACB MAIL MDTM MIC MKD MLSD MLST } \
  84. ftp_cmds { MODE NLST NOOP OPTS PASS PASV PBSZ PORT } \
  85. ftp_cmds { PROT PWD QUIT REIN REST RETR RMD RNFR } \
  86. ftp_cmds { RNTO SDUP SITE SIZE SMNT STAT STOR STOU } \
  87. ftp_cmds { STRU SYST TEST TYPE USER XCUP XCRC XCWD } \
  88. ftp_cmds { XMAS XMD5 XMKD XPWD XRCP XRMD XRSQ XSEM } \
  89. ftp_cmds { XSEN XSHA1 XSHA256 } \
  90. alt_max_param_len 0 { ABOR CCC CDUP ESTA FEAT LPSV NOOP PASV PWD QUIT REIN STOU SYST XCUP XPWD } \
  91. alt_max_param_len 200 { ALLO APPE CMD HELP NLST RETR RNFR STOR STOU XMKD } \
  92. alt_max_param_len 256 { CWD RNTO } \
  93. alt_max_param_len 400 { PORT } \
  94. alt_max_param_len 512 { SIZE } \
  95. chk_str_fmt { ACCT ADAT ALLO APPE AUTH CEL CLNT CMD } \
  96. chk_str_fmt { CONF CWD DELE ENC EPRT EPSV ESTP HELP } \
  97. chk_str_fmt { LANG LIST LPRT MACB MAIL MDTM MIC MKD } \
  98. chk_str_fmt { MLSD MLST MODE NLST OPTS PASS PBSZ PORT } \
  99. chk_str_fmt { PROT REST RETR RMD RNFR RNTO SDUP SITE } \
  100. chk_str_fmt { SIZE SMNT STAT STOR STRU TEST TYPE USER } \
  101. chk_str_fmt { XCRC XCWD XMAS XMD5 XMKD XRCP XRMD XRSQ } \
  102. chk_str_fmt { XSEM XSEN XSHA1 XSHA256 } \
  103. cmd_validity ALLO < int [ char R int ] > \
  104. cmd_validity EPSV < [ { char 12 | char A char L char L } ] > \
  105. cmd_validity MACB < string > \
  106. cmd_validity MDTM < [ date nnnnnnnnnnnnnn[.n[n[n]]] ] string > \
  107. cmd_validity MODE < char ASBCZ > \
  108. cmd_validity PORT < host_port > \
  109. cmd_validity PROT < char CSEP > \
  110. cmd_validity STRU < char FRPO [ string ] > \
  111. cmd_validity TYPE < { char AE [ char NTC ] | char I | char L [ number ] } >
  112. preprocessor ftp_telnet_protocol: ftp client default \
  113. max_resp_len 256 \
  114. bounce yes \
  115. ignore_telnet_erase_cmds yes \
  116. telnet_cmds yes
  117. # SMTP一般化和异常检测,查看更多阅读 README.SMTP
  118. preprocessor smtp: ports { 25 465 587 691 } \
  119. inspection_type stateful \
  120. b64_decode_depth 0 \
  121. qp_decode_depth 0 \
  122. bitenc_decode_depth 0 \
  123. uu_decode_depth 0 \
  124. log_mailfrom \
  125. log_rcptto \
  126. log_filename \
  127. log_email_hdrs \
  128. normalize cmds \
  129. normalize_cmds { ATRN AUTH BDAT CHUNKING DATA DEBUG EHLO EMAL ESAM ESND ESOM ETRN EVFY } \
  130. normalize_cmds { EXPN HELO HELP IDENT MAIL NOOP ONEX QUEU QUIT RCPT RSET SAML SEND SOML } \
  131. normalize_cmds { STARTTLS TICK TIME TURN TURNME VERB VRFY X-ADAT X-DRCP X-ERCP X-EXCH50 } \
  132. normalize_cmds { X-EXPS X-LINK2STATE XADR XAUTH XCIR XEXCH50 XGEN XLICENSE XQUE XSTA XTRN XUSR } \
  133. max_command_line_len 512 \
  134. max_header_line_len 1000 \
  135. max_response_line_len 512 \
  136. alt_max_command_line_len 260 { MAIL } \
  137. alt_max_command_line_len 300 { RCPT } \
  138. alt_max_command_line_len 500 { HELP HELO ETRN EHLO } \
  139. alt_max_command_line_len 255 { EXPN VRFY ATRN SIZE BDAT DEBUG EMAL ESAM ESND ESOM EVFY IDENT NOOP RSET } \
  140. alt_max_command_line_len 246 { SEND SAML SOML AUTH TURN ETRN DATA RSET QUIT ONEX QUEU STARTTLS TICK TIME TURNME VERB X-EXPS X-LINK2STATE XADR XAUTH XCIR XEXCH50 XGEN XLICENSE XQUE XSTA XTRN XUSR } \
  141. valid_cmds { ATRN AUTH BDAT CHUNKING DATA DEBUG EHLO EMAL ESAM ESND ESOM ETRN EVFY } \
  142. valid_cmds { EXPN HELO HELP IDENT MAIL NOOP ONEX QUEU QUIT RCPT RSET SAML SEND SOML } \
  143. valid_cmds { STARTTLS TICK TIME TURN TURNME VERB VRFY X-ADAT X-DRCP X-ERCP X-EXCH50 } \
  144. valid_cmds { X-EXPS X-LINK2STATE XADR XAUTH XCIR XEXCH50 XGEN XLICENSE XQUE XSTA XTRN XUSR } \
  145. xlink2state { enabled }
  146. # 端口扫描检测,查看更多阅读 README.sfportscan
  147. # preprocessor sfportscan: proto { all } memcap { 10000000 } sense_level { low }
  148. # ARP欺骗检测,查看更多阅读 Snort Manual - Configuring Snort - Preprocessors - ARP Spoof Preprocessor
  149. # preprocessor arpspoof
  150. # preprocessor arpspoof_detect_host: 192.168.40.1 f0:0f:00:f0:0f:00
  151. # SSH异常检测,查看更多阅读 README.ssh
  152. preprocessor ssh: server_ports { 22 } \
  153. autodetect \
  154. max_client_bytes 19600 \
  155. max_encrypted_packets 20 \
  156. max_server_version_len 100 \
  157. enable_respoverflow enable_ssh1crc32 \
  158. enable_srvoverflow enable_protomismatch
  159. # SMB / DCE-RP 一般化和异常检测,查看更多阅读 README.dcerpc2
  160. preprocessor dcerpc2: memcap 102400, events [co ]
  161. preprocessor dcerpc2_server: default, policy WinXP, \
  162. detect [smb [139,445], tcp 135, udp 135, rpc-over-http-server 593], \
  163. autodetect [tcp 1025:, udp 1025:, rpc-over-http-server 1025:], \
  164. smb_max_chain 3, smb_invalid_shares ["C$", "D$", "ADMIN$"]
  165. # DNS异常检测,查看更多阅读 README.dns
  166. preprocessor dns: ports { 53 } enable_rdata_overflow
  167. # SSL异常检测和流量旁路,查看更多阅读 README.ssl
  168. preprocessor ssl: ports { 443 465 563 636 989 992 993 994 995 5061 7801 7802 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 }, trustservers, noinspect_encrypted
  169. # SDF敏感数据预处理器,查看更多阅读 README.sensitive_data
  170. preprocessor sensitive_data: alert_threshold 25
  171. # SIP会话发起协议(Session Initiation Protocol preprocessor)预处理器,查看更多阅读 README.sip
  172. preprocessor sip: max_sessions 40000, \
  173. ports { 5060 5061 5600 }, \
  174. methods { invite \
  175. cancel \
  176. ack \
  177. bye \
  178. register \
  179. options \
  180. refer \
  181. subscribe \
  182. update \
  183. join \
  184. info \
  185. message \
  186. notify \
  187. benotify \
  188. do \
  189. qauth \
  190. sprack \
  191. publish \
  192. service \
  193. unsubscribe \
  194. prack }, \
  195. max_uri_len 512, \
  196. max_call_id_len 80, \
  197. max_requestName_len 20, \
  198. max_from_len 256, \
  199. max_to_len 256, \
  200. max_via_len 1024, \
  201. max_contact_len 512, \
  202. max_content_len 2048
  203. # IMAP预处理器,查看更多阅读 README.imap
  204. preprocessor imap: \
  205. ports { 143 } \
  206. b64_decode_depth 0 \
  207. qp_decode_depth 0 \
  208. bitenc_decode_depth 0 \
  209. uu_decode_depth 0
  210. # POP预处理器,查看更多阅读 README.pop
  211. preprocessor pop: \
  212. ports { 110 } \
  213. b64_decode_depth 0 \
  214. qp_decode_depth 0 \
  215. bitenc_decode_depth 0 \
  216. uu_decode_depth 0
  217. # Modbus预处理器,查看更多阅读 README.modbus
  218. preprocessor modbus: ports { 502 }
  219. # DNP3预处理器,查看更多阅读 README.dnp3
  220. preprocessor dnp3: ports { 20000 } \
  221. memcap 262144 \
  222. check_crc
  223. # Reputation预处理器,查看更多阅读 README.reputation
  224. preprocessor reputation: \
  225. memcap 500, \
  226. priority whitelist, \
  227. nested_ip inner, \
  228. whitelist $WHITE_LIST_PATH/white_list.rules, \
  229. blacklist $BLACK_LIST_PATH/black_list.rules


6.配置输出插件

第六步配置输出插件,查看更多信息阅读 Snort Manual, Configuring Snort - Output Modules

  1. # unified2
  2. # 大多数安装建议此项
  3. # output unified2: filename merged.log, limit 128, nostamp, mpls_event_types, vlan_event_types
  4. # 特殊形式的安装需要附加的配置
  5. # output alert_unified2: filename snort.alert, limit 128, nostamp
  6. # output log_unified2: filename snort.log, limit 128, nostamp
  7. # syslog
  8. # output alert_syslog: LOG_AUTH LOG_ALERT
  9. # pcap
  10. # output log_tcpdump: tcpdump.log
  11. # 数据中的元数据(metadata),请勿修改
  12. include classification.config
  13. include reference.config


7.自定义规则集

第七步配置自定义规则集,更多信息查看 Snort Manual, Writing Snort Rules

*所有分类默认都开启了。

  1. # site specific rules
  2. include $RULE_PATH/local.rules
  3. include $RULE_PATH/app-detect.rules
  4. include $RULE_PATH/attack-responses.rules
  5. include $RULE_PATH/backdoor.rules
  6. include $RULE_PATH/bad-traffic.rules
  7. include $RULE_PATH/blacklist.rules
  8. include $RULE_PATH/botnet-cnc.rules
  9. include $RULE_PATH/browser-chrome.rules
  10. include $RULE_PATH/browser-firefox.rules
  11. include $RULE_PATH/browser-ie.rules
  12. include $RULE_PATH/browser-other.rules
  13. include $RULE_PATH/browser-plugins.rules
  14. include $RULE_PATH/browser-webkit.rules
  15. include $RULE_PATH/chat.rules
  16. include $RULE_PATH/content-replace.rules
  17. include $RULE_PATH/ddos.rules
  18. include $RULE_PATH/dns.rules
  19. include $RULE_PATH/dos.rules
  20. include $RULE_PATH/experimental.rules
  21. include $RULE_PATH/exploit-kit.rules
  22. include $RULE_PATH/exploit.rules
  23. include $RULE_PATH/file-executable.rules
  24. include $RULE_PATH/file-flash.rules
  25. include $RULE_PATH/file-identify.rules
  26. include $RULE_PATH/file-image.rules
  27. include $RULE_PATH/file-java.rules
  28. include $RULE_PATH/file-multimedia.rules
  29. include $RULE_PATH/file-office.rules
  30. include $RULE_PATH/file-other.rules
  31. include $RULE_PATH/file-pdf.rules
  32. include $RULE_PATH/finger.rules
  33. include $RULE_PATH/ftp.rules
  34. include $RULE_PATH/icmp-info.rules
  35. include $RULE_PATH/icmp.rules
  36. include $RULE_PATH/imap.rules
  37. include $RULE_PATH/indicator-compromise.rules
  38. include $RULE_PATH/indicator-obfuscation.rules
  39. include $RULE_PATH/indicator-scan.rules
  40. include $RULE_PATH/indicator-shellcode.rules
  41. include $RULE_PATH/info.rules
  42. include $RULE_PATH/malware-backdoor.rules
  43. include $RULE_PATH/malware-cnc.rules
  44. include $RULE_PATH/malware-other.rules
  45. include $RULE_PATH/malware-tools.rules
  46. include $RULE_PATH/misc.rules
  47. include $RULE_PATH/multimedia.rules
  48. include $RULE_PATH/mysql.rules
  49. include $RULE_PATH/netbios.rules
  50. include $RULE_PATH/nntp.rules
  51. include $RULE_PATH/oracle.rules
  52. include $RULE_PATH/os-linux.rules
  53. include $RULE_PATH/os-mobile.rules
  54. include $RULE_PATH/os-other.rules
  55. include $RULE_PATH/os-solaris.rules
  56. include $RULE_PATH/os-windows.rules
  57. include $RULE_PATH/other-ids.rules
  58. include $RULE_PATH/p2p.rules
  59. include $RULE_PATH/phishing-spam.rules
  60. include $RULE_PATH/policy-multimedia.rules
  61. include $RULE_PATH/policy-other.rules
  62. include $RULE_PATH/policy.rules
  63. include $RULE_PATH/policy-social.rules
  64. include $RULE_PATH/policy-spam.rules
  65. include $RULE_PATH/pop2.rules
  66. include $RULE_PATH/pop3.rules
  67. include $RULE_PATH/protocol-dns.rules
  68. include $RULE_PATH/protocol-finger.rules
  69. include $RULE_PATH/protocol-ftp.rules
  70. include $RULE_PATH/protocol-icmp.rules
  71. include $RULE_PATH/protocol-imap.rules
  72. include $RULE_PATH/protocol-nntp.rules
  73. include $RULE_PATH/protocol-other.rules
  74. include $RULE_PATH/protocol-pop.rules
  75. include $RULE_PATH/protocol-rpc.rules
  76. include $RULE_PATH/protocol-scada.rules
  77. include $RULE_PATH/protocol-services.rules
  78. include $RULE_PATH/protocol-snmp.rules
  79. include $RULE_PATH/protocol-telnet.rules
  80. include $RULE_PATH/protocol-tftp.rules
  81. include $RULE_PATH/protocol-voip.rules
  82. include $RULE_PATH/pua-adware.rules
  83. include $RULE_PATH/pua-other.rules
  84. include $RULE_PATH/pua-p2p.rules
  85. include $RULE_PATH/pua-toolbars.rules
  86. include $RULE_PATH/rpc.rules
  87. include $RULE_PATH/rservices.rules
  88. include $RULE_PATH/scada.rules
  89. include $RULE_PATH/scan.rules
  90. include $RULE_PATH/server-apache.rules
  91. include $RULE_PATH/server-iis.rules
  92. include $RULE_PATH/server-mail.rules
  93. include $RULE_PATH/server-mssql.rules
  94. include $RULE_PATH/server-mysql.rules
  95. include $RULE_PATH/server-oracle.rules
  96. include $RULE_PATH/server-other.rules
  97. include $RULE_PATH/server-samba.rules
  98. include $RULE_PATH/server-webapp.rules
  99. include $RULE_PATH/shellcode.rules
  100. include $RULE_PATH/smtp.rules
  101. include $RULE_PATH/snmp.rules
  102. include $RULE_PATH/specific-threats.rules
  103. include $RULE_PATH/spyware-put.rules
  104. include $RULE_PATH/sql.rules
  105. include $RULE_PATH/telnet.rules
  106. include $RULE_PATH/tftp.rules
  107. include $RULE_PATH/virus.rules
  108. include $RULE_PATH/voip.rules
  109. include $RULE_PATH/web-activex.rules
  110. include $RULE_PATH/web-attacks.rules
  111. include $RULE_PATH/web-cgi.rules
  112. include $RULE_PATH/web-client.rules
  113. include $RULE_PATH/web-coldfusion.rules
  114. include $RULE_PATH/web-frontpage.rules
  115. include $RULE_PATH/web-iis.rules
  116. include $RULE_PATH/web-misc.rules
  117. include $RULE_PATH/web-php.rules
  118. include $RULE_PATH/x11.rules


8.自定义预处理器和警报解码器

第八步自定义预处理器和警报解码器,查看更多阅读 README.decoder_preproc_rules

  1. # decoder and preprocessor event rules
  2. # include $PREPROC_RULE_PATH/preprocessor.rules
  3. # include $PREPROC_RULE_PATH/decoder.rules
  4. # include $PREPROC_RULE_PATH/sensitive-data.rules


9.自定义分享的目标Snort规则

第九步自定义分享的目标Snort规则,查看更多阅读 http://vrt-blog.snort.org/2009/01/using-vrt-certified-shared-object-rules.html

  1. # dynamic library rules
  2. # include $SO_RULE_PATH/browser-ie.rules
  3. # include $SO_RULE_PATH/browser-other.rules
  4. # include $SO_RULE_PATH/exploit-kit.rules
  5. # include $SO_RULE_PATH/file-flash.rules
  6. # include $SO_RULE_PATH/file-image.rules
  7. # include $SO_RULE_PATH/file-java.rules
  8. # include $SO_RULE_PATH/file-multimedia.rules
  9. # include $SO_RULE_PATH/file-office.rules
  10. # include $SO_RULE_PATH/file-other.rules
  11. # include $SO_RULE_PATH/file-pdf.rules
  12. # include $SO_RULE_PATH/indicator-shellcode.rules
  13. # include $SO_RULE_PATH/malware-cnc.rules
  14. # include $SO_RULE_PATH/malware-other.rules
  15. # include $SO_RULE_PATH/netbios.rules
  16. # include $SO_RULE_PATH/os-linux.rules
  17. # include $SO_RULE_PATH/os-other.rules
  18. # include $SO_RULE_PATH/os-windows.rules
  19. # include $SO_RULE_PATH/policy-social.rules
  20. # include $SO_RULE_PATH/protocol-dns.rules
  21. # include $SO_RULE_PATH/protocol-nntp.rules
  22. # include $SO_RULE_PATH/protocol-other.rules
  23. # include $SO_RULE_PATH/protocol-snmp.rules
  24. # include $SO_RULE_PATH/protocol-voip.rules
  25. # include $SO_RULE_PATH/pua-p2p.rules
  26. # include $SO_RULE_PATH/server-apache.rules
  27. # include $SO_RULE_PATH/server-iis.rules
  28. # include $SO_RULE_PATH/server-mail.rules
  29. # include $SO_RULE_PATH/server-mysql.rules
  30. # include $SO_RULE_PATH/server-oracle.rules
  31. # include $SO_RULE_PATH/server-other.rules
  32. # include $SO_RULE_PATH/server-webapp.rules
  33. # legacy dynamic library rule files
  34. # include $SO_RULE_PATH/bad-traffic.rules
  35. # include $SO_RULE_PATH/browser-ie.rules
  36. # include $SO_RULE_PATH/chat.rules
  37. # include $SO_RULE_PATH/dos.rules
  38. # include $SO_RULE_PATH/exploit.rules
  39. # include $SO_RULE_PATH/file-flash.rules
  40. # include $SO_RULE_PATH/icmp.rules
  41. # include $SO_RULE_PATH/imap.rules
  42. # include $SO_RULE_PATH/misc.rules
  43. # include $SO_RULE_PATH/multimedia.rules
  44. # include $SO_RULE_PATH/netbios.rules
  45. # include $SO_RULE_PATH/nntp.rules
  46. # include $SO_RULE_PATH/p2p.rules
  47. # include $SO_RULE_PATH/smtp.rules
  48. # include $SO_RULE_PATH/snmp.rules
  49. # include $SO_RULE_PATH/specific-threats.rules
  50. # include $SO_RULE_PATH/web-activex.rules
  51. # include $SO_RULE_PATH/web-client.rules
  52. # include $SO_RULE_PATH/web-iis.rules
  53. # include $SO_RULE_PATH/web-misc.rules
  54. # Event thresholding or suppression commands. See threshold.conf
  55. include threshold.conf

Snort - 配置文件的更多相关文章

  1. SNORT入侵检测系统

    SNORT入侵检测系统 YxWa · 2015/10/09 10:38 0x00 一条简单的规则 alert tcp 202.110.8.1 any -> 122.111.90.8 80 (ms ...

  2. centos平台基于snort、barnyard2以及base的IDS(入侵检测系统)的搭建与测试及所遇问题汇总

    centos平台基于snort.barnyard2以及base的IDS(入侵检测系统)的搭建与测试及所遇问题汇总 原创 2016年12月19日 01:20:03 标签: centos / snort  ...

  3. 搭建开源入侵检测系统Snort并实现与防火墙联动

    Snort作为一款优秀的开源主机入侵检测系统,在windows和Linux平台上均可安装运行.BT5作为曾经的一款经典的渗透神器,基于 Ubuntu,里面已经预装很多的应用,比如Mysql.Apach ...

  4. 基于Windows7下snort+apache+php 7 + acid(或者base) + adodb + jpgraph的入侵检测系统的搭建(图文详解)(博主推荐)

    为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习.人工智能.区域链研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机 ...

  5. 如何编写snort的检测规则

    如何编写snort的检测规则 2013年09月08日 ⁄ 综合 ⁄ 共 16976字 前言 snort是一个强大的轻量级的网络入侵检测系统.它具有实时数据流量分析和日志IP网络数据包的能力,能够进行协 ...

  6. Snort 入侵检测系统

    Snort 入侵检测系统 一.实验目的 1.掌握snort IDS工作原理 2.应用snort 三种方式工作 二.实验环境 系统环境:Windows环境, kali环境 三.实验原理 1.snort ...

  7. Linux常用的安全工具 转自https://yq.aliyun.com/articles/52540?spm=5176.100239.blogcont24250.8.CfBYE9

    摘要: 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://chenguang.blog.51cto.com/350944/85790 ...

  8. Linux常用的安全工具

    Linux常用的安全工具 "工欲善其事,必先利其器".作为一个合格的系统管理员,要应对可能发生的安全事件,掌握Linux下各种必须的安全工具是首要大事.本文主要介绍Linux上常用 ...

  9. Snort 安装 配置 - Archlinux

    About Snort Snort是一套开放源代码(OpenSource and free)的网络入侵预防软件(NIPS)与网络入侵检测软件(NIDS).Snort使用了以侦测签名(signature ...

随机推荐

  1. struts深入原理之RequestProcessor与xml

    和配置文件相对应的代码(struts1) public void process(HttpServletRequest request, HttpServletResponse response)   ...

  2. 数据结构:JAVA_二叉数查找树基本实现(中)

    数据结构:二叉数查找树基本实现(JAVA语言版) 1.写在前面 二叉查找树得以广泛应用的一个重要原因是它能保持键的有序性,因此我们可以把它作为实现有序符号表API中的众多方法的基础. 也就是说我们构建 ...

  3. offsetTop、clientTop、scrollTop、offsetTop

    好好看看下面那张图,基本上就没啥问题了! scrollHeight: 获取对象的滚动高度.  scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离  scrollTop ...

  4. Android监听来电和去电

    要监听android打电话和接电话,只需下面2步骤1.第一步,写一个Receiver继承自BroadcastReceiver import android.app.Service; import an ...

  5. Azure ARM (10) ARM模式下的虚拟机和Classic Model虚拟机的区别

    <Windows Azure Platform 系列文章目录> 本文内容比较多,请大家仔细阅读,谢谢! 请读者注意,在Azure ARM平台,有两种虚拟机模式:经典虚拟机和ARM虚拟机 A ...

  6. C#--属性

  7. 介绍开源的.net通信框架NetworkComms框架 源码分析(十)DOSProtection

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  8. iOS阶段学习第21天笔记(ARC内存管理-Copy-代理)

    iOS学习(OC语言)知识点整理 一.OC 中的ARC内存管理 1)ARC中释放对象的内存原则:看这个对象有没有强引用指向它 2)strong:强引用,默认情况下的引用都是强引用 3) weak:弱引 ...

  9. 炉石传说 C# 开发笔记 (法术篇)

    炉石的设计,最核心的内容是法术效果. 法术卡牌,无疑是法术的集中体现,但是,法术效果除了在法术卡牌之外,也不除不在. 随从的战吼,亡语,奥秘的揭示等等都是法术效果的体现. 法术卡牌在炉石里面有很多种( ...

  10. WebResource.axd 404 错误

    再对程序进行发布的时候,出现以下情况 复制出错误信息: 网页错误详细信息 用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Triden ...