This project is a remote client application capable of executing various commands such as capturing keystrokes, taking screenshots, gathering system information, reconnecting to the server, and self-destructing. The client is designed to work on both Windows and Linux systems and communicates with a server through socket connections.
This software is for educational purposes only. Unauthorized use of this software for malicious purposes is illegal and unethical. Always obtain permission before deploying it in any environment.
- Prerequisites
- Compilation Instructions
- Running the Program
- Setting Up the Server
- Available Commands
- Implementation Details
- Troubleshooting
- Security Disclaimer
- License
- MinGW: Minimalist GNU for Windows. Download and install from MinGW website.
- OpenSSL: Download and install from OpenSSL for Windows. Ensure the
bin
andlib
folders of OpenSSL are added to your PATH environment variable.
- GCC: GNU Compiler Collection
- OpenSSL: OpenSSL library for encryption
- Install them using the command:
sudo apt-get update sudo apt-get install gcc libssl-dev # Compilation Instructions
To compile the client code, follow the instructions below based on your operating system.
-
Install MinGW and OpenSSL:
- Ensure MinGW is installed and added to your system's PATH.
- OpenSSL should also be installed, with
bin
andlib
folders added to your PATH.
-
Open Command Prompt or PowerShell:
- Use
Win + R
, typecmd
orpowershell
, and hitEnter
.
- Use
-
Navigate to the Source Code Directory:
- Use the
cd
command to move to the folder containing the source code:cd path\to\your\source\code
- Use the
-
Compile the Source Code:
- Run the following command:
gcc -o client.exe your_code.c -lws2_32 -lssl -lcrypto
-lws2_32
: Links the Winsock library needed for socket programming.-lssl
and-lcrypto
: Links the OpenSSL libraries.
- Run the following command:
-
Output:
- If successful, an executable named
client.exe
will be created in the current directory.
- If successful, an executable named
-
Open a Terminal:
- You can use
Ctrl + Alt + T
to open a terminal window.
- You can use
-
Navigate to the Source Code Directory:
- Use the
cd
command to move to the folder containing your source code:cd /path/to/your/source/code
- Use the
-
Compile the Source Code:
- Run the following command:
gcc -o client your_code.c -lssl -lcrypto -lpthread
-lssl
and-lcrypto
: Links the OpenSSL libraries.-lpthread
: Links the pthread library for threading support.
- Run the following command:
-
Output:
- If successful, an executable named
client
will be created in the current directory.
- If successful, an executable named
- After compiling, you should have an executable named
client.exe
. - Run the program:
client.exe
- After compiling, you should have an executable named
./client
. - Run the program:
./client
This client connects to a server that listens on 127.0.0.1
(localhost) and port 4444
by default. Below is a simple example of a Python server you can use:
import socket
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('127.0.0.1', 4444)) # IP and PORT must match the client
server.listen(1)
print("Server listening on port 4444...")
client_socket, addr = server.accept()
print(f"Connection from {addr}")
while True:
command = input("Enter command for client: ")
client_socket.send(command.encode())
if command == "exit":
break
server.close()