Editor de un server

Iniciado por kontaminator, 10 Mayo 2006, 01:26 AM

0 Miembros y 1 Visitante están viendo este tema.

kontaminator

Alguien me podría ayudar con la edicion de un server



Robokop

#1
Te voy a explicar el metodo que yo uso ,esa idea la saque del foro hackxcrack ,no pongo el link porque no lo recuerdo  :P y porque creo que ya tumbaron el foro

........::::::::Editor del Server::::::...........

CLIENTE:
1 command ,2 textbox

Private Sub Command1_Click()
     Dim port As String * 5  '//definimos la variable predefinida de espacios a 5 osea el numer de bytes que pensamos utilizar en la aplicacion
     Dim pass As String * 20 '//igual con la variable que contendra el pass, con capacidad de 20 bytes.
   
     port = Text1.Text 'declaracon de variables
     pass = Text2.Text
   
     Open "C:\rutadelserver.exe" For Binary As #1 'Esto nos permite abrir el archivo de forma binaria
  Put #1, LOF(1) + 1, port 'LOF nos permite ubicarnos al final de un archivo ,tiene que ser al final porque si no lo dejariamos inservible,y colocamos la variable port
Put #1, LOF(1) + 1, pass 'Lo mismo que atras
      Close #1 '//cerramos el archivo.
End Sub




SERVER:
2 textbox


Private Sub Form_Load()
Dim port As String * 5 '//Declaramos estas variables para poder extraer los valores
    Dim pass As String * 20
   
     Open app.path & "\" & app.exename & ".exe" For Binary As #1 'Cuando se abra el programa nos abrimos a nosotros mismos osea el server en forma bnaria
     Get #1, LOF(1) - 24, port  'Extraemos la variable port ,ojo es -24 porque son 25 bytes de espacio que dejamos esos son para restar los 25 bytes y empezar desde hay pero siempre se le resta 1 si por ejemplo hubieramos querido que introduciece 10 bytes en el puerto y 20 en el pass seria "-29"
     Get #1, , pass 'Extraemos pass y lo alamacenamos
    Close #1

    Text1.Text = Trim(port) '//Quitamos espacios de las variables y las mostramos en cajas de texto.,recuerda que tenemos que quitar espacios porque pusimos 5 bytes y no estamos seguros de que se hayan ocupado todos
    Text2.Text = Trim(pass)
End Sub



sch3m4

aquí te pongo un code que aunque está en C, al principio se comenta cómo funciona el programa.

http://lympex.securityhead.com/resources/sources/edit2.c
SafetyBits

"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.(..

Hendrix

Aki te dejo un tutorial que hice hace mucho tiempo.....

Citar

Fecha de Creación: 2-01-06

Ola!!! que tal estan??? weno, el otro dia me lo pase casi todo delante del PC intentando comprender como conseguir hacer un EditServer, me hice un lio gradissimo, hasta que me kabeza hizo klik, luego comprendi que lo que yo intentaba hacer era una barbaridad, era dificilisimo!!!! y que krear el edit server era 10000 veces mas facil!!!!

Para empecar kon esto lo explikare lo mejor que puedo (kon ejemplos, para que sea mas facil).

1º Trabajaremos kon 3 comanfos basicos, el PUT, GET y SEEK.

Empezamos, creamos dos archivos, uno sera el EditServer, y el otro el Server.

Primero tendremos creamos el form y todos los Text box que keramos (voy a hacer el ejemplo kon 3 text box).
Creamos 3 variebles y le ponemos la longitud que keramos (pondre 25 en este ejemplo) declaramos:

Dim a As String * 25
Dim b As String *25
Dim c As String * 25

Bien, ahora kolokamos lo del textbox dentro de las variables (OJO!! el kontedido del textbox no podra superar la lonjitud de la variable, en mi kaso 25, kontanto deltras y espacios.), lo kolokamos así:

a = Text1.Text
b = Text2.Text
c = Text3.Text

Ahora es kuando llega lo "mas komplikado", tenemos que abrir el Server (Para esto tenemos que saber komo se llamara el server), lo abrimos en modo BINARIO (para poder escribir en el). Para abrirlo, suponiendo que el server se llama PRUEBA lo haremos así:

Open "C:\prueba.exe" For Binary As #1

Ok, hasta aki facil, ahora procediremos a ponerle los datos en el server. Al poner los datos es MUY IMPORTANTE ponerlos AL FINAL de archivo, de lo kontrario el archivo se estropearia. para ello empleamos la instruccion SEEK de esta forma: Seek (1), LOF(1) + 1. Lo que hace esto es ir al final del archivo. En el Open, si emos puesto: For Binary As  #2 el seek iria así: Seek (2), LOF(2) + 1.

Ahora, para agregarle los datos se hace mediante el comando PUT y se hace de esta forma:

Put #1, ,a
Put #1, ,b
Put #1, ,c

Luego cerramos el archivo con el comando Close #1

Wenoo, eso editaria el Server (OJO!!! el server tiene que estar kreado previamente)

Ahora pasamos al server.

Nesecitamos que el server lea los komandos que le emos introducido y a partir de ellos que haga lo que nosotros ayamos programado.

Para que el server lea las variables las tenemos que volver a declarar (es = si no es el mismo nombre que le pusimos en el EditServer, en lugar de poner Dim a podemos poner Dim var, eso no afecta.) Declaramos las variables (con el mismo nº de espacios que tenia en el editServer, en mi kaso era 25). A parte de estas variables tenemos que declarar otras 3 que serviran para kitarle los espacios a las variables, a estas variables NO le declaramos la longitud, kedaria así:

Dim a As String * 25
Dim b As String * 25
Dim c As String * 25
Dim d As String * 25
Dim ap As String
Dim bp As String
Dim cp As String

Ahora, en el form_load, ponemos que se habra el archivo a si mismo para extraerse los archivos que le emos kolokado kon el edit server. Una truco para que se abra este en el directorio que este es este:

Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1

Explikacion: Si por ejemplo tenemos un Archivo que se ejekuta en: C:\Archivos de Programa\Prueba.exe

App.Path ekivaldria a: C:\Archivos de Programa

Luego esto: & "\" sirve para agregarle una barra al final de Archivos de programa (kedaria así: C:\Archivos de Programa\ )

App.EXEName ekivale a Prueba

& ".exe" Esto es para ponerle la extension del programa.

En el edit server, en lugar de poner:

Open "C:\prueba.exe" conviene poner:

Open App.Path & "\" & "Prueba.exe"

Esto abrira el server, un inkonveniente es que el EditServer y el Server tienen que estar en la misma karpeta.

Weno, seguimos.

Para extraer los datos que le emos insertado iremos otra vez al final del archivo kon el komando Seek. Pero esta vez kon una pekeña modificacion.

Seek (1), LOF(1) - 74

El -74 viene de la suma de las variables que le emos introducido y le restamos uno. Ejemplo: 25+25+25 = 75 // 75-1 = 74

Es importante hacer este proceso correctamente, de lo kontrario no se extraeria los datos korrectamente. Importante poner delante del 74 el signo -

Ahora continuamos, hacemos lo mismo que hicimos kon el comando PUT, pero esta vez con el comando GET:

Get #1,  , a
Get #1,  , b
Get #1,  , c
Close #1

Weno, ahora ya tenemos los datos, solo nos keda extraer los espacion (si no los sacaramos nos kedadaria mal. Por ejemplo: si emos introducido "Hendrix" y lo sacaramos sin kitar los espacion nos kedaria: "Hendrix                  " )
Para kitar espacion utilizamos el komando Tirm de esta manera:

ap = Trim(a)
bp = Trim(b)
cp = Trim(c)

Ahora el trabajo restante ya es kosa vuestra, por ejemplo, si kereis poner los resultados en un msgbox teneis que hacer:

msgbox ap & " " & bp & " " & cp",,"Codigo by Hendrix"

Weno, fin del manual.

Estero que esta informacion os ayude en la creacion de vuestros propios EditServers.


Weno, eso es todo....

PD: No te kejaras por la ayuda...ehh???xD xD xD

Salu2

"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián

sch3m4

No debes crear tres variables del tamaño que quieras, sino del tamaño de la longitud de los datos que almacenará.

Eso digamos que no es un editserver, sino leer y guardar datos en un .exe de manera muy simple. Me explico. Tendrías que comprobar previamente si hay datos grabados, para ello introduce una constante y comoprueba si existe cada vez que lo vayas a modificar, porque si no, el .exe aumentaría cada vez que lo modificásemos.
No necesitas otras variables para quitarle los espacios, simplemente, en vez de:


Put #1, ,a


Haz:


Put #1, ,trim(a)


Sería adecuado cifrar los datos antes de guardarlos para que no puedan ver nuestra información. Claro que en el edit no debería faltar la opción de leer el server y de borrar los datos.
SafetyBits

"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.(..

Hendrix

jejejje exacto...los datos deberian ir enkriptados..... ;) ;)

Salu2

"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián