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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 [28] 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 ... 47
271  Programación / Programación C/C++ / Re: (AYUDA)INJECCION DLL | C++ BUILDER ! en: 11 Febrero 2017, 01:42 am
El que busca encuentra:

http://foro.elhacker.net/hacking_avanzado/paper_inyecciones_dll-t159111.0.html
https://foro.elhacker.net/programacion_general/inyeccion_dll-t251155.0.html;msg1211887

y el mas importante:
http://bfy.tw/A1cB

;)
272  Programación / Programación C/C++ / Re: [C] Crear una variable a la mitad de un bloque. en: 11 Febrero 2017, 01:32 am
En mi caso opino que la mejor forma es declararlas cuando las necesites, solo en el bloque que vayan a ser usadas. Y me baso en un par de principios:

1- De esta forma la variable sera usada solo en el bloque de código actual y la memoria asociada sera disposable una vez salgas de dicho bloque
2- Mejor estructuracion de codigo, proteccion de variables y reutilizacion de nombres
3- Mucho mejor para el que escribe y para el que lee tu código
4- Si se puede...por que no?
273  Programación / Programación C/C++ / Re: Ayuda con variables en (C++ Builder) en: 11 Febrero 2017, 01:22 am
Primero que todo te recomiendo elaborar mas tus post, de esa forma las personas se podrían ver un poco mas inclinadas a responderte, por ej, el codigo que pones al principio deberias usarlo dentro de  etiquetas geshi. Por otra parte, podrias dar un poco mas de informacion de que es lo que deseas hacer, en fin.
Aparentemente tu codigo busca un par de funciones en "VerinAllign3.dll" y luego las intenta ejecutar usando inline asm. Lo primero que te recomendaria es que buscaras un poco de informacion acerca de hacer llamadas desde tu app a dll externas de forma dinamica para que sepas lo que estas haciendo. En este caso, debes conocer los prototipos de las funciones que deseas llamar al menos, sino no habra mucho que puedas hacer. Una vez que conozcas dichos prototipos (tipo de convención de llamada usada, valor de retorno, parametros, etc) puedes proceder a crear un par de punteros a dichas funciones, si no sabes de este tema tendras que volverte a pasar por google y hacer la tarea. Una vez tengas los punteros a dichas funciones solo te quedaria usar GetProcAddress para obtener las direcciones correctas y procedes a llamar a dichas funciones como otras funciones regulares.
Ahora, en tu caso usas inline ASM para dicho fin, y no es que este mal, pero no tienes necesidad de esto, igual si aun deseas ese acercamiento, pues tendras que leer otro poco acerca de ASM y el metodo de llamar funciones, etc, resumiendo, mi consejo es que te vayas por la primera opcion que te mostre. Luego para que tengas una idea de como seria te pongo un ejemplo:

Llamando API MessageBox dinamicamente:

Código
  1. // prototipo de funcion
  2. int WINAPI MessageBox(
  3.  _In_opt_ HWND    hWnd,
  4.  _In_opt_ LPCTSTR lpText,
  5.  _In_opt_ LPCTSTR lpCaption,
  6.  _In_     UINT    uType
  7. );
  8.  
  9. // puntero a funcion
  10. typedef int(WINAPI *msgbox)(HWND, LPCSTR, LPCSTR, UINT);
  11.  
  12. // obteniendo la direccion
  13. msgbox mb = null;
  14. mb = (msgbox)GetProcAddress(GetModuleHandleA("user32.dll"), "MessageBoxA");
  15.  
  16. // llamando a la funcion
  17. if( mb != NULL ) {
  18.    (*mb)( NULL, "Hola Mundo!", "Hello", MB_OK );
  19. }

Con esto puedes hacerte una idea y tomar como base el código y acomodarlo a tu caso especifico
Saludos
274  Programación / Programación C/C++ / Re: Duda con Punteros - Me tira error en todas las lineas. en: 15 Septiembre 2016, 02:40 am
Tienes que ver un poco mas el tema de los punteros pues tienes varios problemas de concepto. Primero, al simbolo "*" antepuesto a una variable declarada como puntero es el simbolo derreferenciador de dicho puntero, o en otras palabras si usas esto:

Código
  1. int *p; // direccion de memoria de una variable entera
  2. int a = 3; // variable entera

Solo puedes asignar un valor de la forma:

Código
  1. *p = a; // derreferenciando el puntero, o lo que es lo mismo refiriendote directamente a la memoria de dicha variable y no a su direccion
  2. p = &a; // asignando la direccion de memoria de la variable entera

O sea, lo que estas haciendo en esta linea por ejemplo:

Código
  1. if ((*pa->valor)<(*pb->valor))

Es un error total, pues estas usando otro simbolo "->" que se usa para referirse al valor al que apunta tu direccion de memoria (en este caso pa/pb), pero a la vez lo estas derreferenciando, o lo que vendria siendo lo mismo, estas tratando una variable "no puntero" como puntero al utilizar luego el "->". Siendo las dos formas correctas:

Código
  1. if ((pa->valor) < (pb->valor)) // Forma 1
  2. if (((*pa).valor) < ((*pb).valor)) // Forma 2

Luego ese error lo sigues cometiendo a traves de el resto del codigo y hay algo mas en estas lineas:

Código
  1. aux=*pb.valor;
  2. *pa.valor=aux;

Tienes otro error de concepto. Primero declaras aux como variable de tipo structura t_carta y despues intentas asignar un valor tipo entero (pb->valor) a la variable aux que es tipo estructura. La forma correcta es:

Código
  1. aux = *pc; // Asignas la estructura completa derreferenciando el puntero
  2. aux.valor = pc->valor; // Asignas una variable entera a su igual en la estructura

Con esos arreglos deberian solucionarse los errores
Saludos
275  Programación / Programación C/C++ / Re: Establecer tamaño de la consola en C++ en: 21 Agosto 2016, 05:19 am
http://www.cplusplus.com/forum/windows/10731/
276  Programación / Programación Visual Basic / Re: codificación para que caduque en un mes o 30 dias en: 15 Agosto 2016, 05:48 am
(hola soy bueno en este foto y necesito un ayuda ) es que hice un sistema pero quiero poner una codificación para que caduque en un mes o 30 dias por favor a ayudenme hay es que no se como hacer la codificación  

Te aconsejaria te pases y preguntes por el foro de Ingenieria Inversa y luego ya cuando tengas la idea lista solo te faltaria desarrollarla
277  Programación / Programación C/C++ / Re: Error:Estructura con strings en: 12 Mayo 2016, 03:39 am
Tienes varios errores de sintaxis y de conceptos. Primero esto:

Código
  1. opc[0].name="JUGAR";

No es valido, no puedes asignar una cadena a un array de chars de esa forma (Solo se puede hacer en la misma linea de declaración del mismo), seria asi

Código
  1. char name[10] = "JUGAR";

Si lo deseas en forma de asignación pues debes asignar cada caracter por separado en la posición que deseas, o usar una de las funciones de copiado de cadenas de la familia strcpy, etc, por ejemplo:

Código
  1. strcpy_s(opc[0].name, "JUGAR");

Finalmente tiene un error de concepto cuando creas el array de estructuras "Opcion". Si dices que creas un array de 3 estructuras:

Código
  1. Opcion opc[3];

Luego no puedes salir haciendo esto  :silbar::

Código
  1. opc[3].name="SALIR\0";

Los arrays siempre son zero indexed, si necesitas mas info puedes darle una lectura a esto
http://programmers.stackexchange.com/questions/110804/why-are-zero-based-arrays-the-norm

Saludos
278  Programación / .NET (C#, VB.NET, ASP) / Re: API para impedir la ejecución de ejecutables. en: 9 Mayo 2016, 03:56 am
Sumando un poco mas a la respuesta de Elektro (si es que se puede...muy buena intervención  ;-)) es bueno aclarar (aunque esta claro que es solo demostrativo el code) que el método que ha expuesto Elektro es un método que trabaja a nivel de usuario (Ring3) y bien sencillo de sobrepasar, sobre todo para los malware writers que se buscan la vida de las formas mas complicadas e innovadoras para ejecutar sus creaciones, ademas que muchos usan también API's mas cerca del kernel directamente ej NtCreateProcess/ZwCreateProcess, etc (la linea descendiente de llamadas es mas profunda) y la mas indicada no seria CreateProcess sino ZwCreateSection, pero bueno... Por otra parte tambien es de aclarar que se debería hacer el hook no solo en "explorer.exe" sino a todos los procesos activos y los nuevos que se creen en adelante para tener controlados todos los posibles escenarios donde se pudiera ejecutar el "malware".
Mencionas a los AV, bueno, pues no creo que exista un solo AV que se respete que no utilice un driver para estas cosas. Los drivers trabajan con un nivel muy superior de privilegios en el sistema (Ring0) y por ende pueden hacer lo que se les venga en gana. Hay un muy buen articulo + code al respecto que te recomiendo echarle un ojo si asi lo deseas:

http://www.codeproject.com/Articles/11985/Hooking-the-native-API-and-controlling-process-cre

Igual si no quieres ir tan profundo puedes seguir por la ruta de soluciones a nivel de usuario. Si sabes algo de Pascal este code esta muy bien también y solo te tocaría pasarlo a NET o lo que desees  :rolleyes:

http://forum.madshi.net/viewtopic.php?t=1736

Saludos
279  Programación / .NET (C#, VB.NET, ASP) / Re: Cargar una imagen en: 9 Mayo 2016, 03:15 am
El primer resultado de una búsqueda rápida en Google  :silbar:
http://stackoverflow.com/questions/6869777/loading-byte-data-to-a-picture-box
280  Programación / Programación General / Re: ayuda fusionar gameblindage.dll con exe en: 9 Mayo 2016, 03:04 am
Si lo que quieres es unir la dll y el exe en un solo binario puedes usar http://www.boxedapp.com/boxedapppacker o cualquier otra app similar
Páginas: 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 [28] 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 ... 47
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines