Специалисты LGTM обнаружили опасную RCE-уязвимость во фреймворке Apache Struts, который используется для создания Java EE веб-приложений и применяется во многих энтерпрайз-приложениях компаний из топа Fortune. Так, Apache Struts пользуются такие гиганты, как Lockheed Martin, Citigroup, Vodafone, Virgin Atlantic, Reader’s Digest, и так далее. Обнаруженный баг позволяет атакующему выполнить произвольный код на уязвимом сервере.
Проблема получила идентификатор CVE-2017-9805 и связана с работой плагина REST, который присутствует в большинстве установок Apache Struts. По информации исследователей, уязвимость вызвана тем, как фреймворк реализует десериализацию данных поступивших из недоверенных источников. В частности плагин REST не может корректно обработать XML-пейлоад. Эксперты пишут, что баг очень похож на проблему десериализации, обнаруженную в 2015 году в Apache Commons Collection.
Уязвимость представляет опасность для всех версий Apache Struts, выпущенных после 2008 года (начиная от Struts 2.5 и заканчивая Struts 2.5.12). Из-за этого все приложения, использующие фреймворк и плагин REST, уязвимы для удаленных атак, причем исследователи подчеркивают, что эксплуатировать проблему очень легко.
В минувший понедельник, 4 сентября 2017 года, разработчики Apache Struts уже представили обновление, устраняющее уязвимость, Apache Struts v2.5.13. После этого аналитики LGTM сочли возможным обнародовать на GitHub proof-of-concept эксплоит.