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)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  GetProcAddress alternative function
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: GetProcAddress alternative function  (Leído 3,175 veces)
cobein


Desconectado Desconectado

Mensajes: 759



Ver Perfil WWW
GetProcAddress alternative function
« en: 8 Octubre 2008, 01:32 am »

Código:
'---------------------------------------------------------------------------------------
' Module      : mGetProcAddress
' DateTime    : 06/10/2008 20:06
' Author      : Cobein
' Mail        : cobein27@hotmail.com
' WebPage     : http://www.advancevb.com.ar
' Member of   : http://hackhound.org/
' Purpose     : GetProcAddress alternative function
' Usage       : At your own risk
' Requirements: None
' Distribution: You can freely use this code in your own
'               applications, but you may not reproduce
'               or publish this code on any web site,
'               online service, or distribute as source
'               on any media without express permission.
'
' Reference   : Based on ExtremeCoder sample [http://www.rohitab.com/discuss/lofiversion/index.php/t30773.html]
'
' History     : 06/10/2008 First Cut....................................................
'               06/10/2008 Minor change in buffer size to increase speed................
'---------------------------------------------------------------------------------------
Option Explicit

Private Declare Function LoadLibraryA Lib "kernel32" (ByVal lpLibFileName As String) As Long
Private Declare Sub GetMem4 Lib "msvbvm60" (ByVal Addr As Long, RetVal As Long)
Private Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
Private Declare Function SysAllocString Lib "oleaut32.dll" (ByVal pOlechar As Long) As String

Public Function GetProcAddressAlt(ByVal sLib As String, ByVal sMod As String) As Long
    Dim lLib    As Long
    Dim i       As Long
   
    lLib = LoadLibraryA(sLib)
   
    If Not lLib = 0 Then
        Dim dwNumberOfNames As Long
        Dim dwNamesOffset   As Long
        Dim dwNameRVAs      As Long
        Dim dwFuncOffset    As Long
        Dim dwFuncRVAs      As Long
   
        GetMem4 (lLib + &H3C), i
        GetMem4 (lLib + i + &H78), i
   
        GetMem4 (lLib + i + &H18), dwNumberOfNames
        GetMem4 (lLib + i + &H20), dwNamesOffset
        GetMem4 (lLib + i + &H1C), dwFuncOffset

        Dim sBuff   As String * 128
        Dim sName   As String

        For i = 0 To dwNumberOfNames - 1
            GetMem4 (lLib + dwNamesOffset + i * &H4), dwNameRVAs
            GetMem4 (lLib + dwFuncOffset + i * &H4), dwFuncRVAs

            sBuff = SysAllocString(lLib + dwNameRVAs)
            sName = Left$(sBuff, lstrlen(sBuff))
           
            If sName = sMod Then
                GetProcAddressAlt = lLib + dwFuncRVAs
                Exit Function
            End If
        Next
    End If
   
End Function


En línea

http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.
el_c0c0


Desconectado Desconectado

Mensajes: 307


Ver Perfil
Re: GetProcAddress alternative function
« Respuesta #1 en: 8 Octubre 2008, 04:52 am »

tambien se pueden sacar otros nombres de procedimientos no? por lo que vi haces un for y si el procedimiento q buscas es igual al item del array entonces es ese..
no?

saludos


En línea

'-     coco
"Te voy a romper el orto"- Las hemorroides
cobein


Desconectado Desconectado

Mensajes: 759



Ver Perfil WWW
Re: GetProcAddress alternative function
« Respuesta #2 en: 9 Octubre 2008, 00:24 am »

Exactamente, podes listar todas las funciones exportadas de la libreria.
En línea

http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[MASM32] KernelBase Address + GetProcAddress
Análisis y Diseño de Malware
The Swash 0 3,667 Último mensaje 9 Mayo 2011, 02:23 am
por The Swash
Duda con GetProcAddress
Ingeniería Inversa
.:UND3R:. 5 4,396 Último mensaje 8 Agosto 2011, 19:35 pm
por .:UND3R:.
StrPtr Alternative
Programación Visual Basic
Swellow 4 3,111 Último mensaje 11 Junio 2012, 14:30 pm
por Swellow
[HELP] Invoke or Alternative to InternetReadFile API
Programación Visual Basic
Swellow 2 2,124 Último mensaje 22 Junio 2012, 04:31 am
por Swellow
StrConv Alternative Function « 1 2 3 »
Programación Visual Basic
Swellow 28 11,542 Último mensaje 12 Octubre 2012, 20:44 pm
por Swellow
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines