Cheops Network User Interface (the choice of a New Generation)
=============================
Copyright (C) 1999, Brent Priddy
<toopriddy@mailcity.com
http://www.linuxcarcam.com

What is Cheops-ng?
---------------
Cheops-ng is a network "swiss army knife".  It's "network neighborhood" done right
(or gone out of control, depending on your perspective).  It's a combination
of a variety of network tools to provide system adminstrators and users with
a simple interface to managing and accessing their networks.  Cheops-ng aims to
do for the network what the file manager did for the filesystem.

Additionally, cheops-ng has taken on the role of a network management system,
in the same category as one might put HP Openview.

Cheops was originally written by Mark Spencer, and is now being sponsored
greatly by Adtran, Inc. Cheops-ng is authored by Brent Priddy, the current
maintainer.

Location:
---------
http://www.linuxcarcam.net/cheops-ng    (home page)
ftp://ftp.linuxcarcam.net/pub/cheops-ng (FTP site:  look here for newest releases)

But reports can be e-mailed to me (Brent Priddy) at toopriddy@mailcity.com, but
any questions answered in the FAQ at the main cheops-ng page will not be
answered.  Suggestions and ideas for improving it are welcomed.

Requirements:
-------------
locations are sited below

 adns
 gtk >= 1.2
 gnome
 libpcap >= 0.4
 libpthread

Build:
------
Type "./configure", followed by "make" and (optionally) "make install"

You may wish to make the cheops executable setuid root, but it may be possible
for users to obtain raw network sockets, should bugs exist in gtk and/or gnome.

Run: 
----
Run "cheops-agent" (or "./cheops-agent" if you did not do the "install" part).  
The "agent" has command line options:
     -l    use a local socket for the client to connect
     -n    use a listener socket on the hostname
     -f    fork the process (just a nice "&")

If you do not have any command line options specified it the agent will
start up using the local AND network options. This "agent" is the heart of
cheops-ng, it does the discovering, OS detection, port scanning...

To run the gui "cheops-ng" (or same as above).  This is the actual client
program. It will try the local port created on the server then, if no luck,
it will ask you for the ip/hostname of the server.


Cheops-ng
does not yet use any command line options, however, you can set the
CHEOPS_HOME environment variable to the place cheops should look for its
pixmaps and configuration file.  Plugins are stored in a system dependent
directory.

Virtually everything is configured via the graphical interface.  After
discovering hosts, right clicking on them will give you a list of possible
choices.

Mechanics:
----------

* Simple ICMP "ping" packets are used to initially search a network for
  hosts that are alive.

* Domain Name Transfers are used to list hosts in a domain (adns)

* OS detection is done using invalid flags on TCP packets and the port
  scanning is also used for OS detection (nmap)

Soon to come:
* Mapping is done using UDP (or optionally ICMP) packets with small
  time-to-live values (traceroute and mtr, respectively)

* Monitoring is done using normal connect() sequences using sets of chained
  stages centerd around the gtk_input_add routine.

Notes:
------

This *IS NOT* designed to be a hacker tool, and you *MAY NOT* use it to
explore domains you do not have authorization to access.  I do not take any
responsibility for use of this tool on unauthorized domains!  Be aware that
cheops is not stealthy and that using it on a remote network, it will be
very obvious that you are doing so!

Distribution is governed by the GPL, included in this archive.

Credits:
--------
nmap:      http://www.insecure.org/nmap
adns:      http://www.gnu.org/software/adns