#javascript #security
#javascript #Безопасность
Вопрос:
Давайте представим веб-приложение, в котором вам нужно войти, чтобы использовать все функции. Итак, если у вас нет какой-либо учетной записи, вы не можете использовать приложение (вы не можете создать учетную запись самостоятельно.)
Я смотрю на проблемы безопасности. Одна из его частей — посмотреть на старые используемые библиотеки javascript… Но действительно ли необходимо их обновлять, чтобы избавиться от уязвимостей безопасности? Хакерам нужно войти в систему, чтобы использовать библиотеки javascript?
Комментарии:
1. » Хакерам нужно войти в систему, чтобы использовать библиотеки javascript? » не обязательно. Предположим, что одна из библиотек берет строку запроса из URL и добавляет ее как HTML. Тогда злоумышленнику достаточно просто отправить кому-нибудь ссылку
yourapp.com/logged/in/area/?q=<script>alerty("XSS")</script>
. Затем жертва входит в систему, и атака завершена. Это лишь один из наиболее очевидных примеров, существует множество других атак, для которых не требуется вход хакера в систему. И многие другие, которые позволят хакеру войти в систему. И хакеры в любом случае могут быть законными пользователями.
Ответ №1:
Предполагая, что уязвимый JS вообще не предоставляется пользователям, не вошедшим в систему. (И это довольно большое предположение).
Злоумышленники могут запускать атаки через браузеры законных пользователей с помощью таких методов, как XSS, CSRF и социальная инженерия. Законные пользователи могут стать мошенниками или их пароль попадет в руки злоумышленника.
Исправьте свои дыры в безопасности. Не думайте, что плохие игроки не могут добраться до них.
Комментарии:
1. Распространенным заблуждением является то, что проблемой являются только риски безопасности, которые переходят от «нет доступа» к «полному доступу», но любой крошечный шаг между ними может стать проблемой. Даже «почти полный доступ» к «чуть больше» или «обычный пользовательский доступ» к «обычному пользовательскому доступу, но может видеть, кто администраторы». Все это может превратиться в огромную проблему. Не игнорируйте то, что кажется небольшой проблемой.
Ответ №2:
Итак, если у вас нет какой-либо учетной записи, вы не можете использовать приложение (вы не можете создать учетную запись самостоятельно.)
[…]
Хакерам нужно войти в систему, чтобы использовать библиотеки javascript?
Позвольте мне оспорить ваше основное предположение здесь. «Хакеры» — это не какая-то внешняя сила. Давайте назовем их своими именами: злоумышленники. Здесь есть две фундаментальные проблемы:
- Никому не нужно иметь учетную запись пользователя, чтобы использовать ваше приложение. Наличие меньших привилегий по-прежнему означает, что они используют его в лучшем случае с меньшей пропускной способностью.
- Люди с учетной записью пользователя могут быть вредоносными.
Это, безусловно, самые большие проблемы с вашим предположением. Затем возникает проблема, заключающаяся в том, что «посторонние» все еще могут получить доступ, который вы для них не предназначали:
- повышение привилегий — такой инцидент произошел в мае 2019 года. Произошло на сайте под названием Stack Overflow.
- социальная инженерия — нарушение безопасности RSA в марте 2011 года было начато с помощью атаки социальной инженерии.
- даже кража учетной записи несанкционированным способом — крупнейшими утечками данных до сих пор были Yahoo! утечки данных. Нет точной информации о полном воздействии, которое это оказало бы, но это легко позволило бы злоумышленникам выдавать себя за пользователя в другой службе, который зарегистрировался в Yahoo.com электронная почта.
Пока речь идет только о том, что посторонние получают больше доступа к вашей системе. Давайте развернемся и проверим ваших пользователей.
Недовольный человек, у которого уже есть учетная запись пользователя, также может действовать злонамеренно. Это не является чем-то неслыханным, и это значительная часть реальных инцидентов безопасности. Некоторые тематические исследования:
- утечка данных Capital One в июле 2019 года была инициирована сотрудником изнутри.
- утечка данных Tesla в июне 2018 года была аналогичным образом совершена сотрудником.
На самом деле я не знаю, лучше ли вы в области безопасности или у вас больше ресурсов для решения проблем, чем у таких корпораций, как Stack Exchange, Yahoo! или Tesla. Возможно, все же стоит отметить, что утечка данных Equifax в марте 2017 года произошла из-за халатности. Из-за массового (как причинно-следственного) сбоя со стороны сотрудников Equifax дыра в безопасности в используемой платформе не была вовремя исправлена.