Уязвимость DaOffice позволяла удалить любого пользователя из соцсети


Однажды летом 2018 года мне было интересно узнать, а что же это такое поиск уязвимостей в веб приложениях и я попросил знакомого показать как это работает. Мы выбрали в качестве жертвы корпоративную социальную сеть нашей компании (разработка компании DaOffice).

Интранет нового поколения. Социальный. Мобильный. Вовлекающий.

Мы начали изучать и нашли много не критичных уязвимостей связанных с отсутствием защиты от XSS, CSRF и т.п. Но статья совсем не о них, вы и сейчас если в вашей компании имеете социальную сеть можете с ними ознакомиться.

1t6od8gngs4sio3ce80z0r5l4bu.jpeg


Я авторизовался в социальной сети, и мы начали изучать запросы которыми обменивается браузер с сервером. В одном из кусков кода страниц, глаза зацепились за упоминание страницы с названием «SelfDelete» (полный адрес https://<сайт_вашей_соцсети>/net_home/PrivateRoom/SelfDelete). Нигде не могли найти на нее ссылку/кнопку в интерфейсе и в итоге я по ней просто перешел, после этого моя учетная запись была удалена из социальной сети. Дело в том что cookie которые подтянулись в браузере их было достаточно чтобы удалить учетную запись без подтверждения со стороны пользователя — эксплуатируется CSRF через GET запрос.
Для удаления как оказалось достаточно чтобы пользователь был залогинен в учетке и его cookie не протухли, заставить любым способом перейти пользователя по ссылке через браузер.

Согласно Common Vulnerability Scoring System уязвимость оценить можно так:

ogvaoy3e7ufto8vwq5u_rooogsk.jpeg

i4zmixuzgzeq6kp-sps50lp9p6i.jpeg

a4u2zdlptakqbuf7yc-zpppcmqy.jpeg


К сожалению из контактов на сайте разработчика указан только номер телефона, что как бы намекает и по нему нам бы ничего дельного не ответили. Поэтому мы связались через известные внутренние контакты и получили отказ об устранении.
В начале августа 2018 года наши работники «чудесным образом» узнали о наличии этой ссылки и начали ей активно делиться. Наши пользователи массово стали регистрироваться заново в социальной сети, вот как это выглядело:

ksyfclieaputnkzisgxmw3fj7xa.png

swruyc7ecz2qor693s_zsmn3jza.png

naoqjrpbklppttefovf9kd3rj0c.png

В итоге уведомив разработчика о том, что у нас пользователи из-за нехватки лицензий удаляют коллег, а потом сами регистрируются при появлении свободной лицензии, разработчик приступил к устранению и через 4 месяца уязвимость была устранена.

Жалко что некоторые пользователи потеряли админские права в группах, контент, историю, зато у них в адресе пользователя гордо красуется номер: https://<сайт_вашей_соцсети>/net_home/People/<имя_пользователя>2
В 2019 году мои предложения на смену данной социальной сети на MS Yammer никто не услышал, пока все по прежнему. Если у кого есть аккаунт с нужными правами в www.cvedetails.com предлагаю опубликовать уязвимость со ссылкой на эту статью.

© Habrahabr.ru