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

 

 


Tema destacado:


  Mostrar Temas
Páginas: 1 2 [3]
21  Programación / Ingeniería Inversa / Tutoriales en: 14 Enero 2004, 12:58 pm
En este post se pondran todos los tutoriales de una forma un poco mas ordenada. si quereis añadir alguno postearlo en la sección y lo actualizo, o mandarme el link + descripcion para ponerlo.
22  Programación / Ingeniería Inversa / Curso sobre protecciones en hackXcrack en: 14 Enero 2004, 10:24 am
Pues eso, en el foro de hackXcrack se a iniciado un curso sobre las protecciones del soft, me parece una buena idea ya que se empieza desde 0, el que le interese el tema no tiene escusa  :P. pues eso el curso lo a iniciado raton y se encuentra AQUI.

Como siempre  repito aqui y donde sea, no es un foro para hacer pedidos ni de cracks, seriales etc. leer las normas de los foros antes de pedir algo.
23  Informática / Electrónica / Busco cubo de ono (valencia y cercanias) en: 2 Enero 2004, 12:47 pm
pues eso estoy buscando cubos d ono, de confianza (que no se jodan a los pocos dias). el que sepa algo que ponga aqui los precios o los mande por im ;). repito: valencia y cercanias.
24  Programación / Programación Visual Basic / Manejo basico del registro. en: 1 Noviembre 2003, 01:32 am
Manejo basico del registro

Como muchas veces se preguntan como leer/borrar/crear valores del registro voy a explicar lo basico con pequeños ejemplos para que se entienda mejor.Antes de escribir/leer cualquier dato se tiene que conseguir un manejador (handle), RegOpenKey nos da este manejador.

LONG RegOpenKey(
    HKEY hKey,   
    LPCTSTR lpSubKey,   
    PHKEY phkResult );

hKey: identifica que sección queremos abrir, estos valores son:
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

lpSubKey: sub clave. es decir si queremos abrir  HKEY_LOCAL_MACHINE/SOFTWARE/prueba, lpSubKey seria  SOFTWARE/Prueba.

phkResult: aqui se nos da el manejador para hacer referencia siempre a la clave abierta, hasta que la cerremos.

si la clave no existe se tiene que crear (como es logico jeje) con RegCreateKey, los parametros son igual que en la funcion anterior. un ejemplo podria ser esto:
Código:
Function crear() As Long
'si existe devuleve 1 de lo contrario 0
RegOpenKey HKEY_LOCAL_MACHINE, prueba, h
If h Then
crear = 1
Else
RegCreateKey HKEY_LOCAL_MACHINE, prueba, h
crear = 0
End If
End Function

como ya dice el comentario si existe devuleve 1 si no existe devuelve 0, que en este caso da lo mismo pq si no existe la crea y si existe la abre, no se toma el valor de la funcion para si existe hacer una cosa u otra pero bueno creo que se entiende. HKEY_LOCAL_MACHINE es una constante y prueba otra para hacer los ejemplos mas sencillos. en h tendremos el manejador.

Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const prueba = "SOFTWARE\Pruebas"      'esta es la clave sobre la que se escribira etc

Escribir un valor alfanumerico con RegSetValueEx:

LONG RegSetValueEx(
    HKEY hKey,   
    LPCTSTR lpValueName,   
    DWORD Reserved,   
    DWORD dwType,   
    CONST BYTE *lpData,   
    DWORD cbData  );

hKey: sera el manejador, en este caso el que tenemos en h
lpValueName: es el nombre del valor
Reserved: a 0
dwType: tipo de dato que se escribe/lee, para ver los diferentes tipos de datos darle un ojo a la ayuda.
lpData: los datos que queremos escribir.
cbData: el tamaño de los datos

una vez claros los parametros el ejemplo quedaria de esta forma:
Código:
Function valorS(nombre As String, valor As String) As Long
valorS = RegSetValueEx(h, nombre, 0, REG_SZ, ByVal valor, Len(valor))
End Function

nombre sera el nombre que contendra el valor, es decir si tenemos abierto HKEY_LOCAL_MACHINE/SOFTWARE/prueba y queremos escribir el valor "saludo" y que este contenga "hola", llamaremos a la funcion de esta forma. valorS("saludo","hola"). si la funcion devuleve 0 es que no hay ningun error, si no es 0 esta claro lo que pasa.

Los otros tipos de datos no voy a explicarlos, ya que es mas de lo mismo. con dar un ojo a la ayuda se aclaran las dudas y si no se preguntan en el foro.


Leer un dato alfanumerico con RegQueryValueEx:

LONG RegQueryValueEx(
    HKEY hKey,   
    LPTSTR lpValueName,   
    LPDWORD lpReserved,   
    LPDWORD lpType,   
    LPBYTE lpData,   
    LPDWORD lpcbData);

creo que no hace falta explicar los parametros, es lo msimo que la funcion anterior. el unico cambio es que antes lpData era lo que queriamos escribir y ahora sera el valor leido. ejemplo:

Código:
Function leerS(nombre As String) As Long
buffer = String(256, 0)
leerS = RegQueryValueEx(h, nombre, 0, REG_SZ, ByVal buffer, Len(buffer))
End Function

pues ya tenemos en buffer el contenido de la clave que queremos leer, el retorno es lo mismo que antes 0 si no hay error.

Borrar un valor con RegDeleteValue:

LONG RegDeleteValue(
    HKEY hKey,   
    LPCTSTR lpValueName);

Los parametros creo que estan claros, hKey ya esta mas que explicado y lpValueName sera el nombre del valor a borrar

Código:
Function borrarV(nombre As String) As Integer
borrarV = RegDeleteValue(h, nombre)
End Function

si queremos borrar el valor "saludo" que contenia "hola" usaremos la funcion de esta forma. borrarV("saludo").

Borrar la clave completamente con RegDeleteKey:

LONG RegDeleteKey(
    HKEY hKey,
    LPCTSTR lpSubKey);

Aqui no hay mucho mas que explicar, igual que al crearla nos pedia una sub clave ahora nos la pide para borrarla, siendo en este caso "prueba". ejemplo:

Código:
Function borrarC(nombre As String) As Long
RegOpenKey HKEY_LOCAL_MACHINE, "SOFTWARE", h
borrarC = RegDeleteKey(h, nombre)
End Function

ahora se abre simplemente "SOFTWARE" sin "prueba" pq va a ser esta la que borremos y tendremos que pasarla como sub clave.

despues de leer/escribir o lo que sea se cierra el manejador con RegCloseKey:

LONG RegCloseKey(
    HKEY hKey);

   y los paremtros no hace falta explicarlos. esta todo separado en pequeñas funciones para que se entienda bien y no hacer una solo funcion y marear la perdiz. todas las funciones estan probadas ya que antes de ponerme a escribir esto las he tenido que hacer y funcionan bien. si hay algun error duda o lo que sea pues para eso esta el foro.

constantes y demas usadas en los ejemplos:

Código:
Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long         ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long         ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const prueba = "SOFTWARE\Pruebas"
Public Const REG_SZ = 1

25  Programación / Ingeniería Inversa / Soluciones a los crackmes en: 2 Agosto 2003, 19:18 pm
Crackme de DYABLO

Nombre: kapland
Serial: 881-675PL

nombre:  ReTrO
codigo:    631-495TR

Nombre: shoulck
Codigo: 881-675OU

Crackme3

Nombre: Dyablo
Serial: S  ˆ  p  q  {  ~

Nombre: kapland
Serial: z

Nombre: shoulck
Serial: 82 77 7E 84 7B 72 7A

Crackme de ReTrO

Nombre: mekab
Serial: M35G 9A19 KSEH CV1B

Nombre:Dyablo Poeta
Serial:D32G 9B19 ASYH CV1L

Nombre: kapland
Serial: K34G 6L48 PSAH CV7A

Nombre: shoulck
Serial: S37G 2U84 OSHH CV3L




cuando pongais mas soluciones a otros crackmes poner d cual se trata y si quereis una explicacion de como lo hicistes.
26  Programación / Ingeniería Inversa / Crackmes en: 2 Agosto 2003, 19:11 pm
Poner en este hilo todos los enlaces a crackmes que querais. pongo todos los links puestos en otros temas para quitar las chinchetas y ponerlos en un solo tema.

http://x0und.fompi.com/codigo/byrcme3.rar
http://www.angelfire.com/de3/tutos/Crackme1.zip
http://caradecaca.tripod.com/
www.iespana.es/rojo2/Crack/Crackmes/crackme.zip
27  Programación / Ingeniería Inversa / Crackme en: 1 Julio 2003, 12:38 pm
http://80.224.175.233/crackme3.zip
Páginas: 1 2 [3]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines