Сегодня обнаружил узявимость, позволяющую получить доступ к СУБД MySQL и чтению файлов на сервере, принадлежащем компании ORACLE. Видимо, никто не застрахован от ошибки.
Кому интересно, некоторые подробности.
MySQL и др.: 5.0.75-log, Apache, Tomcat 5.5 OS: Sun-solaris2.8
Расскажу свою историю, которая станет в некоторой степени поучительной. Изначально дело происходило летом, примерно в июле-августе.
Представьте себе провинциальный городок с населением около 60000 человек. В городе этом два провайдера. Один действует уже около 8 лет и имеет около 5000 клиентов. Про него и сей рассказ.
Просматривая один из ресурсов (а точнее — сайт администрации того города), расположенный на сервере, принадлежащем провайдеру, изменил запрос /news.php?id=123 на /news.php?id=124-1. Результат не изменился — ошибок нет, отображается та же новость. Дальше — рутинная работа по подбору количества полей. В принципе, ничего интересного я не ждал, подобных ошибок полно, если бы всё это дело не работало из пользователя root. К тому же не фильтровались теги и яваскрипт в теле новостей. И тут Остапа понесло…