📄 readme
字号:
Snort Version 1.7by Martin Roesch (roesch@clark.net)Distribution Site:http://www.snort.orghttp://snort.sourceforge.netAlternate Sites:US:http://www.technotronic.comhttp://packetstorm.securify.comhttp://snort.whitehats.comEurope:http://gd.tuwien.ac.at/infosys/security/snortftp://gd.tuwien.ac.at/infosys/security/snorthttp://www.centus.com/snort/security.htmlSouth America:http://snort.safenetworks.comAustralia:ftp://the.wiretapped.net/pub/security/network-intrusion-detection/snortDistributed with:Trinux <http://www.trinux.org>SuSE Linux <http://www.suse.org>Debian Linux <http://www.debian.org>NetBSD <http://www.netbsd.org>Conectiva Linux <www.conectiva.com.br>Others?******************************************************************************COPYRIGHTCopyright (C)1998,1999,2000,2001 Martin RoeschThis program is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.Some of this code has been taken from tcpdump, which was developedby the Network Research Group at Lawrence Berkeley National Lab,and is copyrighted by the University of California Regents.******************************************************************************DESCRIPTIONSnort is an open source network intrusion detection system, capable of performing real-time traffic analysis and packet logging on IP networks. It can perform protocol analysis and content searching/matching in order todetect a variety of attacks and probes, such as buffer overflows, stealth portscans, CGI attacks, SMB probes, OS fingerprinting attempts, and much more. Snort uses a flexible rules language to describe traffic that it should collector pass, as well as a detection engine that utilizes a modular pluginarchitecture. Snort has a real- time alerting capability as well, incorporating alerting mechanisms for syslog, user specified files, aUNIX socket, or WinPopup messages to Windows clients using Samba's smbclient.Snort has three primary functional modes. It can be used as a straightpacket sniffer like tcpdump(1), a packet logger (useful for network trafficdebugging, etc), or as a full blown network intrusion detection system.Snort logs packets in either tcpdump(1) binary format or in Snort's decodedASCII format to a hierarcical set of directories that are named based on the IPaddress of the remote host.Plugins allow the detection and reporting subsystems to be extended. Available plugins include database or XML logging, small fragment detection, portscan detection, and HTTP URI normalization, IP defragmentation, TCP stream reassembly and statistical anomaly detection. ******************************************************************************[*][USAGE]Command line: snort -[options] <filters>Options: -A <alert> Set <alert> mode to full, fast or none. Full mode does normal "classic Snort"-style alerts to the alert file. Fast mode just writes the timestamp, message, IPs, and ports to the file. None turns off alerting. There is experimental support for UnixSock alerts that allow alerting to a sepreate process. Use the "unsock" argument to activate this feature. -a Display ARP packets -b Log packets in tcpdump format. All packets are logged in their native binary state to a tcpdump formatted log file called "snort.log". This option results in much faster operation of the program since it doesn't have to spend time in the packet binary->text converters. Snort can keep up pretty well with 100Mbps networks in "-b" mode. -c <cf> Use configuration file <cf>. This is the rules file which tells the system what to log, alert on, or pass! -C Dump the ASCII characters in packet payloads only, no hexdump -d Dump the application layer data -D Run Snort in daemon mode. Alerts are sent to /var/log/snort/alert unless otherwise specified. -e Display/log the layer 2 packet header data. -F <bpf> Read BPF filters from file <bpf>. Handy for those of you running Snort as a SHADOW replacement or with a love of super complex BPF filters. -g <gname> Run Snort as group ID <gname> after initialization. This switch allows Snort to drop root priveleges after it's initialization phase has completed as a security measure. -h <hn> Set the "home network" to <hn>, which is a class C IP address something like 192.168.1.0 or whatever. If you use this switch, traffic coming from external networks will be formatted with the directional arrow of the packet dump pointing right for incoming external traffic, and left for outgoing internal traffic. Kind of silly, but it looks nice. -i <if> Sniff on network interface <if>. -I Add the interface name to alert printouts (first interface only) -l <ld> Log packets to directory <ld>. Sets up a hierarchical directory structure with the log directory as the base starting directory, and the IP address of the remote peer generating traffic as the directory which packets packets from that adress are stored in. If you do not use the -l switch, the default logging directory is /var/log/snort. -L <fn> Set the binary output file's filename to <fn>. -M <wkstn> Send WinPopup messages to the list of workstations contained in the <wkstn> file. This option requires Samba to be resident and in the path of the machine running Snort. The workstation file is simple: each line of the file containes the SMB name of the box to send the message to (no \\'s needed). -n <num> Exit after processing <num> packets. -N Turn off logging. Alerts still function normally. -o Change the order in which the rules are applied to packets. Instead of being applied in the standard Alert->Pass->Log order, this will apply them in Pass->Alert->Log order, allowing people to avoid having to make huge BPF command line arguments to filter their alert rules. -O Obfuscate the IP addresses when in ASCII packet dump mode. This switch changes the IP addresses that get printed to the screen/log file to "xxx.xxx.xxx.xxx". If the homenet address switch is set (-h), only addresses on the homenet will be obfuscated while non- homenet IPs will be left visible. Perfect for posting to your favorite security mailing list! -p Turn off promiscuous mode sniffing. Useful for places where that can screw up your host severely. -q Quiet. Don't show banner and status report. -r <tf> Read the tcpdump-generated file <tf>. This will cause Snort to read and process the file fed to it. This is useful if, for instance, you've got a bunch of Shadow files that you want to process for content, or even if you've got a bunch of reassembled packet fragments which have been written into a tcpdump formatted file. -s Log alert messages to the syslog. On linux boxen, they will appear in /var/log/secure, /var/log/messages on many other platforms. You can change the logging facility by using the syslog output plugin, at which point the -s switch is unneeded. -S <n=v> Set variable name "n" to value "v". This is useful for setting the value of a defined variable name in a Snort rules file to a command line specified value. For instance, if you define a HOME_NET variable name inside of a Snort rules file, you can set this value from it's predefined value at the command line. -t <chroot> Changes Snort's root directory to <chroot> after initialization. Please note that all log/alert filenames are relevant to chroot directory, if chroot is used. -u <uname> Change the UID Snort runs under to <uname> after initialization. -v Be verbose. Prints packets out to the console. There is one big problem with verbose mode: it's still kind of slow. If you are doing IDS work with Snort, don't use the -v switch, you WILL drop packets (not many, but some). -V Show the version number and exit. -x Show an annoying little message whenever you see an annoying IPX packet. -X Dump the raw packet data starting at the link layer. -? Show the usage summary and exit.[*][FILTERS]: The "filters" are standard BPF style filters as seen in tcpdump. Lookat the man page for snort for docs on how to use it properly. In general,you can give it a host, net or protocol to filter on and some logical statementsto tie it together and get the specific traffic you're interested in. For example:[zeus ~]# ./snort -h 192.168.1.0/24 -d -v host 192.168.1.1records the traffic to and from host 192.168.1.1.[zeus ~]# ./snort -h 192.168.1.0/24 -d -v net 192.168.1 and not host 192.168.1.1records all traffic on the 192.168.1.0/24 class C subnet, but not traffic to/from 192.168.1.1. Notice that the command line data specified after the"-h" switch is formated differently from the BPF commands provided at the end of the command line. Sorry for the confusion, but I like the CIDR notation andI'm not rewriting libpcap to make it consistent! Anyway, you get the picture.Mail me if you have trouble with it.You can use the -F switch to read your BPF filters in from a file. [*][RULES]: -------------------------------------------------------------------------NOTE: The "official" rules document these days is available at:http://www.snort.org/snort_rules.html-------------------------------------------------------------------------[*][RUN MODES]Snort has three primary run-time modes: sniffer, packet logger, and networkintrusion detection.Sniffer Mode: When in this mode, Snort reads and decodes all packets from the network and dumps them to the stdout. To put Snort into straight sniffingmode, use the "-v" verbose switch. This will dump the packet headers only.You can see the headers + the packet payloads by specifying the "-v" and "-d"switch. To print a dump of the raw bytes in the entire packet, specify the "-X" switch. If you specify the "-X" switch, the -d switch is overridden. Youcan filter the traffic that shows up in this mode by using BPF filters.Packet Logger Mode: This mode logs the packets to the disk in their decodedASCII format. This mode is activated merely by specifying a directory to logpackets to with the "-l" switch. This will log packets into the specified logging directory in a heirarchy of directories based upon the IP addresses ofthe packets on the wire. To log the packets in terms of the network being monitored (i.e. the directories created under the logging directory are theIP addresses of the remote/non-home hosts) use the "-h" switch. To log the packets in their raw binary format to the disk, use the "-b" switch. Loggingthe packets in this format will allow them to be run through other tools like Ethereal, tcpdump, etc. Packet logger mode can be mixed with sniffer mode switches with no ill effects, however logging performance may be impacted by the slowness of the terminal.Intrusion Detction Mode: Snort enters IDS mode when a configuration file is specified with the "-c" switch. Output formats, rules, preprocessor configuration, etc are all specified in the configuration file. Logger modeis essentially disabled when in IDS mode, but that's ok because you specifywhich packets you want to log when in IDS mode. See the rule document (above) for how to write your own rules. When an alert rule goes off the alert data islogged to the alerting mechanism (be default a file called "alert" in the logging directory) in addition to being logged to the logging mechanism. Thedefault logging directory is /var/log/snort, which can be changed using the "-l" switch. You can use something like "rt" or just "tail -f" it to give a running displayof system alerts. Alerts can also be sent to syslog (and monitored withsomething like swatch), or they can be sent out as WinPopup messages withsmbclient. Check out the "INSTALL" file for information on enabling the SMBalerting option. There are a variety of other alerting and logging mechanismsavailable, check out the snort.conf file for information on enabling them.Note that the system requires the use of the "-l" flag to redirect rules basedlogging to a specific directory. If you don't specify a place for it to go, itdefaults to /var/log/snort.******************************************************************************/* $Id: README,v 1.13 2001/01/28 05:34:54 roesch Exp $ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -