2017-01-03 3 views
1

Я пытаюсь реализовать обнюхивание пакетов для трафика с клиента Outlook на сервер Exchange. Насколько мне известно, это сообщение использует MAPI через HTTPS (Outlook в любом месте). Я не думаю, что использую MAPI над RPC.Перенос пакетов Sniffing Outlook -> Exchange с использованием MAPI

Движение встречается как TLS, которое я могу расшифровать в wirehark, поскольку у меня есть соответствующий сертификат, загруженный. Я не могу просмотреть исходное содержимое почты, которое я отправил во время моего теста, он по-прежнему закодирован.

Как я могу декодировать сообщения, чтобы я мог прочитать исходное содержимое в виде обычного текста?

Я создаю временные файлы для каждого потока, который обрабатывается и хранит их unchunked и ssl-decoded. Пример ниже. Если бы я посмотреть сказал файлы менее они представляются двоичным:

ОБРАБОТКА

СДЕЛАНО

X-время_запуска: Пт, 16 декабря 2016 23:17:12 GMT

Х- ElapsedTime: 5

^@^@^@^@^@^@^@^B^@^@^@^@^E^@ < 9B>^B^A^E 0> < 9F>^@^D^D^C^A^@^@^@^A^A^Ctestets)^@ s^@ Y^@^Q^@ h^@^V^@ р^@^@^А^@^Q^@^В^А^@^E^@^@^O^B^A ^C^@^@ 9^C^@^O^C^@^E9^^@^X^@^X^@^@:^C^@ q:^B^A^@^@^U^D^A =^C^@^X^A ^^@ 8^@^X^@ X^@^A`^^@ f^A^A^D^@^@>^D ^ F^@^H^@^@^@^@/o = ExchangeLabs/ou ~^@ Administra^@^@^@^@ tive Group (FYDIBOHF23SPDLT)/cn =^@^@^@ Recipientsi^@ cfb4ddc8c1ba4733a3d23^@^@^@^@ 4e1321845da-shayne.civi^@ S^@ h^@ a^@ y^@ X^U^@ n^@ e^@^@ C^@ i^@ v^X^@ t < 98>^@ r >^@ s^X^@^@ (^ @^^A 0>.^@ C^@^^A^Q^@^@ < 9D> 0^@^@ w^@^@^@ ܧ @ B^P^Z^H^@ +/2> *^K^@^@ O^Gh < 9D>^D^D 2>^A^@ 0>^P^A^@@ 7>^K @^@ w (^ @^@^Zd^@ g (^ @)^Atx^@ o^@ k^@ 9>^Ao^@ m @^B?^B^^A^M ^ M^A^@^P^@ & ^? _^ON < 98> h5^GZ] w 3> ~^@^B^@^W^R^K5^Ko^C^F^M/8^@ =^@ E^@ x >^9>^Bnz^ALH^@ b8^A^@ u^@i^@ A^@@ ^ Bm >^Cn^X^@ s^Br^@ tX^@ v^@ Gx^@^ApX^@ (^ @ F^@ Y^@ D^@ I^@ B^@ O^@ bESC^EEHh^@ 2^@ 3X^GP < 98>^@ L^@ T^@) (^ Cc8^B =^@ R^AI^Fp^X^@ < 99>^Et^B^@ c^@ f >^D4GU^CdX^@ 8^X^@ 1x^@ a >^@ 7h^B3H^@ 3^@^B4^A18^@ 2 (^ @ 8h^@ 5^@ a^@ - X^B^E F>^A^@^@^P^@^@^G < 93> ^ W^@^Vs l 2>/A> MR] Oˌ^Sx^@^@^DUB^V^@^@^L^@^@^@^@^A^C^@^@^A^@^@^@^@

Я прочитал всю документацию https://msdn.microsoft.com/en-us/library/cc425499(v=exchg.80).aspx об этих протоколах, которые я мог найти.


EDIT:

С использованием программой под названием стельки, и это офисные инспектора, в частности MAPIInspector, я могу просматривать почти всю информацию, что мне нужно.

https://github.com/OfficeDev/Office-Inspectors-for-Fiddler

Я могу просмотреть в виде текста: предмет, список получателей, сведения об отправителе, имена файлов вложений, содержание вложений файлов и многое другое, но я до сих пор не могут найти тело сообщения.

Я считаю, что сообщение хранится в: ExecuteRequestBody-> ROPBuffer-> Полезная нагрузка-> ROPList-> ROPWriteStreamRequest-> Данные.

Я считаю, что ROPWriteStreamRequest - это то, что мне нужно.

Содержимое зашифровано и/или запутано. Мне удалось найти алгоритм обфускации для RPC, который является XOR на 0xA5, но я не уверен, что это сделано до или после сжатия. Я подозреваю, что алгоритм сжатия LZ77.

+0

Возможно, вы ожидали какой-то простой текст? Я думаю, что это не будет работать из-за внутреннего шифрования и сжатия. – BastianW

+0

Если информация уже была зашифрована по https, я не вижу необходимости в дальнейшем шифровании, хотя я не говорю, что это не так, я не знаю, что это такое. Если это сжатие, то я хотел бы знать, какой алгоритм раздувания я должен использовать для получения открытого текста. – Civerooni

+0

как насчет кодирования содержимого или передачи? это не то же самое ... – BastianW

ответ

1

ExecuteRequestBody-> ROPBuffer-> Полезная нагрузка-> ROPList-> ROPWriteStreamRequest-> Данные сохранили содержимое вложения. Содержимое электронной почты хранится в RopSetPropertiesRequest-> PropertyValues-> 11-м TaggedPropertyValue (тегом свойства которого является PidTagBodyHtml). Содержимое является html-форматом.

Смежные вопросы