|
Взлом протокола обмена, определение алгоритма подсчета CRC |
|
|
|
Apr 6 2018, 13:08
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Коллеги! Прошу помочь, хотя бы советом, в решении проблемы реверс-инжиниринга ИК-протокола обмена. Есть "фирменная" система, состоящая из приемника ИК-сигналов и кучи передатчиков сигнала. Передатчики посылают пакеты данных, в которых есть их собственный адрес и еще что-то. Сам обмен я просниффил, оказалось достаточно просто, в пакете данных нашел поля адреса, в этом я точно уверен. Все остальные данные пока не известны, где находятся в пакете, но главное - в конце пакета (подозреваю очень сильно!) есть поле какой-то контрольной суммы. Во всяком случае, при изменении буквально 1-2 битов в пакете 4 последних байта сильно меняются, что наталкивает... Так вот: каким способом можно вычислить алгоритм, по которому ведется подсчет этой КС? Прошивка МК недоступна, естественно... Я пробовал брутфорсить при помощи утилиты reveng, но ничего не вышло... Что посоветуете? Вот просниффленные пакеты с трех разных передатчиков: Код 73 07 61 = BA AF 20 05 1C 00 00 00 00 00 00 00 00 00 00 09 0A 00 00 00 00 00 00 80 00 00 00 41 41 00 3C 12 = 71 6D 62 87 73 07 61 = BA AF 40 60 18 00 00 00 00 00 00 00 00 00 00 09 0A 00 00 00 00 00 00 80 00 00 00 41 41 00 3C 12 = 3B 80 07 A9 73 07 61 = BA AF 60 00 16 00 00 00 00 00 00 00 00 00 00 09 0A 00 00 00 00 00 00 80 00 00 00 41 41 00 3C 12 = 01 6D 67 BD 73 07 61 = BA AF 20 05 12 00 00 00 00 00 00 00 00 00 00 09 0A 00 00 00 00 00 00 80 00 00 00 41 41 00 3C 12 = 71 20 62 88
72 4F 1B = BA 9C 60 00 62 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 = 01 30 E7 F6 72 4F 1B = BA 9C 40 62 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 = D0 13 85 05 72 4F 1B = BA 9C 60 00 5E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 = 01 12 E7 CA 72 4F 1B = BA 9C 20 0B 5E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 = 0B AA EC 80
73 10 07 = 25 41 20 04 1E 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 12 = 47 06 62 4C 73 10 07 = 25 41 40 60 1C 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 12 = 19 20 06 70 73 10 07 = 25 41 60 00 1A 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 12 = 01 6A 66 4E 73 10 07 = 25 41 20 04 18 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 12 = 78 0C 4E 45 знаками равенства я отделил в начале область адреса (я уверен, что это так) и в конце - область контрольной суммы (100% уверенности в назначении этих байтов нет)
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
 |
Ответов
|
Apr 6 2018, 16:17
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Цитата(Baser @ Apr 6 2018, 17:35)  Вообщем попробовать подбором. Собственно, для подбора нужен какой-то автоматизированный инструмент, иначе просто нереально. Знаете такой? Цитата(adnega @ Apr 6 2018, 17:43)  А возможно ли получить один и тот же пакет два раза? У таких пакетов последние 4 байта будут совпадать? пока что не удалось добиться такого, при каждой передаче по непонятному алгоритму меняются 5-7 байты. Пока что я не выявил их назначение, поэтому не могу сказать, возможно ли добиться повторяемости.
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Apr 6 2018, 17:00
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(ARV @ Apr 6 2018, 19:17)  пока что не удалось добиться такого, при каждой передаче по непонятному алгоритму меняются 5-7 байты. Пока что я не выявил их назначение, поэтому не могу сказать, возможно ли добиться повторяемости. Тут уже грустно. Если контрольная информация используется для проверки целостности сообщения приемной стороной, то это одна ситуация. Если это нужно для защиты протокола от несанкционированного использования - то совершенно другая. Скорее всего, используется некий seed, для какой-нить псевдослучайной последовательности, но в этом случае можно было бы весь обмен обфусцировать.
|
|
|
|
Сообщений в этой теме
ARV Взлом протокола обмена Apr 6 2018, 13:08 Baser Если CRC стандартная, то можно попробовать перебра... Apr 6 2018, 13:35 adnega Цитата(ARV @ Apr 6 2018, 16:08) в конце п... Apr 6 2018, 13:43 Baser Цитата(ARV @ Apr 6 2018, 19:17) Собственн... Apr 6 2018, 20:22 k155la3 Цитата(ARV @ Apr 6 2018, 19:17) Собственн... Apr 7 2018, 09:35  ARV Цитата(k155la3 @ Apr 7 2018, 12:35) А ест... Apr 7 2018, 13:28   Сергей Борщ QUOTE (ARV @ Apr 7 2018, 15:28) но 4 байт... Apr 7 2018, 15:13    ARV Цитата(Сергей Борщ @ Apr 7 2018, 18:13) Т... Apr 8 2018, 11:42     k155la3 А есть возможность проверить что эти пакеты приним... Apr 8 2018, 13:51      ARV Цитата(k155la3 @ Apr 8 2018, 16:51) А ест... Apr 8 2018, 18:22       k155la3 Цитата(ARV @ Apr 8 2018, 21:22) Приемник ... Apr 11 2018, 09:34 ARV Цитата(Baser @ Apr 7 2018, 00:22) Сейчас,... Apr 7 2018, 05:36 _pv Первая и четвертая строки отличаются на пару бит, ... Apr 7 2018, 05:59 esaulenka Мысли на уровне ".опой чую":
- передатчи... Apr 9 2018, 19:53 Baser Цитата(esaulenka @ Apr 9 2018, 22:53) ...... Apr 10 2018, 10:11  ARV Цитата(Baser @ Apr 10 2018, 14:11) Может ... Apr 10 2018, 10:21   Flood Цитата(ARV @ Apr 10 2018, 13:21) Проводно... Apr 10 2018, 10:30    ARV Цитата(Flood @ Apr 10 2018, 14:30) Часто ... Apr 10 2018, 10:55 ARV Я набрал еще пакетов для статистики. Выяснилось, ч... Apr 10 2018, 07:51 vesago Случаем не для буренок таги? https://electronix.ru... Apr 10 2018, 18:01 ARV Для них, родимых.
Я продвинулся куда дальше всех, ... Apr 10 2018, 18:29 vesago Однако. Не думал, что кто-то еще в такой области р... Apr 10 2018, 20:01  ARV Цитата(vesago @ Apr 11 2018, 00:01) Но пр... Apr 11 2018, 04:22 vesago В таге у меня стоял MSP430. Я пробовал подцепиться... Apr 11 2018, 06:01 ARV Цитата(vesago @ Apr 11 2018, 10:01) В таг... Apr 11 2018, 08:54 Baser Цитата(vesago @ Apr 11 2018, 09:01) В таг... Apr 11 2018, 09:00  vesago Цитата(Baser @ Apr 11 2018, 12:00) А како... Apr 11 2018, 09:17   Baser Цитата(vesago @ Apr 11 2018, 12:17) У мен... Apr 11 2018, 09:57    k155la3 Цитата(Baser @ Apr 11 2018, 12:57) . . . ... Apr 11 2018, 10:42 vesago Во как на объекте выглядит
Apr 11 2018, 09:41 ARV К сожалению, семейство MSP430 для меня абсолютно н... Apr 11 2018, 11:41 k155la3 Цитата(ARV @ Apr 11 2018, 14:41) К сожале... Apr 11 2018, 13:03 ARV Способы выделения полей в пакете в общих чертах мн... Apr 11 2018, 13:11 k155la3 Цитата(ARV @ Apr 11 2018, 16:11) . . . И... Apr 11 2018, 15:16 halfdoom Цитата(ARV @ Apr 11 2018, 16:11) Остается... Apr 12 2018, 07:23 k155la3 Цитата(ARV @ Apr 11 2018, 16:11) . . . . ... Apr 12 2018, 09:27 ARV При помощи reveng я пробовал перебор (т.е. брутфор... Apr 12 2018, 08:29 Сергей Борщ QUOTE (ARV @ Apr 12 2018, 10:29) При помо... Apr 12 2018, 09:04 ARV Так там и нет изменения пары битов, там все 4 байт... Apr 12 2018, 09:13 ARV Я умом понимаю сложность задачи... но надеюсь еще ... Apr 12 2018, 10:43 k155la3 Цитата(ARV @ Apr 12 2018, 13:36) Я умом п... Apr 12 2018, 11:00 _pv последние два байта - тупо xor от первых 18ти 16ти... Apr 12 2018, 10:44 ARV Цитата(_pv @ Apr 12 2018, 14:44) последни... Apr 12 2018, 10:54 ARV Идеи требуются.
Но еще сильнее требуется какое-то ... Apr 12 2018, 11:04 _pv четвертый с конца байт - не КС, есть пакеты где то... Apr 12 2018, 11:22 k155la3 Цитата(_pv @ Apr 12 2018, 14:22) . . .
а ... Apr 12 2018, 11:53  _pv Цитата(k155la3 @ Apr 12 2018, 18:53) Хемм... Apr 12 2018, 12:06   k155la3 Цитата(_pv @ Apr 12 2018, 15:06) под один... Apr 12 2018, 12:54 _pv 7310072541 2004 46 0000000000000000000000008240C10... Apr 12 2018, 13:02 k155la3 А ТС стопроцентно уверен, что пакеты "просниф... Apr 12 2018, 13:07 ARV Только что проверил на всех имеющихся на сегодня д... Apr 12 2018, 13:17 _pv Цитата(ARV @ Apr 12 2018, 20:17) Набросал... Apr 12 2018, 13:26 vesago Да, у них обычный UART 4800. По крайней мере ридер... Apr 12 2018, 13:23 k155la3 А как передатчик узнает, что ему надо передать инф... Apr 12 2018, 18:06 ARV Цитата(k155la3 @ Apr 12 2018, 21:06) А ка... Apr 12 2018, 18:56
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0
|
|
|