BSON инъекция в MongoDB адаптере для Ruby
В BSON-ruby был найден баг который в лучшем случае приводил к небольшому DoS, но большинство версий было уязвимо к инъекции в BSON (аналог SQL инъекции, BSON это бинарный аналог JSON используемый для работы с базой).
На хабре уже как то упоминалась особенность регулярок в руби — у нас ^$ значат не просто начало и конец строки, но и новую строку .
Но тогда в примерах были лишь XSS «javascript:a() http://» и я давно искал пример, когда регулярки приводят к чему-то серьезному. И вот пару дней назад, во время аудита внешних библиотек нашего клиента, наткнулся на следующий код в BSON-ruby.
def legal?(str) !!str.match(/^[0-9a-f]{24}$/i)end
Читать дальше →
На хабре уже как то упоминалась особенность регулярок в руби — у нас ^$ значат не просто начало и конец строки, но и новую строку .
Но тогда в примерах были лишь XSS «javascript:a() http://» и я давно искал пример, когда регулярки приводят к чему-то серьезному. И вот пару дней назад, во время аудита внешних библиотек нашего клиента, наткнулся на следующий код в BSON-ruby.
def legal?(str) !!str.match(/^[0-9a-f]{24}$/i)end
Читать дальше →
Источник: Хабрахабр
Похожие новости
- Децентрализованное доверие. 1. Гипотеза
- Боли и решения: какие трудности возникают при найме коммуникаторов
- Большие языковые модели в финтехе: можно ли доверять им данные
- Spark_news: Каждый четвертый предприниматель не доволен своим окружением
- Редакция Spark.ru: Не прогори. Как найти китайского поставщика для работы на российском рынке?
- Finpeople: «Лента» объявляет о росте выручки на 62,1% и увеличении рентабельности по EBITDA на 434 б.п. в 1 квартале 2024 года
- Руслан Галифанов: Трезвый взгляд на Америку как место для жизни и бизнеса
- Путеводитель по Docker. От основ контейнеризации до создания собственного докера
- Чтение на выходные: «Искусство быть невидимым. Как сохранить приватность в эпоху Big Data» Кевина Митника
- Spark_news: Зумеры быстрее всех выгорают на работе