А когда уже все об этом знают кроме меня, тогда к чему эти "реверансы"?
Это тема достаточно сложная. В том плане, что много деталей. Мне проще говорить опираясь на Python или Java. Попробуйте клонировать какой-нибудь проект крупный на GitHub. В вашей вилке будет очень много "красного". Там используются библиотеки, их много. И очень много, уязвимых. Предупреждений об уязвимости может быть масса.
Крупные проекты иногда работают на них (уязвимых). Я может быть скажу крамольную мысль, но уязвимость, сам факт её наличие — ничто, если мы не можем использовать это.
Да, я знаю проекты, которые после клонирования не будут ругаться на уязвимость. Похвально. Но многие не такие. Иногда требуется очень много усилий, чтобы обновить все библиотеки. Самое дорогое это время программиста же. А иногда приходится много переписывать.
Это раз. Два, сломать можно всё. Всё, что делается людьми, можно и сломать. Но обычно проверяют достаточно поверхностно. Есть поля на сайте, давайте вставим туда код. И посмотрим. Нет уязвимости? Отлично!
Но есть и другой подход даже на уровне скрипта. Не говоря уже, что обычно идут через ПО.
Данная уязвимость была известна тем, кто работает в инф. безопасности по web. Это капля в море. А давайте пройдемся по редакторам, например. ) Там вообще "беда" в этом плане. Но, как мы можем эти "уязвимости" использовать? Обычно нужны еще условия. Одной такой уязвимости бывает иногда мало.
Хорошая практика поддерживать актуальность того, что мы подключаем. Но, как я писал выше, есть и другие примеры.
Про XSS я бы не хотел писать. Много есть примеров в сети. Там действительно описано все хорошо. Много статей, чтобы понять сам принцип.
InstantCMS достаточно надежна, по крайней мере тогда, когда я смотрел её (на это).