SNORT
R
Users Manual
2.9.13
The Snort Project
February 26, 2019
Copyright
c
1998-2003 Martin Roesch
Copyright
c
2001-2003 Chris Green
Copyright
c
2003-2013 Sourcefire, Inc.
Copyright
c
2014-2019 Cisco and/or its affiliates. All rights reserved.
1
Contents
1 Snort Overview 3
1.1 Getting Star te d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Sniffer Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Packet Logger Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 Network Intrusion Detection System Mo de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.1 NIDS Mode Output Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.2 Understanding Standard Alert Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.3 High Performance Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.4 Changing Alert Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Packet Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5.1 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5.2 pcap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5.3 AFPACKET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5.4 NFQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5.5 IPQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5.6 IPFW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5.7 Dump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5.8 Statistics Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6 Reading pcap files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6.1 Command line argum ents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6.2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.7 Basic Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7.1 Timing Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7.2 Packet I/O Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7.3 Protocol Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.7.4 Snort Memory Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.7.5 Actions, Limits, and Verdicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.8 Tunneling Protocol Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.8.1 Multiple Encapsulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.8.2 Loggin g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2
1.9 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.9.1 Running Snort as a Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.9.2 Running in Rule Stub Creation Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.9.3 Obfuscating IP Addr e ss Printouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.9.4 Specifying Multiple-Instance Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.9.5 Snort Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.10 Control soc ket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.11 Configure signa l value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.12 More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2 Configuring Snort 22
2.1 Includes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.1 Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.3 Config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2 Preprocessors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.2.1 Frag3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.2.2 Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.2.3 Stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 9
2.2.4 sfPortscan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2.5 RPC D ecode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.6 Performance Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.7 HTTP Inspect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.2.8 SMTP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.2.9 POP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.2.10 IMAP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.2.11 FTP/Telnet Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.2.12 SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
2.2.13 DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
2.2.14 SSL/TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
2.2.15 ARP Spoof Preproc e ssor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.2.16 DCE/RPC 2 Preproce ssor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.2.17 Sensitive Data Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
2.2.18 Normalizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
2.2.19 SIP Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
2.2.20 Reputation Prepr ocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
2.2.21 GTP Decoder and Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
2.2.22 Modbus Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
2.2.23 DNP3 Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
3
2.2.24 AppId Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
2.3 Decoder and Preprocessor Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
2.3.1 Configuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
2.3.2 Reverting to orig inal behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
2.4 Event Proc e ssing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2.4.1 Rate Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2.4.2 Event Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
2.4.3 Event Suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
2.4.4 Event Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
2.4.5 Event Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
2.5 Performance Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
2.5.1 Rule Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
2.5.2 Preprocessor Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
2.5.3 Packet Performance Monitoring (PPM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
2.6 Output Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
2.6.1 alert
syslog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
2.6.2 alert
fast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
2.6.3 alert
full . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
2.6.4 alert
unixsock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.6.5 log
tcpdump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.6.6 csv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.6.7 unified 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
2.6.8 log null . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2.6.9 Log Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.7 Host Attribute Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.7.1 Rule evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3
2.7.2 Snort Configuratio n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.7.3 Host Attribute Table File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.7.4 Attribute Table Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
2.7.5 Attribute Table Affect on prepro c essors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
2.8 Dynamic Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.8.1 Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.8.2 Directives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.9 Reloading a Snort Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
2.9.1 Enabling support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
2.9.2 Reloading a configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
2.9.3 Non-reloadable configuratio n options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
2.10 Multiple Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
2.10.1 Creating Mu ltiple Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
4