Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - igustin10

#1
Ingeniería Inversa / Re: lectura de paquetes
25 Junio 2018, 10:06 AM
Te agradezco por tu respuesta, me voy a poner a estudiar y practicar mas con los cracksme y de a poco ir extendiendome en el tema.

Muchas gracias por tu tiempo.

Saludos
#2
Ingeniería Inversa / Re: lectura de paquetes
25 Junio 2018, 05:30 AM
Muchas gracias por tu respuesta. Tiene todo el sentido las tres respuestas que me diste y entiendo cada una de ellas.

El juego comprendo como funciona y entiendo que envia (que paquete es cada uno). Estoy dispuesto a leer códigos fuentes de otras versiones pero no entiendo para que me va a ser util. Si, el juego esta cifrado. Con respecto al formato de los paquetes, como puedo hacer para entenderlos?

Comprendo perfectamente la idea de tener la informacion organizada y no cifrada, esto se relaciona con el formato de los paquetes?

Desde ya muchas gracias y quisiera saber que debo leer o por donde comenzar para estudiar y de a poco solucionar estos problemas.

Saludos
#3
Ingeniería Inversa / lectura de paquetes
24 Junio 2018, 07:16 AM
Buenas como andan?

Hace un tiempo hice un "cheat" para un juego llamado Argentum Online primero comenze viendo el color de los pixeles y mandando teclas, luego lo actualize a leer address y mandar teclas y ahora quiero trabajar con paquetes e inyectar una dll en el cliente para que al recibir cierto paquete envie otro.

No quiero que nadie me haga nada, solo quiero que me guien para yo poder aprender y hacerlo pero voy a necesitar su ayuda (que son expertos) para que me guien por el camino correcto. He comenzado capturando paquetes del servidor proveniente pero no entiendo como puedo hacer para leerlos (estos por mas que se realice la misma acción cambian). Aca les dejo un ejemplo del contenido de cada uno:

PAQUETE UNO:
En binario:
0000  00010110 10011000 01111101 00110001 01010111 01010000 10010000 11110110   ..}1WP..
0008  01010010 00010111 01100100 01001111 00001000 00000000 01000101 00000000   R.dO..E.
0010  00000000 00101001 00101111 01100001 01000000 00000000 10000000 00000110   .)/a@...
0018  10100011 11010001 11000000 10101000 00000000 01111101 10100111 01110010   .....}.r
0020  10111111 00000100 11000011 01101100 00011110 11011101 11001101 10011111   ...l....
0028  11111110 11000100 01111000 01011011 01001111 01100010 01010000 00011000   ..x[ObP.
0030  00111110 11111001 11011111 11001000 00000000 00000000 11110011                  >......
En hexa:
0000  16 98 7d 31 57 50 90 f6  52 17 64 4f 08 00 45 00   ..}1WP.. R.dO..E.
0010  00 29 2f 61 40 00 80 06  a3 d1 c0 a8 00 7d a7 72   .)/a@... .....}.r
0020  bf 04 c3 6c 1e dd cd 9f  fe c4 78 5b 4f 62 50 18      ...l.... ..x[ObP.
0030  3e f9 df c8 00 00 f3                                              >......      
Contenido Data: 31


PAQUETE DOS:
En binario:
0000  00010110 10011000 01111101 00110001 01010111 01010000 10010000 11110110   ..}1WP..
0008  01010010 00010111 01100100 01001111 00001000 00000000 01000101 00000000   R.dO..E.
0010  00000000 00101001 00101111 01100001 01000000 00000000 10000000 00000110   .)/a@...
0018  10100011 11010001 11000000 10101000 00000000 01111101 10100111 01110010   .....}.r
0020  10111111 00000100 11000011 01101100 00011110 11011101 11001101 10011111   ...l....
0028  11111110 11000100 01111000 01011011 01001111 01100010 01010000 00011000   ..x[ObP.
0030  00111110 11111001 11011111 11001000 00000000 00000000 11110011                  >......
En hexa:
0000  16 98 7d 31 57 50 90 f6  52 17 64 4f 08 00 45 00   ..}1WP.. R.dO..E.
0010  00 29 2f 61 40 00 80 06  a3 d1 c0 a8 00 7d a7 72   .)/a@... .....}.r
0020  bf 04 c3 6c 1e dd cd 9f  fe c4 78 5b 4f 62 50 18      ...l.... ..x[ObP.
0030  3e f9 df c8 00 00 f3                                              >......      
Contenido Data: F3

Desde ya, muchas gracias por tomarte el tiempo para leer este post.
#4
Muchisimas gracias Elektro por tu respuesta!!

Quedo todo solucionado, un genio!!  :D :D

Saludos,

Igustin!
#5
.NET (C#, VB.NET, ASP) / MANEJO DE STRINGS EN VB.NET
21 Diciembre 2016, 06:44 AM
Hola a todos!!

Les queria pedir una ayudita basica ya que no manejo mucho estelenguaje y tengo que hacer un trabajo (trabajo en Python). Aqui va:

1°) Tengo un textbox con texto y quiero hacer un split para que me añada cada palabra del textbox a una lista.
textbox.text = "hola como te va"
lista = {"hola", "como", "te", "va"}


2°) Buscar EN QUE POSICION está cierta palabra en la lista. Ejemplo:
lista = {"a1", "b2", "c3"}
posicion = lista.find(b2) --> probe con indexof pero index me dice la posicion en la str. En este caso me devuelve 0 pero yo quiero que me diga que esta EN LA POSICION DE LA LISTA, no de la str.
msgbox(posicion) --> salga 1 (la cuenta comienza en 0)

3°) Buscar valor por posicion
lista = {"a1", "b2", "c3"}
valor = lista[1] --> la cuenta comienza del 0 por lo tanto que me devuelva b2.

Realmente agradeceria la ayuda!! Muchas gracias!
#6
Programación Visual Basic / Re: CLIENTE Y SERVIDOR
20 Noviembre 2016, 04:42 AM
Cierto jaja! Me olvidaba de un pequeño detalla  :-\ :-\.

CODIGO DE CLIENTE:

Public Client As TcpClient
Public DataStream As StreamWriter

Public Sub Send(Data As String)
        DataStream.Write(Data & vbCrLf)
        DataStream.Flush()
End Sub


BOTON QUE MANDA AL SERVIDOR:

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
        If Client.Client.Connected = True Then
            Client.Send("2")
        End If
End Sub


------------------------------------------------------------------------------------------------

CODIGO DE SERVIDOR: (CUANDO YA ESTA ESCUCHANDO)

Private Server As TCPControl

Public Event MessageReceived(sender As TCPControl, Data As String)


    ' COMUNICA CON EL FORM
    Private Delegate Sub UpdateTextDelegate(TB As TextBox, txt As String)
    ' ACTUALIZA EL TEXTO
    Private Sub UpdateText(TB As TextBox, txt As String)
        If TB.InvokeRequired Then
            TB.Invoke(New UpdateTextDelegate(AddressOf UpdateText), New Object() {TB, txt})
        Else
            TB.Text = txt
        End If
    End Sub

    ' ACTUALIZA TEXTO CUANDO RECIBE
    Private Sub OnLineReceived(sender As TCPControl, Data As String)
        UpdateText(txtChat, Data)
    End Sub

    Private Sub Listening()
        ' LOOP QUE ESCUCHA
        Do Until IsListening = False
            ' ACEPTA CONEXIONES
            If Server.Pending = True Then
                Client = Server.AcceptTcpClient
                ClientData = New StreamReader(Client.GetStream)

            End If

            ' CUANDO LLEGA UN MENSAGE
            Try
                RaiseEvent MessageReceived(Me, ClientData.ReadLine)
            Catch ex As Exception
            End Try
        Loop
    End Sub


CLIENTE:1                              SERVIDOR
1                                           1) QUE CAMBIE DE 0 A 1 CUANDO TOCO EL BOTON 1
2                                           2) QUE CAMBIE DE 0 A 2 CUANDO TOCO EL BOTON 2
3                                           3) QUE CAMBIE DE 0 A 3 CUANDO TOCO EL BOTON 3

Lo que tendria que hacer es que el cliente al apretar 1, el servidor reconozca que salio de ese boton y vaya a 1).
No puedo crear un identificador de texto porque el texto de 1 del cliente despues va a ir cambiando. Si no con 2 if lo solucionaria.

Muchas gracias MCKSys Argentina por preocuparte.
#7
Programación Visual Basic / CLIENTE Y SERVIDOR
18 Noviembre 2016, 23:19 PM
Como andan? Espero que bien!

Tengo un problemita aca haciendo un cliente y servidor. Quiero que cada boton al apretar mande el valor del boton al casillero que le corresponde. Algo asi:

CLIENTE:1                              SERVIDOR
1                                           1) QUE CAMBIE DE 0 A 1 CUANDO TOCO EL BOTON 1
2                                           2) QUE CAMBIE DE 0 A 2 CUANDO TOCO EL BOTON 2
3                                           3) QUE CAMBIE DE 0 A 3 CUANDO TOCO EL BOTON 3

El problema es que todos van hacia el mismo lugar. Cuando toco el 1/2/3 van todos al 1):

Les dejo una fotito http://imgur.com/a/2dMbZ

Muchas gracias!
#8
Usando un codigo que es ReadWriteMemory.vb (pongo abajo la parte que uso):

Public Function ReadDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Integer
        Try
            Dim lvl As Integer = Address
            For i As Integer = 1 To Level
                lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
            Next
            Dim vBuffer As Integer
            vBuffer = ReadInteger(Process, lvl, nsize)
            Return vBuffer
        Catch ex As Exception

        End Try
    End Function[font=Verdana][/font]



Lo que he tratado de hacer es:

Dim pointer As Integer = ReadDMAInteger("Proceso", &HBaseAddress+Address, Offsets, Level:=1)

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label2.Text = pointer
    End Sub


Ya reemplaze los datos pero me dice que es 0.

Alguna ultima ayuda? Ya casi lo saco  :-\ :-\
#9
Perfecto! Entendi el codigo, muchisimas gracias.

Mas claro que el agua jaja. Ahora voy a INTENTAR pasarlo a Visual Basic porque la verdad se muy poco de C.

MUCHAS GRACIAS kub0x!
Salu2, Igustin
#10
kub0x antes que nada gracias por tomar un poco tiempo y leer el post y responder.

Ahora me voy  a poner a ver como quedaria con la clase Marshal (no lo conocia, me estoy fijado aca de que se trata: https://msdn.microsoft.com/es-es/library/system.runtime.interopservices.marshal(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1).

Lo que habia intendado yo pero veo que esta mal es:
Dim pointervalue As Integer
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        pointervalue = WriteDMAInteger("Proceso", &HAddress, {&H1, &H2, &H3}, Value, 5)
        Label1.Text = pointervalue