home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 278.lha / Password_v1.21p / password.doc < prev    next >
Text File  |  1989-08-08  |  15KB  |  274 lines

  1.       Program:  password
  2.    Programmer:  George Kerber
  3.       Written:  05/22/89 - 07/31/89
  4.       Version:  v1.21p
  5.   Application:  AmigaDOS
  6.       Purpose:  Provides password protection.  Operation is similar to 
  7.                 the UNIX passwd command.
  8.            
  9.        SYNTAX:  password [ -a | ? ]
  10.                
  11.                 Use the -a option from your startup sequence and no options
  12.                 to access the change password utility.   
  13.  
  14.                 Password change will only be accessible once the "password -a"
  15.                 program has been executed at boot time.
  16.  
  17.  Installation:  The following directions must be followed exactly, or password
  18.                 will fail or destroy system security.
  19.  
  20.                 Copy password to the c: directory of your boot disk and to the
  21.                 c: directory of your system disk (if they are different).
  22.                 
  23.  
  24.                 Startup-Sequence
  25.  
  26.                 A few commands for setup must be completed in your
  27.                 startup-sequence before executing password.  You should only
  28.                 execute what is absolutely necessary in your startup-sequence.
  29.                 
  30.                 If you have a hard-drive and are booting from a floppy, you
  31.                 should mount the hard-drive first.  You must assign sys: to
  32.                 wherever it should be.  In other words, if you do have a
  33.                 hard-drive, assign sys: to your hard-drive.  Otherwise
  34.                 assign sys: to your boot floppy.
  35.  
  36.                    assign sys: df0:    or   assign sys: dh0:   etc...
  37.  
  38.                 For accounting purposes, your battery clock (if it exists)
  39.                 should be read before executing password.  (see below)
  40.  
  41.                 For a floppy system, at minimum (and probably maximum) your  
  42.                 startup-sequence should look like this:
  43.             
  44.                    assign sys: df0:
  45.                    read your battery clock....
  46.                    password -a
  47.                    endcli
  48.  
  49.                 A workable startup-sequence and startupII has been included
  50.                 with this archive that will work for a floppy system.
  51.                
  52.                 The following series of commands are executed from within
  53.                 the password program:
  54.       
  55.                 c:addbuffers df0: 10          
  56.                 c:makedir ram:env
  57.                 c:makedir ram:clipboards
  58.                 c:makedir ram:t
  59.                 c:resident c:assign pure
  60.                 c:assign C: sys:c 
  61.                 c:assign DEVS: sys:devs 
  62.                 c:assign LIBS: sys:libs 
  63.                 c:assign S: sys:s
  64.                 c:assign SYSTEM: sys:system 
  65.                 c:assign L: sys:l 
  66.                 c:assign FONTS: sys:fonts
  67.                 c:assign T: ram:t 
  68.                 c:assign CLIPBOARDS: ram:clipboards 
  69.                 c:assign ENV: ram:env
  70.                 c:mount newcon
  71.                 c:resident >nil: cli l:shell-seg system pure add
  72.                 c:newshell newcon:0/0/640/200/Secure-Shell from s:startupII
  73.    
  74.                 As you can see, quite a bit of set-up is being done from
  75.                 the password program.  The commands listed above should not
  76.                 be repeated in the startup-sequence or startupII scripts.
  77.  
  78.                 If password is satisfied, it will open a SHELL window and
  79.                 execute a script called s:startupII.  This script must
  80.                 exist, although nothing has to be done in it.  Finish any
  81.                 commands that you need to complete in startupII.  Complete
  82.                 startupII with a loadwb and endcli command if you want the
  83.                 workbench to be loaded and shown.  The startupII file should
  84.                 be in the s: directory of your system disk as you assigned it
  85.                 in your startup-sequence.
  86.  
  87.                 There is a script called password.install which if executed
  88.                 will copy the password program and all supporting files
  89.                 to your system disk.  This script will modify your disks, so
  90.                 be sure to have current backups.  Be aware that your existing
  91.                 startup-sequence and startupII files will be overwritten.
  92.                 This password.install script should only be used for 
  93.                 non-hard-drive systems.
  94.  
  95.                 The following files should be copied or renamed as described
  96.                 below.  You may choose to use the supplied startup-sequence,
  97.                 startupII and shell-startup or modify your existing files.
  98.       
  99.                 DEFINITIONS:
  100.  
  101.                   boot disk:  this is the disk that you boot from.  It may be
  102.                               df0: or your hard drive if you auto-boot.
  103.                 system disk:  this is the disk that you assigned to sys: in
  104.                               your startup-sequence.  The boot disk and
  105.                               system disk may be the same disk.
  106.                 
  107.                 RENAME:
  108.  
  109.                 rename your c:dir command to c:dirx
  110.                 
  111.                 COPY:
  112.  
  113.                 startup-sequence ----- copy to your boot disk s: directory.
  114.                 startupII ------------ copy to your system s: directory.
  115.                 password ------------- copy to your boot and system c:
  116.                                        directory. 
  117.                 loop ----------------- rename to dir and copy to your boot
  118.                                        and system disk.
  119.                 shell-startup -------- copy to your system s: directory.
  120.  
  121.    Directions:  Once you have installed password properly, reboot using
  122.                 your new boot disk.  Since this is the first time you
  123.                 have executed the program, you will be asked for the
  124.                 maintenance password.  This is a hard coded password that
  125.                 will always work.  Keep the maintenance password secure, 
  126.                 since anyone will have complete access to your computer
  127.                 if they know the maintenance password.  You only have one
  128.                 chance to enter the maintenance password.  (see the readme
  129.                 file for information on obtaining a custom copy of this
  130.                 program with a unique maintenance password)
  131.  
  132.                 The maintenance password is: dict10nary  This maintenance
  133.                 password cannot be located or viewed with a sector editor,
  134.                 like NewZap.
  135.  
  136.                 You will be prompted to enter a user password twice.  The user
  137.                 password must be between 5 and 15 characters.  When you finish
  138.                 creating the user password, your startup-sequence/startupII
  139.                 will continue.  The user password you entered will be stored
  140.                 in a file called s:password.  The password is encoded and is
  141.                 secure from prying eyes.  If this file ever gets deleted,
  142.                 password will prompt for the maintenance password the next
  143.                 time the password is needed.  Deleting the password file
  144.                 will not help anyone gain access.
  145.                 
  146.                 Once you are booted up, you can change the user password 
  147.                 anytime if you know the old password or the maintenance
  148.                 password.  Execute password with no options, you will
  149.                 be prompted for the old and new passwords.  Here you have
  150.                 the option of removing the password protection.  Press
  151.                 enter when you are asked for the new password.  If you
  152.                 choose to have the password protection removed, password will
  153.                 still execute on bootup, but will not ask for a password
  154.                 from the user.  You will only have 5 chances to complete
  155.                 the password change correctly, but you can always try again.
  156.                 Entering a q at any prompt will terminate the password
  157.                 change utility.  This feature allows your to remove the
  158.                 password protection easily, without having to change any of
  159.                 your system setup.
  160.  
  161.                 Everytime you boot from this disk, the user will be prompted
  162.                 for the user password (although the maintenance password can
  163.                 be entered) unless you have previously set password for
  164.                 "no password" as described above.  The user will only have
  165.                 three chances to enter the correct password.  If the user
  166.                 makes 3 invalid attempts, the program goes into a loop
  167.                 and the only way out is to reboot.
  168.  
  169.    Accounting:  There are many accounting methods used in the password
  170.                 program, so the system disk must be writable.  The system
  171.                 clock should also have been set before executing the
  172.                 password program on bootup as described above.
  173.                 The system disk is the disk that you assigned sys: to as
  174.                 one of the first commands in your startup-sequence.  If
  175.                 you assigned sys: to df0:, then df0: must not be
  176.                 writeprotected.  If you assigned sys: to a hard-drive, then
  177.                 it is already writable.  Password will check if it can
  178.                 write to the system disk and prompt the user if the sys:
  179.                 disk is writeprotected.  If the user doesn't correct the
  180.                 trouble, it's loop time....
  181.  
  182.                 Every incorrect password entered on bootup is recorded in
  183.                 a file called s:Access on your system disk.
  184.  
  185.                 The date and time of every boot is recorded in a file called
  186.                 s:usage on your system disk.
  187.  
  188.                 Every access attempt that fails for any reason has the date
  189.                 and time recorded in both the s:usage file and l:denied.
  190.     
  191.                 Once the user gives the correct password, the program
  192.                 checks if any previous access's have been denied, if so
  193.                 the date and time will be displayed to the user.  So whenever
  194.                 an authorized user boots up the Amiga, they will be notified
  195.                 of any unauthorized access attempts, and a permanent record
  196.                 of all unauthorized access attempts will be maintained in
  197.                 a file called l:denied.
  198.  
  199.  
  200.      Security:  There is a program called loop included in this archive.
  201.                 This program can be used to assist in system security to
  202.                 insure that the system was booted properly using the
  203.                 password program.  I suggest that you rename the dir
  204.                 command in your c: directory to dirx and then rename
  205.                 loop to dir and copy it to your c: directory.  If the
  206.                 password program was used to boot the Amiga, executing
  207.                 the new dir command will call the dirx command and the
  208.                 user will not notice any difference.  If the Amiga was not
  209.                 booted using the password program when the dir command
  210.                 is executed, it's loop time.....
  211.  
  212.                 If you were going to break into someone's computer, what
  213.                 is the first command you'd run when you got the prompt?
  214.                 Right, a dir command to look around.  Follow the above
  215.                 directions and running a dir will cause the system to lock
  216.                 up unless the disk was booted using password.
  217.  
  218.                 Loop can be used with almost any program and it has an
  219.                 option to only check for a proper boot up using the
  220.                 password program and loop if it wasn't.  No other output
  221.                 will be done.  This can be useful to add a "dir -q" to
  222.                 every script you have on your system.
  223.  
  224.                 NOTE:  loop will not work with some ARP commands (dir works,
  225.                        list doesn't????), and some won't work because of
  226.                        what they do, like cd.
  227.  
  228.                 Another useful security measure is to rename the password
  229.                 program to something that doesn't sound like password.  Try
  230.                 calling it mkdir or time or something like that.  If someone
  231.                 were to see mkdir -a or time -a in your startup-sequence, would
  232.                 they suspect a password program?
  233.               
  234.                 You should password protect every bootable disk you have.
  235.                 Of course you shouldn't write to your original disks, but
  236.                 they should be locked up somewhere away from your
  237.                 computer anyway.
  238.  
  239.                 Once someone can boot up on one of your disks, they can
  240.                 simply use the dir commands from that disk to look at your
  241.                 protected disk.  Maybe your should use the dir/loop trick
  242.                 on every copy of dir your have.
  243.  
  244.                 If you have a hard-drive, keep only what is absolutly 
  245.                 necessary on your boot disk.  Keep a trick copy of dir, but
  246.                 don't keep any other commands like list, delete, type etc... 
  247.  
  248.                 Total security on the Amiga is impossible.  But using this
  249.                 program or a custom version (as described in readme) can
  250.                 keep most people out.  Most people are computer illiterates
  251.                 and would never be able to break this program.  The key to
  252.                 the password program is to insure that it is executed
  253.                 from your startup-sequence.  There are ways to stop the
  254.                 startup-sequence from executing, but I won't describe
  255.                 them here.  By doing some of the system setup in the password
  256.                 program and using the loop program as described above should
  257.                 help.
  258.  
  259.  
  260. Public Domain:  This version of password is public domain, but remember that
  261.                 I am making no guarantees of operation or security.  You're
  262.                 on your own.  If you want a custom version of the program,
  263.                 follow the procedure outlined in the readme file of this
  264.                 archive.  This program can be freely distributed, but
  265.                 please keep me as author and all the documentation intact.
  266.  
  267.  
  268.                               George Kerber
  269.                               19756 E. Linvale Drive
  270.                               Aurora, Colorado  80013
  271.                               (303) 693-2890
  272.  
  273.                               Compuserve:  74010,2132
  274.