home *** CD-ROM | disk | FTP | other *** search
- NAME
- kuang - rule based system to find inconsistencies in the security
- configuration of a BSD 4.2 Unix.
-
- SYSNOPSIS
- edit init_kuang to reflect attackers initial goals
- sh kuang > tracelog
-
- DESCRIPTION
- Kuang is a rule based system that searches for a path from an
- initial set of privileges to a desired set. Given a goal, kuang uses
- rules to determine a set of subgoals which are sufficient to achieve the
- initial goal. The rules are then applied to the subgoals to determine a
- set of sub-subgoals, etc. This process repeats until there are no new
- goals to examine. If a subgoal can be directly achieved using the
- attacker's initial privileges, then a line is added to the file
- 'Success' that describes how the attacker can achieve the top level goal.
- The rules for Unix can be divided into three categories
- depending on whether they deal with files, users, or groups. Kuang
- embodies these rules in three shell scripts, dofiles, douids, and
- dogids. Goals that have been examined are recorded in the files
- files.p, uids.p, and gids.p. The files files.n, uids.n, and gids.n
- record the goals that will be examined next. The shell script, kuang,
- applies the goals in each .n file to the corresponding rule file.
- The initial privileges and ultimate goal are set up in the shell
- script, init_kuang. If the program finds a sequence of rules that
- connects the initial privileges to the ultimate goal, that sequence will
- be recorded in the file Success. Each step in the sequence is recorded
- as a pair of words. For example, the line "gids users, write
- /usr/bob/.login, trojan baldwin, grant staff, write /etc, replace
- /etc/passwd" means that the password file can be replaced because the
- group staff has write access to the directory /etc, and you can get
- access to the staff group because the .login file for the user bob can
- be written by members of the group users, which is one of your initial
- privileges.
-
- FILES
- *.n - goals to process in the next round.
- *.x - goals currently being processed.
- *.p - goals that have been examined.
- uids.* - goals related to user IDs.
- gids.* - goals related to group IDs.
- files.* - goals related to files.
- Success - log of holes that are found.
- tracelog - step by step trace of search.
-
- AUTHOR
- Bob Baldwin, MIT Lab for Computer Science, Programming and
- Systems Group.
- E-Mail Address :
-
- baldwin@xx.lcs.mit.edu
- ...!mit-eddie!baldwin
-
- Kuang was inspired by William Gibson's book, Neuromancer, which won the
- 1984 Hugo award. In honor of Gibon's book, systems that use rule based
- searching to find security holes should be called a kuang-type systems.
-
- BUGS
- Needs to be smarter about command files (e.g., it should look
- for writeable files executed via crontab).
- Doesn't include rules for all the programs that run with
- their user id set to root.
-