BorderGame
Pacchetti Nostale? - Versione stampabile

+- BorderGame (https://www.bordergame.it)
+-- Forum: NosTale (/Forum-NosTale)
+--- Forum: Server Privati Nostale (/Forum-Server-Privati-Nostale)
+--- Discussione: Pacchetti Nostale? (/Thread-Pacchetti-Nostale--24718)



Pacchetti Nostale? - loryron!!! - 31-01-2014 07:00 PM

Salve ragazzi avrei bisogno di un chiarimento. Programmo maggiormente in C#, ma me ne intendo anche di C/C++. Da poco ho deciso di studiare i pacchetti di nostale e magari creare un qualcosa. Ancora non so niente sui pacchetti e chiedo il vostro aiuto. Avrei bisogno di qualcuno che mi spieghi o magari meglio che mi posti l'esempio dell'invio di un pacchetto (Preso a caso : Anche quello che ti fa cambiare l'sp in client side) vorrei capire l'esempio e studiarlo. Vi ringrazio se lo farete so già che devo (almeno credo), creare una istanza Socket e con uno stringbuilder programmare un qualcosa che invii dati al client. Aspetto chiarimenti e grazie.


RE: Pacchetti Nostale? - BigPam - 31-01-2014 07:17 PM

Sisi u.u nappo, stasera 20.00 su skipe<<.


RE: Pacchetti Nostale? - return - 06-02-2014 10:06 PM

C'è differenza tra pacchetti in client side e pacchetti in server side, anche io all'inizio avevo dei dubbi, ma mi è stato spiegato dal grande Giorgio1 u.u In pratica se tu vuoi modificare il client di nostale in client side, basta modificare la memoria cioè modificare i value degli indirizzi memoria per avere quella determinata cosa e quindi non devi inviare alcun pacchetto, invece se vuoi inviare pacchetti per tentare qualcosa in ServerSide, li devi sapere programmare e inviare tramite Tcp un qualcosa al Client di nostale che venga ricevuto e mostri quella determinata cosa.


RE: Pacchetti Nostale? - ~Giorigo1~ - 06-02-2014 10:54 PM

Loryron, ho appena letto la seguente discussione, e data la minima spiegazione di return, credo faccia prima a spiegarti un po' meglio come funziona. Innanzitutto credo sai come funziona un collegamento client <-> server giusto ? In tal caso ti consiglio vivamente di studiarti generalmente come funziona ( teoricamente ) e se possibilmente anche in ambito pratico c++/#. Per inviare/ricevere pacchetti al/dal server di NosTale ci sono principalmente due modi, il primo : realizzare una .Dll la quale sarà injectata nel processo di Nos. , e chiamando le funzioni di call del send/recv packet del client, dopo aver messo i pacchetti ed altre cose nei registri giusti come parametri, è possibile ottenere ciò che vuoi. Metodo alternativo, il secondo metodo, è quello di utilizzare un intermedio, mi spiego meglio :
client <-> intermedio <-> server.
Questo schema credo ti abbia già fatto capire il suo funzionamento, intermedio -> riceve packet da client -> invia packet ricevuto al server. Intermedio -> riceve packet dal server -> invia packet al client.
Così facendo avendo gli algoritmi di encrypt/decrypt giusti, è possibile decriptare/encriptare i pacchetti per : leggerne il contenuto - inviare pacchetti al server ( dal proprio programma [il tuo client->server]) - inviare pacchetti al client (dal proprio programma [il tuo server->client]).
In teoria ciò che voleva spiegare return è che se vuoi ottenere il risultato di qualche recv packet al client, come il mostrare sp o baggianate simili, potresti anche lavorare sulla memoria modificando il valore relativo a ciò che conteneva il pacchetto. In tal modo non ricevi nessun pacchetto, ma modifichi il parametro di un pacchetto già ricevuto. Se invece devi inviare un packet al server, come da lui detto, devi necessariamente utilizzare un intermedio o la call.
Spero di essere stato abbastanza chiaro - Giorigo1.


RE: Pacchetti Nostale? - System32 - 08-02-2014 04:00 PM

Chiamarlo intermedio è leggermente inadeguato, piuttosto lo definirei proxy.

Come già spiegato da ~Giorigo1~, ci sono due modi per arrivare a destinazione:
- Proxy (metodo pezzotto per vari motivi)
- Libreria da iniettare

Per entrambi necessiti di un minimo di conoscenza nell'ambito del reverse engineering e da quanto mi è sembrato capire, non sei ancora alla portata di ciò.

Nel primo caso ti toccherebbe reversare la crittografia lato client mentre nel secondo ti toccherebbe reversare le due funzioni: recv/send.

Inutile approfondire visto che non hai conoscenze informatiche, come ti era stato detto precedentemente: chi ha voglia di lavorare ottiene, chi non ce l'ha si attacca. Non voglio attaccare i tuoi sentimenti, quindi lascio perdere ma sappiamo tutti bene che tipo di persona sei e soprattutto quello che hai detto/fatto.

Ciao!