Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Enable default webzen encoding packet Client -> Server  (Visto 1669 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline realman Posteado: December 18, 2021, 05:40:12 AM | Modificado: December 18, 2021, 05:48:20 AM by realman

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 106
  • Gracias recibida: 1404
  • md
Enable default webzen encoding packet Client -> Server

Perfect for 6 season

use your custom XOR

Main:



Main example use



Server:
When you recieve packet use code
example:



after this you custom packet from client will be encoded by xor

Ready for zteam or exteam, easy to rework in mu emu
credits: MercurialX (finalmu)

Discord: mercurialxen
Final

Gracias:

zurect, Lotto4K4k, kimera, tutu100, Darckz, HaPKoTuK, Pecan, Smudevelop, angel321, carper, Ryzenn, Domedica, Xysad, coolgepds, SVnext, hellboycp33, zodiacddos, clockbooster, OBBY, exegame, Kosh, melo920, vamchy33, AnarkiaMu, komandirbk, MuFan, PachoRasta, showmax, Honghai1992, bustafa, zekcrom, Honghai2221992, manifestacja, wenleiady, birdy491, usersa, concac123, Djassar, Van_Bom, ramyo, stopk, TERROR, nockasdd, son1xx2, fengyun52894, 308508743, slavea, walkeny, anhtjm94, Crowley, ziosky, drake95, animator, binhvq, nguqua, TheKing027, zenki992, Saxius, nhanphu200, Erick05, andreyzz, MADRUGA, Specifier, k12leito, me19900, rekis, jony820, donciukas14, deathsquad, zlethanhlong, luciferlg, roshux, vantuan02hn, c4nhsatcodong, RodryRosez01, manfromvn, ailsoncost, dahouzi, wagnii, juan1997, 183358, skinmuonline, cri0, Betell Host, mantios, atlansdev, pimkungclub, magarikaci, comelon666, drendy, dasgrid, Genilson23, kayito, hfhmu, dieguitox, Odisk, axeman192, SaintZeus, GoldSun, Sergio Franco, RinOv, mos02673, Denis Alves, Marcela, beecubin, stark98, tammadall, Nexus, louis, Cartman, Kapocha33, webamoev, thunwa1, kaisudo, Wendigo, binhchivn, taovanluc, emerson2004, malke, Alexander, kove0816, aemoscon, cobyzero, vnshell, NghienMU, xuanyuan, phuongcuongmsqm, majoca10, Rindy, CorsarioDgx, Pyke, omgsf, saske98, mkslep, CezarMaster, LTP Team, kenh14, NoobDK, sagat202, esteban, RafhaelSouza, 1muarcadia1, anh1pk, djagripnos, solar, korron, mugloves99, takumi12, whisky123, zhangjianle865, beibei, muzic25, heroviet2301, quyanxu

Offline phuongcuongmsqm #1 Posteado: December 18, 2021, 08:57:53 AM

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 100
  • Gracias recibida: 30
  • vn

Offline realman #2 Posteado: December 18, 2021, 12:13:03 PM

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 106
  • Gracias recibida: 1404
  • md
Discord: mercurialxen
Final

Offline NghienMU #3 Posteado: December 18, 2021, 08:22:08 PM

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 189
  • Gracias recibida: 56
  • vn

Offline kayito #4 Posteado: December 18, 2021, 10:08:55 PM | Modificado: December 18, 2021, 10:31:41 PM by kayito

  • MAESTRO

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.083
  • Gracias recibida: 19858
  • ar
Para los que no entienden que es esto...

Prácticamente es una encriptación de paquetes donde pueden encriptar el paquete antes de realizar el envío desde el main hacia el server.

El offset es para el main Season 6 1.04e GMO

Esto MuEmu ya lo realiza en dos partes:

-Primero lo realiza en el main.dll adentro del Protocol.cpp, si buscamos el final del archivo encontramos el DataSend donde podemos ver que hace exactamente esto mismo pero programado de otra manera y utilizando el PacketManager.cpp. Si quisieran modificar la encriptación default (básicamente el fin de este post), pueden hacerlo en el PacketManager.cpp donde van a tener definido el "m_XorFilter" y cada valor que se usará para encriptar el paquete a enviar. (SI REALIZAN ESTA MODIFICACIÓN EN EL MAIN.DLL, TIENEN QUE HACERLA DE LA MISMA MANERA EN EL GAMESERVER)

-Segundo en particular MuEmu tiene un segundo encriptado propio que se hace desde HackCheck.cpp interviniendo tanto el send como el recv para poder realizar su propia encriptación. Si quieren modificar esta segunda encriptación, los que usan MuEmu simplemente van al archivo HackCheck.cpp en su main.dll y modifican las funciones EncryptData y DecryptData. (SI REALIZAN ESTA MODIFICACIÓN EN EL MAIN.DLL, TIENEN QUE HACERLA DE LA MISMA MANERA EN EL GAMESERVER)

Y por último dejo la siguiente aclaración:

Todos los envíos realizados por el main.exe directamente son encriptados automáticamente de tal manera que el gameserver ya lo puede interpretar (exactamente la misma manera en que lo hace el PacketManager). El problema está en cuando ustedes quieren modificar esa encriptación del PacketManager, sólo les va a funcionar con sus propios envíos al DataSend mientras que los envíos default no funcionarán.

Entonces si quieren modificar la encriptación default del main.exe, pueden hacerlo de esta manera y yo opino que lo mejor sería redirigir el llamado directamente hacia el PacketManager, ya que de esa manera unifican sus propios envíos

En MuEmu CREO que pueden hacerlo de la siguiente manera:

Code: [Select]
#include "Protocol.h"

SetCompleteHook(0xE9, 0x00404DB0, &DataSendHook);

void DataSendHook(char* buf, int len, BOOL bEncrypt, BOOL bForceC4)
{
if (!bEncrypt)
{
return ((void(__thiscall*)(void*, BYTE*, DWORD))0x00405110)((void*)0x08793750, send, size);
}

return DataSend(buf, len);
}

Gracias:


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
18 Replies
9792 Views
Last post December 16, 2018, 06:04:04 PM
by Cloud
2 Replies
2086 Views
Last post August 02, 2018, 08:37:55 AM
by djagripnos
0 Replies
636 Views
Last post June 29, 2020, 02:32:25 AM
by xcode
1 Replies
2364 Views
Last post February 07, 2021, 08:41:31 AM
by Ketamine
1 Replies
567 Views
Last post May 03, 2021, 11:30:11 PM
by ZabiinoOo