The OpenNET Project / Index page

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

77% из 433 тысяч изученных сайтов используют уязвимые версии JavaScript-библиотек

23.11.2017 10:19

Изучив 433 тысячи сайтов, информация о которых собрана в рамках проекта HTTP Archive и доступа для анализа при помощи интерфейса BigQuery, исследователи обнаружили, что 77% из изученных сайтов используют как минимум одну JavaScript-библиотеку, содержащую известные уязвимости. 51.8% из этих сайтов содержат более одной уязвимости в библиотеках, а 9.2% более трёх уязвимостей.

Наиболее часто встречаются уязвимые копии библиотеки jQuery, которая используется на 82.4% из всех проверенных сайтов. 92.5% из сайтов, использующих jQuery, содержат необновлённые уязвимые версии. На втором месте библиотека jQuery UI, которая применяется на 19.9% сайтов и 89.7% из используемых копий уязвимы. Далее следуют Moment.js - 73.0% уязвимых версий из всех установок данной библиотеки, AngularJS - 84.8%, Handlebars - 60.7%, Mustache - 51.0%, YUI 3 - 40.3%, Knockout - 19.6%, React - 10.2%.

Обновление информации о состоянии сайтов в HTTP Archive произведено 15 октября, т.е. использованы не архивные, а актуальные данные. Данные в целом совпадают с результатами похожей проверки 323 тысяч сайтов, проведённой в марте, которая показала, что уязвимые библиотеки используются на 77.3% сайтов. При этом уязвимости в JavaScript-библиотеках в основном связаны с межсайтовым скриптингом (XSS, Cross-site Scripting) и подстановкой контента, например, могут быть использованы для определения содержимого Cookie при открытии пользователем специально оформленной ссылки.

Также можно отметить публикацию проектом OWASP (Open Web Application Security Project) очередного отчёта, в котором предпринята попытка классифицировать связанные с безопасностью риски в web-приложениях и предложить рейтинг актуальных и наиболее распространённых проблем.

Как и в прошлом выпуске рейтинга, который был сформирован в 2013 году, первое место занимают уязвимости, при которых непроверенные данные оказываются в составе исполняемых команд или запросов (SQL, NoSQL, OS, LDAP Injection). Второе место как и прежде занимают уязвимости, связанные с некорректной работой механизмов аутентификации и проверки идентификаторов сеансов, что позволяет получить неавторизированный доступ. Занимавшие третье место в прошлом рейтинге проблемы межсайтового скриптинга (XSS) переместились на 7 место.

C шестого на третье место поднялись проблемы, приводящие к утечкам конфиденциальных данных, таких как сведения о финансовых операциях и персональные данные пользователей. Четвёртое место заняла новая категория уязвимостей, связанных с некорректной обработкой внешних ссылок в XML-документах (атака XXE). На пятом месте закрепились проблемы в обработчиках списков доступа, позволяющие выполнить операции не предусмотренные текущими полномочиями. На шестом месте проблемы, вызванные ошибками в конфигурации и выводом сведений о настройках в тексте сообщений об ошибках.

Восьмое место заняли уязвимости, вызванные ошибками в коде десериализации данных, которых в последние годы было особенно много в проектах на PHP и Java. Девятое место в рейтинге рисков безопасности для web-приложений занимают проблемы, связанные с использованием в проекте сторонних библиотек, фреймворков и прочих компонентов, в которых имеются неисправленные уязвимости (в качестве примеров упоминается продолжение использования уязвимой версии Apache Struts после выхода обновления, что привело к утечке персональных данных 44% населения США). На десятом месте находятся проблемы с ведением логов и организацией мониторинга, из-за которых факты или попытки компрометации системы могут длительное время оставаться незамеченными.

В отчёте также отмечены новые риски, возникающие в связи с изменениями в архитектуре web-приложений. Например, распространением Node.js и серверного кода на JavaScript повышает риск появления проблем, связанных с десериализацией данных. Организация работы приложений в форме микросервисов часто приводит к появлению скрытых проблем из-за создания API и RESTful-обработчиков на основе переноса старого кода, не рассчитанного на прямую обработку внешних запросов (например, могут быть пропущены проверки корректности поступающих данных). Источником новых векторов атак также могут стать одностраничные приложения, создаваемые при помощи фреймворков Angular и React, в которых функциональность по формированию интерфейса вынесена на сторону клиента.



  1. Главная ссылка к новости (https://snyk.io/blog/77-percen...)
  2. OpenNews: 63% web-сайтов содержат опасные уязвимости
  3. OpenNews: Статистика уязвимостей web-приложений
  4. OpenNews: Анализ уязвимостей за 6 месяцев. Firefox обогнал конкурентов по числу уязвимостей
  5. OpenNews: Сравнения языков программирования с позиции безопасности написанного на них кода
  6. OpenNews: Рейтинг 25 самых опасных ошибок, приводящих к возникновению серьезных уязвимостей
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/47614-web
Ключевые слова: web, security
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (58) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аномномномнимус (?), 13:09, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +37 +/
    Потому что в вебе всё работает на "хоть бы прокатило" и если там хоть что-то обновить - всё развалится, ведь все эти хипстерские фреймворки забили на обратную совместимость.
    И это пошло ещё дальше, во всякие руби на рельсах с их виртуальным окружением "работаем только с этой версией", в питон с его virtualenv с единственным правильным набором либ и версией питона.
    И пока люди будут считать что virtualenv это фича, а не косяк от безвыходности, всё так и будет оставаться дырявым и устаревшим с момента создания (т.к. либы копируются с другого проекта, где всё-кое как работало)
     
     
  • 2.3, нах (?), 13:11, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Потому что в вебе всё работает на "хоть бы прокатило"

    почему это именно "в вебе"?

     
     
  • 3.5, Аномномномнимус (?), 13:32, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Потому что в вебе если что-то сломалось, народ узнаёт об этом в последнюю очередь, уже когда вот конкретно нужная фича умерла. Никто не матерится "Чувак, у ты чё-то поменял и у тебя проект не собирается вообще", браузеру пофиг, он как-нибудь выживет. Ну и автотесты там это из ряда "недавно случился праздник". Плюс ещё море фреймворков на фреймворках, которые тоже никогда не будут спешить обновляться
     
     
  • 4.12, Аноним (-), 14:13, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –8 +/
    Нет совместимости, переходите на новую версию, это и есть прогресс. Если бы в жизни все было иначе, то и колеса бы наверное не было. Уже столько утилит для различных тестов, один раз написал тест, и проверяй что все не развалилось при переходе от версии к версии
     
     
  • 5.17, Аномномномнимус (?), 15:52, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ок, давай перенесём твой посыл в любимую тобой терминологию колёс.
    Были колёса 235/65R17 для одного транспортного средства, потом какой-то умник из верхушки производителей авто решил что теперь модно 235/75R15 и все старые модели авто, а так же колёса к ним сразу перестают выпускать, а фирма год ничего не выпускает меняя оборудование, вместо того чтобы плавно переходить на новый техпроцесс. Ну и т.к. выпуском запчастей (в т.ч. колёс) к старым авто никто не занимается, все ездят на ушатанных рыдванах, на лысой резине. Те, кого больше всего доканало, громко матерясь начинают перетачивать детали от других авто где-то в гаражах.
    Скажу ещё страшное: колёса от поезда не предназначены для роликовых коньков и марсоходов. А ещё в реальной жизни колёса в "старом формфакторе" продолжают поддерживаться развиваться (улучшают резину, добавляют вкрапления, подгоняют рисунок протектора и т.д.).
     
  • 5.20, Аноним84701 (ok), 16:11, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > Нет совместимости, переходите на новую версию, это и есть прогресс. Если бы
    > в жизни все было иначе, то и колеса бы наверное не было.

    Если бы в жизни было все как в вебе, то каждый месяц очередная версия колеса объявлялась бы устаревшей и немолодежной  и всем настоятельно советывали бы переходить на новую, квадратную/овальную/шести-восьми-угольную/(нужное подчеркнуть-придумать).
    Потому что верх прочности, надежности (жесткий угол и постепенно увеличиваемое минимальное для транспортного средства количество колес!), а чтобы не трясло, нужно всего-то сделать специальный выемки-ямочки на дорогах и покрыть их (дороги) резиной!
    При этом, после каждого обновления дорог, оказывалось бы, что ездить на колесах предыдущих версий почти невозможно, за исключением разве что классического "круглого" -- но этих пользователей высмеивали бы все кому не лень, обзывая луддитами и отказываясь воспринимать всерьез.

     
     
  • 6.21, Аноним (-), 16:52, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    а что в linux kernel не так?
     
     
  • 7.31, angra (ok), 22:17, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Нет. Если продолжить аналогию с колесами, то в колесе могут произойти внутренние изменения, например другой рисунок или состав резины, но новое колесо по прежнему можно поставить на старое авто.
     
  • 7.33, gaga (ok), 22:35, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Так, но темп не тот и есть более-менее "железная рука" (Линус, редхат, интересы Ынтерпрайза и т.д.) которые поддерживают относительный порядок в генеральной линии.
     
  • 7.34, gaga (ok), 22:35, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Так, но темп не тот и есть более-менее "железная рука" (Линус, редхат, интересы Ынтерпрайза и т.д.) которые поддерживают относительный порядок в генеральной линии.
     
  • 7.39, Аноним (-), 07:00, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > а что в linux kernel не так?

    Ну, блин, поменять ядро 3.15 на 4.14 я могу. И даже ничего не сломается. А если я поменяю bootstrap 3 на bootstrap 4 - все переделывать придется нахрен. Потому что он не совместим нихрена, for teh greater good.

     
     
  • 8.56, Аноним (-), 12:55, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    это потому, что на самом деле оно не 4 14 , а 2 7 4 14 ну, ок, может 2 8 А пр... текст свёрнут, показать
     
  • 4.16, ввв (?), 15:45, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ты за обновление и поддрержку всех этих тыщ сайтов готов заплатить? Нет?
    Опычно платят 10 тыщ за "сайт", а дальше отвалите.
     
     
  • 5.18, Аномномномнимус (?), 15:53, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Видимо поэтому вебдевелоперам меньше платят, т.к. поддерживать всё равно не смогут, проще новых потом нанять
     
     
  • 6.40, Аноним (-), 07:03, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Видимо поэтому вебдевелоперам меньше платят, т.к. поддерживать всё равно не смогут, проще
    > новых потом нанять

    Да просто на одеске и проч уже полно индусов, готовых делать все и вся за 10 баксов. И если какая-то вебмакака потребует больше, заказ уйдет смуглому чуваку из индии, который халтурит и не разбирается ни в чем точно так же как и остальные вебмакаки, но - в три раза дешевле.

     
     
  • 7.53, user455 (?), 21:03, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    во-первых одеска давно нет. во-вторых индусы, которые делают за_бись и просят за_бись. как только индус понимает, что он делает круто, его не заставишь работать за 10 баксов. это правда не отменяет огромного количества исполнителей с 10-баксовыми ценами, с соответствующим качеством правда.
     
  • 5.19, Аноним (-), 15:55, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Опычно платят 10 тыщ за "сайт"

    Розовые мечты вэбмакаки.

     
  • 2.4, Аноним (-), 13:26, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > И это пошло ещё дальше, во всякие руби на рельсах

    Да ладно, рубильщики никогда про обратную совместимость не слышали, так что скорее наоборот жабоскриптеры у них научились.

     
  • 2.29, dep (?), 21:31, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Причем тут виртуаленв? Просто на поддержке сайта должны работать инженеры, которые должны работать над обновлениями версий. Не стоить кого-то винить, если заказчик жлоб и всех уволил после релиза.
     
  • 2.47, Аноним (-), 11:59, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы строители строили дома также как программисты пишут
    программы, то первый залетевший дятел разрушил бы цивилизацию!!!
     

  • 1.2, бивис (?), 13:11, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    хмг, узнал что существует каталог методов атаки на уязвимости, который называется КАПЕЦ (CAPEC)
     
  • 1.6, mickvav (?), 13:33, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Гхм, большинство уязвимостей в jQuery - это когда пользователю дают возможность запихать от имени сервера какую-нибудь бяку в вызовы самого jQuery (происходящие от имени другого пользователя). То есть уязвим не сам jQuery как таковой, а приложение, которое его криво использует. А версии в которых такие "уязвимости" устранены - это когда авторы jQuery подложили соломки таким горе-разработчикам в конкретном месте.

    Но тут есть два момента -

    1) Если люди не следят за содержимым переменных в jQuery, они и во всех остальных местах не следят, значит после обновления jQuery уязвимости скорее всего еще останутся.
    2) Написать универсальный эксплоит под это дело крайне сложно - нужно в каждом сайте искать XSS, заточенный под эту дырку. И его может не найтись.

    Так что ценность результатов этого исследования, мягко говоря, сомнительная - из попадания сайта в список не следует наличия уязвимости в сайте.

     
     
  • 2.13, нах (?), 14:37, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Написать универсальный эксплоит под это дело крайне сложно - нужно в каждом сайте искать XSS,
    > заточенный под эту дырку.

    если ты уже нашел xss, тебе не должно быть очень важно, уязвима ли та версия jquery - надо просто загрузить свою ;-)

    ну и в общем, да - уязвимости-то по сути ни разу не в jquery, а в кривом коде, ее использующем.
    Иначе все, чего добился бы кульхакер - сломать собственную сессию.

     

  • 1.7, тоже Аноним (ok), 13:40, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Признаться, был уверен, что во фронтенде может быть только одна уязвимость.
    А именно - доверие к нему со стороны бэкенда.
    Но вроде бы любой грамотный разработчик в курсе, что на бэк извне могут прийти какие угодно данные, а данные, полученные по запросу, может прочесть кто угодно...
     
     
  • 2.15, Аноним84701 (ok), 15:41, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Но вроде бы любой грамотный разработчик в курсе, что на бэк извне
    > могут прийти какие угодно данные, а данные, полученные по запросу, может прочесть кто угодно...

    Тем не менее, частенько все получается как с коммунальными службами и ежегодным, совершенно и абсолютно-непредсказуемым, да еще и таким внезапным (сразу после осени!), наступлением зимы -- вроде бы почти готовы и даже почти подумали об этом, просто именно сейчас и здесь неудачное стечение обстоятельств и вообще, ежегодный форс-мажор!

     
  • 2.22, Stop (?), 16:59, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    А слить твои данные на сторону заходя на сервер это не уже не уязвимость? It's school time...
     
     
  • 3.24, тоже Аноним (ok), 18:24, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Понимаю, растопыренными пальчиками писать неудобно.
    Но я предпочел бы увидеть описание конкретного примера, а не напоминание о вашей занятости.
     
     
  • 4.32, angra (ok), 22:31, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ты же большой мальчик, возьми и загугли XSS и CSRF или просто пройди по ссылкам на википедию в новости.
     
     
  • 5.42, тоже Аноним (ok), 08:11, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Я, видимо, недостаточно большой мальчик, чтобы нагуглить, как можно защититься от того и другого обновлением jQuery. Просветите, отцы и старцы!..
     
  • 2.37, Аноним (-), 05:48, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Аналогично.
    Всегда можно поправить так, чтобы конкретно у тебя загрузилась модифицированная версия джиКуери.
    Так такое можно назвать уязвимостью? Непонятно.
     

  • 1.9, Аноним (-), 13:52, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Странно, что только 77%, если учитывать, как делается большинство сайтов - организация заказала сайт "веб-студии", состоящей из одного выпускника месячных курсов, тот слепил сайт на жумле или друпале, засунул на шаред хостинг и - в продакшон.
     
     
  • 2.11, 0x0 (?), 14:11, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –4 +/
    А в нашу эпоху главное, что? Чтобы все участвующие чего-нибудь поимели (не исключая друг-друга))

    Так вот и получается вечный куй джалізо ‒ пока горячо! :)

     
  • 2.26, Ордоним (?), 21:11, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сколько заплатили, столько и получили. Пилить крутой и правильный продакшон оно, конечно, круто, но кто ж за него заплатит?
     
     
  • 3.27, ДевопсЛокалхостаКубернетыОпенстеки (?), 21:18, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Кто ж вас научит делать правильный прод? опять все построите на костылях и синей изоленте, неудачники.
     
     
  • 4.28, Аноним (-), 21:26, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да разрабы есть, но вот аналитиков нанимать не принято, между бизнесом и технарями плохая согласованность. Поэтому из гна и веток
     

  • 1.10, Аноним (-), 14:06, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    уязвимые версии еще ладно ,вы лучше вспомнити как отвалилась полинтернета после npm leftpad
     
     
  • 2.30, animonous (?), 22:16, 23/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Бесконтрольный апдейт с хипстерских реп - вообще зло и ц.
     
  • 2.38, Аноним (-), 05:49, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > уязвимые версии еще ладно ,вы лучше вспомнити как отвалилась полинтернета после npm
    > leftpad

    С вами забудеш

     

  • 1.35, Аноним (-), 22:41, 23/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Потому что, как написано в статье http://www.opennet.dev/opennews/art.shtml?num=47596

    > Наиболее часто дубликаты встречаются в коде на языке JavaScript, для которого лишь 6% файлов не совпадают (т.е. 94% файлов являются полными клонами 6% файлов)

     
  • 1.36, Аноним (-), 02:28, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Вот чёт реально не понял.. в js можно наклеить уязвимостей?? Где можно почитать подробней?
     
  • 1.41, EuPhobos (ok), 07:37, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Что значит "уязвимые JS-библиотеки"??
    Если смогли что-то написать на JS, что ставит под сомнение безопасность, то значит сам JS уязвим, а не библиотеки, которые написанные на том же JS.
    Бред какой-то получается.
    Это как если преступник возьмёт 6-ти патронный револьвер, выстрелит из него в человека 6 раз, и попадёт только 1, а криминалисты приехав на место скажут "Хмм, тут револьвер, но он не важен, самое интересное, что в нём всё таки была одна летальная пуля, именно если бы не конкретно эта самая пуля, именно она виновата" и начнут искать кто изготовил именно эту пулю ...
     
  • 1.43, Аноним (-), 10:14, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Объясните чем страшна уязвимость в клинтской библиотеке? Она же все одно на клиенте выполняется и на сервер никак не влияет?
     
     
  • 2.44, Аноним (-), 10:38, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Объясните чем страшна уязвимость в клинтской библиотеке? Она же все одно на
    > клиенте выполняется и на сервер никак не влияет?

    Например, можно выполнить от имени пользователя действия, которые он не собирался делать. Или определить содержимое сессионной cookie и получить доступ к учётной записи.

     
     
  • 3.46, тоже Аноним (ok), 11:28, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Джентльмены, давайте не витать в теориях.
    Предположим, что здесь, на Опеннете, используется древняя библиотека - тот же jQuery.
    Каким образом это поможет абстрактному хакеру, например, отправить здесь пост от имени конкретного меня?
    Не небрежный бэкенд, не левые рекламные сети с неизвестно какими скриптами, а именно древний jQuery?
     
     
  • 4.50, ойой (?), 16:13, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Предположим, что здесь, на Опеннете, используется древняя библиотека - тот же jQuery.
    >Каким образом это поможет абстрактному хакеру, например, отправить здесь пост от имени конкретного меня?
    >

    Как вы могли заменить, у некоторых комментариев есть кнопка "развернуть".
    Допустим, абстрактный хакер в комментарии написал яваскрипт, который отправляет запрос "напиши новый комментарий" на сервер. Предположим, что комментарий хакера спрятался под кнопкой "развернуть", а при нажатии на кнопку, у нас с сервера подтягивается полный комментарий, который затем вставляется вместо этой самой кнопки.
    Если в нашей древней библиотеке нет "экранирования" символов, то в качестве комментария у нас на страницу вставится тот самый яваскрипт, который браузер в итоге исполнит.
    Конкретно вы, залогиненный на сайте опеннета, нажимаете на кнопку "развернуть".
    Профит.

     
     
  • 5.51, ойой (?), 16:14, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Прошу прощения, кнопка выглядит как "[показать]", а не "развернуть"
     
  • 5.52, тоже Аноним (ok), 17:08, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Какой же дурак делает экранирование - на клиенте?
    То есть первый же бот, посылающий ответ без всякого браузера, сделает то же самое, как бы вы ни обновляли библиотеки?!
    Ровно про это я выше и говорил - это не уязвимость фронтенда, это глупость программиста, который доверяет данным, пришедшим с фронтенда.
     
     
  • 6.54, angra (ok), 00:33, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Какой же дурак делает экранирование - на клиенте?

    API, REST? Нет, не слышал.

    > То есть первый же бот, посылающий ответ без всякого браузера, сделает то же самое, как бы вы ни обновляли библиотеки?!

    Задаю наводящий вопрос: "И от чьего же имени сможет написать бот?".

    > это глупость программиста, который доверяет данным, пришедшим с фронтенда.

    Мысль о том, что и бекенду тоже не надо доверять, в голову никогда не заглядывала?

     
     
  • 7.55, тоже Аноним (ok), 12:14, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    И какое сколь угодно RESTFUL API требует от вас, приняв произвольный комментарий от пользователя, сохранять его в неприкосновенности, надеясь на то, что при выводе его что-то на клиенте проэкранирует? А если, не дай бог, админка наваяна на коленке и в ней забудут проэкранировать тот же комментарий и аккуратно выведут его администратору - этот дятел таки порушит всю вашу цивилизацию?
     
     
  • 8.60, Аноним (-), 09:02, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Если у апологетов уязвимостей в на фронтенде закончились аргументы, то даже не с... текст свёрнут, показать
     
  • 3.48, anonymous (??), 13:50, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    но ведь для этого нужно как то войти в клиента? как это сделать если в код на сервере ничего нового добавить не получиться?
     
  • 2.45, Аноним (-), 10:46, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    А на клиенте что, воровать нечего? Явки/пароли, например. С которыми уже идти на сервер.
     
     
  • 3.49, anonymous (??), 13:56, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    как зайти на клиента если ничего нового в том что лежит на сервере не добавить?
     

  • 1.57, Аноним (-), 15:46, 25/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Меня одного шокирует сложившая сегодня ситуация, что недостаточно образованные в... большой текст свёрнут, показать
     
  • 1.59, Аноним (-), 08:47, 26/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я, как и многие тут, не понимаю про опасность уязвимостей фронтенд библиотеках. Сам я бекендщик, фронтенд это всегда не доверенная среда, кто угодно может поменять дом (пользователь, аддон в броузере и т.д.), модицицироваь запрос к серверу, потому все XSS и некорректные запросы фильтруется на сервере.
    Дайте кейс когда уязвимость в фроненд библиотеке может нанести хоть какой вред?
     
     
  • 2.62, Аноним (-), 20:22, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Атака на фронтэнд, это не атака на сервер/инфраструктуру проекта, а атака на пользователя и его данные. Например, если удастся выполнить javascript в  web-интерфейсе при его просмотре администратором (самый тривиальный случай - script injection из-за проблемы с валидацией комментариев) много чего можно натворить.

     
     
  • 3.63, Аноним (-), 21:03, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Но ведь XSS всегда экранируется на сервере. Не придет ничего клиенту.
    Хорошо, допустим у нас плохой сервер, он не экранирует XSS и отдает пользователям все как есть. В ответ на асинхронный запрос, некая библиотека начинает модифицировать дом и вставлять полученный результат, тут должна себя проявить уязвимость?
    Но ведь, странная ситуация, у нас получается сервер которому мы не доверяем.
     

  • 1.61, qwerty_qwerty1 (?), 13:32, 26/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Дело не вот что программисты не хотят переходить на новые версии.
    А дело в том что для перехода на новую версию надо переписать сайт целиком.
      
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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