описание протоколов RAdmin

Тема в разделе "WASM.NETWORKS", создана пользователем slow, 3 май 2005.

  1. slow

    slow New Member

    Публикаций:
    0
    Регистрация:
    27 дек 2004
    Сообщения:
    615
    надо хотя бы логи запросов от клиента к серверу и наоборот, а также схему шифровки паролей.



    есть простой клиент rnimda.exe. но реверсинг пока затруднен отсутствием времени и опыта.
     
  2. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Там challenge\response аутентификация
     
  3. slow

    slow New Member

    Публикаций:
    0
    Регистрация:
    27 дек 2004
    Сообщения:
    615
    спасибо, A_Must_Loll и bogrus!



    bogrus

    можно чуть подробнее о challenge\response аутентификации?

    я понял, что там с сервера высылается некоторая случайная п-сть символов, вводимый пароль хешится с этой п-стью, рез-т

    отсылается на сервер, где производится ровно то же и хеши сравниваются, если ровно то все путем.

    вопрос в технической реализации, чего делать с введенным паролем и присланной случайной п-стью применительно к radmin.

    thanks
     
  4. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine




    Взять MD5 хеш от пароля дополненного нулями до 100 байт







    Зашифровать её twofish, упаковать через сложение двордами(с циклическим переполнением) и отправить обратно
     
  5. slow

    slow New Member

    Публикаций:
    0
    Регистрация:
    27 дек 2004
    Сообщения:
    615
    thanks, пошел пробовать!
     
  6. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Не получается? Свяжись, можем договорится о полном описании + пример исходника
    Код (Text):
    1. //====================================================================
    2. typedef struct TCP_DATA
    3. {
    4.     BYTE        bool;           // соединение
    5.     unsigned int    data_size;      // размер data
    6.     unsigned int    data_crc;       // контрольная сумма данных (int++)
    7.     BYTE        code;           // код пакета (sizeof.ZLIB_DATA mod(16))
    8.     TWOFISH_DATA    data[?];        // данные
    9. }
    10. //====================================================================
    11. typedef struct TWOFISH_DATA     // CBC_KEY(MD5(pass_char[100]))
    12. {                   // CBC_IV(FEDCBA9876543210A39D4A18F85B4A52)
    13.     WORD        code;           // код
    14.     unsigned int    data_size;      // размер data
    15.     ZLIB_DATA   data[?];        // упакованый ZLIB_DATA
    16. }
    17. //====================================================================
    18. typedef struct ZLIB_DATA        // compress2(Z_BEST_SPEED)
    19. {
    20.     BYTE        code;           // код
    21.     unsigned char   filename[1024]; // имя файла (максимум 1024 байт)
    22.     unsigned int    filepointer;    // указатель (для SetFilePoiner)
    23.     unsigned int    filepartsize;   // размер filepart (макс знач. 50000)
    24.     BYTE        reserve;        // резерв
    25.     BYTE        filepart[?];    // содержимое файла (максимум 50000 байт)
    26. }
    27. //====================================================================
     
  7. bober

    bober New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2005
    Сообщения:
    153
    bogrus

    Это не протокол - это наверно структура пакетов.

    А как происходит авторизация? Че сначала слать?