1TIGER(8)                    Administrator Commands                    TIGER(8)
2
3
4

NAME

6       tiger - UNIX Security Checker
7

SYNOPSIS

9       tiger  [-vthqGSH] [-B dir] [-l dir|@host] [-w dir] [-b dir] [-e|-E] [-c
10       config] [-A arch] [-O os] [-R release]
11

DESCRIPTION

13       Tiger is a package consisting of Bourne Shell scripts, C code and  data
14       files  which  is used for checking for security problems on a UNIX sys‐
15       tem.  It scans system configuration files, file systems, and user  con‐
16       figuration  files for possible security problems and reports them.  The
17       command tigexp(8) can be used to obtain explanations  of  the  problems
18       reported by tiger.
19
20       You  can  configure  tiger  by  adjusting  the  Tiger_ variables in the
21       /etc/tiger/tigerrc configuration file. For each available  module  (see
22       MODULES  below)  there is a corresponding variable in the configuration
23       file that determines whether the module is run. All  of  the  variables
24       names start with Tiger_check_ and should be set equal to Y to run, or N
25       to skip. Other configuration variables will  modify  the  behaviour  of
26       some modules, and should be adjusted based on the operating system.
27
28       The  /etc/tiger/tiger.ignore  configuration  file defines a set of mes‐
29       sages that will not be presented in the report even if any of the  mod‐
30       ules generate them.  If the file exists, all the entries (line by line)
31       are used as extended regular expressions that are compared against each
32       message  (notice  that it will introduce some overhead which grows with
33       the size of the file).  For more information on this mechanism read the
34       README.ignore document.
35

OPTIONS

37       The following arguments can be used when calling the program:
38
39       -B tigerdir
40              Specify  the  directory where tiger is installed.  If not speci‐
41              fied, /usr/lib64/tiger is used.
42
43       -l logdir|@logserver
44              Specify the name of the directory where  tiger  will  write  the
45              security report.  This defaults to /var/log/tiger.  The filename
46              of  the  report  will  be  of  the  form  'security.report.host‐
47              name.date.time'.   If  the  directory  begins with a @, the name
48              will be interpreted as a tiger logging server.  Tiger  logging's
49              server  is currently a server that listens in port (tcp) 5353 on
50              a remote host.  The tiger process will just send the results  to
51              that server using a telnet connection.
52
53       -w workdir
54              Specify  a  directory  to  use for creating scratch files.  This
55              defaults to /var/run/tiger/work.
56
57       -b bindir
58              Specify the directory which contains (or will contain) the bina‐
59              ries  generated  from the C modules.  If the systems directories
60              contain all the binaries, they will be used directly from there.
61              If  not,  then  if  bindir  contains the binaries, these will be
62              used.  If none are found in either place, then an  attempt  will
63              be  made  to compile the C code and install the executables into
64              bindir.
65
66       -c tigerrc
67              Specify an alternate name for the  tigerrc  control  file.   The
68              default is '/etc/tiger/tigerrc'.
69
70       -e     This  option  will  cause  explanations  to be inserted into the
71              security  report  following  each  message.   This  can  greatly
72              increase  the  size  of  the  report, as explanations may appear
73              repeatedly.
74
75       -E     This option indicates that a separate explanation report  should
76              be  created,  with  explanations  for  each type of message only
77              appearing once.  The filename of the explanation report will  be
78              of the form 'explain.report.hostname.date.time'.
79
80       -G     Generate  the  signatures  (MD5 hashes and file permissions) for
81              system binary files.
82
83       -H     This option will format the  report  into  HTML  creating  local
84              links to the problem descriptions.
85
86       -S     This option indicates that a surface level check of the configu‐
87              ration files of any diskless  clients  served  by  this  machine
88              should  be  checked at the same time.  The checks will not be as
89              in depth as they would be if run on the client itself.
90
91       -q     Suppress messages to be as quiet as possible, only security mes‐
92              sages will be shown.
93
94       -A arch
95              This option overrides the default value obtained for the current
96              architecture detected by the internal configuration engine to  a
97              value defined by the user.
98
99       -O os  This option overrides the default value obtained for the current
100              operating system detected by the internal  configuration  engine
101              to a value defined by the user.
102
103       -R release
104              This option overrides the default value obtained for the current
105              operating system release detected by the internal  configuration
106              engine to a value defined by the user.
107
108       Notice  that  changing  the  real  values  for the operating system and
109       architecture Tiger is running in might  result  in  scripts  being  run
110       which  are not appropiate to it, and, as a consequence, unexpected (and
111       potentially dangerous) errors might be generated. When  executed  Tiger
112       will show which operating system, release and architecture thinks it is
113       running in.
114

MODULES

116       Tiger is composed of a series of modules. Each of these  modules  check
117       specific  security  issues related to UNIX systems.  The framework pro‐
118       vided by Tiger allows the provision of both generic modules  and  those
119       specific  for the operating system the software runs in. Modules can be
120       executed stand alone, from cron or through  the  tiger  program  (which
121       will execute all those available).
122
123       If  you  want  to  write  additional  modules  for your system read the
124       README.writemodules document.
125
126       Tiger currently provides the following modules:
127
128       check_accounts
129              Checks the accounts provided in the system, looking for disabled
130              accounts with cron, rhosts, .forward, and valid shells.
131
132       check_aliases
133              Performs a check for mail aliases and improper configuration.
134
135       check_anonftp
136              Determines if the anonymous FTP service is properly configured.
137
138       check_cron
139              Validates the cron entries in the system.
140
141       check_embedded
142              Determines if embedded pathnames are configured properly.
143
144       check_exports
145              Analyses configuration files for NFS exported filesystems to see
146              if access is properly restricted.
147
148       check_group
149              Checks the UNIX groups available in the system, looking for con‐
150              flicts and improper entries.
151
152       check_inetd
153              Checks  the  inetd configuration file: compares against services
154              definition, valid directory  paths,  non-existent  binaries  and
155              active services.
156
157       check_known
158              Looks  for  known  intrusion  signs including backdoors and mail
159              spools.
160
161       check_netrc
162              Checks if users's netrc files are insecurely configured.
163
164       check_nisplus
165              Looks for wrong configuration in the NIS+ entries.
166
167       check_passwd
168              Checks the UNIX users available in the system, looking for  con‐
169              flicts and improper entries.
170
171       check_path
172              Validates  the  binaries in user's PATHs as well as PATH defini‐
173              tions used by scripts in order  to  determine  insecure  defini‐
174              tions.
175
176       check_perms
177              Check filepermissions and inconsistencies.
178
179       check_printcap
180              Analyses the configuration for the printer control file.
181
182       check_rhosts
183              Checks  rhosts  files  in  order  to see if user's configuration
184              leaves the system open to attack.
185
186       check_sendmail
187              Checks sendmail configuration files.  check_signatures  Compares
188              binary  files signatures against those stored in the local data‐
189              base (provided with the program).
190
191       check_system
192              This module calls the operating system's specific modules avail‐
193              able at /usr/lib/tiger/systems/.
194
195       check_apache
196              Checks  the  Apache  configuration  file  and reports on generic
197              issues which might introduce exposures or vulnerabilities in the
198              system.
199
200       check_devices
201              Checks  for  devices's  permissions,  warning about devices that
202              have world permissions.
203
204       check_exrc
205              Analyses .exrc files that are not in  user's  home  directories.
206              The vi command will look for the existence of such a file in the
207              current directory, and so  may  inadvertently  perform  commands
208              that  can  compromise your system's security when starting vi or
209              ex.
210
211       check_finddeleted
212              Checks if deleted files are being used by  any  process  in  the
213              current system. This might be an indication of intrusion (a user
214              executing processes and then deleting its files) or of unpatched
215              servers  (which,  if not restarted use old library files and are
216              still vulnerable).
217
218       check_ftpusers
219              Analyses the system's /etc/ftpusers and determines if the admin‐
220              istrative users are in that file.
221
222       check_issue
223              Checks  the  /etc/issue  and /etc/issue.net file to determine if
224              they contain the appropriate content (this  is  defined  in  the
225              ISSUEFILE and ISSUENETFILE).
226
227       check_logfiles
228              Checks  for  the existence of log files (wtmp, btmp, lastlog and
229              utmp).  It will also check for proper umask settings.
230
231       check_lilo
232              Analyses configuration files for  lilo  and  grub  boot  loaders
233              (Linux-specific).
234
235       check_listeningprocs
236              Checks  for  processes  listening on TCP/IP sockets (servers) in
237              the system as well as users running them. Will warn if the  user
238              running  a  server  is not an authorised one or if the server is
239              listening on all available interfaces.
240
241       check_passwdformat
242              Checks the format of the /etc/passwd file in order to  determine
243              inconsistencies which indicate an intrusion or misconfiguration.
244
245       check_patches
246              Checks  if  patches are available for the system (i.e. new pack‐
247              ages).  It will use autorpm or apt-get to check  this  (so  this
248              tools need to be properly configured). This check is specific to
249              Linux (RedHat or Debian).
250
251       check_root
252              Checks if remote root login is allowed to the local system.
253
254       check_rootdir
255              Checks the permissions for the root directory.
256
257       check_rootkit
258              Tries to find systems which have been rootkited, it does  so  by
259              looking  for  trojaned ls and find commands.  It also includes a
260              wrapper to run the chkrootkit program and format the results  in
261              Tiger's message format.
262
263       check_single
264              Checks  if the system is properly configured to disallow single-
265              user access. This check is specific to Linux.
266
267       check_release
268              Analyses the version of the operating system and  determines  if
269              it  is  too out of date. This check is specific to Linux (RedHat
270              or Debian).
271
272       check_runprocs
273              This module will check if the processes  configured  in  tigerrc
274              are  running currently in the system. If any of the processes is
275              not running, Tiger will warn the administrator (this acts  as  a
276              lightweight software watchdog)
277
278       check_services
279              Check  which  services  are configured in the system (usually in
280              /etc/services) versus the ones that should be configured (in the
281              provided services file)
282
283       check_tcpd
284              Tests  for  the  existence  of tcp-wrappers and changes in their
285              configuration it also  determines  which  services  are  running
286              wrapped in tcp-wrappers.
287
288       check_umask
289              Check for umask setting in configuration files.
290
291       check_xinetd
292              Checks which xinetd services are enabled or disabled.
293
294       crack_run
295              Runs a local installation of the Crack program which can be used
296              to determine if local user passwords are easy (or not) to guess.
297
298       tripwire_run aide_run integrit_run
299              Wrappers for a number  of  integrity  checkers,  these  programs
300              enhance the support of Tiger for MD5 and SHA-1 binary signatures
301              and file system permission  checks  (implemented  with  the  the
302              check_perms  and check_signatures scripts).  You should consider
303              installing any  of  these  three  programs  (Tripwire,  Aide  or
304              Integrit)  and use read-only locations (such as CD-ROM) to store
305              the hashes of the system.
306
307       deb_checkadvisories
308              This module checks against a  list  of  stored  Debian  Security
309              Advisories  in  order  to  see  if  the  system  has any package
310              installed whose version might be subject to any security vulner‐
311              ability (Debian-specific).
312
313       deb_checkmd5sums
314              Compares  the  MD5  sums  of binary files against those provided
315              after installation.  Changes in these files might be an  indica‐
316              tion of a compromised system (Debian-specific).
317
318       deb_nopackfiles
319              Looks  for  files installed in the system's directories that are
320              not provided by any installed Debian packages (Debian-specific).
321

FILES

323       /etc/tiger/tigerrc
324              Configuration file for the Tiger tool.
325
326       /etc/tiger/cronrc
327              Configuration file for the Tigercron tool.
328
329       /var/log/tiger
330              Location of the log messages generated by Tiger when run through
331              cron.
332
333       /var/run/tiger/work
334              Working  directory  used  by  Tiger  scripts to create temporary
335              files.
336
337       /etc/tiger/tiger.ignore
338              Configuration file that defines which messages generated by mod‐
339              ules  will  be ignored by Tiger and will not be presented in the
340              final report.
341

SEE ALSO

343       tigexp(8)
344
345       There are also a number of README files that describe in detail the be‐
346       haviour of Tiger and how it can be used to setup a host-based intrusion
347       detection system. These can be  found  in  the  top  directory  of  the
348       sources  or  in  /usr/lib64/tiger  once  it is installed (in Debian the
349       location of the full documentation set is /usr/share/doc/tiger/)
350

BUGS

352       There are a lot more things to check.
353
354       Some places in the package are not shell meta-character or  white-space
355       safe.
356
357       You   can   report   or   read   known   bugs   at   the  http://savan
358       nah.nongnu.org/projects/tiger webpage.
359
360       For       Debian-specific       (known)       bugs       read       the
361       /usr/share/doc/tiger/README.Debian        document        or        the
362       http://bugs.debian.org/tiger webpage.
363

AUTHOR

365       Tiger was originally developed by a team of the  Texas  A&M  University
366       Supercomputer  Center,  as  of September 1993, the development done via
367       the Network Group, Computing & Information Services.
368
369       This software was written originally by Douglas Lee  Schales,  Dave  K.
370       Hess, Khalid Warraich, and Dave R. Safford (circa 1993).
371
372       A  lot  of  changes  were  introduced by the ARSC team (a.k.a. the TARA
373       team) Liam  Forbes  <lforbes  at  arsc.edu>,  Nathan  Bills  <bills  AT
374       arsc.edu>  and Mike Kienenberger <mkienenb at arsc.edu>, including sup‐
375       port for quite a number of operating systems.
376
377       Current upsteam maintenance of Tiger is being done by Javier Fernandez-
378       Sanguino      Peña      and      coordinated      at      http://savan
379       nah.nongnu.org/projects/tiger
380
381       The adaptation for the GNU/Linux operating system was made by Robert L.
382       Ziegler <rlz at mediaone.net>
383
384       The  modifications  for the Debian GNU/Linux operating system have been
385       made by Javier Fernandez-Sanguino Peña <jfs at computer.org>, including
386       a  number  of checks for the GNU/Linux operating systems (check_listen‐
387       ingprocs)  and   some   specific   for   Debian   (deb_checkadvisories,
388       deb_checkmd5sums and deb_nopackfiles).
389
390
391
392Security                        12 August 2003                        TIGER(8)
Impressum