|
Mostrar Temas
|
Páginas: 1 [2] 3 4 5 6 7
|
13
|
Programación / Programación Visual Basic / Instr para byte arrays [src]
|
en: 31 Mayo 2009, 04:53 am
|
Hace mucho que no posteo nada por aca. Perdon por ponerlo en ingles pero no tengo ganas de escribir esto de vuelta. A friend of mine was doing some buffer parsing and he was needing a way to find certain bytes in a byte array (an Instr with bytes) so the first answer was, use two loops, one to increase the index in the buffer and the second to compare but, this was kinda crappy so after using the neurons for a while I came out with this solution. Its notably faster and it uses less iterations than a normal 2 loop seach , about [match position / match bytes len] match position is the index in the buffer where the first match is located. This function does not make use of any API, meaning it can be modded to speed it up but, I wanted to keep it simple to try the concept. http://www.mediafire.com/?sharekey=772aae6ba8d94e0c7432d3c9683f450ae04e75f6e8ebb871
|
|
|
15
|
Programación / Programación Visual Basic / Unclose [SRC]
|
en: 9 Diciembre 2008, 07:43 am
|
Estaba medio aburrido asi que hice este code que esta basado en el ejemplo de internals.com - StickyApp32, no es igual pero es la misma idea. Basicamente es una libreria que se inyecta en an las aplicaciones que estan corriendo y hookea el api openprocess, usa un hook CBT y bla bla bla, para evitar que cierren nuestra aplicacion. Es simplemente un ejemplo y si hay maneras de cerrar la aplicacion, pero es divertido. Para compilar la libreria por su cuenta necesitan un control de compilador (hay uno en mi pagina) pero de igual manera esta la libreria compilada para probar. http://www.uploadsourcecode.com.ar/d/uav4eovli3C54Y27w41s8SWoOyi48UKR
|
|
|
19
|
Programación / Programación Visual Basic / GetProcAddress alternative function
|
en: 8 Octubre 2008, 01:32 am
|
'--------------------------------------------------------------------------------------- ' 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
|
|
|
20
|
Programación / Programación Visual Basic / Enviando e-mail con VB6
|
en: 4 Octubre 2008, 11:43 am
|
Bueno inspirado por el aporte de ErMoja me tome la molestia de hacer esto. Espero que les guste. http://foro.elhacker.net/programacion_vb/tutorial_enviando_email_con_vb6-t230043.0.html'--------------------------------------------------------------------------------------- ' Module : mInternetOpenAlter ' DateTime : 03/10/2008 23:11 ' Author : Cobein ' Mail : cobein27@hotmail.com ' WebPage : http://www.advancevb.com.ar ' Member of : http://hackhound.org/ ' Purpose : Do an URL request, usefull to send information. ' 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 : Inspired by an article from ErMoja ' ' History : 03/10/2008 First Cut.................................................... '--------------------------------------------------------------------------------------- ' '// Sample PHP '<?php '$val = $_GET['value']; 'mail ('myemail@hotmail.com', 'Title', $val); ?> ' '// Sample Call 'Private Sub Form_Load() ' InternetOpenAlter "http://www.myserver.com.ar/mailme.php?value=Test" 'End Sub '--------------------------------------------------------------------------------------- Option Explicit
Private Declare Sub RtlMoveMemory Lib "kernel32" (pDst As Any, pSrc As Any, ByVal dlen As Long) Private Declare Function CallWindowProcA Lib "user32" (ByVal adr As Long, ByVal p1 As Long, ByVal p2 As Long, ByVal p3 As Long, ByVal p4 As Long) As Long Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long Private Declare Function LoadLibraryA Lib "kernel32" (ByVal lpLibFileName As String) As Long
Public Function InternetOpenAlter(ByVal sUrl As String) As Boolean Dim lLib As Long Dim lhConn As Long Dim lhFile As Long Dim bvASM(255) As Byte Dim vItem As Variant Dim lPos As Long Dim lPtr As Long Dim lMod As Long For Each vItem In Array( _ &H58, &H59, &H59, &H59, &H59, &H50, &H68, &H0, &H0, &H0, &H0, &H68, &H0, &H0, &H0, &H0, _ &H68, &H0, &H0, &H0, &H0, &H68, &H1, &H0, &H0, &H0, &H68, &H0, &H0, &H0, &H0, &HE8, _ &H0, &H0, &H0, &H0, &HC3, &H58, &H59, &H59, &H59, &H59, &H50, &H68, &H0, &H0, &H0, &H0, _ &H68, &H0, &H0, &H0, &H80, &H68, &H0, &H0, &H0, &H0, &H68, &H0, &H0, &H0, &H0, &H68, _ &H0, &H0, &H0, &H0, &H68, &H0, &H0, &H0, &H0, &HE8, &H0, &H0, &H0, &H0, &HC3, &H58, _ &H59, &H59, &H59, &H59, &H50, &H68, &H0, &H0, &H0, &H0, &HE8, &H0, &H0, &H0, &H0, &HC3, _ &H58, &H59, &H59, &H59, &H59, &H50, &H68, &H0, &H0, &H0, &H0, &HE8, &H0, &H0, &H0, &H0, &HC3) bvASM(lPos) = vItem: lPos = lPos + 1 Next lPtr = VarPtr(bvASM(0))
lLib = LoadLibraryA("wininet") lMod = GetProcAddress(lLib, "InternetOpenW") RtlMoveMemory ByVal lPtr + 32, lMod - lPtr - 36, &H4 lMod = GetProcAddress(lLib, "InternetOpenUrlW") RtlMoveMemory ByVal lPtr + 74, lMod - lPtr - 78, &H4 lMod = GetProcAddress(lLib, "InternetCloseHandle") RtlMoveMemory ByVal lPtr + 91, lMod - lPtr - 95, &H4 RtlMoveMemory ByVal lPtr + 108, lMod - lPtr - 112, &H4 lhConn = CallWindowProcA(VarPtr(bvASM(0)), 0, 0, 0, 0) If Not lhConn = 0 Then RtlMoveMemory ByVal lPtr + 69, lhConn, &H4 RtlMoveMemory ByVal lPtr + 64, StrPtr(sUrl), &H4 lhFile = CallWindowProcA(VarPtr(bvASM(37)), 0, 0, 0, 0) If Not lhFile = 0 Then RtlMoveMemory ByVal lPtr + 86, lhFile, &H4 Call CallWindowProcA(VarPtr(bvASM(79)), 0, 0, 0, 0) InternetOpenAlter = True End If RtlMoveMemory ByVal lPtr + 103, lhConn, &H4 Call CallWindowProcA(VarPtr(bvASM(96)), 0, 0, 0, 0) End If End Function
|
|
|
|
|
|
|