==Phrack Magazine==



                 Volume Five, Issue Forty-Six, File 14 of 28



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



              A   L I T T L E   A B O U T   D I A L C O M

              *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*



                                   by



                               Herd Beast



                          (hbeast@phantom.com)



Introduction

~~~~~~~~~~~



Dialcom is an interesting system for hackers for two reasons:

First, it is used by business people, reporters and many other world

wide, and it offers a variety of information services, from a

bulletin board to stock market updates and news services.  Second,

Dialcom runs on Prime machines, so using Dialcom is a good way to

learn Prime.  True, it's not the best, as access is generally restricted,

but it's better than, say, learning VMS from Information America.



In these days, where everyone seems to be so centered about the

Internet and the latest Unix holes, it's important to remember that the

information super-highway is not quite here, and many interesting things

are out there and not on the Internet.  Phrack has always been a good place

to find out more about these things and places, and I wrote this article

after reading the Dialog articles in Phrack.



Well, gentle reader, I guess that my meaning-of-life crap quota is full,

so let's move on.



Accessing Dialcom and Logging In

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



Dialcom is accessible world-wide.  It offers connection to Tymnet, Sprintnet,

and other networks as well as dialin modems.  Since I am not writing to

Washington people only, I will specify only the easiest methods -- Tymnet

and Sprintnet -- and some of the more interesting access methods.



Dialcom is basically a Primecom network.  Each user has an account on

one or more of the systems connected to that network.  To access Dialcom,

the user needs to access the machine his account is on.  First, he logs

into a public data network and follows the steps required to connect to

a remote note.  On Tymnet, this means getting to the "please log in:"

prompt, and on Sprintnet it's the famous '@' prompt.



For Tymnet, you must enter at the prompt: DIALCOM;

(eg, DIALCOM;57).  The same goes for TYMUSA connection from outside

the USA.



For Sprintnet or other PADs, you must enter the correct NUA:



   System #         Sprintnet NUA         Tymnet NUA

   ========         =============        =============

     XX             3110 301003XX        3106 004551XX

   (32, 34,

    41 - 46,

    50, 52,

    57, 61,

    63, 64)



It should be noted that Dialcom keeps its own X.25 network, Dialnet,

and the NUAs on it are those of the systems (connect to address "57"

for system 57).



Dialcom has other access methods, meant to be used from outside the

USA, but sometimes available from within as well.



One is a COMCO card, which is inserted into a reader connected to the

computer and the modem through a serial link.  The user then calls a

special dial-up number, and can connect to Dialcom (or any other NUA).

The card contains a number of "tax units" which are deducted as the

connection goes through, until they are exhausted and the card is useless.

The user calls the dial-up and types in ".".  The amount of tax units

on the card will then appear on the screen, and the user can connect to a

host.  COMCO dial-ups:



                Location                                Number

          =======================                   ==============

          Australia                                 +61-02-2813511

          Belgium                                   +32-02-5141710

          France                                    +33-1-40264075

          West Germany                              +49-069-290255

          Hong Kong                                 +852-5-8611655

          Netherlands                               +31-020-6624661

          Switzerland                               +41-022-865507

          United Kingdom                            +45-01-4077077

          USA (Toll Free)                           +1-800-777-4445

          USA                                       +1-212-747-9051



The other way is through Infonet.  I will not turn this into an Infonet

guide, save to write the logon sequence needed to access Dialcom.

At the '#' prompt, enter 'C'.  At the "Center:" prompt, enter "DC".

Dialcom NUAs are 31370093060XX, where XX is the system number.



Once the connection to a Dialcom system has been established, you will

be greeted by the Prime header:



Primecom Network 19.4Q.111 System 666



 Please Sign On

>



And the '>' prompt.  This is a limited prompt as most commands cannot

be issued at it, so you need to login.



Dialcom user id's are typically 3 alphabetic characters followed by

several digits.  The password may contain any character except for

",;/*" or spaces, and my experience shows that they tend to be of

intermediate complexity (most will not be found in a dictionary, but

could be cracked).



Password security may become useless at this point, because the Dialcom

Prime systems allow ID to take both user id and password as arguments

(which some other Primes do not) and in fact, Dialcom tutorials tell

users to log on like this --



>ID HBT007 IMEL8



-- which makes ``shoulder surfing'' easier.



One you log on, you will see:



Dialcom Computer Services 19.4Q.111(666)

On At 14:44 07/32/94 EDT

Last On At 4:09 06/44/94 EDT



>



And again, the '>' prompt.



>off

Off At 14:45 07/32/94 EDT

Time used: 00h 00m connect, 00m 01s CPU, 00m 00s I/O.



Security at Dialcom

~~~~~~~~~~~~~~~~~~



As mentioned, while passwords are relatively secure, the manner in

which they are entered is usually not.



As for the accounts themselves, it's important to understand the

general way accounts exist on Dialcom.  Dialcom users are usually

part of a business that has an ``account group'' on Dialcom.  Each

user gets an account from that group (HBT027, HBT054).  Each group

also has a group administrator, who controls what each account can

access.  The administrator determines which programs (provided by Dialcom)

each user can access.  A foreign correspondent for a magazine might

have access to the news services while other users might not.  The

administrator also determines how much the user can interface with

the Prime OS itself.  Each user can run a few basic commands (list

files, delete, sign off) but above that, it's up to the administrator.

The administrator may opt to remove a user from the controlling menuing

system -- in which case, the user has no restrictions forced upon him.



Group administrators, however, handle only their groups, and not the

Dialcom system.  They need, for example, to notify Dialcom staff if

they want an account removed from the system.



Another (different yet combined) part of the account/group security

are accounts' ``security levels'' (seclevs).  Seclevs range from 3

to 7, and determine the access an account has to various places.

Seclev 4 users, for example, are not restricted to seeing only users

of their group on the system, and can delete accounts from the menuing

system.



User accounts own their directories and files within (but high seclevs

can read other users' files).  Each account's security is left in some

extent to its owner, in that the user sets his own password.  When

setting a password, a user can set a secondary password.  Any user wishing

to access that user's directory will need that password.  Furthermore,

the user can allow other users to attach as owners to his directory if

they know his password (come to think of it, couldn't they just login

as him?).  This is all controlled by the PASSWD program (see ``Common

Commands'', below).



Dialcom also allows for login attempt security using the NET_LOCK

program.  NET_LOCK blocks login attempts from addresses that have

registered too many login failures over a period of time (the default

being blocking for 10 minutes of addresses that have registered more

than 10 failed login within 5 minutes).  NET_LOCK -DISPLAY is accessible

to users of Seclev 5 and shows addresses currently blocked and general

information.  Other options are accessible to Seclev 7 and are:

-ON, -OFF, -ATTEMPTS (number of attempts so that NET_LOCK will block

an address), -LOCK_PERIOD (the period in which these attempts must

occur), -LOCK_TIME (time to block), -WINDOW (a time window in which the

lockout feature is disabled).



A little unrelated is the network reconnect feature of the Prime

computers.  When a user gets disconnected from the system because

of a network failure, or for any other reason which is not the

system's fault, he can log back in and reconnect into the disconnected

job.  When this happens, the user sees, upon logging on:





You Have a Disconnected Job:



  HBT007               d09   1  109   NT   NETLINK  989898989    6 3



Do You Want to Reconnect?



Which means user's HBT007 job #9 (a NETLINK command) is waiting for

a reconnection.  At this point, the user can continue, leaving the

job to hang until the system signs it off when a certain amount of

time expires; sign the job off himself; or reconnect to that job.

(Try "HELP" at the prompt.)  This wouldn't be important, but experience

shows that many disconnections occur when someone logs into Dialcom

over a network, and then uses NETLINK (or another program) to connect

to another site over a network, and somewhere, some time, he issues

a control sequence (let's say to tell NETLINK to do something) that

gets processed by the first network, which logs him off.  So there

is potential to log into the middle of people's sessions (yeah, like

detached ttys).



Common Commands

~~~~~~~~~~~~~~



Common commands are in reality the basic Prime commands that every

account has access to.  Here they are, in alphabetical order.



`CLEAR' Clear the screen.



`DATE'  Shows the date at which a command was entered.  Output:



        >DATE

        Proceed to next command



        >BAH



        Friday, June 38, 1994 10:01:00 AM EDT



`DEL'   Deletes a file.



`DELP'  Deletes several files based on wildcards.  Can verify deletion

        of every file, and delete only file modified before, after, or

        between certain dates.



`ED'    Is the default and simplest file editor on Dialcom (some of its

        brothers are JED and FED).  Once invoked, ED enters INPUT mode,

        in which the user just types text.  To enter EDIT mode, where

        you can issue commands, you need to press  on a blank line

        (the same thing will get you from EDIT mode back to INPUT mode).

        The EDIT mode uses a pointer to a line.  All commands are carried

        on the line that the pointer points to.  "T" will bring the

        pointer to the top of the text, "B" to the bottom, "N" to the

        next line down, "U" to the next line up, and "L " to

        the line containing .  ED commands include:



        P:     PRINT the pointer line.  P will print 

               of lines.

        C:     Change words.  The format is "C/old word/new word".

        A:     Appends words.  The format is "A ".

        R:     Retype pointer line.  The format is "R ".

        SP:    Check the spelling of the text, and then point to

               the top of the text.

        SAVE:  Will save the text and exit ED.

        Q:     Will quit/abort editing and exit ED.



`F'     List all file info.  Output:



        DIALCOM.TXT  001  13/30/94  13:50  ASC  D W R



        Which means file name "DIALCOM.TXT", size of 1 file blocks,

        lat modified on 13/30/94 at 13:50, is an ASC type file, and

        the account has the permissions to D(elete), W(rite), and

        R(ead) it.



`HELP' (`?')  Displays a nicely formatted menu of available commands.



`INFO'  System info.  INFO  displays an information

        file, for example, INFO NETLINK.



        "INFO ?" lists info files.

        "INFO BRIEF" lists info files grouped by application

        "INFO INFO" lists info files with their descriptions.



`L'     List all file names.  Output:



        HBT007 (Owner)



        DIALCOM.TXT



`LS'    Display information about available segments and the account's

        access to them.  Output:



        2 Private static segments.

        segment access

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

        4000    RWX

        4001    RWX



        11 Private dynamic segments.

        segment access

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

        4365    RX

        4366    RX

        4367    RWX

        4370    RWX

        4371    RX

        4372    RWX

        4373    RX

        4374    RWX

        4375    RX

        4376    RX

        4377    RWX



`NAME'  Changes UFD name.  Output:



        >NAME



        Old Name: John Gacy

        UFD Name: Herd Beast

        All done



        >WHO



        Herd Beast HBT007



`NETWORK'  Accesses a database that contains dial-up number for Sprintnet,

           Tymnet, Datapac and Dialcom's Dialnet by State/City.



`OFF'   Sign off the system.



`ONLINE' Who's online?  The amount of data displayed depends on the

         account's seclev.  Seclevs below 4 are restricted to seeing

         only users of their group.  Output:



         HBT007      PRK017      MJR



`PAD'   Allows you to send commands to an X.29 PAD, these commands

        being the SET/SET?/PAR? commands and their parameter/value

        pairs.



`PASSWD' Change your password.  PASSWD has two forms: a short one,

         which just changes the user's password, and a long form,

         invoked by PASSWD -LONG, which allows the user to set

         a second password for other users accessing his directory,

         and also to determine if they can have owner access to

         the directory.



`PROTECT'  Protects a file (removes permissions from it).



           "PROTECT DIALCOM.TXT" will remove all three (D, W, R)

           attributes from it.  This will result in:



           >DEL DIALCOM.TXT

           Insufficient access rights.  DIALCOM.TXT (DEL:10)



           But --



           >DELETE DIALCOM.TXT

           "DIALCOM.TXT" protected, ok to force delete? y



`SECLEV' Your security level.  Output:



         Seclev=5



`SIZE'  Size information about a file.  Output:



        1 Block, 404 Words



`STORAGE'  Shows storage information.



`SY'    Show users on system.  (Same restrictions as for ONLINE apply.)

        Will show user name, time on, idle time, devices used, current

        jobs and state, etc.  Output:



    41 Users on sys 666



 Names    use idle mem State command    object    devs



 HBT007   *11   0  155   R1   SY                   6 3  from Tymnet via X.25





`SYS'   Displays account information and system number.  Output:



        HBT007  on system 666.



`TERM'  Used to tell the Dialcom computer what terminal the user is

        using.  A list of supported terminals is generated by "TERM

        TERMINALS".  TERM options are:



        TYPE          (TYPE VT100)

        WIDTH                 (Terminal width, if different

                                      than default)

        TOP                          (Start listings at top of screen)

        PAUSE                        (Pause listings when screen is

                                      full)



        -ERASE, -KILL          (Sets the erase or kill character)

        -BREAK               (Enables or disables BREAKs)

        -HALF or -FULL               (Half duplex of full duplex)

        -DISPLAY                     (Output current terminal information)



`WHO'   Displays account information.  Output:



        HBT007



        Which means user HBT007 on system 666 on device 6.



Communicating on Dialcom

~~~~~~~~~~~~~~~~~~~~~~~



Users who want to communicate on Dialcom have two choices, basically.

These are the Dialcom bulletin board and electronic mail.  The Dialcom

bulletin board has two versions.  The first consists of several message

bases (called ``categories'') which are shared between some Dialcom

systems (and mostly used by bored employees, it seems); there are also

private bulletin boards, which are not shared between the systems.  They

belong to account groups, and only users in an account group can access

that group's bulletin board system.  These version of the Dialcom board

are often empty (they have no categories defined and hence are unusable).



This is accessed by the command POST (PRPOST for the private board).

Once POST is activated, it will display a prompt:



Send, Read or Purge:



If the answer is READ, POST will ask for a category (a list of categories

will be displayed if you type HELP at that prompt).  Once a category

has been joined, you will be able to read through the messages there:



Subject:  ?

From:  HBT007             Posted:  Sat  32-July-94  16:47    Sys 666



quit

/q

/quit



Continue to Next Item?



Answering SEND at the first prompt will allow you to send a message in a

category.



Answering PURGE will allow you to delete messages post by your account.

When you enter PURGE and the category to purge message from, the system

will show you any posts that you are allowed to purge, followed by a

"Disposition:" prompt.  Enter DELETE to delete the message.



The second way to communicate is the Dialcom MAIL system.  MAIL allows

sending and receiving messages, it allows for mailing lists, filing

mail into categories, holding mail to read later and so on.  MAIL is

invoked by entering, uh... oh, yes, MAIL.



It works along similar lines to those of POST, and will display the following

prompt:



Send, Read or Scan:



SEND:  Allows you to send a message.  It will prompt with "To:",

"Subject:" and "Text:" (where you enter the actual message, followed

by ".SEND" on a blank line to end).  After a message is sent, the

"To:" prompt will appear again -- use "QUIT" to leave it.



A word about the "To:" prompt.  There are two configuration files which

make its use easier.  First the MAIL.REF file, which is really a mailing

list file.  It contains entries in the format of --



         

        DOODZ DVR014 ABC0013 XYZ053



-- and at the "To:" prompt, you can just enter "DOODZ" and the message

will be sent to all three accounts.  When you enter a name, MAIL searches

through your MAIL.REF, and then through the account administrator's, and

only then parses it as an account name.  Second is the mail directory,

which contains the names and account IDs of many users the account is

in contact with.  To display it, type "DIS DIR" at the first prompt.

You'll get something like this:



HERD-BEAST            6666:HBT007      WE'RE BAD AND WE'RE KRAD



Which means you can type "HERD-BEAST" at the prompt, and not just

HBT007.  Also, there are special options for the "To:" prompt, most

notable are: CC to send a carbon copy; EX to send the message with

``express priority''; DAR to request that if the message is sent

to a user on another Dialcom system, POSTMASTER will send you a

message verifying that your message has been sent; and NOSHOW,

to keep the receiver from seeing everybody else on the "To:" list.

For example (all these people are in the mail directory),



        To: DUNKIN D.DREW CC FOLEY NOSHOW EX



You enter the message about to be sent at the "Text:" prompt.  That

mode accepts several commands (like .SEND), all of which begin with a

dot.  Any command available at the "To:" prompt is available here.

For example, you can add or remove names from to "To:" field using

".TO " or ".TO -", and add a CC using ".CC ".

You also have a display command, ".DIS".  ".DIS" alone shows the text

entered so far; ".DIS TO" shows the "To:" field; ".DIS HE" shows

the entire header; etc.  Finally, you have editing option.  ".ED" will

load editing mode, so you can change the text you entered.  ".LOAD

" will load  into the text of the message.  ".SP"

will check the spelling of text in the message, and there are other

commands.



READ:  Allows you to read mail in your mailbox.  Once you enter READ,

MAIL will display the header of the first message in your mailbox

(or "No mail at this time") followed by a "--More--" prompt.  To

read the message, press ; otherwise, enter NO.  After you are done

reading a message, you will be prompted with the "Disposition:" prompt,

where you must determine what to do with the message.  There you can enter

several commands:  AGAIN to read the message again;  AG HE to read the

header again; AP REPLY to reply to the message and append the original

message to the reply; AP FO to forward the message to someone and add

your comments to it; REPLY to reply to the sender of the message; REPLY

ALL to reply to everybody on the "To:" field; FILE to file the message;

SA to save the message into a text file; NEXT to read the next message

in your mailbox; and D to delete the message.



SCAN:  Allows you see a summary of the messages in the mailbox.  Both

READ and SCAN have options that allow you to filter the messages you

want to read:  FR  to get only messages from ; TO  to

get only messages sent to ; 'string' to get only messages containing

``string'' in the "Subject:" field; "string" to get only messages

containing ``string'' in the message itself; FILE CATEGORY to get only

messages filed into ``CATEGORY''; and DA Month/Day/Year to get only messages

in that date (adding a '-' before or after the date will get you everything

before or after that date, and it's also possible to specify two dates

separated by a '-' to get everything between those dates.  For example,

to get all of Al Gore's messages about Clipper before August 13th:



        READ FILE CLIPPER FR GOR 'Great stuff' DA -8/13/94



There is also a QS (QuickScan) command that behaves the same as SCAN,

only SCAN shows the entire header, and QS just shows the "From:" field.



However, there is more to do here than just send, read or scan.

Some of it was mentioned when explaining these commands.  Both sent

and received messages can be saved into a plain text file or into

a special mailbox file, called MAIL.FILE.  Messages filed into the

MAIL.FILE can be grouped into categories in that file.



SAVING MESSAGES:  Messages are saved by entering "SA filename" at a

prompt.  For sent message, it's the "Text:" prompt, while entering the

message, and the command is ".SA", not "SA".  For received message, it's

either the "--More--" or the "Disposition:" prompt.



FILING MESSAGES:  Messages are filed in two cases.  First, the user

can file any message into any directory, and second, the system files

read messages that lay in the mailbox for over 30 days.  Received messages

are filed by entering "FILE" at the "Disposition:" prompt.  This files

the message into a miscellaneous category called BOX.  If an optional

 is added after "FILE", the message will be filed into

that category.  If  doesn't exist, MAIL can create it

for you.  After a message has been filed, it's not removed from the

mailbox -- that's up to the user to do.  Sent messages behaved the same

way, but the command is ".FILE" from the "Text:" prompt.



To display categories of filed mail, enter DIS FILES at a prompt.  To

read or scan messages in filed, just add "FILE  after

the command (READ, SCAN, etc).  To delete a category, enter D FILE

.  To delete a single message in a category, just use

D as you would on any other message, after you read it from the

MAIL.FILE.



Connecting via Dialcom

~~~~~~~~~~~~~~~~~~~~~



Dialcom allows its customers to access other systems through it.

There are some services offered specifically through Dialcom, such as

the BRS/MENUS service, which is an electronic library with databases

about many subjects, Telebase's Cyclopean Gateway Service, which offers

access to many online database services (like Newsnet, Dialog and even BRS)

and more.  These services have a direct connection to Dialcom and software

that maps Dialcom user ids to their own ids (it's not usually possible for

someone to access one of these services without first connecting to Dialcom).



Another method is general connection to X.25 addresses.  Since Dialcom

is connected to X.25, and it allows users to use the Prime NETLINK

commands, it's possible to PAD out of Dialcom!!#!



NETLINK is invoked by entering NETLINK.  NETLINK then displays its own,

'@' prompt.  The commands available there are QUIT, to quit back to

the OS; CONTINUE, to return to an open connection; CALL, to call an

address; and D, to disconnect an open connection.



CALL takes addresses in several formats.  A system name, to connect to

a Dialcom system, or an address in the format of DNIC:NUA.  For example,



@ CALL :666

Circuit #1

666 Connected

[...]



@ CALL 3110:21300023

Circuit #2

21300023 Connected

[...]



NETLINK establishes connections in the form of circuits.  A circuit can

be broken out of into command mode (the '@' prompt), using "@",

and another can be opened, or parameters can be changed, etc.

NETLINK has other commands, to log connections into a file, or set PAD

parameters (SET, PAR), or turn on connection debugging, or change

the default '@' prompt, and more.



Things to Do on Dialcom

~~~~~~~~~~~~~~~~~~~~~~



Much of what Dialcom offers was not covered until now and will not

be covered.  That's because most the services could use a file each,

and because many account groups have things enabled or disabled

just for them.  Instead, I will write shortly about two of the more

interesting things online, the news service and clipping service,

and add pointers to some interesting commands to try out.



The news service, accessed with the NEWS command, is a database of

newswires from AP, Business Wire, UPI, Reuters and PR Newswire.

The user enters the database, and can search for news by keywords.



After entering NEWS, you will see a menu of all the news agencies.

Once you choose an agency, you will enter its menu, which sometimes

contains a copyright warning and terms of usage and also the list

of news categories available from that agency (National, North America,

Business, Sports, etc).  Once you choose the category, you will be

asked for the keyword to search for.  If a story (or several stories) was

found containing your desired keyword, you can read through the

stories in the order of time, or the order they appear, or reverse

order and so on, and finally mail a story to yourself, or enter new

search keywords, or jump to another story, or simply quit.



The news clipping service, available with the command NEWSTAB, allows

the user to define keyword-based rules for selecting news clippings.

The system then checks every newswire that passes through it, and if

it matches the rules, mails the newswire to the user.



After entering NEWSTAB, you are presented with a menu that allows you

to show, add, delete, and alter your rules for choosing news.  The rules

are made using words or phrases, logical operators, wildcards and

minimal punctuation.  A rule can be as simple as "HACKING", which will

get every newswire with the word "hacking" in it mailed to you, or

if you want to be more selective, "NASA HACKING".  Logical operators

are either AND or OR.  For example, "HACKING AND INTERNET".  Wildcards

are either '*' or '?' (both function as the same).  They simple replace

any number of letters.  Punctuation is permitted for initials,

abbreviations, apostrophes or hyphens, but not for question marks and

similar.  All of this is explained in the NEWSTAB service itself.



For the file hungry, Dialcom offers several file transfer programs,

including KERMIT and Dialcom's FT, which implements most popular

protocols, like Zmodem, Xmodem, etc.



A small number of other fun things to try:



NET-TALK        The ``interactive computer conferencing system'' -- build

                your private IRC!



CRYPTO          Dialcom's encryption program.  Something they're probably

                going to love on sci.crypt.



NUSAGE          By far one of the better things to do on Dialcom, it was

                left out of this file because it is simply huge.  This

                program allows the user (typically an administrator) to

                monitor network usage, sort the data, store it, peek

                into all the little details (virtual connection types,

                remote/local addresses, actions, time, commands, etc).

                Unfortunately, it's completely beyond the scope of this

                file, as there are tons of switches and options to use

                in order to put this program to effective use.