Jump to content

Recommended Posts

Posted

Привет. Я решил написать клиент-сервер для mikrotik bandwith тест, чтобы можно было проводить его не только с микротик устройств. Так как протокол нигде не указан я решил его реверснуть с помощью wireshark. И у меня это практически получилось, см https://github.com/samm-git/btest-opensource/blob/master/README.md . Более того - я написал маленький proof of concept на перловке, который успешно работает и клиентом и сервером, пока правда tcp only и только в 1 тред и только без проверки аутентификации. Потом планирую переписать на plain c, чтобы можно было в ембеды пихать.

Но есть 1 затык - протокол аутентификации. В случае если аутентификация включена, там явно используется что-то вроде salted md5, где salt посылается при коннекте к серверу (16 байт). Я смог понять что если пароль не задан, то клиент отвечает с md5(md5(challenge)). Если задавн - то я не смог понять логику создания хеша, но очевидно, что в нем учавстуют только challenge от сервера и пароль, от логина результат не зависит.

Собственно, обращаюсь к помощи - если кто-то может глянуть под дизасмом btest.exe от mikrotik или еще как подобрать алгоритм создания хеша - это бы сильно помогло в написании полноценной замены btest.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.