Каковы проблемы безопасности с диаспорой? - PullRequest
3 голосов
/ 06 октября 2010

Я слышал много шума вокруг вопросов безопасности с диаспорой, кто-то может подвести итог, что они были?

1 Ответ

7 голосов
/ 06 октября 2010

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

  1. Они никогда не проверяли, что данный пользователь когда-либо имел разрешение что-либо делать.Таким образом, хотя пользователь может перейти к /image/123/delete/, чтобы удалить собственное изображение (чей ID оказался 123), он может просто вручную ввести URL-адрес /image/1/delete/, чтобы удалить изображение с идентификатором 1, даже если этоизображение не принадлежало им.
  2. Они использовали функцию ярлыка в Ruby on Rails, которая позволяет вам просто массово назначать POST-свойства для таблицы базы данных, не проверяя, что эти свойства действительно были в форме.Таким образом, хотя на странице обновления профиля могут быть только поля для изменения изображения аватара и описания биографии, любой, у кого есть небольшой опыт, может поиграться с данными POST до того, как они будут отправлены на сервер, а также отправлять пары столбец / значение, такие как имя пользователя,пароль, идентификатор сеанса и т. д. Объедините это с пунктом # 1, где вы можете просто изменить чьи-либо данные, если вы знаете URL-адрес, и вы можете установить личную информацию любого пользователя на любой, какой вы захотите.
  3. Они использовали MongoDB для своей серверной части,Для неинформированных Mongo использует Javascript для некоторых своих возможностей запросов.Они брали необработанные строки поискового запроса и просто выполняли их в своем бэкэнде Mongo, что позволяло любому, кто отправляет правильно сформированный Javascript в качестве запроса, действительно делать с базой данных все, что им нужно.

Если выЛюбопытно о технических деталях, не стесняйтесь обучать себя.

...