По умолчанию Алгоритм работы ускорителя SlonAx 3G

Discussion in 'Реверсинг' started by fire64, 16 Mar 2011.

  1. fire64

    fire64 Elder - Старейшина

    Joined:
    1 Apr 2008
    Messages:
    251
    Likes Received:
    22
    Reputations:
    5
    Алгоритм работы ускорителя SlonAx 3G

    Имеется ли в открытом доступе, информация об алгоритме работы ускорителя SlonAx 3G ?

    Небольшая информация:
    SlonAx 3G - так называемый ускоритель трафика.

    Насколько я понимаю он занимается тунелизированием трафика с определенной компрессией и фактически при работе через SlonAx, весь трафик клиента сжимается и отправляется по UDP туннелю на сервера SlonAx, а уже оттуда, в обычном виде поступает на нужный сервер. таким же образом, пакеты идут и в обратную сторону.

    В качестве тунеля, используется UDP протокол, зашифрованный и сжатый неизвестным методом.

    При этом используются стандартные IP и UDP заголовки.
    Если говорить о SkyGate, то сервера слонакса расположены в подсети 77.94.34.x

    Первые 2 байта, представляют собой идентификатор протокола и имеют значение: \x33\x47 , в ASCII выглядящие как: 3G

    3 байт, предположительно, всегда имеет значение 0.

    4, 5, 6, 7 байты, идентификатор пакета, с каждым новым пакетом, значение увеличивается на 1

    13, 14, 15, 16 байты, похожий счетчик.

    19, 20 байты - предположительно, размер данных, без заголовка.
     
    #1 fire64, 16 Mar 2011
    Last edited: 16 Mar 2011
  2. fire64

    fire64 Elder - Старейшина

    Joined:
    1 Apr 2008
    Messages:
    251
    Likes Received:
    22
    Reputations:
    5
    Нашел информацию, что трафик шифруется алгоритмами TwoFish и BlowFish и сжимается библиотекой libz но по принципу мультиплексирования сессий.
     
  3. fire64

    fire64 Elder - Старейшина

    Joined:
    1 Apr 2008
    Messages:
    251
    Likes Received:
    22
    Reputations:
    5
    Составил структуру заголовка пакетов SlonAx 3G

    PHP:
    struct slonaxhdr_t
    {
        
    byte    ident[3];
        
    int    counter1;

        
    short    test1;
        
    short    test2;

        
    short    counter2;

        
    short    test3;
        
    short    test4;
        
    short    test5;

        
    short    sizedata//pack size = sizeof(slonaxhdr_t) + sizedata
    };
    Параметр counter1 имеет сетевой порядок расположения байтов, для конвертирования в нормальный формат, используйте функцию htonl.
     
  4. fire64

    fire64 Elder - Старейшина

    Joined:
    1 Apr 2008
    Messages:
    251
    Likes Received:
    22
    Reputations:
    5
    Небольшая поправка структуры:

    PHP:
    byte    ident[2];
    byte    flags;
    Выше опубликованная структура, подходит только для флага 00
     
  5. neprovad

    neprovad Elder - Старейшина

    Joined:
    19 Oct 2007
    Messages:
    899
    Likes Received:
    274
    Reputations:
    59
    В чем "соль" темы?