SNORT
R
Users Manual
2.9.11.1
The Snort Project
December 19, 2017
Copyright
c
1998-2003 Martin Roesch
Copyright
c
2001-2003 Chris Green
Copyright
c
2003-2013 Sourcefire, Inc.
Copyright
c
2014-2017 Cisco and/or its affiliates. All rights reserved.
1
Contents
1 Snort O verview 9
1.1 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Sniffer Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Packet Logger Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Network Intrusion Detection System Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1 NIDS Mode Output Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.2 Understanding Standard Alert Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.3 High Performance Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.4 Changing Alert Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5 Packet Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.1 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.2 pcap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.3 AFPACKET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5.4 NFQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5.5 IPQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.6 IPFW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.7 Dump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.8 Statistics Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.6 Reading pcap files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.6.1 Command line arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.6.2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.7 Basic Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.7.1 Timing Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.7.2 Packet I/O Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.7.3 Protocol Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 0
1.7.4 Snort Memory Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.7.5 Actions, Limits, and Verdicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.8 Tunneling Protocol Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.8.1 Multiple Encapsulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.8.2 Loggin g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2
1.9 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.9.1 Running Snort as a Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.9.2 Running in Rule Stub Creation Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.9.3 Obfuscating IP Address Printouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.9.4 Specifying Multiple-Instance Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.9.5 Snort Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.10 Control socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.11 Configure signal value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.12 More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2 Configuring Snort 28
2.1 Includes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.1.1 Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.1.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.1.3 Config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2 Preprocessors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.2.1 Frag3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.2.2 Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2.3 Stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5
2.2.4 sfPortscan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.5 RPC Decode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.2.6 Performance Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.2.7 HTTP Inspect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.2.8 SMTP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 5
2.2.9 POP Pre processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.2.10 IMAP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.2.11 FTP/Telnet Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
2.2.12 SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.2.13 DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.2.14 SSL/TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.2.15 ARP Spoof Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.2.16 DCE/RPC 2 Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.2.17 Sensitive Data Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
2.2.18 Normalizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
2.2.19 SIP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
2.2.20 Reputation Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.2.21 GTP Decoder and Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
2.2.22 Modbus Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
2.2.23 DNP3 Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
3
2.2.24 AppId Prep rocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2.3 Decoder and Preprocessor Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
2.3.1 Configuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
2.3.2 Reverting to orig inal behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
2.4 Event Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
2.4.1 Rate Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
2.4.2 Event Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
2.4.3 Event Suppre ssion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
2.4.4 Event Logg ing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
2.4.5 Event Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
2.5 Performance Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
2.5.1 Rule Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2.5.2 Preprocessor Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
2.5.3 Packet Performance Monitoring (PPM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.6 Output Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
2.6.1 alert
syslog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
2.6.2 alert
fast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.6.3 alert
full . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.6.4 alert
unixsock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.6.5 log
tcpdump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.6.6 csv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.6.7 unified 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
2.6.8 log null . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
2.6.9 Log Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
2.7 Host Attribute Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
2.7.1 Rule evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 9
2.7.2 Snort Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
2.7.3 Host Attribute Table File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
2.7.4 Attribute Table Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
2.7.5 Attribute Table Affect on preproce ssors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
2.8 Dynamic Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
2.8.1 Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
2.8.2 Directives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
2.9 Reloading a Snort Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.9.1 Enabling support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.9.2 Reloading a configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.9.3 Non-reloadable configuratio n options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.10 Multiple Configura tions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
2.10.1 Creating Multiple Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
4