elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 39
131  Programación / Programación General / Duda con TerminateThread en: 15 Mayo 2013, 22:01 pm
Hola a todos me surge una duda con la API TerminateThread, mi pregunta es ¿Podría terminar un hilo desde ese mismo hilo

Código:
HiloInicio
.....
...
..
TerminateThread(manejadorDeEsteHilo)
HiloFin

Saludos
132  Programación / ASM / Mostrar menú al hacer clic en un listview en: 12 Mayo 2013, 22:20 pm
cómo al hacer clic en un item de listview podría visualizar un menú despegable?

Gracias y saludos
133  Programación / ASM / [Solucionado]Insertar columna en listview (dialogboxparam) en: 12 Mayo 2013, 18:15 pm
Hola a todos, actualmente estoy aprendiendo sobre listview y me surge la siguiente duda con el parámetro hWnd de la API SendMessage:

Tengo el siguiente código:

Código
  1. TITLE  listview
  2.  
  3. .386
  4. option casemap:none
  5. .model flat,stdcall
  6. include c:\masm32\include\windows.inc
  7. include c:\masm32\include\kernel32.inc
  8. include c:\masm32\include\user32.inc
  9. include c:\masm32\include\comctl32.inc
  10.  
  11. includelib c:\masm32\lib\kernel32.lib
  12. includelib c:\masm32\lib\user32.lib
  13. includelib c:\masm32\lib\comctl32.lib
  14.  
  15. DlgProc PROTO,
  16. hWnd:HWND,
  17. uMsg:UINT,
  18. wParam:WPARAM,
  19. lParam:LPARAM
  20.  
  21. .const
  22.  
  23. .data
  24. DlgName byte "Hola",0
  25. Heading1 byte "Test1",0
  26. Heading2 byte "Test2",0
  27.  
  28. .data?
  29. hInstance HINSTANCE ?
  30. CommandLine LPSTR ?
  31.  
  32. .code
  33. InsertColumn proc,
  34. hWnd:HWND
  35. LOCAL lvc:LV_COLUMN
  36. mov lvc.imask,LVCF_TEXT+LVCF_WIDTH
  37. mov lvc.pszText,offset Heading1
  38. mov lvc.lx,150
  39. invoke SendMessage,hWnd, LVM_INSERTCOLUMN,0,addr lvc
  40. or lvc.imask,LVCF_FMT
  41. mov lvc.fmt,LVCFMT_RIGHT
  42. mov lvc.pszText,offset Heading2
  43. mov lvc.lx,100
  44. invoke SendMessage,hWnd, LVM_INSERTCOLUMN, 1 ,addr lvc
  45. ret
  46. InsertColumn endp
  47.  
  48. start:
  49. invoke GetModuleHandle,NULL
  50. mov hInstance,eax
  51. invoke GetCommandLine
  52. mov CommandLine,eax
  53. invoke DialogBoxParam,hInstance,ADDR DlgName,NULL,ADDR DlgProc,NULL
  54. invoke ExitProcess,eax
  55. DlgProc PROC hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
  56. .IF uMsg == WM_INITDIALOG
  57. invoke InitCommonControls
  58. invoke InsertColumn,hWnd
  59. ; invoke GetDlgItem,hWnd,IDC_FOCUS
  60. ; invoke SetFocus,eax
  61. .ELSEIF uMsg == WM_CLOSE
  62. invoke EndDialog,hWnd,NULL
  63. .ELSE
  64. mov eax,FALSE
  65. ret
  66. .ENDIF
  67. mov eax,TRUE
  68. ret
  69. DlgProc ENDP
  70. END start

El problema que tengo es que la siguiente línea no funciona correctamente:

Código
  1. invoke SendMessage,hWnd, LVM_INSERTCOLUMN,0,addr lvc

¿alguien podría guiarme para insertar las columnas?, saludos y gracias de ante mano

Solución: obtener con GetDlgItem el manejador:

Código
  1. TITLE  listview
  2.  
  3. .386
  4. option casemap:none
  5. .model flat,stdcall
  6. include c:\masm32\include\windows.inc
  7. include c:\masm32\include\kernel32.inc
  8. include c:\masm32\include\user32.inc
  9. include c:\masm32\include\comctl32.inc
  10.  
  11. includelib c:\masm32\lib\kernel32.lib
  12. includelib c:\masm32\lib\user32.lib
  13. includelib c:\masm32\lib\comctl32.lib
  14.  
  15. DlgProc PROTO,
  16. hWnd:HWND,
  17. uMsg:UINT,
  18. wParam:WPARAM,
  19. lParam:LPARAM
  20.  
  21. .const
  22. IDC_LSV1 equ 1001
  23.  
  24. .data
  25. DlgName byte "Hola",0
  26. Heading1 byte "Test1",0
  27. Heading2 byte "Test2",0
  28.  
  29. .data?
  30. hInstance HINSTANCE ?
  31. CommandLine LPSTR ?
  32.  
  33. .code
  34. InsertColumn proc,
  35. hWnd:HWND
  36. LOCAL lvc:LV_COLUMN
  37. mov lvc.imask,LVCF_TEXT+LVCF_WIDTH
  38. mov lvc.pszText,offset Heading1
  39. mov lvc.lx,150
  40. invoke SendMessage,hWnd, LVM_INSERTCOLUMN,0,addr lvc
  41. or lvc.imask,LVCF_FMT
  42. mov lvc.fmt,LVCFMT_RIGHT
  43. mov lvc.pszText,offset Heading2
  44. mov lvc.lx,100
  45. invoke SendMessage,hWnd, LVM_INSERTCOLUMN, 1 ,addr lvc
  46. ret
  47. InsertColumn endp
  48.  
  49. start:
  50. invoke GetModuleHandle,NULL
  51. mov hInstance,eax
  52. invoke GetCommandLine
  53. mov CommandLine,eax
  54. invoke DialogBoxParam,hInstance,ADDR DlgName,NULL,ADDR DlgProc,NULL
  55. invoke ExitProcess,eax
  56. DlgProc PROC hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
  57. .IF uMsg == WM_INITDIALOG
  58. invoke InitCommonControls
  59. invoke GetDlgItem,hWnd,IDC_LSV1
  60. invoke InsertColumn,eax
  61. ; invoke GetDlgItem,hWnd,IDC_FOCUS
  62. ; invoke SetFocus,eax
  63. .ELSEIF uMsg == WM_CLOSE
  64. invoke EndDialog,hWnd,NULL
  65. .ELSE
  66. mov eax,FALSE
  67. ret
  68. .ENDIF
  69. mov eax,TRUE
  70. ret
  71. DlgProc ENDP
  72. END start
134  Programación / ASM / [Solucionado]Múltiples conexiones a un cliente en: 12 Mayo 2013, 02:14 am
Intentando elaborar un troyano me surge la siguiente duda:

¿Cómo podría crear múltiples conexiones entrantes desde el cliente?

¿Debería crear un socket para cada conexión?, ¿Si es así, sería más menos lo siguiente?:

Client:
Initialize Winsock.
Create a socket.
Bind the socket.
Listen on the socket for a client.
Accept a connection from a client.
(¿aquí debería crear socket, bind y listen nuevamente y aceptar conexión con ese nuevo socket?)
Receive and send data.
Disconnect.

Saludos.

SOLUCIONADO:
Era tal como pregunté, saludos.
135  Programación / ASM / [Solucionado]Problema con API accept (WINSOCK) en: 12 Mayo 2013, 02:08 am
Información API:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms737526(v=vs.85).aspx

Siguiendo con el estudio de WINSOCK estoy algo confundido con respecto a la API accept, ya que si pongo los parámetros:

Citar
 _Out_    struct sockaddr *addr,
  _Inout_  int *addrlen

LÍNEA 55: invoke accept,sock,addr acpt,sizeof acpt

Este me arroja un error:

Código
  1. TITLE  cliente
  2.  
  3. .386
  4. option casemap:none
  5. .model flat,stdcall
  6. include c:\masm32\include\windows.inc
  7. include c:\masm32\include\user32.inc
  8. include c:\masm32\include\kernel32.inc
  9. include c:\masm32\include\ws2_32.inc
  10.  
  11. includelib c:\masm32\lib\user32.lib
  12. includelib c:\masm32\lib\kernel32.lib
  13. includelib  c:\masm32\lib\ws2_32.lib
  14.  
  15. .const
  16.  
  17. .data
  18. wsadata WSADATA <>
  19. sin sockaddr_in <>
  20. acpt sockaddr <>
  21.  
  22. errort    byte "Error Server",0 ; temp
  23. error1    byte "Error WSAStartup",0 ; temp
  24. error2  byte "Error socket",0 ; temp
  25. error3  byte "Error listen",0 ; temp
  26. error4  byte "Error bind",0 ; temp
  27.  
  28. look  byte "Conexión recibida",0 ; temp
  29.  
  30. Port equ 61116
  31.  
  32. .data?
  33. sock SOCKET ?
  34.  
  35. .code
  36. main PROC
  37. invoke WSAStartup,101h,addr wsadata
  38. .if eax!=NULL
  39. invoke MessageBox,NULL,addr error1,addr errort,MB_ICONERROR + MB_OK ; temp
  40. .else
  41. invoke socket,AF_INET,SOCK_STREAM,0
  42.  
  43. .if eax!=INVALID_SOCKET
  44. mov sock,eax
  45. mov sin.sin_family,AF_INET
  46. mov sin.sin_addr,INADDR_ANY
  47. invoke htons,Port
  48. mov sin.sin_port,ax
  49.  
  50. invoke bind,sock,addr sin,sizeof sin
  51. .if eax!=SOCKET_ERROR
  52. invoke listen,sock,15
  53. .if eax!=SOCKET_ERROR
  54. .while(TRUE)
  55. invoke accept,sock,addr acpt,sizeof acpt
  56. .if eax!=SOCKET_ERROR
  57. invoke MessageBox,NULL,addr look,addr errort,MB_ICONERROR + MB_OK ; temp
  58. .else
  59. invoke WSAGetLastError
  60. .endif
  61. .endw
  62. .else
  63. invoke MessageBox,NULL,addr error3,addr errort,MB_ICONERROR + MB_OK ; temp
  64. .endif
  65. .else
  66. invoke MessageBox,NULL,addr error4,addr errort,MB_ICONERROR + MB_OK ; temp
  67. .endif
  68. .else
  69. invoke MessageBox,NULL,addr error2,addr errort,MB_ICONERROR + MB_OK ; temp
  70. .endif
  71. .endif
  72.  
  73.    invoke ExitProcess,0
  74. main ENDP
  75. END main

¿Cómo soluciono esto?
¿Para que sirve exactamente estos parámetros?

Gracias y saludos.

EDIT: El error generado al llamar accept es el siguiente:

271E (WSAEFAULT)   An invalid argument was supplied to the Windows Sockets API.
136  Programación / ASM / [Solucionado]Troyano MASM (duda con WINSOCK) en: 11 Mayo 2013, 01:59 am
Hola a todos, algo aburrido estoy intentando crear un troyano tipo conexión inversa, pero me nacen dudas con respecto a las API's de WinSock, me gustaría saber más menos el orden de estas y su aplicación (si se aplica en cliente o en el servidor):

CLIENTE:
- WSAStartup
- socket
- listen
- accept
[espera la interacción del usuario con el cliente]
- send (dependiendo de la opción que seleccione)
si la opción recibe datos:
- recv
- funcion mostrar

SERVIDOR:
- WSAStartup
- socket
- connect
- listen
- accept
- recv
if dependiendo de la opción recibida
si la opción recibida envía datos:
- send

A ver si me ayudan por favor, saludos.
137  Programación / Ingeniería Inversa / Ayuda con .DLL en: 8 Abril 2013, 02:27 am
Hola a todos, tanto tiempo, espero que esté bien, bueno les comento que necesito su ayuda, nunca pido favores pero esta dll no me da, les pido por favor si alguien puede hacerle un unpack, se los pido, ando a falta de tiempo, se los agradecería desde el fondo de mi corazón (es una DLL importante para mi).

http://www.mediafire.com/?crgqqqr13qyxzw5

Muchas gracias

UND3R
138  Programación / Ingeniería Inversa / dbghelp.dll OllyDbg en: 4 Marzo 2013, 02:28 am
¿Esta .dll que viene con ollydbg v1.10 es necesaria, la usa OllyDbg?

Saludos
139  Programación / Ingeniería Inversa / [Solucionado] Monitorear cambios realizados en PC (similar a regshot) en: 15 Febrero 2013, 00:26 am
Hola a todos, actualmente me encuentro alejado de mi ordenador en el cual tengo todas mis herramientas, ahora estoy buscando el nombre de un programa que era para monitorear los cambios realizados tras ejecutar una aplicación, el software funcionaba así:
- Se tomaba una "imagen" del sistema operativo
- Se instalaba o ejecutaba una aplicación
- Se tomaba una segunda "imagen y el programa automáticamente mostraba las diferencias que presentaba el equipo.

Si mal no recuerdo el programa se llamaba más menos: Intr5 o Ctrl5, no recuerdo muy bien, además creo que tenía un ojo de color (el instalador, en realidad no recuerdo muy bien), a ver si me ayudan, me encuentro fuera del país y hecho de menos mi reversing natal y mi ordenador, saludos.

Solución: WhatChanged
140  Seguridad Informática / Hacking / Intervenir paquetes POST con paros proxy? en: 19 Enero 2013, 16:12 pm
Hola a todos, estoy realizando una auditoría a una aplicación smarthphone, ya logro obtener los datos, pero me gustaría intervenir los paquetes POST enviados en ves de reenviar, ya que al reenviar me los niega, ¿cómo podría hacer eso?





Solucionado, con TRAP
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 39
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines