Guida [RELEASE] Packet Encryption Key Change

Stato
Discussione chiusa ad ulteriori risposte.

d3vil401

Utente Platinum
3 Gennaio 2009
2,077
106
1,055
1,043
Vabbè,sta cosina ve la faccio io,consiglio di cambiare qualche byte e dato che solo i primi 40 vengono usati mi sono limitato a modificarne circa 42.
Ovviamente,dovete modificare la key dell'emu,tramite il source pubblico ed ovviamente dovete riabilitare l'encryption.

Codice:
This difference file has been created by d3v1l401 (http://d3vsite.org)

S4Net League_SecTest.exe
005E7D49: 53 12
005E7D4A: 43 12
005E7D4B: 4C FF
005E7D4C: 2B DE
005E7D4D: 0D AD
005E7D4E: 37 BE
005E7D4F: D7 EF
005E7D50: D9 19
005E7D51: D8 28
005E7D52: 1B 1C
005E7D53: 6D 12
005E7D54: A0 12
005E7D55: C3 12
005E7D56: 2B AA
005E7D57: EE FF
005E7D58: 45 FF
005E7D59: 88 FF
005E7D5A: 1A FF
005E7D5B: A6 F1
005E7D5C: 18 23
005E7D5E: 9D 12
005E7D5F: 38 1A
005E7D60: 2A 64
005E7D61: 55 33
005E7D62: 03 76
005E7D63: 1D 31
005E7D64: CD 6C
005E7D65: A6 34
005E7D66: 73 30
005E7D67: 07 31
005E7D68: ED 64
005E7D69: 8D 33
005E7D6A: C5 76
005E7D6B: DB 73
005E7D6C: A3 69
005E7D6D: BD 74
005E7D6E: B6 65
005E7D6F: D5 2E
005E7D70: 34 6F
005E7D71: B5 72
005E7D72: B2 67
 
ecco questo è un release decente, comunque sia per quanto riguarda l'altro post, io ho la source del launcher e del client, e per quello sto provando d'aggiungere HS...
 
Ultima modifica da un moderatore:
na io ho l'sdk con la key, ho solo detto che lo uso anche li non ho detto che uso lo stesso.
Per rimanere in tema s4, l'emulatore non è granche ha grosse falle di suo, è facile creare un semplice patcher che faccia crashare auth app, conviene fixarla prima di aprire un eventuale server.
 
Ultima modifica da un moderatore:
. EDIT fammi star buono và .

Ripeto,per l'ennesima volta visto che sei troppo fiero di te da star a sentire uno che ti sta consigliando con tanta pazienza: non puoi pazzo usare una chiave di HS con un altro gioco,ogni gioco ha un Game ID e una chiave,entrambi vengono controllati secondo un algoritmo che non ho studiato più di tanto in AES ed è inoltre controllata la stabilità interna tramite CRC ed un certificato RSA preso dal server.
A forza di leggere quello che scrivi dicendomi "io ho l'SDK con la key" come se tu fossi l'unico,mi viene da pensare che dentro l'SDK manca la documentazione oppure sei tu che non capisci proprio niente. ;)
 
. EDIT fammi star buono và .

Ripeto,per l'ennesima volta visto che sei troppo fiero di te da star a sentire uno che ti sta consigliando con tanta pazienza: non puoi pazzo usare una chiave di HS con un altro gioco,ogni gioco ha un Game ID e una chiave,entrambi vengono controllati secondo un algoritmo che non ho studiato più di tanto in AES ed è inoltre controllata la stabilità interna tramite CRC ed un certificato RSA preso dal server.
A forza di leggere quello che scrivi dicendomi "io ho l'SDK con la key" come se tu fossi l'unico,mi viene da pensare che dentro l'SDK manca la documentazione oppure sei tu che non capisci proprio niente. ;)
eh che fatica, sarà che ti rispondo dopo che sono gia su da un po' ammetto che questa volta mi sono espresso male io, sono piu chiaro ho l'SDK di HS e gia mi sono fatto dare la chiave necessaria per farlo lavorare con s4, purtroppo non ho ancora avuto tempo di finalizzare la cosa, perche ho poco tempo, dovrei essere stato abbastanza chiaro ora cosi che nessuno possa fraintendere (ripeto mi sono espresso male sopra chiedo umilmente scusa al mondo, persino a te anche se sono fiero ;) )

detto questo tornando a quanto detto sopra per il crash del auth io ho risolto cosi:
ho creato un filtro che comunica con l'esterno, ovvero non sono piu le applicazioni a ricevere i pacchetti dal client ma li ricevono dal filtro che esamina i pacchetti provenienti dall'esterno appunto filtrandoli e nel caso bloccando, tenendo log ma questo è piu o meno superfluo poi vediamo perche, i pacchetti precedentemente impostati, per quanto riguarda i pacchetti in uscita, gli ip: "local" e pubblico hanno una diversa priorità ed i pacchetti passano dal filtro senza essere analizzati, potrebbero essere anche analizzati ma preferisco fare cosi dovrebbe anche ridurre l'eventuale tempo di risposta,
tornando ai log li ho messi perche nel caso una delle applicazioni dovesse andare in crash il filtro che prende nota delle loro attività, memorizzerebbe l'ora ed il pacchetto mandato.
Il programma funziona, consuma molta CPU della macchina, ma probabilmente perche ho sbagliato io. dovrei controllare ma non ho tempo.
Si poteva fare diversamente? senza dubbio, ora aspetto che qualcuno si accorga anch'esso del problema e vediamo alternative per risolverlo.

"non rilascio nulla, perche dovrei sistemare il problema della CPU e perche non so se apriro il server, nel caso non lo apra, lo rilascerò"

@d3v1l401 nel caso mi sia ancora espresso male correggimi mi raccomando non vorrei mai qualcuno capisse male. Per favore cambia firma fa piangere.
 
eh che fatica, sarà che ti rispondo dopo che sono gia su da un po' ammetto che questa volta mi sono espresso male io, sono piu chiaro ho l'SDK di HS e gia mi sono fatto dare la chiave necessaria per farlo lavorare con s4, purtroppo non ho ancora avuto tempo di finalizzare la cosa, perche ho poco tempo, dovrei essere stato abbastanza chiaro ora cosi che nessuno possa fraintendere (ripeto mi sono espresso male sopra chiedo umilmente scusa al mondo, persino a te anche se sono fiero ;) )

detto questo tornando a quanto detto sopra per il crash del auth io ho risolto cosi:
ho creato un filtro che comunica con l'esterno, ovvero non sono piu le applicazioni a ricevere i pacchetti dal client ma li ricevono dal filtro che esamina i pacchetti provenienti dall'esterno appunto filtrandoli e nel caso bloccando, tenendo log ma questo è piu o meno superfluo poi vediamo perche, i pacchetti precedentemente impostati, per quanto riguarda i pacchetti in uscita, gli ip: "local" e pubblico hanno una diversa priorità ed i pacchetti passano dal filtro senza essere analizzati, potrebbero essere anche analizzati ma preferisco fare cosi dovrebbe anche ridurre l'eventuale tempo di risposta,
tornando ai log li ho messi perche nel caso una delle applicazioni dovesse andare in crash il filtro che prende nota delle loro attività, memorizzerebbe l'ora ed il pacchetto mandato.
Il programma funziona, consuma molta CPU della macchina, ma probabilmente perche ho sbagliato io. dovrei controllare ma non ho tempo.
Si poteva fare diversamente? senza dubbio, ora aspetto che qualcuno si accorga anch'esso del problema e vediamo alternative per risolverlo.

"non rilascio nulla, perche dovrei sistemare il problema della CPU e perche non so se apriro il server, nel caso non lo apra, lo rilascerò"

@d3v1l401 nel caso mi sia ancora espresso male correggimi mi raccomando non vorrei mai qualcuno capisse male. Per favore cambia firma fa piangere.

La chiave per S4 non ti funzionerà,hai testato di prima di esserne certo? Anche io sono riuscito ad implementare HackShield server e client su Metin2,ma la chiave continuava a dirmi che era sbagliata nonostante usassi stesso client,stessa chiave e stesso HS dell'ufficiale.
 
Ultima modifica:
S3 Firewall
pre_1380063476__immagine1.png


pre_1380063603__immagine.png
Per quanto visto finora funziona bene, il funzionamento è semplice, non ho fatto vedere tutti i file di configurazione perche nell'altro sta configurazione ip e porte, il problema è che mi manda la CPU alle stelle, ma capirò il perchè...

#EDIT rimosso anche file conf.ini, anche cosi sarebbe troppo facile...
 
S3 Firewall
pre_1380063476__immagine1.png


pre_1380063603__immagine.png
Per quanto visto finora funziona bene, il funzionamento è semplice, non ho fatto vedere tutti i file di configurazione perche nell'altro sta configurazione ip e porte, il problema è che mi manda la CPU alle stelle, ma capirò il perchè...

#EDIT rimosso anche file conf.ini, anche cosi sarebbe troppo facile...

Perché di suo la funzione usa molte risorse,se gli fai fare il while(1) è ancora peggio.
 
Perché di suo la funzione usa molte risorse,se gli fai fare il while(1) è ancora peggio.
Ok sono riuscito a ridurre il consumo di CPU almeno di un po', ho fatto un errore in pratica per ogni pacchetto veniva generata una key, che non venendo memorizzata, era inutile, e la continua generazione di queste key portava il programma ad un eccessivo consumo anche con una sola conessione, ho risolto cosi:
pre_1380114344__immagine1.png
La key viene memorizzata ed affiancata ad un IP, quindi il filtro deve solo controllare se l'ip ha gia una key ed in tal caso filtrare i pacchetti, altrimenti, genera la key, e poi va a scansionare i pacchetti, per il momento la key è si inutile,
ma l'ho pensata cosi: se io invece di farla generare al filtro la faccio generare al client magari dall'ID macchina oppure random memorizzata nelle chiavi di registro, per prima cosa non si potrebbe usare un client qualsiasi ma servirebbe l'eventuale fornito da me, in piu, nel caso di blocco, anche avendo IP dinamico, non si potrebbe ugualmente entrate in gioco, in pratica se una key è bloccata il filtro rifiuta i pacchetti, e se è invece assente quindi quell'ip non ha nessuna key, e non sta usando un eventuale client fatto per generarla ed inviarla il filtro rifiuta la conessione.
 
Ok sono riuscito a ridurre il consumo di CPU almeno di un po', ho fatto un errore in pratica per ogni pacchetto veniva generata una key, che non venendo memorizzata, era inutile, e la continua generazione di queste key portava il programma ad un eccessivo consumo anche con una sola conessione, ho risolto cosi:
pre_1380114344__immagine1.png
La key viene memorizzata ed affiancata ad un IP, quindi il filtro deve solo controllare se l'ip ha gia una key ed in tal caso filtrare i pacchetti, altrimenti, genera la key, e poi va a scansionare i pacchetti, per il momento la key è si inutile,
ma l'ho pensata cosi: se io invece di farla generare al filtro la faccio generare al client magari dall'ID macchina oppure random memorizzata nelle chiavi di registro, per prima cosa non si potrebbe usare un client qualsiasi ma servirebbe l'eventuale fornito da me, in piu, nel caso di blocco, anche avendo IP dinamico, non si potrebbe ugualmente entrate in gioco, in pratica se una key è bloccata il filtro rifiuta i pacchetti, e se è invece assente quindi quell'ip non ha nessuna key, e non sta usando un eventuale client fatto per generarla ed inviarla il filtro rifiuta la conessione.

Basterebbe trovare la chiave,cambiarla ed evitano il ban.
 
Bella release. Merita lo sticky.

Inviato dal mio OptimusX4HD usando Tapatalk 4
 
Stato
Discussione chiusa ad ulteriori risposte.