Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Keyen Night

#331
Funciono perfecto, Gracias ;)
#332
Despues de cargar un assembly con Assembly.LoadFile como lo descargo?, el problema es el siguiente:

Código (vb.net) [Seleccionar]
Dim A As Assembly = Assembly.LoadFile("C:\Ejemplo.exe")

Dim B As New FileStream("C:\Ejemplo.exe", FileMode.Open)


Lanza un error cuando abro el archivo dice que esta siendo usado en un proceso que es obviamente el mio ya lo comprobe y todo porque cargue el Assembly y ahora no se como se suelta. Que debo hacer para que esto no suceda?, Gracias :)
#333
Yo estoy haciendo una clase para probar comence por hacer un .Replace(" ","") y si no se cumplia la condiciòn .EndsWith("=0") se agregaba el "=0", luego tomar con expresiones regulares los nùmeros que esten rodeados por "-, +, / y *" para hacer la lista de terminos independientes y para sacar la lista de terminos independientes expresiones regulares para capturar nùmeros que esten pegados a una letra.

Luego una funciòn que separe la ecuaciòn con un Split("=") e ir pasando los independientes para el otro lado multiplicandolos *(-1) si es suma o resta y remplazando / por * y * por /, luego no me acuerdo del nombre de una funciòn que resuelve operaciones matemàticas desde un string para que resuelva los terminos independientes despues con los terminos dependientes se agrupan dependiendo su variable se les quita la letra y se operan luego se le añade la correspondiente letra al resultado final y se vuelven a unir las 2 partes el unico termino indenpendiente que quedo del lado izquierdo se pasa para el otro lado y se opera el lado derecho y fin. Debes investigar sobre las expresiones regular yo no se mucho por eso no te doy ejemplos pero por lo menos la que captura terminos independientes quisas sea asì:

^(+|-|/|*)[0,9]{0,19}

Pero lo màs probable es que tenga algo mal :xD
#334
Te recomiendo expresiones regulares y seguir las reglas obviamente como si estubieras haciendo a la mano mientras voy a ir probando =D

La solución, hay que intentar replicar los procedimientos:

50x - 9 + 114 - 32x = 0 -- Se iguala a 0

50x - 32x = 9 - 114 -- Los terminos independientes se agrupan del lado contrario a los dependientes y cambiadoles el signo

18x = 9 - 144 -- Se operan los terminos dependientes que tengan la misma variable

18x = (-105) -- Se operan los independientes

x = (-105) / 18 -- Se pasa el dependiente al otro lado de la igualdad

x = -5,833... -- Resultado final de X

(50 * (-5,833)) - 9 + 114 - (32 * (-5,833)) = 0 -- Comprobación de la ecuación
#335
Código (vb.net) [Seleccionar]
   Public Function ReadBytes(ByVal handle As IntPtr, ByVal address As Long, ByVal bytesToRead As UInteger) As Byte()

       Dim ptrBytesRead As IntPtr

       Dim buffer As Byte() = New Byte() {}

       ReadProcessMemory(handle, address, buffer, bytesToRead, ptrBytesRead)

       Return buffer

   End Function


Código (vb.net) [Seleccionar]
ReadBytes(OpenProcess(PERMISOS_DE_ACCESO, 0, PROCESS_ID), ADDRESS, TAMAÑO_A_LEER)

Una función bastante fácil que lee un array de bytes de un proceso, en XP lee normalmente la memoria de un proceso pero en 7 siempre retorna 0.

Me frustra ya que actulize a 7 teniendo XP, tenia muchos proyectos sobre la memoria y ahora no me funcionan.

Si existe alguna solución, Gracias por adelantado.
#336
Despues de declarar requireAdministrator no daba el error pero no pasaba nada. Entonces cambie el codigo así, y funciono perfecto (a por cierto el codigo sirve para denegar y dar permisos a todos los usuarios en el Equipo), la parte Get de la propiedad esta en construcción :silbar:

Código (vb.net) [Seleccionar]
 

   Public Function Users() As List(Of String)

       Users = New List(Of String)

       Try
           Dim x As DirectoryEntry = New DirectoryEntry("WinNT://" + Environment.MachineName)
           Dim y As DirectoryEntry = x.Children.Find("Administradores", "group")
           Dim z As Object = y.Invoke("members", Nothing)
           For Each i As Object In CType(z, IEnumerable)
               Users.Add(New DirectoryEntry(i).Name)
           Next
       Catch ex As Exception
           Return Nothing
       End Try

   End Function

Set(ByVal value As Boolean)

           Dim _
AccessDirInfo As New DirectoryInfo(Objeto), _
AccessInfo As DirectorySecurity = AccessDirInfo.GetAccessControl

           Dim I_S As New List(Of IdentityReference)

           For Each x As String In Users()
               I_S.Add(New NTAccount(Environment.UserDomainName & "\" & x))
           Next

           For Each I As IdentityReference In I_S

               AccessInfo.PurgeAccessRules(I)
               AccessDirInfo.SetAccessControl(AccessInfo)

               If Not value Then
                   AccessInfo.SetAccessRule(New FileSystemAccessRule(I, FileSystemRights.FullControl, AccessControlType.Allow))
               Else
                   AccessInfo.SetAccessRule(New FileSystemAccessRule(I, FileSystemRights.FullControl, AccessControlType.Deny))
               End If

               AccessDirInfo.SetAccessControl(AccessInfo)

           Next

           I_S.Clear()

       End Set


Gracias.
#337
Tengo el siguiente codigo Set de una propiedad que escribi hace tiempo para Windows XP pero no funciona en Windows 7, debe ser por la cantidad de filtros de seguridad que tiene Windows 7.

Código (vb.net) [Seleccionar]
  Set(ByVal value As Boolean)

           Dim _
AccessDirInfo As New DirectoryInfo(Objeto), _
AccessInfo As DirectorySecurity = AccessDirInfo.GetAccessControl

           Dim I_S As New List(Of IdentityReference)

           For Each x As String In Users()
               I_S.Add(New NTAccount(x))
           Next

           For Each I As IdentityReference In I_S

               AccessInfo.PurgeAccessRules(I)
               AccessDirInfo.SetAccessControl(AccessInfo) ''ERROR: Intento de realizar una operación no válida.''

               If Not value Then
                   AccessInfo.SetAccessRule(New FileSystemAccessRule(I, FileSystemRights.FullControl, AccessControlType.Allow))
                   AccessDirInfo.SetAccessControl(AccessInfo)
               End If

           Next

           I_S.Clear()

       End Set


Donde esta el comentario es la linea del error y el mensaje que lanza, alguien sabe cual es el problema o la manera de solucionarlo. Estoy en Windows 7.
#338
En Windows XP Read/WriteProcessMemory funciona normalmente pero actualize a Windows 7 y ahora el valor de retorno es siempre 0. He leido que al parecer esta función ya no existe en Kernel32.dll pero solo lo digo no sé si realmente es así, alguien tiene alguna solución o el mismo problema?

Gracias.

Afffff Lo siento escribi en este subforo por error sé que va en Programación General > Vb.net, un Moderador que lo mueva  :-[
#339
Ingeniería Inversa / Re: CrackMe v3.0
11 Enero 2011, 21:37 PM
Revisare posibles errores que pueda tener, lo probare en otra PC y lo subo, disculpen :s
#340
Ingeniería Inversa / Re: CrackMe v3.0
11 Enero 2011, 01:30 AM
Es FrameWork 3.5, lo que me parece extraño es que no sale el reporte de exepción no controlada clasico de .Net.