The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Уязвимость в мессенджере Dino, позволяющая обойти проверку отправителя, opennews (?), 24-Мрт-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


63. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от YetAnotherOnanym (ok), 24-Мрт-23, 14:46 
> через отправку специально оформленного сообщения организовать добавление, изменение или удаление записей в персональных закладках другого пользователя без необходимости совершения жертвой каких-то действий. Кроме того, уязвимость позволяет изменить отображение групповых чатов или принудительно подключить или отключить пользователя от определённого группового чата

Прямо как в фантастической кине двадцатилетней давности.

Ответить | Правка | Наверх | Cообщить модератору

76. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 24-Мрт-23, 19:10 
Я бы сам наверное если бы писал бы клиент, то возможно допустил бы такую же ошибку. Там смысл примерно такой. Протокол - это по сути XML. Вы получаете XML трех типов и разбираете. Конкретное расширение, в которое нужно перенаправить полученные данные, обычно определяется по нэймспэйсу. Нэймспэйс обычно определяет, какие поля могут быть у данных. Лишние поля обычно игнорируются. И вот большой косяк - это по дефолту считать, что данные приходят только от сервака и игнорировать поле отправителя, которое является частью базового протокола. Т.к. точно такое же сообщение вам может послать любой левый юзер, а не только сервер.
Ответить | Правка | Наверх | Cообщить модератору

87. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (87), 24-Мрт-23, 20:34 
Откуда и как вам на connected tls socket может прийти сообщение не от сервера?
Ответить | Правка | Наверх | Cообщить модератору

89. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 24-Мрт-23, 21:13 
В core протоколе описаны все 3 типа сообщения. Все остальное - это по сути расширения. Iqшки - это прозрачные сообщения, которыми можно свободно обмениваться. Некоторые из них поддерживаются сервером. Например список контактов. Вы шлете запрос на список своих контактов - сервер вам их возвращает. Вот такой например:
<iq id='bv1bs71f'
       to='juliet@example.com/chamber'
       type='result'>
    <query xmlns='jabber:iq:roster' ver='ver7'>
      <item jid='nurse@example.com'/>
      <item jid='romeo@example.net'/>
    </query>
</iq>
Прикол в том, что никто не запрещает любому Васе Пупкину послать вам такой же iq с тем же неймспэйсом jabber:iq:roster. Разница будет только в поле from. И если вы забиваете на правильную обработку полей id и from, то вы это скушаете.
Ответить | Правка | Наверх | Cообщить модератору

138. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (87), 25-Мрт-23, 14:21 
Вы не поняли моего вопроса, Аноним (76).

Почему сервер пропустит до Dino сообщения с неверным адресатом?


Ответить | Правка | Наверх | Cообщить модератору

152. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 25-Мрт-23, 20:22 
Еще раз читайте. В этом и заключается безграничность возможностей. Дело сервера - парится насчет core протокола, где есть только тэги message, presence, id и только атрибуты from, to, id и xml:lang. Все. Больше ничего. Что завернуто в эти тэги - сервер не волнует. Можете хоть войну и мир завернуть.
Ответить | Правка | Наверх | Cообщить модератору

159. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (87), 27-Мрт-23, 07:42 
Я не вижу, в чём тут безграничность. Безграничность должна быть в том, что и сервер, и клиент, могут париться о том, что им кажется правильным, в том числе и об iq, и о чём угодно другом. При этом, в федерации, очевидно, никто никому доверять на эту тему не должен. Разговор, что, типа, сервер должен париться только о core, это чушь собачья. Сервер должен париться обо всём, и, поскольку протокол безграничен, и клиенты могут слать любую ерунду, он должен париться об этом в два раза сильнее. Это не отменяет того факта, что клиенты тоже должны париться обо всём, но поскольку клиентов много, а серверов мало, то ответственность, естественно, лежит на узком месте, то есть, на сервере.


Ответить | Правка | Наверх | Cообщить модератору

160. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 27-Мрт-23, 08:51 
Как это можно не понимать? Если сервер будет парится ради всего, то чтобы добавить в протокол какую то новую фишку, ее придется добавлять и на сервер тоже. А тут например добавили в presence свой тэг с нэймспейсом status:icq и все. Сервер просто автоматом рассылает этот статус всем клиентам. И если они тоже поддерживают этот тэг, то они его поймут и правильно отобразят. Безграничные возможности.
Ответить | Правка | Наверх | Cообщить модератору

161. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (87), 27-Мрт-23, 13:47 
С чего это вдруг-то сервер должен рассылать чёрт знает что всем клиентам? Сервер должен банить всех, кто делает что-то не то (то есть, то, что сервер не знает и не умеет).
Ответить | Правка | Наверх | Cообщить модератору

162. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 27-Мрт-23, 14:21 
И тогда все скатывается в стандартную бюрократию, когда чтобы добавить лишний смайлик надо согласовывать это с советом XMPP, ога. Задача сервера - просто рассылать, что ему скажут и куда скажут. Остальное - это дело клиентов и всяких анти-спам алгоритмов.
Ответить | Правка | Наверх | Cообщить модератору

164. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (87), 28-Мрт-23, 06:08 
Мне не нужны ваши революционные смайлики. Мне нужно, чтобы работал базовый набор операций чата, причём везде одинаково.
Ответить | Правка | Наверх | Cообщить модератору

153. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 25-Мрт-23, 20:27 
А дальше все как любом почтовом сервисе или мессенжере. Можно вручную слать "спам" на любой адрес, даже если он не в списке контактов. Список контактов - это всего лишь как бы подписка на автоматические рассылки от сервака.
Ответить | Правка | К родителю #138 | Наверх | Cообщить модератору

154. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  +/
Сообщение от Аноним (76), 25-Мрт-23, 20:31 
И если клиент дырявый, рассчитывает только на "правильный" порядок пересылки информации, ориентируется только на нэймспэйс, игнорирует поля id и from, не радомизирует id, а использует некую контанту (ибо нафиг рандомизация, если ростер запрашивается только один раз за сессию, ога) - то он это сожрет. И так скорее всего и было. А надо строить любые расширения НАД core протоколом, а не параллельно ему.
Ответить | Правка | К родителю #138 | Наверх | Cообщить модератору

92. "Уязвимость в мессенджере Dino, позволяющая обойти проверку о..."  –1 +/
Сообщение от Аноним (76), 24-Мрт-23, 21:30 
*всего 3. Это сложно объяснить. Это надо понять. XMPP - это протокол с безграничными возможностями.  Нет никаких ограничений на фичи, которые в нем можно реализовать. Можно придумать любые нэймспейсы и потом к любому XML-тэгу прилепить любые произвольные данные с этим нэймспэйсом. Именно так например в XMPP были добавлены статусы в стиле ICQ. Есть 3 типа сообщения: статус, сообщение и информационное. Они ведут себя по разному. При логине сервер присылает вам последний статус всех контактов из ростера и все непрочитанные вами сообщения. А вот информационные сообщения рассылаются свободно в режиме запрос-ответ.
Ответить | Правка | К родителю #87 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру