Deteccion de proxy de Sb0t 5.38

Iniciado por TickTack, 15 Abril 2017, 18:53 PM

0 Miembros y 1 Visitante están viendo este tema.

TickTack

Hola,

hay algo fascinante que no puedo descifrar porque siempre me pierdo en esto. Sea porque llame metodos de otro proyecto, clase o que hay muchas referncias. Pero alguien sabe como hace Sb0t para detectar proxys?

En el proyecto core hay una clase llamada Events.cs con este metodo:


public static bool ProxyDetected(IClient client)
        {
            bool result = true;

            if (DefaultCommands)
                result = cmds.ProxyDetected(client != null ? client.IUser : null);

            js.ProxyDetected(client != null ? client.IUser : null);

            if (result)
                ExtensionManager.Plugins.ForEach(x =>
                {
                    try
                    {
                        result = x.Plugin.ProxyDetected(client != null ? client.IUser : null);

                        if (!result)
                            return;
                    }
                    catch { }
                });

            return result;
        }


Y en el proyecto scripting hay una clase llamada ServerEvents.cs con este metodo:


public bool ProxyDetected(IUser client)
        {
            if (this.CanScript)
            {
                JSScript[] scripts = ScriptManager.Scripts.ToArray();

                foreach (JSScript s in scripts)
                {
                    Objects.JSUser u = s.GetUser(client);

                    if (u != null)
                        try
                        {
                            bool result = s.JS.CallGlobalFunction<bool>("onProxyDetected", u);

                            if (!result)
                                return false;
                        }
                        catch (Jurassic.JavaScriptException e)
                        {
                            ErrorDispatcher.SendError(s.ScriptName, e.Message, e.LineNumber);
                        }
                        catch { }
                }
            }

            return true;
        }


Todo el codigo fuente de Sb0t se puede descargar desde aqui:
https://github.com/AresChat/sb0t/releases/tag/v5.38

Yo tuve muchos problemas. Ya empezo con esto:

if (DefaultCommands)

Yo crei que deberia de haber un falso o verdadero.

Ustedes saben como hace Sb0t para detectar proxys?

Gracias y saludos
Citar
"Ninguna mentira puede inventarse lo suficientemente patán: el pueblo hispanohablante la cree. Por una consigna que se les dio, persiguieron a sus compatriotas con mayor encarnizamiento que a sus verdaderos enemigos."

TickTack

Trate de averiguar como hace Sb0t para detectar proxys pero sigo sin encontrar la respuesta. Alguien me ayuda?

Si no entonces alguien me puede ayudar con esto:

Si redirecciono todos los paquetes que se comuniquen con el cliente y el servidor... no detectara Sb0t el proxy?

Gracias y saludos
Citar
"Ninguna mentira puede inventarse lo suficientemente patán: el pueblo hispanohablante la cree. Por una consigna que se les dio, persiguieron a sus compatriotas con mayor encarnizamiento que a sus verdaderos enemigos."