04.08.2022 | Новая уязвимость ParseThru угрожает приложениям на Golang |
Уязвимость, получившая название ParseThru, была обнаружена экспертами из израильской компании Oxeye. ParseThru позволяет злоумышленникам получить несанкционированный доступ к облачным приложениям на Golang . Специалисты связывают уязвимость c несоответствиями, которые возникают из-за изменений в логике парсинга URL в Golang, реализованного в библиотеке “net/url”. Эксперты объясняют это тем, что вплоть до версии 1.17 Golang считал точку с запятой допустимым разделителем запроса (например, example.com?a=1;b=2&c=3). Однако в последующих версиях это поведение было изменено: теперь отображается ошибка, если в строке запроса есть точка с запятой. Исследователям удалось выяснить, что ParseThru возникает в тот момент, когда публичный API Golang на 1.17 или более поздней версии, начинает взаимодействовать с бэкенд-сервером, работающим на более ранней версии. Таким образом злоумышленник может тайно отправлять запросы с параметрами, которые в нормальных условиях должны отклоняться. Проще говоря, хакер должен отправить запросы, содержащие точку с запятой. Эти запросы будут игнорированы пользовательским API Golang, но обработаются внутренней службой. Исследователям Oxeye удалось обнаружить несколько проектов с открытым кодом, уязвимых перед ParseThru: Harbor, Traefik и Skipper. Oxeye оперативно проинформировала разработчиков уязвимых приложений и они уже выпустили обновления, закрывающие бреши в их защите. |
Проверить безопасность сайта