home *** CD-ROM | disk | FTP | other *** search
- Program: password
- Programmer: George Kerber
- Written: 05/22/89 - 07/31/89
- Version: v1.21p
- Application: AmigaDOS
- Purpose: Provides password protection. Operation is similar to
- the UNIX passwd command.
-
- SYNTAX: password [ -a | ? ]
-
- Use the -a option from your startup sequence and no options
- to access the change password utility.
-
- Password change will only be accessible once the "password -a"
- program has been executed at boot time.
-
- Installation: The following directions must be followed exactly, or password
- will fail or destroy system security.
-
- Copy password to the c: directory of your boot disk and to the
- c: directory of your system disk (if they are different).
-
-
- Startup-Sequence
-
- A few commands for setup must be completed in your
- startup-sequence before executing password. You should only
- execute what is absolutely necessary in your startup-sequence.
-
- If you have a hard-drive and are booting from a floppy, you
- should mount the hard-drive first. You must assign sys: to
- wherever it should be. In other words, if you do have a
- hard-drive, assign sys: to your hard-drive. Otherwise
- assign sys: to your boot floppy.
-
- assign sys: df0: or assign sys: dh0: etc...
-
- For accounting purposes, your battery clock (if it exists)
- should be read before executing password. (see below)
-
- For a floppy system, at minimum (and probably maximum) your
- startup-sequence should look like this:
-
- assign sys: df0:
- read your battery clock....
- password -a
- endcli
-
- A workable startup-sequence and startupII has been included
- with this archive that will work for a floppy system.
-
- The following series of commands are executed from within
- the password program:
-
- c:addbuffers df0: 10
- c:makedir ram:env
- c:makedir ram:clipboards
- c:makedir ram:t
- c:resident c:assign pure
- c:assign C: sys:c
- c:assign DEVS: sys:devs
- c:assign LIBS: sys:libs
- c:assign S: sys:s
- c:assign SYSTEM: sys:system
- c:assign L: sys:l
- c:assign FONTS: sys:fonts
- c:assign T: ram:t
- c:assign CLIPBOARDS: ram:clipboards
- c:assign ENV: ram:env
- c:mount newcon
- c:resident >nil: cli l:shell-seg system pure add
- c:newshell newcon:0/0/640/200/Secure-Shell from s:startupII
-
- As you can see, quite a bit of set-up is being done from
- the password program. The commands listed above should not
- be repeated in the startup-sequence or startupII scripts.
-
- If password is satisfied, it will open a SHELL window and
- execute a script called s:startupII. This script must
- exist, although nothing has to be done in it. Finish any
- commands that you need to complete in startupII. Complete
- startupII with a loadwb and endcli command if you want the
- workbench to be loaded and shown. The startupII file should
- be in the s: directory of your system disk as you assigned it
- in your startup-sequence.
-
- There is a script called password.install which if executed
- will copy the password program and all supporting files
- to your system disk. This script will modify your disks, so
- be sure to have current backups. Be aware that your existing
- startup-sequence and startupII files will be overwritten.
- This password.install script should only be used for
- non-hard-drive systems.
-
- The following files should be copied or renamed as described
- below. You may choose to use the supplied startup-sequence,
- startupII and shell-startup or modify your existing files.
-
- DEFINITIONS:
-
- boot disk: this is the disk that you boot from. It may be
- df0: or your hard drive if you auto-boot.
- system disk: this is the disk that you assigned to sys: in
- your startup-sequence. The boot disk and
- system disk may be the same disk.
-
- RENAME:
-
- rename your c:dir command to c:dirx
-
- COPY:
-
- startup-sequence ----- copy to your boot disk s: directory.
- startupII ------------ copy to your system s: directory.
- password ------------- copy to your boot and system c:
- directory.
- loop ----------------- rename to dir and copy to your boot
- and system disk.
- shell-startup -------- copy to your system s: directory.
-
- Directions: Once you have installed password properly, reboot using
- your new boot disk. Since this is the first time you
- have executed the program, you will be asked for the
- maintenance password. This is a hard coded password that
- will always work. Keep the maintenance password secure,
- since anyone will have complete access to your computer
- if they know the maintenance password. You only have one
- chance to enter the maintenance password. (see the readme
- file for information on obtaining a custom copy of this
- program with a unique maintenance password)
-
- The maintenance password is: dict10nary This maintenance
- password cannot be located or viewed with a sector editor,
- like NewZap.
-
- You will be prompted to enter a user password twice. The user
- password must be between 5 and 15 characters. When you finish
- creating the user password, your startup-sequence/startupII
- will continue. The user password you entered will be stored
- in a file called s:password. The password is encoded and is
- secure from prying eyes. If this file ever gets deleted,
- password will prompt for the maintenance password the next
- time the password is needed. Deleting the password file
- will not help anyone gain access.
-
- Once you are booted up, you can change the user password
- anytime if you know the old password or the maintenance
- password. Execute password with no options, you will
- be prompted for the old and new passwords. Here you have
- the option of removing the password protection. Press
- enter when you are asked for the new password. If you
- choose to have the password protection removed, password will
- still execute on bootup, but will not ask for a password
- from the user. You will only have 5 chances to complete
- the password change correctly, but you can always try again.
- Entering a q at any prompt will terminate the password
- change utility. This feature allows your to remove the
- password protection easily, without having to change any of
- your system setup.
-
- Everytime you boot from this disk, the user will be prompted
- for the user password (although the maintenance password can
- be entered) unless you have previously set password for
- "no password" as described above. The user will only have
- three chances to enter the correct password. If the user
- makes 3 invalid attempts, the program goes into a loop
- and the only way out is to reboot.
-
- Accounting: There are many accounting methods used in the password
- program, so the system disk must be writable. The system
- clock should also have been set before executing the
- password program on bootup as described above.
- The system disk is the disk that you assigned sys: to as
- one of the first commands in your startup-sequence. If
- you assigned sys: to df0:, then df0: must not be
- writeprotected. If you assigned sys: to a hard-drive, then
- it is already writable. Password will check if it can
- write to the system disk and prompt the user if the sys:
- disk is writeprotected. If the user doesn't correct the
- trouble, it's loop time....
-
- Every incorrect password entered on bootup is recorded in
- a file called s:Access on your system disk.
-
- The date and time of every boot is recorded in a file called
- s:usage on your system disk.
-
- Every access attempt that fails for any reason has the date
- and time recorded in both the s:usage file and l:denied.
-
- Once the user gives the correct password, the program
- checks if any previous access's have been denied, if so
- the date and time will be displayed to the user. So whenever
- an authorized user boots up the Amiga, they will be notified
- of any unauthorized access attempts, and a permanent record
- of all unauthorized access attempts will be maintained in
- a file called l:denied.
-
-
- Security: There is a program called loop included in this archive.
- This program can be used to assist in system security to
- insure that the system was booted properly using the
- password program. I suggest that you rename the dir
- command in your c: directory to dirx and then rename
- loop to dir and copy it to your c: directory. If the
- password program was used to boot the Amiga, executing
- the new dir command will call the dirx command and the
- user will not notice any difference. If the Amiga was not
- booted using the password program when the dir command
- is executed, it's loop time.....
-
- If you were going to break into someone's computer, what
- is the first command you'd run when you got the prompt?
- Right, a dir command to look around. Follow the above
- directions and running a dir will cause the system to lock
- up unless the disk was booted using password.
-
- Loop can be used with almost any program and it has an
- option to only check for a proper boot up using the
- password program and loop if it wasn't. No other output
- will be done. This can be useful to add a "dir -q" to
- every script you have on your system.
-
- NOTE: loop will not work with some ARP commands (dir works,
- list doesn't????), and some won't work because of
- what they do, like cd.
-
- Another useful security measure is to rename the password
- program to something that doesn't sound like password. Try
- calling it mkdir or time or something like that. If someone
- were to see mkdir -a or time -a in your startup-sequence, would
- they suspect a password program?
-
- You should password protect every bootable disk you have.
- Of course you shouldn't write to your original disks, but
- they should be locked up somewhere away from your
- computer anyway.
-
- Once someone can boot up on one of your disks, they can
- simply use the dir commands from that disk to look at your
- protected disk. Maybe your should use the dir/loop trick
- on every copy of dir your have.
-
- If you have a hard-drive, keep only what is absolutly
- necessary on your boot disk. Keep a trick copy of dir, but
- don't keep any other commands like list, delete, type etc...
-
- Total security on the Amiga is impossible. But using this
- program or a custom version (as described in readme) can
- keep most people out. Most people are computer illiterates
- and would never be able to break this program. The key to
- the password program is to insure that it is executed
- from your startup-sequence. There are ways to stop the
- startup-sequence from executing, but I won't describe
- them here. By doing some of the system setup in the password
- program and using the loop program as described above should
- help.
-
-
- Public Domain: This version of password is public domain, but remember that
- I am making no guarantees of operation or security. You're
- on your own. If you want a custom version of the program,
- follow the procedure outlined in the readme file of this
- archive. This program can be freely distributed, but
- please keep me as author and all the documentation intact.
-
-
- George Kerber
- 19756 E. Linvale Drive
- Aurora, Colorado 80013
- (303) 693-2890
-
- Compuserve: 74010,2132
-