📄 snort.conf
字号:
#--------------------------------------------------# http://www.snort.org Snort 2.4.0 config file# Contact: snort-sigs@lists.sourceforge.net#--------------------------------------------------# $Id: snort.conf,v 1.144.2.9.2.10 2005/07/22 15:10:16 roesch Exp $##################################################### This file contains a sample snort configuration. # You can take the following steps to create your own custom configuration:## 1) Set the variables for your network# 2) Configure preprocessors# 3) Configure output plugins# 4) Add any runtime config directives# 5) Customize your rule set##################################################### Step #1: Set the network variables:## You must change the following variables to reflect your local network. The# variable is currently setup for an RFC 1918 address space.## You can specify it explicitly as: ## var HOME_NET 10.1.1.0/24## or use global variable $<interfacename>_ADDRESS which will be always# initialized to IP address and netmask of the network interface which you run# snort at. Under Windows, this must be specified as# $(<interfacename>_ADDRESS), such as:# $(\Device\Packet_{12345678-90AB-CDEF-1234567890AB}_ADDRESS)## var HOME_NET $eth0_ADDRESS## You can specify lists of IP addresses for HOME_NET# by separating the IPs with commas like this:## var HOME_NET [10.1.1.0/24,192.168.1.0/24]## MAKE SURE YOU DON'T PLACE ANY SPACES IN YOUR LIST!## or you can specify the variable to be any IP address# like this:var HOME_NET any# Set up the external network addresses as well. A good start may be "any"var EXTERNAL_NET any# Configure your server lists. This allows snort to only look for attacks to# systems that have a service up. Why look for HTTP attacks if you are not# running a web server? This allows quick filtering based on IP addresses# These configurations MUST follow the same configuration scheme as defined# above for $HOME_NET. # List of DNS servers on your network var DNS_SERVERS $HOME_NET# List of SMTP servers on your networkvar SMTP_SERVERS $HOME_NET# List of web servers on your networkvar HTTP_SERVERS $HOME_NET# List of sql servers on your network var SQL_SERVERS $HOME_NET# List of telnet servers on your networkvar TELNET_SERVERS $HOME_NET# List of snmp servers on your networkvar SNMP_SERVERS $HOME_NET# Configure your service ports. This allows snort to look for attacks destined# to a specific application only on the ports that application runs on. For# example, if you run a web server on port 8081, set your HTTP_PORTS variable# like this:## var HTTP_PORTS 8081## Port lists must either be continuous [eg 80:8080], or a single port [eg 80].# We will adding support for a real list of ports in the future.# Ports you run web servers on## Please note: [80,8080] does not work.# If you wish to define multiple HTTP ports,# ## var HTTP_PORTS 80 ## include somefile.rules ## var HTTP_PORTS 8080## include somefile.rules var HTTP_PORTS 80# Ports you want to look for SHELLCODE on.var SHELLCODE_PORTS !80# Ports you do oracle attacks onvar ORACLE_PORTS 1521# other variables# # AIM servers. AOL has a habit of adding new AIM servers, so instead of# modifying the signatures when they do, we add them to this list of servers.var 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]# Path to your rules files (this can be a relative path)# Note for Windows users: You are advised to make this an absolute path,# such as: c:\snort\rulesvar RULE_PATH ../rules# Configure the snort decoder# ============================## Snort's decoder will alert on lots of things such as header# truncation or options of unusual length or infrequently used tcp options### Stop generic decode events:## config disable_decode_alerts## Stop Alerts on experimental TCP options## config disable_tcpopt_experimental_alerts## Stop Alerts on obsolete TCP options## config disable_tcpopt_obsolete_alerts## Stop Alerts on T/TCP alerts## In snort 2.0.1 and above, this only alerts when a TCP option is detected# that shows T/TCP being actively used on the network. If this is normal# behavior for your network, disable the next option.## config disable_tcpopt_ttcp_alerts## Stop Alerts on all other TCPOption type events:## config disable_tcpopt_alerts## Stop Alerts on invalid ip options## config disable_ipopt_alerts# Configure the detection engine# ===============================## Use a different pattern matcher in case you have a machine with very limited# resources:## config detection: search-method lowmem# Configure Inline Resets# ========================# # If running an iptables firewall with snort in InlineMode() we can now# perform resets via a physical device. We grab the indev from iptables# and use this for the interface on which to send resets. This config# option takes an argument for the src mac address you want to use in the# reset packet. This way the bridge can remain stealthy. If the src mac# option is not set we use the mac address of the indev device. If we# don't set this option we will default to sending resets via raw socket,# which needs an ipaddress to be assigned to the int.## config layer2resets: 00:06:76:DD:5F:E3#################################################### Step #2: Configure preprocessors## General configuration for preprocessors is of # the form# preprocessor <name_of_processor>: <configuration_options># Configure Flow tracking module# -------------------------------## The Flow tracking module is meant to start unifying the state keeping# mechanisms of snort into a single place. Right now, only a portscan detector# is implemented but in the long term, many of the stateful subsystems of# snort will be migrated over to becoming flow plugins. This must be enabled# for flow-portscan to work correctly.## See README.flow for additional information#preprocessor flow: stats_interval 0 hash 2# frag2: IP defragmentation support# -------------------------------# This preprocessor performs IP defragmentation. This plugin will also detect# people launching fragmentation attacks (usually DoS) against hosts. No# arguments loads the default configuration of the preprocessor, which is a 60# second timeout and a 4MB fragment buffer. # The following (comma delimited) options are available for frag2# timeout [seconds] - sets the number of [seconds] that an unfinished # fragment will be kept around waiting for completion,# if this time expires the fragment will be flushed# memcap [bytes] - limit frag2 memory usage to [number] bytes# (default: 4194304)## min_ttl [number] - minimum ttl to accept# # ttl_limit [number] - difference of ttl to accept without alerting# will cause false positves with router flap# # Frag2 uses Generator ID 113 and uses the following SIDS # for that GID:# SID Event description# ----- -------------------# 1 Oversized fragment (reassembled frag > 64k bytes)# 2 Teardrop-type attack#preprocessor frag2# frag3: Target-based IP defragmentation # --------------------------------------## Frag3 is a brand new IP defragmentation preprocessor that is capable of# performing "target-based" processing of IP fragments. Check out the# README.frag3 file in the doc directory for more background and configuration# information.# # Frag3 configuration is a two step process, a global initialization phase # followed by the definition of a set of defragmentation engines. # # Global configuration defines the number of fragmented packets that Snort can# track at the same time and gives you options regarding the memory cap for the# subsystem or, optionally, allows you to preallocate all the memory for the # entire frag3 system.## frag3_global options:# max_frags: Maximum number of frag trackers that may be active at once. # Default value is 8192.# memcap: Maximum amount of memory that frag3 may access at any given time.# Default value is 4MB.# prealloc_frags: Maximum number of individual fragments that may be processed# at once. This is instead of the memcap system, uses static # allocation to increase performance. No default value. Each# preallocated fragment eats ~1550 bytes.## Target-based behavior is attached to an engine as a "policy" for handling # overlaps and retransmissions as enumerated in the Paxson paper. There are# currently five policy types available: "BSD", "BSD-right", "First", "Linux" # and "Last". Engines can be bound to bound to standard Snort CIDR blocks or# IP lists.## frag3_engine options:# timeout: Amount of time a fragmented packet may be active before expiring.# Default value is 60 seconds.# ttl_limit: Limit of delta allowable for TTLs of packets in the fragments. # Based on the initial received fragment TTL.# min_ttl: Minimum acceptable TTL for a fragment, frags with TTLs below this# value will be discarded. Default value is 0.# detect_anomalies: Activates frag3's anomaly detection mechanisms.# policy: Target-based policy to assign to this engine. Default is BSD.# bind_to: IP address set to bind this engine to. Default is all hosts.## Frag3 configuration example:#preprocessor frag3_global: max_frags 65536 prealloc_frags 262144#preprocessor frag3_engine: policy linux \# bind_to [10.1.1.12/32,10.1.1.13/32] \# detect_anomalies#preprocessor frag3_engine: policy first \# bind_to 10.2.1.0/24 \# detect_anomalies#preprocessor frag3_engine: policy last \# bind_to 10.3.1.0/24#preprocessor frag3_engine: policy bsdpreprocessor frag3_global: max_frags 65536preprocessor frag3_engine: policy first detect_anomalies# stream4: stateful inspection/stream reassembly for Snort#----------------------------------------------------------------------# Use in concert with the -z [all|est] command line switch to defeat stick/snot# against TCP rules. Also performs full TCP stream reassembly, stateful# inspection of TCP streams, etc. Can statefully detect various portscan# types, fingerprinting, ECN, etc.# stateful inspection directive# no arguments loads the defaults (timeout 30, memcap 8388608)# options (options are comma delimited):# detect_scans - stream4 will detect stealth portscans and generate alerts# when it sees them when this option is set# detect_state_problems - detect TCP state problems, this tends to be very# noisy because there are a lot of crappy ip stack# implementations out there## disable_evasion_alerts - turn off the possibly noisy mitigation of# overlapping sequences.### min_ttl [number] - set a minium ttl that snort will accept to# stream reassembly## ttl_limit [number] - differential of the initial ttl on a session versus# the normal that someone may be playing games.# Routing flap may cause lots of false positives.# # keepstats [machine|binary] - keep session statistics, add "machine" to # get them in a flat format for machine reading, add# "binary" to get them in a unified binary output # format# noinspect - turn off stateful inspection only# timeout [number] - set the session timeout counter to [number] seconds,# default is 30 seconds# max_sessions [number] - limit the number of sessions stream4 keeps# track of# memcap [number] - limit stream4 memory usage to [number] bytes# log_flushed_streams - if an event is detected on a stream this option will# cause all packets that are stored in the stream4# packet buffers to be flushed to disk. This only # works when logging in pcap mode!# server_inspect_limit [bytes] - Byte limit on server side inspection.# flush_behavior [number] -# number > 0 use old static flushpoints (default)# number = 0 use new larger static flushpoints# number < 0 use random flushpoints defined by flush_base, flush_seed# and flush_range# flush_base [number] - lowest allowed random flushpoint (512 by default)# flush_range [number] - number is the space within which random flushpoints# are generated (default 1213)# flush_seed [number] - seed for the random number generator, defaults to # Snort PID + time## Using the default random flushpoints, the smallest flushpoint is 512,# and the largest is 1725 bytes.## Stream4 uses Generator ID 111 and uses the following SIDS # for that GID:# SID Event description# ----- -------------------# 1 Stealth activity# 2 Evasive RST packet# 3 Evasive TCP packet retransmission# 4 TCP Window violation# 5 Data on SYN packet# 6 Stealth scan: full XMAS# 7 Stealth scan: SYN-ACK-PSH-URG# 8 Stealth scan: FIN scan# 9 Stealth scan: NULL scan# 10 Stealth scan: NMAP XMAS scan# 11 Stealth scan: Vecna scan# 12 Stealth scan: NMAP fingerprint scan stateful detect# 13 Stealth scan: SYN-FIN scan# 14 TCP forward overlappreprocessor stream4: disable_evasion_alerts# tcp stream reassembly directive# no arguments loads the default configuration # Only reassemble the client,# Only reassemble the default list of ports (See below), # Give alerts for "bad" streams## Available options (comma delimited):# clientonly - reassemble traffic for the client side of a connection only# serveronly - reassemble traffic for the server side of a connection only# both - reassemble both sides of a session# noalerts - turn off alerts from the stream reassembly stage of stream4# ports [list] - use the space separated list of ports in [list], "all" # will turn on reassembly for all ports, "default" will turn# on reassembly for ports 21, 23, 25, 42, 53, 80, 110,# 111, 135, 136, 137, 139, 143, 445, 513, 1433, 1521,# and 3306# favor_old - favor an old segment (based on sequence number) over a new one.# This is the default.# favor_new - favor an new segment (based on sequence number) over an old one.preprocessor stream4_reassemble# Performance Statistics# ----------------------# Documentation for this is provided in the Snort Manual. You should read it.# It is included in the release distribution as doc/snort_manual.pdf
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -