Опубликовано сообщение о массовой уязвимости в проектах на Ruby. Речь идёт об использовании
Дело в том, что
Хотя официальное руководство по безопасности Ruby on Rails предупреждает об этой опасности, но всё равно подобная небрежность встречается в 90% проектов на Ruby, в доказательство чего приводятся примеры на Github, Scribd, Tumblr и других сервисах.
Как и в прошлый раз c Rails, здесь можно спорить, баг это или «ожидаемое поведение» системы. Но если большинство разработчиков делают ошибку из-за такой «особенности», так почему бы не исправить правила обработки строк в Ruby?
^
в начале строки и $
в конце строки регулярных выражений вместо \A
и \z
. Дело в том, что
^
и $
в таких случаях воспринимается Ruby как новые строки (\n
), что открывает двери для инъекций.Хотя официальное руководство по безопасности Ruby on Rails предупреждает об этой опасности, но всё равно подобная небрежность встречается в 90% проектов на Ruby, в доказательство чего приводятся примеры на Github, Scribd, Tumblr и других сервисах.
Как и в прошлый раз c Rails, здесь можно спорить, баг это или «ожидаемое поведение» системы. Но если большинство разработчиков делают ошибку из-за такой «особенности», так почему бы не исправить правила обработки строк в Ruby?