Jump to content

Shogun

Miembro
  • Contador contenido

    378
  • Ingreso

  • Última visita

  • Días ganados

    51

Mensajes publicados por Shogun

  1. Yo creo que también deberían hacer eso.

     

    Decirte cómo se hace no te va ayudar en nada a arreglarlo. Si no tienes el source necesitas un dif, y por ahora no hay ninguno testeado, cuando lo haya lo publicaré aqui. Como dijo mi compañero, en un apuro puedes bloquear el comando cube con un fichero CMD, pero eso significa no poder hacer pociones, ni usar el sistema de crafting de las armas 105, ni el de energía.

  2. Me explicas para que sirve esto? e.e

     

    Para arreglar un exploit -que no he explicado cómo se hace, pero es muy sencillo- que permite crashear el servidor a cualquiera que quiera joderte y sepa cómo se hace.

     

    Esta bien asi ? No se como va el tema de los tabs aqui xD+

    5c663b5c89666bd75320f3f56d851e3e.png

     

    Al principio de "return;" has de poner un tab, pero que yo sepa en C++ no importa eso, es solo por legibilidad (Que me corrija alguien si me equivoco, este fix lo hicieron mis compañeros y yo no tengo ni pajolera de C++)

  3. Este exploit ya era conocido por nosotros desde hace varios meses y para evitar crear un problema a los dueños de otros servidores, decidimos no publicarlo en su momento. Sin embargo, recientemente nos llegaron noticias de que determinadas personas estaban haciendo uso de éste, y decidimos publicar el fix.

     

    Este exploit a día de hoy permite crashear completamente (no solo el core, el servidor entero) cualquier servidor privado de Metin2 excepto el WoM2, Gameforge ya lo arregló hace un tiempo.

     

    No voy a explicar como se hace, solamente cómo se arregla. Quien quiera experimentar por su cuenta para descubrirlo, que se lo guarde. No voy a permitir que se de información de este tipo en el foro.

     

    Pasamos a cómo arreglar este bug:

     

    Buscar en game/src/cube.cpp

    resultCount = resultList.size();
    

    Y agregar debajo:

    if (resultCount == 0) 
        return;
    

    En el mismo fichero buscamos:

    if (false == bCatchInfo)
    

    Y lo sustituimos por:

    if (!bCatchInfo || materialInfoText.size() == 0)
    

    Esto es todo. Por la seguridad de vuestros servidores, os aconsejo implementar el fix lo antes posible.

  4. Debes iniciar sesión para ver el contenido del enlace en esta publicación.

     

    sysinstall has been removed from the base system. Auxiliary libraries and tools used by sysinstall such as libdisk, libftpio, and sade have also been removed. sysinstall has been replaced by 

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     and 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.

×
×
  • Crear nuevo...