# Specrem Client & Server

## by Antti Kirjavainen

### Description

Specrem is a remote controlling tool for Windows 95/98/ME/NT4/2000/XP. It contains the Server and the Client program, which you can use to remote control other computers. When the server program is running on the other computer, you can remote control the system. This file contains information about the options and functions Specrem has.

### Installing the program

NOTE: If the program doesn't start and says something about a missing file, download and run this file.
If the program says that a component is not correctly registered, run the file SINSTALL.EXE, select "Install needed files" and press "OK".
Basic installation:
1. The server program must be running at the remote computer you wish to connect. Run it at that computer.
2. Connect to the server with the client program using the server's IP address (or hostname in LAN) and the server program's port (default 187).
Specrem does not contain any install program, because it doesn't need to be installed at all. The only thing you have to do is to unzip the ZIP-file and you can use the program. Specrem contains the following program files:

#### SSERVER.EXE
- This is the server executable.
- "/I" starts the server invisible.
- "/MAX" starts the server visible and opens the server window.
SCLIENT.EXE
- This is the client program.
- You can specify the address and port to connect from the command line, example: " SCLIENT 195.156.248.10:187"
SMESSAGE.EXE
- This file is used on the server computer when you use the option "Send message". If you don't wan't to use that option, you can delete this file, it isn't used to anything else.
STOOLS.EXE
- This file contains some extra functions, like "Wake up on LAN" and "Ping".
SERVINST.EXE
- This file installs the server program automatically and sets it to run at startup.
- The server will be installed invisible by default, but with the command line switch "/V" you can make it visible.
SERVUNST.EXE
- This file uninstalls the server program from the registry, so that it doesn't start at the Windows startup anymore. It also terminates the server process, if it's running and removes all its files.
- /A automates the uninstall process, so that it doesn't ask or say anything, just removes the server automatically.
SINSTALL.EXE
- You can install either only the needed files, or visible/invisible server with this file and uninstall the server too.
REGISTER.EXE
- Register/send a bug report with this program. Registration is TOTALLY free.

### Server options

Change port - Changes the port to listen.
Chat - Starts chat with a connected users.
Kick user - Kicks a connected user off.
Kick all - Kicks all connected users.
Change client status - You can change any client's status to Admin/User/Guest from the server program and also from the client program, if you're logged in as an Administrator.
Userlock - When userlock is enabled, all current users at the server will remain, but no-one can connect to the server.
Stop/Start - Disables/enabled server. When the server is disabled, no-one can connect to it.
Send call signal - The remote user will get a message saying "Server sent a call signal!". It can be used for testing the connection. NOTE: The signal will be sent to all users, and if a client doesn't respond, its address will be automatically kicked.
Send message - Sends a message to the remote user.
Options - You can set the accept & reject lists here. You can also choose, how many connections the server will accept at the same time.
Security - Server security options. See below.
Stats - Server stats. How many administrators, users and guests are connected.
Listen mode - Shows what the users are doing/trying to do.

### Security

Security is an essential part of any remote controlling program. Here are some frequently asked questions & answers:
Q: What are the users, administrators and guests allowed to do?
A: Administrators have full and unlimited access to do anything. Users and guests can only use the following options:
- Chat
- Send message
- Host version
- Host users, remote kicking not allowed
- Host options, view only, changing not allowed
- Host stats
- If "File server" is enabled, guests can browse files and users can also download & upload files (+ view file properties). Note that replacing files by uploading is not allowed. If the file already exists, server will cancel the upload. If you have set a root folder, users can only see, download and upload files to/from that directory.
Q: But can't the users and guests download Specrem's password files when in file server-mode?
A: Nope. Only administrators are allowed to download files named SPWD.DAT, SPWD1.DAT, SSPWD.DAT, SCPWD.DAT or SPWD2.DAT. And in case that a user would be able to get a password file some other way, the password is encrypted, and it would be very hard for even a professional to break the encryption.
Q: How secure is Specrem's encryption?
A: Specrem encrypts the password files 3 times with 3 different encryption methods.
Q: How is the password transferred between the client and server programs?
A: If you use encrypted connection, the password (as well as everything else) is sent encrypted, otherwise, as a plain text.
Q: What if the client program is hacked?
A: There is no hacking in the client program. Server program is the one that performs all the requested commands. Client program only sends commands to the server program, and server then decides to either follow or ignore the command depending on the user access level. So, hacking the client program doesn't accomplish anything.
Q: What if someone is able to break the encryption?
A: If this happens, I will immediately create a new encyption method and release a new version. However, though someone would have ability to read the password from the password files, what would he/she gain of it? it doesn't give access to any computer running Specrem server. Why? Because the hacker would have to get the password file first to connect to any computer as an administrator. How could he/she get it? Specrem server won't let users and guests to download password files, so the hacker would have to have an other way to access the computer. Either a backdoor program, or access to use the server computer itself. Still, it is be more likely that the person would just reset the security options in this case. Watch out for backdoor programs!
Q: The encrypted connection is slower!
A: The encrypted connection is a little slower, unless both, the server and the client computer have at least 600 Mhz processor. Encrypting all the commands requires more horsepower, but if you really don't need such a high security, it is recommended you use the plain connection.
If you have more security related questions, please e-mail me.

### Client options

Address book - You can add the most recently used addresses (or hostnames, if you are using LAN) here (you can add the port too, example: 192.168.0.1:187, or ComputerName:81). Also choose, whether you are using the encrypted or plain connection. If you wish, you can set the nickname to use in the chat sessions here too.
Host scanner - Scan for hosts in a specific IP range. Type in the start of the IP address (example: 195.156.248), port, and the range to scan (example: 0 and 200, this would scan from 195.156.248.0 to 195.156.248.200). You can connect or add the found hosts to the Address book immediately.
Skins - Change client's skin.
Simple mouse and key - Remote control the remote computers mouse and keyboard.
Full control and screen capture - Same as above but with screen capture, which means that you can see what happens on the remote computers screen.
Execute file - Execute any kind of file, TXT or MP3 example. It will be ran on the appropriated program.
Execute program - Execute a program file (EXE, COM, BAT or PIF). You can select its focus also.
Execute DOS command - Execute any kind of DOS-command you wish on the remote computer. You should always use full path, when pointing to files, example: C:\WINDOWS\NOTEPAD.EXE.
Delete file - Delete any file from the remote computers hard drive.
Copy file - Copy a file on the remote computer to another directory on the remote system.
Move file - Move a file on the remote computer to another directory on the remote system.
Rename file - Rename a file on the remote computer.
Change file transfer port - Specrem uses port 4339 as a default for file transfers but you can change it from here (in case this port is reserved for other programs).
Download file - Download any file from the remote computers hard drive to your hard drive.
Upload file - Upload a file from your hard disk to the remote computers hard drive.
Create folder - Create a folder to the remote system's hard disk.
Delete folder - Delete folder from the remote system's hard disk and all files & sub directories it contains.
File manager - Browse the files on the remote computer.
Change port - Change port on the remote computer.
Host options - Change server accept/reject lists and other options.
Host information - View the system information of the remote computer.
Host users - Who is/are connected to the server? You can also remote kick users, if you are connected as an administrator.
Host security - You can remotely change the server's security options (must be an administrator to even view these options).
Host stats - Shows the server stats.
Host version - Shows the Specrem Server version the remote computer is using.
Registry editor - Add/Delete/Query paths/keys of the registry at the remote system.
Service manager - Control Windows services. Only works if the server is running on Windows NT4/2000/XP. To control the services, the current user at the server computer must have administrator rights.
Window manager - Contains many options to do with the remote system's windows & processes.
Print document - Print a document on the remote computer with its printer.
Print picture - Same as above except that this prints a picture.
Open CD-ROM - Open/Close the remote system's primary CD/DVD-ROM drive.
Keylights - Contains many options to toggle Numlock/Capslock/Scroll lock on the remote computer.
Swap mouse buttons - Swaps mouse buttons on the remote computer. Right becomes left and vice versa.
Hide Start-button - If the remote computer is using EXPLORER.EXE as shell, this hides the Start button from the taskbar.
Hide taskbar - If the remote computer is using EXPLORER.EXE as shell, this hides the taskbar.
Play sound - Plays a sound on the remote computer
Play midifile - Play/Stop a midifile on the remote computer.
Open web page - Opens the default browser with the selected page on the remote computer.
Freeze mouse - Freeze/Unfreeze the mouse on the remote computer. Only for Windows 95/98/ME.
Disable mouse - Disable/Enable mouse on the remote computer. This will forcefully keep the cursor in the up left corner. Basically just the same thing as Freeze mouse, but this works on every Windows.
Mouse double-click - Change the mouse double-click time in milliseconds on the remote system. Less time is faster, 500 is normal and the default.
Key click - Makes the keyboard click every time a key is pressed at the remote computer.
Disable Alt+Ctrl+Del - Disables this key combination, the tasklist cannot be viewed. Only for Windows 95/98/ME.
Chat - Chat with the server computer and every user connected to the server.
Send message - Send a short text message to the remote computer.
Send error message - Send fake error messages to the remote computer.
Keyboard listen - You can see every keypress the user types at the remote computer.
Mouse listen - You can see where the mouse is moving at the remote computer.
Screenshot - Takes a screenshot from the remote system's screen and shows it to you.
Screen spy - Spy the remote computers screen, mouse and keyboard at the same time.
Close server - End the server program at the remote computer.
Restart server - Restart the server program at the remote computer. This will disconnect you.
Shutdown - Shutdown the remote computer.
Reboot - Reboot the remote computer.
Logoff - Logoff the user at the remote computer.
Force shutdown - Forcefully shutdown the remote computer.
NOTE: Freeze mouse & Disable Alt+Ctrl+Del only work if the server is running on Windows 95/98/ME.

### Chat options

Change nick - Change your nickname.
Popup chat - When enabled, the chat window will automatically popup.

### Command line commands (type in the chat window):

/NICK [new nick] - Change your nickname.
/CLOSE - Close the chat window.

### Greetings

BETA testers:
Gary P. Beck
Tomi Kapanen
Jussi Kopra
Lassi Lahtinen
Hannu Mäki
Kirk Northrop
Jaakko Salo
Wade Wendorf
Special thanks to Konstantin Tretyakov. His keyboard hook file, KTKBDHK.DLL helped a lot.

### Contact me

If this help file didn't solve your problem, explain something, or you just wan't to comment the program I'll be glad to receive your e-mail.
E-Mail: akirjavainen@mail.htk.fi
Homepage: http://www.sunpoint.net/~akirjavainen/