home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / unix / volume26 / tripwire / part02 < prev    next >
Encoding:
Text File  |  1993-04-19  |  65.0 KB  |  1,722 lines

  1. Newsgroups: comp.sources.unix
  2. From: spaf@cs.purdue.edu (Gene Spafford)
  3. Subject: v26i174: tripwire - security integrity monitor, Part02/08
  4. Sender: unix-sources-moderator@vix.com
  5. Approved: paul@vix.com
  6.  
  7. Submitted-By: spaf@cs.purdue.edu (Gene Spafford)
  8. Posting-Number: Volume 26, Issue 174
  9. Archive-Name: tripwire/part02
  10.  
  11. #! /bin/sh
  12. # This is a shell archive.  Remove anything before this line, then unpack
  13. # it by saving it into a file and typing "sh file".  To overwrite existing
  14. # files, type "sh file -c".  You can also feed this as standard input via
  15. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  16. # will see the following message at the end:
  17. #        "End of archive 2 (of 8)."
  18. # Contents:  tripwire-1.0 tripwire-1.0/contrib tripwire-1.0/include
  19. #   tripwire-1.0/sigs tripwire-1.0/sigs/snefru tripwire-1.0/src
  20. #   tripwire-1.0/README tripwire-1.0/contrib/README.ASET
  21. #   tripwire-1.0/src/sigfetch.c tripwire-1.0/include/patchlevel.h
  22. #   tripwire-1.0/sigs/snefru/snefru.h
  23. # Wrapped by spaf@uther.cs.purdue.edu on Tue Nov  3 16:31:55 1992
  24. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  25. if test ! -d 'tripwire-1.0' ; then
  26.     echo shar: Creating directory \"'tripwire-1.0'\"
  27.     mkdir 'tripwire-1.0'
  28. fi
  29. if test ! -d 'tripwire-1.0/contrib' ; then
  30.     echo shar: Creating directory \"'tripwire-1.0/contrib'\"
  31.     mkdir 'tripwire-1.0/contrib'
  32. fi
  33. if test ! -d 'tripwire-1.0/include' ; then
  34.     echo shar: Creating directory \"'tripwire-1.0/include'\"
  35.     mkdir 'tripwire-1.0/include'
  36. fi
  37. if test ! -d 'tripwire-1.0/sigs' ; then
  38.     echo shar: Creating directory \"'tripwire-1.0/sigs'\"
  39.     mkdir 'tripwire-1.0/sigs'
  40. fi
  41. if test ! -d 'tripwire-1.0/sigs/snefru' ; then
  42.     echo shar: Creating directory \"'tripwire-1.0/sigs/snefru'\"
  43.     mkdir 'tripwire-1.0/sigs/snefru'
  44. fi
  45. if test ! -d 'tripwire-1.0/src' ; then
  46.     echo shar: Creating directory \"'tripwire-1.0/src'\"
  47.     mkdir 'tripwire-1.0/src'
  48. fi
  49. if test -f 'tripwire-1.0/README' -a "${1}" != "-c" ; then 
  50.   echo shar: Will not clobber existing file \"'tripwire-1.0/README'\"
  51. else
  52. echo shar: Extracting \"'tripwire-1.0/README'\" \(29570 characters\)
  53. sed "s/^X//" >'tripwire-1.0/README' <<'END_OF_FILE'
  54. X## $Id: README,v 1.8 92/11/03 13:34:49 genek Exp $
  55. X##
  56. X## README for Tripwire
  57. X##
  58. X## Gene Kim  & Gene Spafford
  59. X## The COAST Project
  60. X## Department of Computer Sciences
  61. X## Purdue University
  62. X##
  63. X
  64. X##  All files in the distribution of Tripwire are Copyright 1992 by the
  65. X##  Purdue Research Foundation of Purdue University.  All rights
  66. X##  reserved.  Some individual files in this distribution may be covered
  67. X##  by other copyrights, as noted in their embedded comments.
  68. X##  
  69. X##  Redistribution and use in source and binary forms are permitted
  70. X##  provided that this entire copyright notice is duplicated in all such
  71. X##  copies, and that any documentation, announcements, and other
  72. X##  materials related to such distribution and use acknowledge that the
  73. X##  software was developed at Purdue University, W. Lafayette, IN by
  74. X##  Gene Kim and Eugene Spafford.  No charge, other than an "at-cost"
  75. X##  distribution fee, may be charged for copies, derivations, or
  76. X##  distributions of this material without the express written consent
  77. X##  of the copyright holder.  Neither the name of the University nor the
  78. X##  names of the authors may be used to endorse or promote products
  79. X##  derived from this material without specific prior written
  80. X##  permission.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY
  81. X##  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE
  82. X##  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ANY PARTICULAR
  83. X##  PURPOSE.
  84. X
  85. X    This README file serves as a quick-and-dirty primer on Tripwire.
  86. XA paper that fully describes the design and rationale was not
  87. Xcompleted in time to be included in this first Tripwire release.  The
  88. Xdesign document will be released later as a technical report, and
  89. Xpossibly as a conference or journal paper.  It will also be included
  90. Xin later releases of Tripwire.  This document will be referenced
  91. Xthroughout the Tripwire distribution as the Tripwire design document
  92. Xor the comprehensive Tripwire paper.
  93. X
  94. X    This README file contains information needed to build, test,
  95. Xand run Tripwire.  A table of contents follow:
  96. X
  97. X
  98. X        1.0.  Background
  99. X        1.1.  Goals of Tripwire
  100. X        2.0.  How to build Tripwire
  101. X        2.1.  Common Tripwire compilation problems
  102. X        2.2.  The sigfetch utility
  103. X        3.0.  Getting Tripwire up and running
  104. X        3.1.  Creating your tw.config file
  105. X        3.2.  A caveat about your Tripwire database
  106. X        3.2.  Running Tripwire as an integrity checker
  107. X        3.3.  Keeping your database up-to-date
  108. X        3.4.  A quick-checking mode
  109. X        4.0.  Some Tripwire scaling hints for using Tripwire 
  110. X            in large sites
  111. X        4.1.  The tw.config grammar
  112. X        4.2.  How you might use these directives
  113. X        5.0.  Notes on signature routines
  114. X        5.1.  Performance vs. security
  115. X        6.0.  Signature routines
  116. X        6.1.  MD5
  117. X        6.2.  Snefru
  118. X        6.3.  CRC-32
  119. X        6.4.  CRC-16
  120. X        6.5.  MD4
  121. X        6.6.  MD2
  122. X        6.7.  null signature
  123. X        7.0.  Feedback and bug-reports
  124. X        8.0.  User contributions
  125. X        9.0.  Acknowledgements
  126. X
  127. X
  128. X1.0.  Background
  129. X================
  130. X
  131. X    With the advent of increasingly sophisticated and subtle
  132. Xaccount break-ins on Unix systems, the need for tools to aid in
  133. Xthe detection of unauthorized modification of files becomes
  134. Xclear.  Tripwire is a tool that aids system administrators and
  135. Xusers in monitoring a designated set of files for any changes.
  136. XUsed with system files on a regular (e.g., daily) basis, Tripwire
  137. Xcan notify system administrators of corrupted or tampered files,
  138. Xso damage control measures can be taken in a timely manner.
  139. X
  140. X1.1.  Goals of Tripwire
  141. X=======================
  142. X
  143. X    Tripwire is a file integrity checker, a utility that compares
  144. Xa designated set of files against information stored in a
  145. Xpreviously generated database.  Any differences are flagged and
  146. Xlogged, and optionally, a user is notified through mail.  When
  147. Xrun against system files on a regular basis, any changes in
  148. Xcritical system files will be spotted -- and appropriate damage
  149. Xcontrol measures can be taken immediately.  With Tripwire, system
  150. Xadministrators can conclude with a high degree of certainty that
  151. Xa given set of files remain free of unauthorized
  152. Xmodifications if Tripwire reports no changes.
  153. X
  154. X
  155. X2.0.  How to build Tripwire
  156. X===========================
  157. X
  158. X    As of this writing, Tripwire has run successfully on (at least)
  159. XBSD, OSF/1, Mach, and late System V variants of Unix.  Tripwire was
  160. Xbuilt and tested on a wide variety of Unix variants.
  161. X
  162. X    The file 'Ported' contains a list of platforms and operating
  163. Xsystems where Tripwire has already been successfully ported during
  164. Xthe six-week beta test period.  If you find your system in the
  165. Xlist, note the system settings that were used to build Tripwire.
  166. X
  167. X    Second, look through the Makefile and make sure that the C
  168. Xcompiler and all flag settings are reasonable for your
  169. Xconfiguration.  Most of the potentially tricky system settings
  170. Xshould be listed in the
  171. X'Ported' file.
  172. X
  173. X    Next, look in the './configs' directory to find a predefined
  174. X'conf-<os>.h' file that matches closest to your operating system.
  175. XNote this file, because you will be inserting this filename in
  176. Xthe './include/config.h' file.  If no such file exists, pick one
  177. X"near" your system type and modify appropriately (then mail it back to
  178. Xus for a future release).
  179. X
  180. X    Now that you have chosen your operating system header file, edit
  181. Xthe './include/config.h' file to tailor Tripwire to your system.
  182. XInclude the name of the predefined header file closest to your system
  183. Xat the appropriate line in config.h
  184. X
  185. X    Paths and names of Tripwire configuration files are also set
  186. Xin the config.h file.  Make sure you note the locations that
  187. XTripwire looks for its configuration and database files; change them
  188. Xfor your system, as appropriate.
  189. X
  190. X    NOTE: We *strongly* urge you to locate the Tripwire
  191. Xconfiguration files on a disk that can be made read-only with a
  192. Xhardware setting.  This will prevent the files from being altered
  193. Xby an attacker.  The run-time version of Tripwire should be
  194. Xlocated in the same place.  If you are unable to mark a disk (or
  195. Xdiskette) as read-only, you might also consider putting it on a
  196. Xremote partition of a more secure machine, and import it
  197. Xread-only.  See the design document for the rationale behind this
  198. Xnote if the concept is not obvious.
  199. X
  200. X    Last, look in the './configs' directory again to find a tw.config
  201. Xfile that matches your operating system.  These files were
  202. Xcustom-tailored to match the file layouts of various vendor supplied
  203. Xoperating system.  If no file in this subdirectory matches your
  204. Xsystem, choose the one that is closest in nature (e.g., BSD4.3 or
  205. XSysV.4).  Edit this file to include additional files you want to
  206. Xmonitor (e.g., local bins and critical databases), to correct paths if
  207. Xyou have moved things or if they are mounted from a remote location
  208. X(check them only on the server!), and to exclude locally-active files
  209. Xfrom the check.  You should probably add the Tripwire binary itself to
  210. Xthis file.  See the next section for further details.
  211. X
  212. X    After you have customized your tw.config file, copy it to the
  213. Xlocation that you specified in your config.h file.
  214. X
  215. X    Next, simply type 'make' at the top level.  Note that all
  216. XMakefiles in the subdirectories are driven by the top-level Makefile.
  217. X(i.e., typing 'make' in the ./src directory will probably not work.)
  218. X
  219. X2.1.  Common Tripwire compilation problems
  220. X==========================================
  221. X
  222. X    If no file in this subdirectory matches your system, choose
  223. Xthe one that is closest in nature (e.g., BSD4.3 or SysV.4).  Edit
  224. Xthis file to include additional files you want to monitor (e.g.,
  225. Xlocal bins and critical databases), to correct paths if you have
  226. Xmoved things or if they are mounted from a remote location (check
  227. Xthem only on the server!), and to exclude locally-active files
  228. Xfrom the check.  You should probably add the Tripwire binary
  229. Xitself to this file.  See the next section for further details.
  230. X
  231. X    After you have customized your tw.config file, copy it to the
  232. Xlocation that you specified in your config.h file.
  233. X
  234. X    Next, simply type 'make' at the top level.  Note that all
  235. XMakefiles in the subdirectories are driven by the top-level
  236. XMakefile.  (i.e., typing 'make' in the ./src directory will not
  237. Xwork.)
  238. X
  239. X2.1.  Common Tripwire compilation problems
  240. X==========================================
  241. X
  242. X    Tripwire was originally written using ANSI C.  However,
  243. XTripwire now compiles with K&R, too.  All of the prototypes
  244. Xremain embedded between "#ifdef __STDC__" directives.  Sadly,
  245. Xcompiling under ANSI is sometimes noisier than with K&R.
  246. XTherefore, go ahead and compile with K&R unless religion dictates
  247. XANSI.  (The code lints completely clean, excepting the malloc()
  248. Xand exit() return values.)
  249. X
  250. X    Common compilation trouble-spots are the dirent(S5)/direct(BSD) 
  251. Xfunkiness and #defines that changed for POSIX compliance.
  252. X
  253. X2.2.  The sigfetch utility
  254. X==========================
  255. X
  256. X    The sigfetch utility is provided so users can get signatures
  257. Xof files without having to run Tripwire.  The syntax of sigfetch
  258. Xis simple.  
  259. X
  260. X    sigfetch [-0123456789aqv] [ file ... ]
  261. X
  262. X    By default, sigfetch prints out all ten signatures.  However,
  263. Xthe signatures can be printed selectively by specifying the
  264. Xsignature number on the command line.
  265. X
  266. X3.0.  Getting Tripwire up and running
  267. X=====================================
  268. X
  269. X    Tripwire runs in either of two modes: Database Generation
  270. Xmode or Integrity Checking mode.  In order to run Integrity
  271. XChecking, Tripwire must have a database to compare against.  To
  272. Xdo that, you must first specify the set of files for Tripwire to
  273. Xmonitor.  This list is stored in 'tw.config'.
  274. X
  275. X3.1.  Creating your tw.config file
  276. X==================================
  277. X
  278. X    Edit your 'tw.config' file, or whatever filename you defined for
  279. Xthe Tripwire config file, and add all the directories that contain
  280. Xfiles that you want monitored.  The format of the config file is
  281. Xdescribed in its header and in the man page.  Pay especially close
  282. Xattention to the ignore-flags and omit-lists, which can significantly
  283. Xreduce the amount of uninteresting output generated by Tripwire.  For
  284. Xexample, you will probably want to omit files like mount tables that
  285. Xare constantly changed by the operating system.
  286. X
  287. X    Next, run Tripwire with 'tripwire -initialize'.  This will create
  288. Xa file called 'tw.db_[hostname]' in the directory you specified to
  289. Xhold your databases (where [hostname] will be replaced with your
  290. Xmachine hostname).
  291. X
  292. X3.2.  A caveat about your Tripwire database
  293. X===========================================
  294. X
  295. X    NOTE: Tripwire will detect changes made to files from this
  296. Xpoint on.  You *must* be certain that the system on which you
  297. Xgenerate the initial database is clean, however --- Tripwire
  298. Xcannot detect unauthorized modifications that have already been
  299. Xmade.  One way to do this would be to take the machine to
  300. Xsingle-user mode, reinstall all system binaries, and run Tripwire
  301. Xin initialization mode before returning to multi-user operation.
  302. X
  303. X    This database must be moved someplace where it cannot be
  304. Xmodified.  Because data from Tripwire is only as trustworthy as
  305. Xits database, choose this with care.  We recommend placing all
  306. Xthe system databases on a read-only  disk, or exporting it
  307. Xvia read-only NFS from a "secure-server."  (This pathname is
  308. Xhardcoded into Tripwire.  Any time you change the pathname to the
  309. Xdatabase repository, you must recompile Tripwire.  This prevents
  310. Xa malicious intruder from spoofing Tripwire into giving a false
  311. X"okay" message.)
  312. X
  313. X    We also recommend that you make a hardcopy printout of the
  314. Xdatabase contents right away.  In the event that you become
  315. Xsuspicious of the integrity of the database, you will be able to
  316. Xmanually compare information against this hardcopy.  We have yet
  317. Xto hear of a way for  "crackers" to alter an old piece of
  318. Xprintout made before they penetrated the system!
  319. X
  320. X3.3.  Testing Tripwire
  321. X======================
  322. X
  323. X    Tripwire includes a script-driven test suite that checks the
  324. Xtop-level build directory against the distribution package.  
  325. X
  326. X    In the ./tests directory, there is a Tripwire database of the
  327. Xentire Tripwire source distribution and a tw.config file.  The
  328. Xtest script automatically converts the pathnames in these
  329. XTripwire files to match those of your system.  After converting
  330. Xthe files, it then runs Tripwire in Integrity Checking mode.
  331. X
  332. X    To run the test, simply type 'make test' at the top level.
  333. XThis will invoke the script, and if all goes well, the output of
  334. XTripwire matches the expected values that the script provides.
  335. X
  336. X
  337. X3.4.  Running Tripwire as an integrity checker
  338. X==============================================
  339. X
  340. X    Once you have your database set up, you can run Tripwire
  341. Xin Integrity Checking mode by 'tripwire'.  
  342. X
  343. X3.5.  Keeping your database up-to-date
  344. X======================================
  345. X
  346. X    A common setup for running Tripwire would mail the system
  347. Xadministrator any output that it generates.  However, some files on
  348. Xyour system may change during normal operation, and this necessitates
  349. Xupdate of the Tripwire database.
  350. X
  351. X    Tripwire supports incremental updates of its database on a
  352. Xper-file/directory or tw.config entry basis.  Tripwire stores
  353. Xinformation in the database so it can associate any file in the
  354. Xdatabase with the tw.config entry that generated it when the
  355. Xdatabase was created.
  356. X
  357. X    Therefore, if a single file has changed, you can:
  358. X
  359. X    tripwire -update /etc/newly.installed.file
  360. X
  361. X    Or, if an entire set of files that made up an entry in
  362. Xthe tw.config file changed, you can:
  363. X
  364. X    tripwire -update /usr/local/bin/Local_Package_Dir
  365. X
  366. X    In either case, Tripwire regenerates the database entries
  367. Xfor every specified file.  A backup of the old database is
  368. Xcreated in the ./databases directory.
  369. X
  370. X3.6.  A quick-checking mode
  371. X===========================
  372. X
  373. X    Tripwire allows you to selectively skip certain signatures at
  374. Xrun-time through a command-line option.  For example, if you wish
  375. Xto run Tripwire on an hourly basis, even performing only MD5
  376. Xchecks might be computationally prohibitive.  For this
  377. Xapplication, checking only the CRC32 signature might be
  378. Xdesirable.  To do this, assuming that only MD5, Snefru, and CRC32
  379. Xwere used when the database was initialized, you would type:
  380. X
  381. X    tripwire -i 1 -i 2
  382. X
  383. X   This tells tripwire to ignore signature 1 and signature 2.
  384. XFurthermore, for daily Tripwire runs, you could specify using
  385. Xonly MD5 and CRC32.  Finally, for weekly runs, you could run
  386. XTripwire with all three signatures.
  387. X
  388. X
  389. X4.0.  Some Tripwire scaling hints for using Tripwire in large sites
  390. X===================================================================
  391. X
  392. X    The tw.config.5 manual page describes in detail the syntax
  393. Xsupported by the tw.config file.  Tripwire includes features that
  394. Xoffer similar functionality to the C-preprocessor, and offer other
  395. Xdirectives that assist in the use of Tripwire at sites consisting of
  396. Xhundreds of workstations with local disk.
  397. X
  398. X4.1.  The tw.config grammar
  399. X===========================
  400. X
  401. X    These commands are briefly described below:
  402. X
  403. X    @@define VAR VALUE
  404. X    @@undef VAR
  405. X
  406. X    @@ifhost HOSTNAME
  407. X    @@ifnhost HOSTNAME
  408. X    @@ifdef VAR
  409. X    @@ifndef VAR
  410. X    @@else
  411. X    @@endif
  412. X
  413. X    @@include FILENAME
  414. X
  415. X    Furthermore, the tw.config grammar also supports logical
  416. Xexpressions.  For example, you could have something like this
  417. Xin your tw.config file:
  418. X
  419. X    @@ifhost spam.cc.purdue.edu || weiner.cc.purdue.edu
  420. X    ...entries...
  421. X    @@endif
  422. X
  423. X    Besides the obvious cpp-like functionality, you can use
  424. X@@define to create strings that are interpreted at run-time.
  425. XFor example:
  426. X
  427. X    @@ifhost mentor.cc.purdue.edu
  428. X    @@ define TEMPLATE_S    +pinug-cas0123456789
  429. X    @@else
  430. X    @@ define TEMPLATE_S    +pinug012-cas3456789
  431. X    @@endif
  432. X
  433. X    /etc/tw.loginfo        @@TEMPLATE_S
  434. X
  435. X4.2.  How you might use these directives
  436. X========================================
  437. X
  438. X    Because Tripwire allows run-time interpretation of the
  439. Xtw.config file, it becomes possible for many different hosts to
  440. Xshare the same tw.config file.  This allows the maintenance of
  441. XTripwire configuration files to still be manageable in a large,
  442. Xheterogeneous environment.  Although each host must still have
  443. Xdifferent database file, this has few consequences except for
  444. Xdisk space.
  445. X
  446. X5.0.  Notes on signature routines
  447. X=================================
  448. X
  449. X    The RSA Data Security, Inc. MD5, MD4, and MD2 Message
  450. XDigesting Algorithm, and Snefru, the Xerox Secure Hash Function,
  451. Xcode have been changed to eliminate big-endian and little-endian
  452. Xspecific routines.  These changes have been sent back to the
  453. Xauthors, but we are not aware of any buy-backs yet.  Until then,
  454. Xthere will remain some differences between the code in this
  455. Xpackage and their respective virgin distributions.
  456. X
  457. X5.1.  Performance vs. security
  458. X==============================
  459. X
  460. X    Normally, only one checksum per file would be enough to
  461. Xdetect changes.  For purposes of speed, an easy to calculate
  462. Xchecksum would be preferred.  However, most easy-to-calculate
  463. Xsignatures are also easy to defeat if a determined attacker
  464. Xwished to do so (see the chart in the design document to see how
  465. Xeasy this is to do with random comparisons).
  466. X
  467. X    Tripwire includes four very difficult-to-forge signature
  468. Xalgorithms, as well as two more conventional CRC routines.  Using
  469. Xthe default setup of recording two signatures (MD5 and Snefru)
  470. Xfor each database entry gives very, very strong assurance that a
  471. Xfile has not been tampered with.  For tampering to have
  472. Xsucceeded, the attacker would have had to have changed the file
  473. Xand added appropriate padding characters to recreate *both*
  474. Xchecksums without also altering the size of the file.  To do this
  475. Xat random might not even be possible with the MD5 and Snefru
  476. Xchecksums used.  Those two algorithms have not been exhaustively
  477. Xanalyzed, but both are known to be fairly strong.  It is possible
  478. Xthat there exists no pair of inputs that give the same output for
  479. Xboth algorithms at once.
  480. X
  481. X    This added assurance is at a heavy price, however.  The two
  482. Xalgorithms, and snefru in particular, are expensive to
  483. Xcalculate.  To run the MD5 and Snefru algorithms against every
  484. Xfile is likely to be overkill for almost all systems (unless you
  485. Xhave cpu cycles to spare!).  Both checksums should be run over
  486. Xonly the most critical files...like the Tripwire database and
  487. Xprogram, and perhaps each setuid and setgid file on your system.
  488. XAll other files can be checked with MD5 alone for much faster
  489. Xoperation and a high level of assurance. The task of altering a
  490. Xfile and recreating the original MD5 checksum is also very
  491. Xdifficult, and it is unlikely that any but the most determined,
  492. Xsophisticated, and well-equipped attacker would be able to do it
  493. Xin finite time.
  494. X
  495. X    To decrease the execution run-times of Tripwire, consider
  496. Xmodifying your tripwire.config entries to ignore the Snefru
  497. X(signature 2) attribute on files that do not need such stringent
  498. Xmonitoring.  This will skip the computationally-expensive Snefru
  499. Xsignature collection entirely.  Balancing this equation of
  500. Xsecurity vs.  speed is a decision best made by the administrator,
  501. Xmost closely tailored to his/her site needs.
  502. X
  503. X    For the extremely paranoid, Tripwire includes the MD2 and MD4
  504. Xsignature algorithms, as well as the 16 and 32-bit CRC algorithms
  505. Xin its arsenal.  Be forewarned, however, that MD2 is an order 
  506. Xof magnitude slower than even Snefru, and probably guarantees no 
  507. Xgreater integrity checking.  We include all these routines, however,
  508. Xso you can pick what you feel to be most appropriate for your site.
  509. X
  510. X    You may wish to add other routines as checksum/signature
  511. Xgenerators.  For instance, if you have a fast DES implementation
  512. X(including chip-based generation), you might wish to encrypt the file
  513. Xusing CBC mode and some fixed key, saving the final 128 bits of output
  514. Xas the signature.  The configuration file routines have several
  515. Xsignature flags that are currently bound to a null function, so there
  516. Xis room for this expansion if you wish.
  517. X
  518. X    Clearly, with six different signature algorithms at your
  519. Xdisposal, Tripwire offers considerable flexibility in ensuring
  520. Xdata security.  Tripwire makes maintaining a trivial CRC
  521. Xdatabase equally easy to administer and check as a full (but
  522. Xperhaps less practical) six-signature database.
  523. X
  524. X    The following section describes each of the six signature
  525. Xalgorithms.
  526. X
  527. X6.0.  Signature routines
  528. X========================
  529. X
  530. X    Tripwire ships with seven signature routines.  This section
  531. Xbriefly describes each signature routine.  This is by no means an
  532. Xauthoratative list, but it does attempt to give some background
  533. Xon each of the signature routines provided:
  534. X
  535. X    MD5, Snefru, MD4, and MD2 are all examples of cryptographic
  536. Xchecksum algorithms (also known as message digesting algorithms,
  537. Xone-way hash functions, fingerprinting routines, or manipulation
  538. Xdetection codes).  They employ cryptographic techniques to ensure
  539. Xthat any small change in the input stream results in immediate
  540. Xand widely diverging output.  This way, even a small change in
  541. Xthe input results in large change in the output.  Therefore, any
  542. Xunauthorized, malicious, or accidental change will be evident.
  543. XFurthermore, because these algorithms use a 128-bit signature,
  544. Xusing a brute-force attack to introduce a deliberate change in
  545. Xthe file while trying to keep the same signature becomes a
  546. Xcomputationally infeasible task.
  547. X
  548. X    The CRC algorithms, on the other hand, use simple polynomial
  549. Xdivision to generate the checksums.  While this technique is very
  550. Xfast, the mathematics of this technique is well-understood.
  551. XAdditionally, since the signature space is so small (usually 16
  552. Xor 32 bits), a brute-force search for a CRC collision is well
  553. Xwithin the capabilities of most workstations.  There are
  554. Xcurrently several programs in the public domain that can, for any
  555. Xgiven input file, provide a different output file with the same
  556. XCRC signature in 30 seconds or less.
  557. X
  558. X    All observed timing measures provided for the signature
  559. Xroutines were performed on a Sequent Symmetry with ten 16 Mhz
  560. X80386 processors.  The numbers provided are simply an informal
  561. Xgauge of throughput, rather than any authoratative metric.
  562. X
  563. X6.1.  MD5
  564. X=========
  565. X
  566. X    MD5 is the RSA Data Security Inc. Message-Digest Algorithm, a
  567. Xproposed data authentication standard.  The Internet Draft
  568. Xsubmission can be found as Internet Working Draft RFC 1321,
  569. Xavailable via anonymous FTP from NIC.DDN.MIL or from RSA.COM as
  570. X~/pub/md5.doc.
  571. X
  572. X    MD5 attempts to address potential security risks found in the
  573. Xspeedier, but less secure MD4, also by RSA Data Security Inc.
  574. XMD5 was designed as a more conservative algorithm that backs
  575. X"away from the edge" in terms of risks from successful
  576. Xcryptanalytic attack.
  577. X
  578. X    MD5 generates a 128-bit signature, and uses four rounds to
  579. Xensure pseudo-random output.  Observed throughput is about 70
  580. XKbytes/second.
  581. X
  582. X    Currently, MD5 is considered by many to be the
  583. Xstate-of-the-art signature algorithm.
  584. X
  585. X6.2.  Snefru
  586. X============
  587. X
  588. X    Snefru, the Xerox Secure Hash Function, was developed by
  589. XRalph Merkle at Xerox PARC.  As an incentive to find a Snefru
  590. Xcrack, there is a $1000 cash prize promised to anyone who can
  591. Xfind two sets of input that map to the same signature.
  592. X
  593. X    This reward has remained unclaimed since April 1990, when the
  594. X2-pass version of Snefru was broken by Eli Biham, a Ph.D. student
  595. Xof Adi Shamir.  Currently, Ralph Merkle recommends using only the
  596. X4-pass version of Snefru, if not the 8-pass version.  The Snefru
  597. XREADME states, "Further study of the security of Snefru is
  598. Xrequired before production use is advisable."
  599. X
  600. X    As shipped with Tripwire, Snefru is configured to run in
  601. X4-passes.  Version 2.5 is the latest version available, and is
  602. Xthe version included with Tripwire.
  603. X
  604. X    Snefru is slower than MD5, but is recommended as a backup for
  605. XMD5 as a primary signature.  As configured, Snefru runs at about
  606. X31 Kbytes/second.
  607. X
  608. X    Snefru can be obtained via anonymous FTP from arisia.xerox.com 
  609. Xin directory /pub/hash.
  610. X
  611. X6.3.  CRC-32
  612. X============
  613. X
  614. X    Cyclic Redundancy Checks have been the long been the de facto
  615. Xerror detection algorithm standard.  These algorithms are fast,
  616. Xrobust, and provides reliable detection of errors associated with
  617. Xdata transmission.  It has been shown that CRC-32 has a minimum
  618. Xdistance of 5 for block lengths of less than 4K.  However, this
  619. Xdecreases as the size of the blocks increases.
  620. X
  621. X    Therefore, using CRC-32 on long files is certainly a
  622. Xmisapplication of this signature algorithm.  However, CRC-32 is
  623. Xprovided as a fast and speedy alternative to the slower
  624. Xcryptographic checksumming algorithms.
  625. X
  626. X    The version of CRC-32 included with Tripwire was written by 
  627. XGary S. Brown XXX
  628. X    This CRC-32 implementation runs at about 111 Kbytes/second.
  629. X
  630. X6.4.  CRC-16
  631. X============
  632. X
  633. X    CRC-16 is the predecessor to CRC-32, using only 16 bits to
  634. Xstore to the remainder of the data and the generator polynomial.
  635. XCRC-16 is typically at the link level, usually done in hardware
  636. Xto detect transmission errors.
  637. X
  638. X    This CRC-16 implementation runs at abut 131 Kbytes/second.
  639. X
  640. X
  641. X6.5.  MD4
  642. X=========
  643. X
  644. X    MD4, the RSA Data Security Inc. Message-Digest Algorithm, is
  645. Xthe predecessor to MD5 described above.  It was also sumbitted as
  646. Xa standard data authentication algorithm, and is described in the
  647. XInternet Working Draft 1320.
  648. X
  649. X    The MD4 algorithm was designed to exploit 32-bit RISC
  650. Xarchitectures to maximize throughput.  On a Sun SparcStation,
  651. Xthroughput rates of over 1.4 Mbytes/second are achieved.
  652. X
  653. X    MD4 can be obtained via anonymous FTP from RSA.COM in ~/pub.
  654. X
  655. X    On a Sequent, MD4 throughput is about 332 Kbytes/second.
  656. X
  657. X
  658. X6.6.  MD2
  659. X==========
  660. X
  661. X    The RSA Data Security, Inc. MD2 Message-Digest Algorithm was
  662. Xcreated as part of the Privacy Enhanced Mail package -- a package
  663. Xdesigned to authenticate and increase the security of electronic
  664. Xmail.  Like the other algorithms by RSA Data Security, Inc
  665. Xpresented here, MD2 generates a 128-bit signature.
  666. X
  667. X    The MD2 algorithm is quite slow.  On a 16 Mhz 80386, expect
  668. Xonly 3 Kbytes/second.  It is not clear that using this slower
  669. Xalgorithm instead of MD5 brings any comparative advantage.
  670. X
  671. X6.7.  (null)
  672. X============
  673. X
  674. X    Well, sig_null_get() is not really a signature algorithm.
  675. XInstead, it is a place holder for unused slots in the signature
  676. Xarray.  It will always return a single character, ``0''.
  677. X
  678. X
  679. X7.0.  Feedback and bug-reports
  680. X==============================
  681. X
  682. X    Please send any bug-reports, questions, feedback, or any comments
  683. Xto both genek@mentor.cc.purdue.edu and spaf@cs.purdue.edu.  One or
  684. Xboth Genes will try to answer questions as expeditiously as possible.
  685. X
  686. X
  687. X8.0.  User contributions
  688. X========================
  689. X
  690. X    The ./contrib directory contains several programs contributed
  691. Xby users during the beta-test period.  Each program is accompanied 
  692. Xby a README file written by the program author.
  693. X
  694. X    Both Genes are willing to serve as clearinghouses for
  695. Xutilities that augment the Tripwire package.  If you have a
  696. Xsomething that you would like included in the Tripwire package,
  697. Xplease contact either Gene Kim or Gene Spafford at the email
  698. Xaddresses listed in the previous section.
  699. X
  700. X
  701. X9.0  Acknowledgements
  702. X=====================
  703. X
  704. X    Dan Farmer of Sun Microsystems, Inc. for providing answers to
  705. Xquestions of taste, and providing some impetus to finish this
  706. Xproject during the summer of 1992.  (dfarmer@corp.sun.com).
  707. X
  708. X    Shabbir Safdar for actually running early versions of
  709. XTripwire that popped up on an hourly basis.  We also thank him
  710. Xfor trying this on a few of the more exotic architectures around
  711. XPurdue.  (shabby@mentor.cc.purdue.edu)
  712. X
  713. X    Steve Weeber of Lawrence Livermore National Laboratory for
  714. Xinsight into what sort of tools the Dept. of Energy has developed
  715. Xfor in-house use, and comparisons of their functionality with
  716. XTripwire.  (weeber@llnl.gov).
  717. X
  718. X    Ralph Merkle of Xerox PARC for information on the Snefru
  719. Xone-way hash function.  (merkle@parc.xerox.com).
  720. X
  721. X    One of the directory printing routine in utils.c comes from
  722. Xthe COPS package.  It was from crc_check.c by Jon Zeeff
  723. X(zeeff@b-tech.ann-arbor.mi.us).
  724. X
  725. X    The 125 helpful beta testers that stuck with us during the
  726. Xsix-week testing period.  They put up with bugs, ever-changing
  727. Xinterfaces and database file formats, and in one case, a flurry
  728. Xof conflicting patches in a thirty-minute period while GeneK and
  729. XSpaf took turns saying, "Uh, oh."
  730. X
  731. X    We appreciate the heroic effort of the Tripwire beta testers who
  732. Xsuggested functional additions to Tripwire, found and hunted down
  733. Xbugs, and refined Tripwire beyond the authors' expectations.  Special
  734. Xthanks go to:
  735. X
  736. X    Walker Aumann, Lance R. Bailey, David Barr, Greg Black, Adrian P.
  737. X    van Bloois, J. Dean Brock, Kurt Cockrum, John Cristy, Jim Duncan,
  738. X    David S. Goldberg, Johannes Gronvall, Tom Gutnick, Michaela
  739. X    Harlander, Andreas Haug, Bill Henderson, Jim Hendrick, Norman
  740. X    Hill, Paul Joslin, Poul-Henning Kamp, Leslie Kordas, Simon Leinen,
  741. X    Philip Yzarn de Louraille, Stephen Mahler, Fletcher Mattox, Ken
  742. X    McDonell, Wes Morgan, Phil Moyer, Dan O'Neill, Joe Polcari,
  743. X    Phillip Porch, Brad Powell, W.  Purvis, Daniel Ray, Dean Rich,
  744. X    Bill Romine, John P. Rouillard, Rich Salz, Christopher Samuel,
  745. X    Pete Shipley., David W. Smith, Harlan Stenn, Margarita Suarez,
  746. X    John G. Sutton, Tim Tessin, John Wagner, David Wiseman, Irving
  747. X    Wolfe, Stephen M.  Youndt
  748. X
  749. X    GeneK and Spaf want to apologize in advance to anyone who sent us
  750. Xpatches, comments or configuration info and whose name doesn't appear
  751. X(but should).  Please write to us and so we can correct the situation!
  752. X
  753. X
  754. X
  755. XGene & Gene 
  756. XKim  & Spafford
  757. X
  758. XNovember 2, 1992
  759. X(genek@mentor.cc.purdue.edu)
  760. X(spaf@cs.purdue.edu)
  761. X
  762. END_OF_FILE
  763. if test 29570 -ne `wc -c <'tripwire-1.0/README'`; then
  764.     echo shar: \"'tripwire-1.0/README'\" unpacked with wrong size!
  765. fi
  766. # end of 'tripwire-1.0/README'
  767. fi
  768. if test -f 'tripwire-1.0/contrib/README.ASET' -a "${1}" != "-c" ; then 
  769.   echo shar: Will not clobber existing file \"'tripwire-1.0/contrib/README.ASET'\"
  770. else
  771. echo shar: Extracting \"'tripwire-1.0/contrib/README.ASET'\" \(27138 characters\)
  772. sed "s/^X//" >'tripwire-1.0/contrib/README.ASET' <<'END_OF_FILE'
  773. X    The ARM/ASET package by Sun Microsystems, Inc. includes a 
  774. Xprogram that chown()s and chmod()s files to their proper owners
  775. Xand permissions.  
  776. X
  777. X    This poses a problem for people who run Tripwire, since each
  778. Xtime ASET runs, the inode timestamp will be modified.
  779. X
  780. X    Brad Powell supplied the following information to tailor your
  781. Xtw.config file to make Tripwire ignore the constantly changing
  782. Xtimestamps on these files.
  783. X
  784. X    Brad says:
  785. X
  786. X    There are three levels: tune.low, tune.med, and  tune.high. They
  787. X    each touch different files. I have attached them below. Note:
  788. X    there is a bug report against a couple of the file ownership
  789. X    modes (/etc and /home owned by "bin" sheesh) so some of these are
  790. X    (imho) wrong, but what I included below is the FCS versions, your
  791. X    best bet to include until patches come out.  No big deal to
  792. X    change.
  793. X
  794. X
  795. X    What follows is the list of files which are affected by ASET.
  796. X
  797. X====
  798. X#
  799. X# Copyright 1990, 1991 Sun Microsystems, Inc.  All Rights Reserved.
  800. X#
  801. X#
  802. X# sccsid = @(#) tune.high 1.4 3/21/91 09:32:04
  803. X#
  804. X# Tune list for level high
  805. X# Format:
  806. X#    pathname mode owner group type
  807. X
  808. X
  809. X# The following section is from tune.low (which = Brad's tune list).
  810. X/ 02755 root staff directory
  811. X/bin 00777 root staff symlink
  812. X/etc 02755 bin staff directory
  813. X#/etc/adm 00777 root staff symlink
  814. X#/etc/arp 00777 root staff symlink
  815. X#/etc/chown 00777 root staff symlink
  816. X/etc/chroot 00777 root staff symlink
  817. X/etc/clri 00777 root staff symlink
  818. X#/etc/config 00777 root staff symlink
  819. X#/etc/crash 00777 root staff symlink
  820. X/etc/cron 00777 root staff symlink
  821. X#/etc/dkinfo 00777 root staff symlink
  822. X#/etc/dmesg 00777 root staff symlink
  823. X#/etc/dump 00777 root staff symlink
  824. X#/etc/fastboot 00777 root staff symlink
  825. X#/etc/fasthalt 00777 root staff symlink
  826. X/etc/fsck 00777 root staff symlink
  827. X/etc/fuser 00777 root staff symlink
  828. X#/etc/halt 00777 root staff symlink
  829. X#/etc/ifconfig 00777 root staff symlink
  830. X#/etc/install/EXCLUDELIST 00644 root staff file
  831. X#/etc/install/category.standalone 00644 root staff file
  832. X#/etc/install/default_client_info 00644 root staff file
  833. X#/etc/install/default_sys_info 00644 root staff file
  834. X/etc/link 00777 root staff symlink
  835. X/etc/mkfs 00777 root staff symlink
  836. X/etc/mknod 00777 root staff symlink
  837. X/etc/mount 00777 root staff symlink
  838. X#/etc/mount_rfs 00777 root staff symlink
  839. X#/etc/mtab 00644 root staff file
  840. X/etc/ncheck 00777 root staff symlink
  841. X#/etc/newfs 00777 root staff symlink
  842. X#/etc/pstat 00777 root staff symlink
  843. X#/etc/rdump 00777 root staff symlink
  844. X#/etc/reboot 00777 root staff symlink
  845. X#/etc/renice 00777 root staff symlink
  846. X#/etc/restore 00777 root staff symlink
  847. X#/usr/etc/restore 00750 root staff file
  848. X#/etc/rmt 00777 root staff symlink
  849. X#/etc/rrestore 00777 root staff symlink
  850. X/etc/shutdown 00777 root staff symlink
  851. X#/etc/spool 00777 root staff symlink
  852. X/etc/termcap 00777 root staff symlink
  853. X#/etc/tmp 00777 root staff symlink
  854. X/etc/umount 00777 root staff symlink
  855. X/etc/unlink 00777 root staff symlink
  856. X#/etc/update 00777 root staff symlink
  857. X#/etc/vipw 00777 root staff symlink
  858. X/home 02755 bin staff directory
  859. X/lib 00777 root staff symlink
  860. X#/sys 00777 root staff symlink
  861. X/usr 02755 root ? directory
  862. X#/usr/5lib 02755 bin staff symlink
  863. X/usr/adm 00777 root staff symlink
  864. X/usr/bin 02755 root ? directory
  865. X#/usr/bin/sunview1 02755 bin staff directory
  866. X#/usr/boot 00777 root staff symlink
  867. X#/usr/demo 02755 bin staff directory
  868. X#/usr/diag 02755 bin staff directory
  869. X#/usr/diag/sundiag 02755 root staff directory
  870. X#/usr/etc 02755 root ? directory
  871. X#/usr/games 02755 bin staff directory
  872. X#/usr/games/chesstool 00750 bin staff symlink
  873. X/usr/include 02755 bin staff directory
  874. X#/usr/include/images 02755 bin staff directory
  875. X#/usr/include/suntool 02755 bin staff directory
  876. X#/usr/include/sunwindow 02755 bin staff directory
  877. X/usr/kvm 02755 bin staff directory
  878. X/usr/kvm/i386 00777 root staff symlink
  879. X/usr/kvm/iAPX286 00777 root staff symlink
  880. X/usr/kvm/m68k 00777 root staff symlink
  881. X#/usr/kvm/machine 00777 root staff symlink
  882. X/usr/kvm/mc68010 00777 root staff symlink
  883. X/usr/kvm/mc68020 00777 root staff symlink
  884. X/usr/kvm/pdp11 00777 root staff symlink
  885. X/usr/kvm/sparc 00777 root staff symlink
  886. X/usr/kvm/sun 00777 root staff symlink
  887. X/usr/kvm/sun2 00777 root staff symlink
  888. X/usr/kvm/sun4 00777 root staff symlink
  889. X/usr/kvm/sun4c 00777 root staff symlink
  890. X#/usr/kvm/crash 02750 root staff file
  891. X#/usr/kvm/sys 02755 root staff directory
  892. X#/usr/kvm/sys/conf.common 02755 root staff directory
  893. X#/usr/kvm/sys/debug 02755 root staff directory
  894. X#/usr/kvm/sys/krpc 02755 root staff directory
  895. X#/usr/kvm/sys/lofs 02755 root staff directory
  896. X#/usr/kvm/sys/m68k 02755 root staff directory
  897. X#/usr/kvm/sys/mon 02755 root staff directory
  898. X#/usr/kvm/sys/net 02755 root staff directory
  899. X#/usr/kvm/sys/netinet 02755 root staff directory
  900. X#/usr/kvm/sys/nfs 02755 root staff directory
  901. X#/usr/kvm/sys/os 02755 root staff directory
  902. X#/usr/kvm/sys/rpc 02755 root staff directory
  903. X#/usr/kvm/sys/sparc 02755 root staff directory
  904. X#/usr/kvm/sys/specfs 02755 root staff directory
  905. X#/usr/kvm/sys/sun 02755 root staff directory
  906. X#/usr/kvm/sys/sun3 02755 root staff directory
  907. X#/usr/kvm/sys/sun3/OBJ 02755 root staff directory
  908. X#/usr/kvm/sys/sun3/conf 02755 root staff directory
  909. X#/usr/kvm/sys/sun3x 02755 root staff directory
  910. X#/usr/kvm/sys/sun3x/OBJ 02755 root staff directory
  911. X#/usr/kvm/sys/sun3x/conf 02755 root staff directory
  912. X#/usr/kvm/sys/sun4 02755 root staff directory
  913. X#/usr/kvm/sys/sun4/OBJ 02755 root staff directory
  914. X#/usr/kvm/sys/sun4/conf 02755 root staff directory
  915. X#/usr/kvm/sys/sun4c 02755 root staff directory
  916. X#/usr/kvm/sys/sun4c/OBJ 02755 root staff directory
  917. X#/usr/kvm/sys/sun4c/conf 02755 root staff directory
  918. X#/usr/kvm/sys/sundev 02755 root staff directory
  919. X#/usr/kvm/sys/sunif 02755 root staff directory
  920. X#/usr/kvm/sys/sunwindow 02755 root staff directory
  921. X#/usr/kvm/sys/sunwindowdev 02755 root staff directory
  922. X#/usr/kvm/sys/sys 02755 root staff directory
  923. X#/usr/kvm/sys/ufs 02755 root staff directory
  924. X#/usr/kvm/sys/vm 02755 root staff directory
  925. X/usr/kvm/u370 00777 root staff symlink
  926. X/usr/kvm/u3b 00777 root staff symlink
  927. X/usr/kvm/u3b15 00777 root staff symlink
  928. X/usr/kvm/u3b2 00777 root staff symlink
  929. X/usr/kvm/u3b5 00777 root staff symlink
  930. X/usr/kvm/vax 00777 root staff symlink
  931. X/usr/lib 02755 bin bin directory
  932. X#/usr/lib/.sunview 00777 root bin symlink
  933. X#/usr/lib/defaults 02755 root bin directory
  934. X#/usr/lib/fonts 02755 bin staff directory
  935. X#/usr/lib/fonts/fixedwidthfonts 02755 bin staff directory
  936. X#/usr/lib/fonts/tekfonts 02755 bin staff directory
  937. X/usr/lib/lex 00777 root bin directory
  938. X#/usr/lib/lint/llib-lsuntool 00644 root staff file
  939. X#/usr/lib/lint/llib-lsuntool.ln 00644 root staff file
  940. X#/usr/lib/lint/llib-lsunwindow 00644 root staff file
  941. X#/usr/lib/lint/llib-lsunwindow.ln 00644 root staff file
  942. X/usr/lib/refer 02755 bin bin directory
  943. X#/usr/lib/rootmenu 00777 root bin symlink
  944. X#/usr/lib/rootmenu.old 00777 root bin symlink
  945. X/usr/lib/shlib.etc 02755 root staff directory
  946. X#/usr/lib/suntools 00777 root bin symlink
  947. X/usr/lib/tabset 00777 root bin symlink
  948. X#/usr/lib/text_extras_menu 00777 root bin symlink
  949. X#/usr/lib/textswrc 00777 root bin symlink
  950. X/usr/lib/zoneinfo 00777 root bin symlink
  951. X/usr/local 02755 bin staff directory
  952. X#/usr/man 00777 root staff symlink
  953. X#/usr/mdec 00777 root staff symlink
  954. X/usr/net 00777 root staff directory
  955. X/usr/nserve 00777 root staff directory
  956. X#/usr/old 02755 bin staff directory
  957. X/usr/pub 00777 root staff symlink
  958. X/usr/share/lib 02755 root staff directory
  959. X#/usr/share/lib/me 02755 root staff directory
  960. X#/usr/share/lib/ms 02755 bin staff directory
  961. X/usr/share/lib/tmac 02755 root staff directory
  962. X/usr/share/src 02755 bin staff directory
  963. X#/usr/share/src/sun 02755 bin staff directory
  964. X#/usr/share/src/sun/sunview1 02755 bin staff directory
  965. X#/usr/share/src/sun/sunview1/examples 02755 root staff directory
  966. X#/usr/share/src/sun/sunview1/iconedit 02755 root staff directory
  967. X/usr/spool 00777 root staff symlink
  968. X/usr/src 00777 root staff symlink
  969. X#/usr/stand 00777 root staff symlink
  970. X#/usr/sys 00777 root staff symlink
  971. X/usr/tmp 00777 root staff symlink
  972. X/usr/ucb 02755 bin staff directory
  973. X/usr/ucbinclude 00777 root staff directory
  974. X/usr/ucblib 00777 root staff directory
  975. X/var 02755 bin staff directory
  976. X
  977. X# The following section is from Beverly's list (hml.settings)
  978. X# with modifications.
  979. X
  980. X/.cshrc 00600 root ? file
  981. X/.login  00600 root ? file
  982. X/.profile 00600 root ? file
  983. X/etc/motd 00640 root staff file
  984. X#/etc/mtab 00640 root staff file
  985. X#/etc/rmtab 00640 root ? file
  986. X/etc/syslog.pid 00640 root staff file
  987. X/etc/aliases 00640 root staff file
  988. X#/etc/remote 00640 root staff file
  989. X#/etc/utmp 00664 root staff file
  990. X#/etc/rc 00640 root staff file
  991. X#/etc/fstab 00640 root staff file
  992. X/etc/passwd 00640 root staff file
  993. X/etc/group 00640 root staff file
  994. X/etc/sm 00755 root staff directory
  995. X/etc/sm.bak 00755 root staff directory
  996. X/etc/state 00640 root staff file
  997. X/unix 00754 root ? file
  998. X#/tmp/.getwd 00664 ? ? file
  999. X/tmp 02777 bin staff directory
  1000. X/dev/*mem 00640 root ? file
  1001. X#/var/spool/secretmail 02775 bin bin directory
  1002. X#/var/spool/rwho 02755 root staff directory
  1003. X
  1004. X/usr/bin/* 00755 ? ? ?
  1005. X/usr/ucb/* 00755 ? ? ?
  1006. X/usr/local/* 00755 ? ? ?
  1007. X/usr/tmp 00777 root ? symlink
  1008. X/var/tmp 02777 bin staff directory
  1009. X/usr/share 02755 bin staff directory
  1010. X#/usr/diag/sysdiag/* 00755 ? ? ?
  1011. X/usr/include/* 00755 ? ? ?
  1012. X#/usr/include/sun4/* 00755 ? ? ?
  1013. X#/usr/lib/adb/* 00755 ? ? ?
  1014. X#/usr/lib/debug 02755 root staff directory
  1015. X#/usr/lib/defaults 02755 root staff directory
  1016. X#/usr/share/lib/me 02755 root staff directory
  1017. X/usr/share/lib/termcap 00664 root staff file
  1018. X/usr/share/lib/terminfo 02755 root staff directory
  1019. X/usr/share/lib/tmac 02775 root staff directory
  1020. X/usr/share/src/* 00755 ? ? ?
  1021. X#/usr/share/sys/* 00755 ? ? ?
  1022. X#/usr/etc/install/files 00755 ? ? ?
  1023. X#/usr/etc/install/proto 00755 ? ? ?
  1024. X#/usr/etc/install/save 00755 ? ? ?
  1025. X#/usr/etc/install/script 00755 ? ? ?
  1026. X#/usr/etc/yp/ypset 00750 root staff file
  1027. X
  1028. X#/export/exec/sun2/etc/install/files 00755 ? ? ?
  1029. X#/export/exec/sun3/etc/install/proto 00755 ? ? ?
  1030. X#/export/exec/sun4/etc/install/script 00755 ? ? ?
  1031. X
  1032. X/dev/dump 00660 root kmem file
  1033. X#/dev/klog 00600 root staff file
  1034. X/dev/kmem 00640 root kmem file
  1035. X/dev/mbio 00600 root staff file
  1036. X/dev/mbmem 00600 root staff file
  1037. X/dev/mem 00640 root kmem file
  1038. X#/dev/nit 00600 root staff file
  1039. X/dev/rsd* 00640 root operator file
  1040. X#/dev/rxy* 00640 root operator file
  1041. X/dev/sd* 00640 root operator file
  1042. X#/dev/vme* 00600 root staff file
  1043. X#/dev/xy* 00640 root operator file
  1044. X/dev 02755 bin staff directory
  1045. X
  1046. X# for C2
  1047. X#/etc/security 02755 root ? directory
  1048. X----------
  1049. XX-Sun-Data-Type: default
  1050. XX-Sun-Data-Description: default
  1051. XX-Sun-Data-Name: tune.med
  1052. XX-Sun-Content-Lines: 249
  1053. X
  1054. X#
  1055. X# Copyright 1990, 1991 Sun Microsystems, Inc.  All Rights Reserved.
  1056. X#
  1057. X#
  1058. X# sccsid = @(#) tune.med 1.2 2/8/91 13:02:25
  1059. X#
  1060. X# Tune list for level med 
  1061. X# Format:
  1062. X#       pathname mode owner group type
  1063. X
  1064. X# The following section is from tune.low (which = Brad's tune list).
  1065. X/ 02755 root staff directory
  1066. X/bin 00777 root staff symlink
  1067. X/etc 02755 bin staff directory
  1068. X#/etc/adm 00777 root staff symlink
  1069. X#/etc/arp 00777 root staff symlink
  1070. X#/etc/chown 00777 root staff symlink
  1071. X/etc/chroot 00777 root staff symlink
  1072. X/etc/clri 00777 root staff symlink
  1073. X#/etc/config 00777 root staff symlink
  1074. X#/etc/crash 00777 root staff symlink
  1075. X/etc/cron 00777 root staff symlink
  1076. X#/etc/dkinfo 00777 root staff symlink
  1077. X#/etc/dmesg 00777 root staff symlink
  1078. X#/etc/dump 00777 root staff symlink
  1079. X#/etc/fastboot 00777 root staff symlink
  1080. X#/etc/fasthalt 00777 root staff symlink
  1081. X/etc/fsck 00777 root staff symlink
  1082. X/etc/fuser 00777 root staff symlink
  1083. X#/etc/halt 00777 root staff symlink
  1084. X#/etc/ifconfig 00777 root staff symlink
  1085. X#/etc/install/EXCLUDELIST 00644 root staff file
  1086. X#/etc/install/category.standalone 00644 root staff file
  1087. X#/etc/install/default_client_info 00644 root staff file
  1088. X#/etc/install/default_sys_info 00644 root staff file
  1089. X/etc/link 00777 root staff symlink
  1090. X/etc/mkfs 00777 root staff symlink
  1091. X/etc/mknod 00777 root staff symlink
  1092. X/etc/mount 00777 root staff symlink
  1093. X#/etc/mount_rfs 00777 root staff symlink
  1094. X#/etc/mtab 00644 root staff file
  1095. X/etc/ncheck 00777 root staff symlink
  1096. X#/etc/newfs 00777 root staff symlink
  1097. X#/etc/pstat 00777 root staff symlink
  1098. X#/etc/rdump 00777 root staff symlink
  1099. X#/etc/reboot 00777 root staff symlink
  1100. X#/etc/renice 00777 root staff symlink
  1101. X#/etc/restore 00777 root staff symlink
  1102. X#/usr/etc/restore 00750 root staff file
  1103. X#/etc/rmt 00777 root staff symlink
  1104. X#/etc/rrestore 00777 root staff symlink
  1105. X/etc/shutdown 00777 root staff symlink
  1106. X#/etc/spool 00777 root staff symlink
  1107. X/etc/termcap 00777 root staff symlink
  1108. X#/etc/tmp 00777 root staff symlink
  1109. X/etc/umount 00777 root staff symlink
  1110. X/etc/unlink 00777 root staff symlink
  1111. X#/etc/update 00777 root staff symlink
  1112. X#/etc/vipw 00777 root staff symlink
  1113. X/home 02755 bin staff directory
  1114. X/lib 00777 root staff symlink
  1115. X#/sys 00777 root staff symlink
  1116. X/usr 02755 root ? directory
  1117. X#/usr/5lib 02755 bin staff directory
  1118. X/usr/adm 00777 root staff symlink
  1119. X/usr/bin 02755 root ? directory
  1120. X#/usr/bin/sunview1 02755 bin staff directory
  1121. X#/usr/boot 00777 root staff symlink
  1122. X#/usr/demo 02755 bin staff directory
  1123. X#/usr/diag 02755 bin staff directory
  1124. X#/usr/diag/sundiag 02755 root staff directory
  1125. X#/usr/etc 02755 root ? directory
  1126. X#/usr/games 02755 bin staff directory
  1127. X#/usr/games/chesstool 00750 bin staff symlink
  1128. X/usr/include 02755 bin staff directory
  1129. X#/usr/include/images 02755 bin staff directory
  1130. X#/usr/include/suntool 02755 bin staff directory
  1131. X#/usr/include/sunwindow 02755 bin staff directory
  1132. X/usr/kvm 02755 bin staff directory
  1133. X/usr/kvm/i386 00777 root staff symlink
  1134. X/usr/kvm/iAPX286 00777 root staff symlink
  1135. X/usr/kvm/m68k 00777 root staff symlink
  1136. X#/usr/kvm/machine 00777 root staff symlink
  1137. X/usr/kvm/mc68010 00777 root staff symlink
  1138. X/usr/kvm/mc68020 00777 root staff symlink
  1139. X/usr/kvm/pdp11 00777 root staff symlink
  1140. X/usr/kvm/sparc 00777 root staff symlink
  1141. X/usr/kvm/sun 00777 root staff symlink
  1142. X/usr/kvm/sun2 00777 root staff symlink
  1143. X/usr/kvm/sun4 00777 root staff symlink
  1144. X/usr/kvm/sun4c 00777 root staff symlink
  1145. X#/usr/kvm/crash 02750 root staff file
  1146. X#/usr/kvm/sys 02755 root staff directory
  1147. X#/usr/kvm/sys/conf.common 02755 root staff directory
  1148. X#/usr/kvm/sys/debug 02755 root staff directory
  1149. X#/usr/kvm/sys/krpc 02755 root staff directory
  1150. X#/usr/kvm/sys/lofs 02755 root staff directory
  1151. X#/usr/kvm/sys/m68k 02755 root staff directory
  1152. X#/usr/kvm/sys/mon 02755 root staff directory
  1153. X#/usr/kvm/sys/net 02755 root staff directory
  1154. X#/usr/kvm/sys/netinet 02755 root staff directory
  1155. X#/usr/kvm/sys/nfs 02755 root staff directory
  1156. X#/usr/kvm/sys/os 02755 root staff directory
  1157. X#/usr/kvm/sys/rpc 02755 root staff directory
  1158. X#/usr/kvm/sys/sparc 02755 root staff directory
  1159. X#/usr/kvm/sys/specfs 02755 root staff directory
  1160. X#/usr/kvm/sys/sun 02755 root staff directory
  1161. X#/usr/kvm/sys/sun3 02755 root staff directory
  1162. X#/usr/kvm/sys/sun3/OBJ 02755 root staff directory
  1163. X#/usr/kvm/sys/sun3/conf 02755 root staff directory
  1164. X#/usr/kvm/sys/sun3x 02755 root staff directory
  1165. X#/usr/kvm/sys/sun3x/OBJ 02755 root staff directory
  1166. X#/usr/kvm/sys/sun3x/conf 02755 root staff directory
  1167. X#/usr/kvm/sys/sun4 02755 root staff directory
  1168. X#/usr/kvm/sys/sun4/OBJ 02755 root staff directory
  1169. X#/usr/kvm/sys/sun4/conf 02755 root staff directory
  1170. X#/usr/kvm/sys/sun4c 02755 root staff directory
  1171. X#/usr/kvm/sys/sun4c/OBJ 02755 root staff directory
  1172. X#/usr/kvm/sys/sun4c/conf 02755 root staff directory
  1173. X#/usr/kvm/sys/sundev 02755 root staff directory
  1174. X#/usr/kvm/sys/sunif 02755 root staff directory
  1175. X#/usr/kvm/sys/sunwindow 02755 root staff directory
  1176. X#/usr/kvm/sys/sunwindowdev 02755 root staff directory
  1177. X#/usr/kvm/sys/sys 02755 root staff directory
  1178. X#/usr/kvm/sys/ufs 02755 root staff directory
  1179. X#/usr/kvm/sys/vm 02755 root staff directory
  1180. X/usr/kvm/u370 00777 root staff symlink
  1181. X/usr/kvm/u3b 00777 root staff symlink
  1182. X/usr/kvm/u3b15 00777 root staff symlink
  1183. X/usr/kvm/u3b2 00777 root staff symlink
  1184. X/usr/kvm/u3b5 00777 root staff symlink
  1185. X/usr/kvm/vax 00777 root staff symlink
  1186. X/usr/lib 02755 bin bin directory
  1187. X#/usr/lib/.sunview 00777 root bin symlink
  1188. X#/usr/lib/defaults 02755 root bin directory
  1189. X#/usr/lib/fonts 02755 bin staff directory
  1190. X#/usr/lib/fonts/fixedwidthfonts 02755 bin staff directory
  1191. X#/usr/lib/fonts/tekfonts 02755 bin staff directory
  1192. X/usr/lib/lex 00777 root bin symlink
  1193. X#/usr/lib/lint/llib-lsuntool 00644 root staff file
  1194. X#/usr/lib/lint/llib-lsuntool.ln 00644 root staff file
  1195. X#/usr/lib/lint/llib-lsunwindow 00644 root staff file
  1196. X#/usr/lib/lint/llib-lsunwindow.ln 00644 root staff file
  1197. X/usr/lib/refer 02755 bin bin directory
  1198. X#/usr/lib/rootmenu 00777 root bin symlink
  1199. X#/usr/lib/rootmenu.old 00777 root bin symlink
  1200. X/usr/lib/shlib.etc 02755 root staff directory
  1201. X#/usr/lib/suntools 00777 root bin symlink
  1202. X/usr/lib/tabset 00777 root bin symlink
  1203. X#/usr/lib/text_extras_menu 00777 root bin symlink
  1204. X#/usr/lib/textswrc 00777 root bin symlink
  1205. X/usr/lib/zoneinfo 00777 root bin symlink
  1206. X/usr/local 02755 bin staff directory
  1207. X#/usr/man 00777 root staff symlink
  1208. X#/usr/mdec 00777 root staff symlink
  1209. X/usr/net 00777 root staff directory
  1210. X/usr/nserve 00777 root staff directory
  1211. X#/usr/old 02755 bin staff directory
  1212. X/usr/pub 00777 root staff symlink
  1213. X/usr/share/lib 02755 root staff directory
  1214. X#/usr/share/lib/me 02755 root staff directory
  1215. X#/usr/share/lib/ms 02755 bin staff directory
  1216. X/usr/share/lib/tmac 02755 root staff directory
  1217. X/usr/share/src 02755 bin staff directory
  1218. X#/usr/share/src/sun 02755 bin staff directory
  1219. X#/usr/share/src/sun/sunview1 02755 bin staff directory
  1220. X#/usr/share/src/sun/sunview1/examples 02755 root staff directory
  1221. X#/usr/share/src/sun/sunview1/iconedit 02755 root staff directory
  1222. X/usr/spool 00777 root staff symlink
  1223. X/usr/src 00777 root staff symlink
  1224. X#/usr/stand 00777 root staff symlink
  1225. X#/usr/sys 00777 root staff symlink
  1226. X/usr/tmp 00777 root staff symlink
  1227. X/usr/ucb 02755 bin staff directory
  1228. X/usr/ucbinclude 00777 root staff directory
  1229. X/usr/ucblib 00777 root staff directory
  1230. X/var 02755 bin staff directory
  1231. X
  1232. X# The following section is from Beverly's list (hml.settings)
  1233. X# with modifications.
  1234. X
  1235. X/.cshrc 00640 root ? file
  1236. X/.login  00640 root ? file
  1237. X/.profile 00640 root ? file
  1238. X/etc/motd 00644 root staff file
  1239. X#/etc/mtab 00644 root staff file
  1240. X#/etc/rmtab 00644 root ? file
  1241. X/etc/syslog.pid 00644 root staff file
  1242. X/etc/aliases 00644 root staff file
  1243. X#/etc/remote 00644 root staff file
  1244. X#/etc/utmp 00666 root staff file
  1245. X#/etc/rc 00644 root staff file
  1246. X#/etc/fstab 00644 root staff file
  1247. X/etc/passwd 00644 root staff file
  1248. X/etc/group 00644 root staff file
  1249. X/etc/sm 00775 root staff directory
  1250. X/etc/sm.bak 00775 root staff directory
  1251. X/etc/state 00644 root staff file
  1252. X/unix 00755 root ? file
  1253. X#/tmp/.getwd 00666 ? ? file
  1254. X/tmp 02777 bin staff directory
  1255. X/dev/*mem 00640 root ? file
  1256. X#/var/spool/secretmail 02777 bin bin directory
  1257. X#/var/spool/rwho 02755 root staff directory
  1258. X
  1259. X/usr/bin/* 00755 ? ? ?
  1260. X/usr/ucb/* 00755 ? ? ?
  1261. X/usr/local/* 00755 ? ? ?
  1262. X/usr/tmp 00777 root ? symlink
  1263. X/var/tmp 02777 bin staff directory
  1264. X/usr/share 02755 bin staff directory
  1265. X#/usr/diag/sysdiag/* 00755 ? ? ?
  1266. X/usr/include/* 00755 ? ? ?
  1267. X#/usr/include/sun4/* 00755 ? ? ?
  1268. X#/usr/lib/adb/* 00755 ? ? ?
  1269. X#/usr/lib/debug 02755 root staff directory
  1270. X#/usr/lib/defaults 02755 root staff directory
  1271. X#/usr/share/lib/me 02755 root staff directory
  1272. X/usr/share/lib/termcap 00664 root staff file
  1273. X/usr/share/lib/terminfo 02755 root staff directory
  1274. X/usr/share/lib/tmac 02775 root staff directory
  1275. X/usr/share/src/* 00755 ? ? ?
  1276. X#/usr/share/sys/* 00755 ? ? ?
  1277. X#/usr/etc/install/files 00755 ? ? ?
  1278. X#/usr/etc/install/proto 00755 ? ? ?
  1279. X#/usr/etc/install/save 00755 ? ? ?
  1280. X#/usr/etc/install/script 00755 ? ? ?
  1281. X#/usr/etc/yp/ypset 00750 root staff file
  1282. X
  1283. X#/export/exec/sun2/etc/install/files 00755 ? ? ?
  1284. X#/export/exec/sun3/etc/install/proto 00755 ? ? ?
  1285. X#/export/exec/sun4/etc/install/script 00755 ? ? ?
  1286. X
  1287. X/dev/dump 00660 root kmem file
  1288. X#/dev/klog 00600 root staff file
  1289. X/dev/kmem 00640 root kmem file
  1290. X/dev/mbio 00600 root staff file
  1291. X/dev/mbmem 00600 root staff file
  1292. X/dev/mem 00640 root kmem file
  1293. X#/dev/nit 00600 root staff file
  1294. X/dev/rsd* 00640 root operator file
  1295. X#/dev/rxy* 00640 root operator file
  1296. X/dev/sd* 00640 root operator file
  1297. X#/dev/vme* 00600 root staff file
  1298. X#/dev/xy* 00640 root operator file
  1299. X/dev 02755 bin staff directory
  1300. X
  1301. X# for C2
  1302. X#/etc/security 02755 root ? directory
  1303. X----------
  1304. XX-Sun-Data-Type: default
  1305. XX-Sun-Data-Description: default
  1306. XX-Sun-Data-Name: tune.low
  1307. XX-Sun-Content-Lines: 176
  1308. X
  1309. X#
  1310. X# Copyright 1990, 1991 Sun Microsystems, Inc.  All Rights Reserved.
  1311. X#
  1312. X#
  1313. X# sccsid = @(#) tune.low 1.1 1/2/91 14:39:44
  1314. X#
  1315. X# Tune list for level low 
  1316. X# Format:
  1317. X#       pathname mode owner group type
  1318. X
  1319. X/ 02755 root staff directory
  1320. X/bin 00777 root staff symlink
  1321. X/etc 02755 root staff directory
  1322. X#/etc/adm 00777 root staff symlink
  1323. X#/etc/arp 00777 root staff symlink
  1324. X#/etc/chown 00777 root staff symlink
  1325. X/etc/chroot 00777 root staff symlink
  1326. X/etc/clri 00777 root staff symlink
  1327. X#/etc/config 00777 root staff symlink
  1328. X#/etc/crash 00777 root staff symlink
  1329. X/etc/cron 00777 root staff symlink
  1330. X#/etc/dkinfo 00777 root staff symlink
  1331. X#/etc/dmesg 00777 root staff symlink
  1332. X#/etc/dump 00777 root staff symlink
  1333. X#/etc/fastboot 00777 root staff symlink
  1334. X#/etc/fasthalt 00777 root staff symlink
  1335. X/etc/fsck 00777 root staff symlink
  1336. X/etc/fuser 00777 root staff symlink
  1337. X#/etc/halt 00777 root staff symlink
  1338. X#/etc/ifconfig 00777 root staff symlink
  1339. X#/etc/install/EXCLUDELIST 00644 root staff file
  1340. X#/etc/install/category.standalone 00644 root staff file
  1341. X#/etc/install/default_client_info 00644 root staff file
  1342. X#/etc/install/default_sys_info 00644 root staff file
  1343. X/etc/link 00777 root staff symlink
  1344. X/etc/mkfs 00777 root staff symlink
  1345. X/etc/mknod 00777 root staff symlink
  1346. X/etc/mount 00777 root staff symlink
  1347. X#/etc/mount_rfs 00777 root staff symlink
  1348. X#/etc/mtab 00644 root staff file
  1349. X/etc/ncheck 00777 root staff symlink
  1350. X#/etc/newfs 00777 root staff symlink
  1351. X#/etc/pstat 00777 root staff symlink
  1352. X#/etc/rdump 00777 root staff symlink
  1353. X#/etc/reboot 00777 root staff symlink
  1354. X#/etc/renice 00777 root staff symlink
  1355. X#/etc/restore 00777 root staff symlink
  1356. X#/usr/etc/restore 00750 root staff file
  1357. X#/etc/rmt 00777 root staff symlink
  1358. X#/etc/rrestore 00777 root staff symlink
  1359. X/etc/shutdown 00777 root staff symlink
  1360. X#/etc/spool 00777 root staff symlink
  1361. X/etc/termcap 00777 root staff symlink
  1362. X#/etc/tmp 00777 root staff symlink
  1363. X/etc/umount 00777 root staff symlink
  1364. X/etc/unlink 00777 root staff symlink
  1365. X#/etc/update 00777 root staff symlink
  1366. X#/etc/vipw 00777 root staff symlink
  1367. X/home 02755 root staff directory
  1368. X/lib 00777 root staff symlink
  1369. X#/sys 00777 root staff symlink
  1370. X/usr 02755 bin staff directory
  1371. X#/usr/5lib 02755 bin staff directory
  1372. X/usr/adm 00777 root staff symlink
  1373. X/usr/bin 02755 bin staff directory
  1374. X#/usr/bin/sunview1 02755 bin staff directory
  1375. X#/usr/boot 00777 root staff symlink
  1376. X#/usr/demo 02755 bin staff directory
  1377. X#/usr/diag 02755 bin staff directory
  1378. X#/usr/diag/sundiag 02755 root staff directory
  1379. X#/usr/etc 02755 bin staff directory
  1380. X#/usr/games 02755 bin staff directory
  1381. X#/usr/games/chesstool 00750 bin staff symlink
  1382. X/usr/include 02755 bin staff directory
  1383. X#/usr/include/images 02755 bin staff directory
  1384. X#/usr/include/suntool 02755 bin staff directory
  1385. X#/usr/include/sunwindow 02755 bin staff directory
  1386. X/usr/kvm 02755 bin staff directory
  1387. X/usr/kvm/i386 00777 root staff symlink
  1388. X/usr/kvm/iAPX286 00777 root staff symlink
  1389. X/usr/kvm/m68k 00777 root staff symlink
  1390. X#/usr/kvm/machine 00777 root staff symlink
  1391. X/usr/kvm/mc68010 00777 root staff symlink
  1392. X/usr/kvm/mc68020 00777 root staff symlink
  1393. X/usr/kvm/pdp11 00777 root staff symlink
  1394. X/usr/kvm/sparc 00777 root staff symlink
  1395. X/usr/kvm/sun 00777 root staff symlink
  1396. X/usr/kvm/sun2 00777 root staff symlink
  1397. X/usr/kvm/sun4 00777 root staff symlink
  1398. X/usr/kvm/sun4c 00777 root staff symlink
  1399. X#/usr/kvm/crash 02750 root staff file
  1400. X#/usr/kvm/sys 02755 root staff directory
  1401. X#/usr/kvm/sys/conf.common 02755 root staff directory
  1402. X#/usr/kvm/sys/debug 02755 root staff directory
  1403. X#/usr/kvm/sys/krpc 02755 root staff directory
  1404. X#/usr/kvm/sys/lofs 02755 root staff directory
  1405. X#/usr/kvm/sys/m68k 02755 root staff directory
  1406. X#/usr/kvm/sys/mon 02755 root staff directory
  1407. X#/usr/kvm/sys/net 02755 root staff directory
  1408. X#/usr/kvm/sys/netinet 02755 root staff directory
  1409. X#/usr/kvm/sys/nfs 02755 root staff directory
  1410. X#/usr/kvm/sys/os 02755 root staff directory
  1411. X#/usr/kvm/sys/rpc 02755 root staff directory
  1412. X#/usr/kvm/sys/sparc 02755 root staff directory
  1413. X#/usr/kvm/sys/specfs 02755 root staff directory
  1414. X#/usr/kvm/sys/sun 02755 root staff directory
  1415. X#/usr/kvm/sys/sun3 02755 root staff directory
  1416. X#/usr/kvm/sys/sun3/OBJ 02755 root staff directory
  1417. X#/usr/kvm/sys/sun3/conf 02755 root staff directory
  1418. X#/usr/kvm/sys/sun3x 02755 root staff directory
  1419. X#/usr/kvm/sys/sun3x/OBJ 02755 root staff directory
  1420. X#/usr/kvm/sys/sun3x/conf 02755 root staff directory
  1421. X#/usr/kvm/sys/sun4 02755 root staff directory
  1422. X#/usr/kvm/sys/sun4/OBJ 02755 root staff directory
  1423. X#/usr/kvm/sys/sun4/conf 02755 root staff directory
  1424. X#/usr/kvm/sys/sun4c 02755 root staff directory
  1425. X#/usr/kvm/sys/sun4c/OBJ 02755 root staff directory
  1426. X#/usr/kvm/sys/sun4c/conf 02755 root staff directory
  1427. X#/usr/kvm/sys/sundev 02755 root staff directory
  1428. X#/usr/kvm/sys/sunif 02755 root staff directory
  1429. X#/usr/kvm/sys/sunwindow 02755 root staff directory
  1430. X#/usr/kvm/sys/sunwindowdev 02755 root staff directory
  1431. X#/usr/kvm/sys/sys 02755 root staff directory
  1432. X#/usr/kvm/sys/ufs 02755 root staff directory
  1433. X#/usr/kvm/sys/vm 02755 root staff directory
  1434. X/usr/kvm/u370 00777 root staff symlink
  1435. X/usr/kvm/u3b 00777 root staff symlink
  1436. X/usr/kvm/u3b15 00777 root staff symlink
  1437. X/usr/kvm/u3b2 00777 root staff symlink
  1438. X/usr/kvm/u3b5 00777 root staff symlink
  1439. X/usr/kvm/vax 00777 root staff symlink
  1440. X/usr/lib 02755 bin bin directory
  1441. X#/usr/lib/.sunview 00777 root bin symlink
  1442. X#/usr/lib/defaults 02755 root bin directory
  1443. X#/usr/lib/fonts 02755 bin staff directory
  1444. X#/usr/lib/fonts/fixedwidthfonts 02755 bin staff directory
  1445. X#/usr/lib/fonts/tekfonts 02755 bin staff directory
  1446. X/usr/lib/lex 00777 root bin symlink
  1447. X#/usr/lib/lint/llib-lsuntool 00644 root staff file
  1448. X#/usr/lib/lint/llib-lsuntool.ln 00644 root staff file
  1449. X#/usr/lib/lint/llib-lsunwindow 00644 root staff file
  1450. X#/usr/lib/lint/llib-lsunwindow.ln 00644 root staff file
  1451. X/usr/lib/refer 02755 bin bin directory
  1452. X#/usr/lib/rootmenu 00777 root bin symlink
  1453. X#/usr/lib/rootmenu.old 00777 root bin symlink
  1454. X/usr/lib/shlib.etc 02755 root staff directory
  1455. X#/usr/lib/suntools 00777 root bin symlink
  1456. X/usr/lib/tabset 00777 root bin symlink
  1457. X#/usr/lib/text_extras_menu 00777 root bin symlink
  1458. X#/usr/lib/textswrc 00777 root bin symlink
  1459. X/usr/lib/zoneinfo 00777 root bin symlink
  1460. X/usr/local 02755 bin staff directory
  1461. X#/usr/man 00777 root staff symlink
  1462. X#/usr/mdec 00777 root staff symlink
  1463. X/usr/net 00777 root staff directory
  1464. X/usr/nserve 00777 root staff directory
  1465. X#/usr/old 02755 bin staff directory
  1466. X/usr/pub 00777 root staff symlink
  1467. X/usr/share/lib 02755 root staff directory
  1468. X#/usr/share/lib/me 02755 root staff directory
  1469. X#/usr/share/lib/ms 02755 bin staff directory
  1470. X/usr/share/lib/tmac 02755 root staff directory
  1471. X/usr/share/src 02755 bin staff directory
  1472. X#/usr/share/src/sun 02755 bin staff directory
  1473. X#/usr/share/src/sun/sunview1 02755 bin staff directory
  1474. X#/usr/share/src/sun/sunview1/examples 02755 root staff directory
  1475. X#/usr/share/src/sun/sunview1/iconedit 02755 root staff directory
  1476. X/usr/spool 00777 root staff symlink
  1477. X/usr/src 00777 root staff symlink
  1478. X#/usr/stand 00777 root staff symlink
  1479. X#/usr/sys 00777 root staff symlink
  1480. X/usr/tmp 00777 root staff symlink
  1481. X/usr/ucb 02755 bin staff directory
  1482. X/usr/ucbinclude 00777 root staff directory
  1483. X/usr/ucblib 00777 root staff directory
  1484. X/var 02755 bin staff directory
  1485. X
  1486. END_OF_FILE
  1487. if test 27138 -ne `wc -c <'tripwire-1.0/contrib/README.ASET'`; then
  1488.     echo shar: \"'tripwire-1.0/contrib/README.ASET'\" unpacked with wrong size!
  1489. fi
  1490. # end of 'tripwire-1.0/contrib/README.ASET'
  1491. fi
  1492. if test -f 'tripwire-1.0/src/sigfetch.c' -a "${1}" != "-c" ; then 
  1493.   echo shar: Will not clobber existing file \"'tripwire-1.0/src/sigfetch.c'\"
  1494. else
  1495. echo shar: Extracting \"'tripwire-1.0/src/sigfetch.c'\" \(3168 characters\)
  1496. sed "s/^X//" >'tripwire-1.0/src/sigfetch.c' <<'END_OF_FILE'
  1497. X#ifndef lint
  1498. Xstatic char rcsid[] = "$Id: sigfetch.c,v 1.3 92/10/18 19:28:25 genek Exp $";
  1499. X#endif
  1500. X
  1501. X/*
  1502. X * sigfetch.c
  1503. X *
  1504. X *    generate signatures for a given file.
  1505. X *
  1506. X * Gene Kim
  1507. X * Purdue University
  1508. X * October 14, 1992
  1509. X */
  1510. X
  1511. X#include "../include/config.h"
  1512. X#include <stdio.h>
  1513. X#include <fcntl.h>
  1514. X#ifdef STDLIBH
  1515. X# include <stdlib.h>
  1516. X#endif
  1517. X#include <sys/param.h>
  1518. X#include <sys/types.h>
  1519. X#include <sys/stat.h>
  1520. X#ifndef XENIX
  1521. X# include <sys/time.h>
  1522. X#else
  1523. X# include <time.h>
  1524. X#endif     /* XENIX */
  1525. X#ifdef DIRENT
  1526. X# include <dirent.h>
  1527. X#else
  1528. X# ifndef XENIX
  1529. X#  include <sys/dir.h>
  1530. X# else        /* XENIX */
  1531. X#  include <sys/ndir.h>
  1532. X# endif        /* XENIX */
  1533. X#endif    /* DIRENT */
  1534. X#if (defined(SYSV) && (SYSV < 3))
  1535. X# include <limits.h>
  1536. X#endif    /* SVR2 */
  1537. X#ifdef STRINGH
  1538. X#include <string.h>
  1539. X#else
  1540. X#include <strings.h>
  1541. X#endif
  1542. X#include "../include/list.h"
  1543. X#include "../include/tripwire.h"
  1544. X
  1545. Xextern int optind;
  1546. X
  1547. Xint (*pf_signatures [NUM_SIGS]) () = {
  1548. X                    SIG0FUNC,
  1549. X                    SIG1FUNC,
  1550. X                    SIG2FUNC,
  1551. X                    SIG3FUNC,
  1552. X                    SIG4FUNC,
  1553. X                    SIG5FUNC,
  1554. X                    SIG6FUNC,
  1555. X                    SIG7FUNC,
  1556. X                    SIG8FUNC,
  1557. X                    SIG9FUNC
  1558. X                      };
  1559. X
  1560. Xint printhex = 0;
  1561. Xint sigallget = 1;
  1562. Xint sigvector[NUM_SIGS] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
  1563. Xchar *signames[NUM_SIGS] = {
  1564. X                "nullsig",
  1565. X                "md5",
  1566. X                "snefru",
  1567. X                "crc32",
  1568. X                "crc16",
  1569. X                "md4",
  1570. X                "md2",
  1571. X                "nullsig",
  1572. X                "nullsig",
  1573. X                "nullsig"
  1574. X               };
  1575. Xint verbosity = 0;
  1576. Xint quiet = 0;
  1577. X
  1578. Xchar *progname;
  1579. X
  1580. Xvoid
  1581. Xusage()
  1582. X{
  1583. X    fprintf(stderr, "sigfetch: usage: [-0123456789qv] [ file ... ]\n");
  1584. X    exit(1);
  1585. X}
  1586. X
  1587. Xmain(argc, argv)
  1588. X    int argc;
  1589. X    char *argv[];
  1590. X{
  1591. X    int i, c;
  1592. X    int fd;
  1593. X
  1594. X    progname = argv[0];
  1595. X
  1596. X    optind = 1;
  1597. X    while ((c = getopt(argc, argv, "0123456789aqvh")) != -1) {
  1598. X    switch(c) {
  1599. X    case '0':        sigallget = 0; sigvector[0] = 1; break;
  1600. X    case '1':        sigallget = 0; sigvector[1] = 1; break;
  1601. X    case '2':        sigallget = 0; sigvector[2] = 1; break;
  1602. X    case '3':        sigallget = 0; sigvector[3] = 1; break;
  1603. X    case '4':        sigallget = 0; sigvector[4] = 1; break;
  1604. X    case '5':        sigallget = 0; sigvector[5] = 1; break;
  1605. X    case '6':        sigallget = 0; sigvector[6] = 1; break;
  1606. X    case '7':        sigallget = 0; sigvector[7] = 1; break;
  1607. X    case '8':        sigallget = 0; sigvector[8] = 1; break;
  1608. X    case '9':        sigallget = 0; sigvector[9] = 1; break;
  1609. X    case 'a':        sigallget = 1; break;
  1610. X    case 'v':        verbosity = 1; break;
  1611. X    case 'q':        quiet = 1; break;
  1612. X    case 'h':        printhex = 1; break;
  1613. X    case '?':
  1614. X    default:
  1615. X        usage();
  1616. X        exit(1);
  1617. X    }
  1618. X    }
  1619. X
  1620. X    argc -= optind;
  1621. X    argv += optind;
  1622. X
  1623. X    for (i = 0; i < argc; i++) {
  1624. X    if (strcmp(argv[i], "-") == 0)
  1625. X       fd = 0;
  1626. X    else
  1627. X        if ((fd = open(argv[i], O_RDONLY, 0)) < 0) {
  1628. X        warn_with_err("sigfetch: open() on '%s' failed! Skipping...\n",
  1629. X                        argv[i]);
  1630. X        continue;
  1631. X        }
  1632. X    sigfetch(fd);
  1633. X
  1634. X    if (fd)
  1635. X        close(fd);
  1636. X    }
  1637. X}
  1638. X
  1639. Xint
  1640. Xsigfetch(fd)
  1641. X    int fd;
  1642. X{
  1643. X    char     sigs[NUM_SIGS][SIG_MAX_LEN];
  1644. X    char    sigs_concat[1024];
  1645. X    int     i;
  1646. X
  1647. X    /* collect signatures */
  1648. X    for (i = 0; i < NUM_SIGS; i++) {
  1649. X    char *pc = sigs[i];
  1650. X
  1651. X    if (sigallget || sigvector[i]) {
  1652. X
  1653. X        (*pf_signatures[i])(fd, pc, SIG_MAX_LEN);
  1654. X        if (!quiet)
  1655. X        printf("sig%d: %-9s: %s\n", i, signames[i], sigs[i]);
  1656. X        else
  1657. X        printf("%s ", sigs[i]);
  1658. X
  1659. X    }
  1660. X    }
  1661. X
  1662. X    if (quiet)
  1663. X       printf("\n");
  1664. X
  1665. X}
  1666. END_OF_FILE
  1667. if test 3168 -ne `wc -c <'tripwire-1.0/src/sigfetch.c'`; then
  1668.     echo shar: \"'tripwire-1.0/src/sigfetch.c'\" unpacked with wrong size!
  1669. fi
  1670. # end of 'tripwire-1.0/src/sigfetch.c'
  1671. fi
  1672. if test -f 'tripwire-1.0/include/patchlevel.h' -a "${1}" != "-c" ; then 
  1673.   echo shar: Will not clobber existing file \"'tripwire-1.0/include/patchlevel.h'\"
  1674. else
  1675. echo shar: Extracting \"'tripwire-1.0/include/patchlevel.h'\" \(86 characters\)
  1676. sed "s/^X//" >'tripwire-1.0/include/patchlevel.h' <<'END_OF_FILE'
  1677. X/* $Id: patchlevel.h,v 1.1.1.2 92/11/02 18:19:43 genek Exp $ */
  1678. X
  1679. X#define    PATCHLEVEL    1
  1680. END_OF_FILE
  1681. if test 86 -ne `wc -c <'tripwire-1.0/include/patchlevel.h'`; then
  1682.     echo shar: \"'tripwire-1.0/include/patchlevel.h'\" unpacked with wrong size!
  1683. fi
  1684. # end of 'tripwire-1.0/include/patchlevel.h'
  1685. fi
  1686. if test -f 'tripwire-1.0/sigs/snefru/snefru.h' -a "${1}" != "-c" ; then 
  1687.   echo shar: Will not clobber existing file \"'tripwire-1.0/sigs/snefru/snefru.h'\"
  1688. else
  1689. echo shar: Extracting \"'tripwire-1.0/sigs/snefru/snefru.h'\" \(22 characters\)
  1690. sed "s/^X//" >'tripwire-1.0/sigs/snefru/snefru.h' <<'END_OF_FILE'
  1691. Xint sig_snefru_get();
  1692. END_OF_FILE
  1693. if test 22 -ne `wc -c <'tripwire-1.0/sigs/snefru/snefru.h'`; then
  1694.     echo shar: \"'tripwire-1.0/sigs/snefru/snefru.h'\" unpacked with wrong size!
  1695. fi
  1696. # end of 'tripwire-1.0/sigs/snefru/snefru.h'
  1697. fi
  1698. echo shar: End of archive 2 \(of 8\).
  1699. cp /dev/null ark2isdone
  1700. MISSING=""
  1701. for I in 1 2 3 4 5 6 7 8 ; do
  1702.     if test ! -f ark${I}isdone ; then
  1703.     MISSING="${MISSING} ${I}"
  1704.     fi
  1705. done
  1706. if test "${MISSING}" = "" ; then
  1707.     echo You have unpacked all 8 archives.
  1708.     echo "Now read the README file"
  1709.     rm -f ark[1-9]isdone
  1710. else
  1711.     echo You still need to unpack the following archives:
  1712.     echo "        " ${MISSING}
  1713. fi
  1714. ##  End of shell archive.
  1715. exit 0
  1716. -- 
  1717. Gene Spafford
  1718. Software Engineering Research Center & Dept. of Computer Sciences
  1719. Purdue University, W. Lafayette IN 47907-1398
  1720. Internet:  spaf@cs.purdue.edu    phone:  (317) 494-7825
  1721.