Пять Очевидных Ошибок, Которые Почему-То Продолжают Совершать

В этой статье я расскажу, как из одного сообщения об ошибке на сайте я случайно получил доступ к внутренней информации компании (и даже немного больше).

Отмечу, что это можно сделать с помощью просто браузера.



Пролог

Веб-сайты иногда выходят из строя.

Что происходит. Но того, что описано в статье, быть не должно.



#1

Недавно я зашел на сайт одной компании и увидел (еще раз замечу) вместо этого сообщение об ошибке:

Пять очевидных ошибок, которые почему-то продолжают совершать

Почему сайт упал – отдельный разговор.

Скажу лишь, что это на совести его разработчиков.

Первая ошибка (слишком очевидная, но.

) : Показать сообщения об ошибках.

Да, все знают, что в продакшене нужно отключать отладку.

Но, блин, почему я регулярно вижу сообщения об ошибках в своем браузере?!

#2

Итак, что мы можем узнать из этого сообщения? Ни больше, ни меньше общественный Адрес службы SOAP. Ну да ладно, вряд ли он еще есть в открытом доступе, но на всякий случай копируем его в адресную строку и получаем.

список доступных методов.

Методов много, большинство из них явно предназначены для внутреннего использования.

Каждый из них сопровождается описанием запроса и примером ответа.

Многие требуют авторизации (передачи логина и пароля в запросе), но не все.

Выбираем один открытый метод с говорящим названием и конструируем запрос прямо в браузере.

Да, многие критикуют встроенную в Firefox функцию «Веб-разработчик» (и не зря), но для простых задач она вполне годится:

Пять очевидных ошибок, которые почему-то продолжают совершать

Вторая ошибка : общедоступные услуги.

Почему этот сервер смотрит в мир? Есть ли какие-либо удаленные приложения, использующие его? Хорошо, тогда закрой с авторизацией.

Или хотя бы не давать подробных инструкций к действию.



#3

Посмотрим, что нам ответил сервер.

Для удобства просмотра откроем полученный XML в том же браузере:

Пять очевидных ошибок, которые почему-то продолжают совершать

Это список сотрудников компании, чуть менее двухсот элементов.

Отлично, давайте искать руководство.

Находим, мягко говоря, не последнего человека в компании (на скриншоте).

Теперь мы знаем его адрес электронной почты и что-то подозрительно похожее на Base64 в элементе SotrumnikPassword. Расшифровываем пароль в любом из множества онлайн декодеров.

Третья ошибка : пароли в открытом виде.

Даже если отбросить вопрос о том, зачем вообще нужно выдавать пароли (хэши), все равно непонятно, почему хотя бы не хэши.

Или разработчики считают, что для этих целей подойдет Base64? Примечание : ошибки №4 и №5 относятся уже не к безопасности сервисов, а к личной безопасности.

Это вина не разработчиков, а пользователя, но я решил их оставить, потому что они а) часть этой истории б) такие же банальные и очевидные для всех, но столь же часто совершаемые.



#4

Давайте посмотрим, что можно сделать с полученной информацией.

Попробуем получить доступ к указанной почте.

Проверяем домен в первом доступном сервисе просмотра DNS-записей.

Судя по МХ, это GMail. Что ж, попробуем авторизоваться по расшифрованному паролю:

Пять очевидных ошибок, которые почему-то продолжают совершать

Вы не удивитесь, если я скажу, что пароль правильный? Четвертая ошибка : один пароль для разных учетных записей.

Не будет иметь значения, какой он длины и сколько в нем букв разного регистра и цифр, если он протечет по вашей или чужой (как в данном случае) глупости.



#5

Пароль был правильный, но Google стоит на страже безопасности пользователя — видит, что он зашёл с другого IP и требует дополнительного подтверждения:

Пять очевидных ошибок, которые почему-то продолжают совершать

Но последний вариант, который он предлагает, выглядит слишком простым.

Гугл, ты серьёзно?

Пять очевидных ошибок, которые почему-то продолжают совершать

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

Попробуем ввести найденный номер телефона:

Пять очевидных ошибок, которые почему-то продолжают совершать

Подходит. Открывается корпоративный GMail (и соответственно Google Tasks, Google Drive и другие сервисы).

Пятая ошибка : использование легко узнаваемой информации (в данном случае номера телефона, известного другим людям и Интернету) в качестве дополнительного фактора авторизации/контрольного вопроса.

Сложно ли узнать девичью фамилию матери или дату ее рождения? Так почему же многие сервисы и банки до сих пор используют их по умолчанию?

Эпилог

Я написал письмо этому человеку о необходимости сменить пароль.

Также принято сообщать об уязвимостях разработчикам и давать им время на их исправление.

Но.

Перечитайте ошибки №1—№3. Надо им сообщить, что они всем показывают сообщения о сбоях, сервера, извините, голые.

Они смотрят в Интернете и сообщают пароли первому встречному, возможно, не открытым текстом? Действительно ли нужно напоминать об этом коммерческим разработчикам, стремящимся к корпоративному уровню? О вещах настолько простых и очевидных, что, не зная их, даже на работу брать не стоит? Надеюсь, они прочитают это и узнают себя.

Я хочу сказать им только одно: «Ребята, уходите из профессии!» Обо мне : не разработчик, не специалист по безопасности и вообще не айтишник.

Продвинутый пользователь Интернета, скажем так.

Теги: #мыло #ERP-системы #безопасность веб-приложений #информационная безопасность

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.