Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Программная инженерия > Безопасность, Шифрование
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.08.2017, 13:21   #1
vipok72
Пользователь
 
Регистрация: 26.07.2015
Сообщений: 59
По умолчанию Помогите разобрать пакет

Имеется пакет протокола TPKT, в нем авторизационные данные передаваемые при подключении к RDP, не получается нормально разбить пакет на куски дабы понять его структуру, при переводе с hex на string выводится только IP машины и крякозябры.
Вот спецификация протокола RDP
Я так понимаю на 71 странице спецификации собственно идет описание структуры пакета, я пытаюсь разбить - дешифровать... и ничего не получается
Цитата:
160301007d01000079030159940a8b2911f 6673d5fe11eb2ffbf5b748159d5c04c5a9b cb9bcbd4361eb7cf000018002f003500050 00ac013c014c009c00a0032003800130004 0100003800000012001000000d3139322e3 136382e312e323231000500050100000000 000a0006000400170018000b00020100001 70000ff01000100
Помогите пожалуйста найти куски с CodePage, флагами, длинной и значениями домена, логина, пароля и тд...
А так же я так понимаю там шифрование пароля идет через RC4, но для этого нужен ключ который я тоже найти не могу...

Последний раз редактировалось vipok72; 16.08.2017 в 13:24.
vipok72 вне форума Ответить с цитированием
Старый 16.08.2017, 16:34   #2
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от vipok72 Посмотреть сообщение
значениями домена, логина, пароля и тд...
Ага, так они в открытом виде через сеть и идут..

Просто удивительно, что человек, умеющий запустить wireshark, выкладывает какой-то невнятный набор слитных шестнадцатиричных цифр..

По уму нужно разбирать handshake с самого начала, а не один отдельно взятый пакет, неизвестно из какого места обмена выдернутый

Какая у Вас вообще задача?
Black Fregat вне форума Ответить с цитированием
Старый 16.08.2017, 18:32   #3
vipok72
Пользователь
 
Регистрация: 26.07.2015
Сообщений: 59
По умолчанию

Симитировать RDP сервер, а точнее процесс авторизации через NLA
Остальные пакеты протокола RDP тогда вот (шаблонные ответы):
Клиент посылает серверу ("Удаленный рабочий стол" при нажатии на "Подключить" такое отправляет любому серверу...):
Цитата:
03 00 00 13 0E E0 00 00 00 00 00 01 00 08 00 03 00 00 00
Сервер отвечает клиенту на данный момент так (это я так понимаю просьба ввести авторизационные данные через NLA):
Цитата:
03 00 00 13 0E D0 00 00 12 34 00 02 0F 08 00 02 00 00 00
Ну... вот и все пакеты... больше их нет... Далее после ввода данных таких как логин и пароль вот такая лабуда клиентом отправляется серверу...
Логин указан "Mac" а пароль либо "1" либо "123", IP сервера "192.168.1.221"

Последний раз редактировалось vipok72; 16.08.2017 в 18:36.
vipok72 вне форума Ответить с цитированием
Старый 16.08.2017, 21:18   #4
vipok72
Пользователь
 
Регистрация: 26.07.2015
Сообщений: 59
По умолчанию

Все таки разбил пакеты в пред посту на части: ссылка
Цитата:
Client: (RDP пакет) Клиент рассказывает что умеет
03 00 00 13 0E E0 00 00 00 00 00 01 00 08 00 03 00 00 00

03 -> TPKT Header: TPKT version = 3
00 -> TPKT Header: Reserved = 0
00 -> TPKT Header: Packet length - high part
13 -> TPKT Header: Packet length - low part (total = 19 bytes)
0e -> X.224: Length indicator (14 bytes)
e0 -> PDU Type: CR Connect Request (Тип PDU: запрос подключения CR)
00 00 -> X.224: Destination reference = 0
00 00 -> X.224: Source reference
00 -> X.224: Class and options = 0

01 - Тип пакета (Запрос на переговоры RDP)
00 - Флаги (нету в док)
08 00 - размер пакета, должен быть установлен в 8 байт (сейчас правильно)
03 00 00 00 - То что поддерживает клиент (на данный момент TLS и CredSSP)

Server: (RDP пакет) Сервер рассказывает что умеет (тут появляется диалоговое окно авторизации)
03 00 00 13 0E D0 00 00 12 34 00 02 0F 08 00 02 00 00 00

03 -> TPKT Header: TPKT version = 3
00 -> TPKT Header: Reserved = 0
00 -> TPKT Header: Packet length - high part
13 -> TPKT Header: Packet length - low part (total = 19 bytes)
0e -> X.224: Length indicator (14 bytes)
d0 -> X.224: Type (high nibble) = 0xd = CC TPDU; credit (low nibble) = 0
00 00 -> X.224: Destination reference = 0
12 34 -> X.224: Source reference = 0x1234 (bogus value)
00 -> X.224: Class and options = 0

02 -> Тип пакета (должен быть установлен в 02, сейчас правильно) (Ответ на переговоры RDP)
0F -> (нету в док) Флаги. Поддерживаются блоки расширенных клиентских данных, поддерживается протокол расширения графического конвейера, поддерживается режим ограниченного администрирования (Вроде для NLA)
08 00 -> Размер пакета, должен быть установлен в 8 байт (сейчас правильно)
02 00 00 00 -> (нету в док) Выбранный протокол (должен быть RDP, SSL и тд...) Выбран CredSSP (Для NLA авторизации)
Собственно сижу и анализирую, в упор не вижу каких либо хендшейков или ключей и тд и тп, все что есть при обмене между оригинальным RDP сервом и клиентом это:
1) TCP пакеты в которых нет какой либо особой смысловой нагрузки, я думаю это чисто для поддержания коннекта
2) Пакеты которые я разобрал выше
3) Невнятный шеснадцатеричный набор цифр из тела TPKT пакета который послал клиент (RFC1006)
4) А далее уже сервер отвечает тоже TPKT пакетом, только вот перед этим он наверно понял и расшифровал содержимое посланного клиентом пакета не?

Последний раз редактировалось vipok72; 16.08.2017 в 21:48.
vipok72 вне форума Ответить с цитированием
Старый 17.08.2017, 08:17   #5
Slym
Участник клуба
 
Регистрация: 07.12.2011
Сообщений: 1,025
По умолчанию

А в первых пакетах и не будет паролей
Первые пакеты -"это эй чувак по фене ботаешь?"
Вот вторые пакеты - это уже то что надо - "По фене ботаю, знаешь Васю сиплого /с южного района"

т.е. тебе надо на клиента отослать то что ты выудил "Server: (RDP пакет) 03 00 00 13 0E D0 00 00 12 34 00 02 0F 08 00 02 00 00 00"
и ждать пока в ответку представляться начнет

вторым все таки пойдет TLS хендшейк
Не стесняемся, плюсуем!

Последний раз редактировалось Slym; 17.08.2017 в 09:05.
Slym вне форума Ответить с цитированием
Старый 17.08.2017, 12:18   #6
vipok72
Пользователь
 
Регистрация: 26.07.2015
Сообщений: 59
По умолчанию

Цитата:
Сообщение от Slym Посмотреть сообщение
т.е. тебе надо на клиента отослать то что ты выудил "Server: (RDP пакет) 03 00 00 13 0E D0 00 00 12 34 00 02 0F 08 00 02 00 00 00"
и ждать пока в ответку представляться начнет

вторым все таки пойдет TLS хендшейк
Пакет уже отослал, клиент начинает отправлять хендшейк, а именно ClientHello. Сейчас мучаюсь разбирая пакеты. Мб кому то пригодятся пару ссылок по этой теме: https://www3.ntu.edu.sg/home/ehchua/.../HTTP_SSL.html и https://tls.dxdt.ru/tls.html
vipok72 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ Помогите разобрать задачи ubisoftMD Помощь студентам 19 19.09.2016 21:40
Помогите разобрать условие Stairdeck Паскаль, Turbo Pascal, PascalABC.NET 1 06.12.2015 14:16
Помогите сгенерировать сетевой пакет для ICQ Blowball Общие вопросы C/C++ 11 11.03.2009 20:19
помогите задачу разобрать Настаська Помощь студентам 2 26.11.2008 16:16