Взлом университета Сколково и «соседних» сайтов
Думал, что для освещения хватит записи в личном блоге/твиттере/вк, но не хватило. Тут главное — огласка, поэтому перепост.
Впервые в жизни пишу о скомпрометированном ресурсе. Хотя, бывали случае в N раз крупнее...
Предыстория.
Есть такой университет, как ОтУС — Открытый Университет Сколково. Был (есть) раньше только в Москве, сейчас открывается еще в Томске/Питере. Собственно приехали они к нам с презентацией, замотивировали (правда, очень клевые ребята приехали, вдохновили на поступление, учитывая, что я скептически отношусь (относился) к Сколково), чтобы поступали ну и т.д. Зашел я заполнять заявку и просто сработала привычка…
аплоад кастомных файлов с отсутствием правильно настроенного .htaccesss
Итог: полный доступ к исходным кодам, материалам, заявкам на поступление и базам данных следующих сайтов:
И вроде еще какие-то, уже не помню.
Но, студенты то не при чем, я даже не стал копать глубже, посмотрел архитектуру ресурса, БД, пару исходников (я такого кода никогда в жизни не видел, под катом я расскажу про капчу, govnokod #1 просто) и сообщил саппорту.
Базы данных
Пароли хранятся в чистом виде. На тот момент было около 1,5к+ юзеров с различными персональными данными.
Владельцы папок/процессы веба
Все сайты под одним пользователем (как процесс веб-сервера, так и папки) //в принципе, частично простительно, не хостинг
Исходный код apply.openu
Это просто звиздец. Такого я никогда нигде не видел. Я расскажу вам про обещанную капчу…
Было у них нарисовано 30 картинок с изображением кодов (подозреваю, сделанных в paint, искажений изображения не было), одна из которых рандомно выдавалась юзеру (не фиксировалось, какая). А на серверной стороне…
Тупо зашитые коды капчи. Принимаем запрос, бежим циклом по всему массиву, нашли совпадение — капча валидна.
Это я просто, об уровне кода :) и все в такое же духе.
Я правда верю, что этот кабинет будет удален с потрохами и руководство позаботится не только о красивом дизайне, но и о безопасности своих ресурсов. На данный момент личный кабинет закрыт, так как закрыт прием заявок и я с чистой совестью опубликовал пост. // мне немного рассказали, почему все так «плохо», но видимо нужна взбучка, и будет все по-другому
Студентам успешного обучения, надеюсь программа курса будет на достойном уровне (как по рассказам было в Мск)
upd: как подметил Old_Chroft, форму регистрации просто закомментировали в html. Коды капчи в картинках:
http://apply.openu.ru/cap/1.gif
http://apply.openu.ru/cap/2.gif
http://apply.openu.ru/cap/3.gif
…
http://apply.openu.ru/cap/29.gif
http://apply.openu.ru/cap/30.gif
Можно сопоставить с исходником выше
Впервые в жизни пишу о скомпрометированном ресурсе. Хотя, бывали случае в N раз крупнее...
Предыстория.
Есть такой университет, как ОтУС — Открытый Университет Сколково. Был (есть) раньше только в Москве, сейчас открывается еще в Томске/Питере. Собственно приехали они к нам с презентацией, замотивировали (правда, очень клевые ребята приехали, вдохновили на поступление, учитывая, что я скептически отношусь (относился) к Сколково), чтобы поступали ну и т.д. Зашел я заполнять заявку и просто сработала привычка…
аплоад кастомных файлов с отсутствием правильно настроенного .htaccesss
Итог: полный доступ к исходным кодам, материалам, заявкам на поступление и базам данных следующих сайтов:
- openu.ru — Открытый университет Сколково
- apply.openu.ru — Отбор студентов в Открытый университет Сколково
- eskolkovo.ru — ДО в Открытом университете Сколково
- blog.eskolkovo.ru — вроде уже тоже самое, что и openu.ru
- edu.opensingularity.ru — Открытый университет сингулярных технологий
И вроде еще какие-то, уже не помню.
Но, студенты то не при чем, я даже не стал копать глубже, посмотрел архитектуру ресурса, БД, пару исходников (я такого кода никогда в жизни не видел, под катом я расскажу про капчу, govnokod #1 просто) и сообщил саппорту.
Цель поста — быть на 100% уверенным, что после этой публикации данный скрипт приема студентов уберут навсегда
(хоть и с администратором мы немного поговорили на эту тему). Но чтобы как обычно не забылось, с мыслью — работает и ладно (как это бывает в СНГ), сделаем контрольный выстрел.Базы данных
Пароли хранятся в чистом виде. На тот момент было около 1,5к+ юзеров с различными персональными данными.
Владельцы папок/процессы веба
Все сайты под одним пользователем (как процесс веб-сервера, так и папки) //в принципе, частично простительно, не хостинг
Исходный код apply.openu
Это просто звиздец. Такого я никогда нигде не видел. Я расскажу вам про обещанную капчу…
Было у них нарисовано 30 картинок с изображением кодов (подозреваю, сделанных в paint, искажений изображения не было), одна из которых рандомно выдавалась юзеру (не фиксировалось, какая). А на серверной стороне…
$c1 = $_REQUEST['thecode'];
$i = 0;
$names[]="GH4BFRO";
$names[]="EWRHJ42";
$names[]="JSWDWQ5";
$names[]="REJ5JN4";
$names[]="JFUJN47";
$names[]="WFEW4B2";
$names[]="QSDY68M";
$names[]="BNMCF9J";
$names[]="VBDXIN5";
$names[]="RVXSBT5";
$names[]="XCHJN5S";
$names[]="UETRJ65";
$names[]="VBNH3UA";
$names[]="VBRJM4Z";
$names[]="RSNZGWE";
$names[]="GHFTGRO";
$names[]="AZWDWQ5";
$names[]="EWUBN42";
$names[]="AQW5JN4";
$names[]="JF66N47";
$names[]="GHJW4B2";
$names[]="QS45V8M";
$names[]="BCVAF9J";
$names[]="5VASIN5";
$names[]="CVBZBT5";
$names[]="X3CZN5S";
$names[]="UBN2RJ6";
$names[]="VBNHR4Z";
$names[]="VBBNM4Z";
$names[]="QWSX2IX";
...
for ($i ==0; $i < 30; $i++)
{
if ($c1 == $names[$i])
{
...
Тупо зашитые коды капчи. Принимаем запрос, бежим циклом по всему массиву, нашли совпадение — капча валидна.
Это я просто, об уровне кода :) и все в такое же духе.
Я правда верю, что этот кабинет будет удален с потрохами и руководство позаботится не только о красивом дизайне, но и о безопасности своих ресурсов. На данный момент личный кабинет закрыт, так как закрыт прием заявок и я с чистой совестью опубликовал пост. // мне немного рассказали, почему все так «плохо», но видимо нужна взбучка, и будет все по-другому
Студентам успешного обучения, надеюсь программа курса будет на достойном уровне (как по рассказам было в Мск)
upd: как подметил Old_Chroft, форму регистрации просто закомментировали в html. Коды капчи в картинках:
http://apply.openu.ru/cap/1.gif
http://apply.openu.ru/cap/2.gif
http://apply.openu.ru/cap/3.gif
…
http://apply.openu.ru/cap/29.gif
http://apply.openu.ru/cap/30.gif
Можно сопоставить с исходником выше



комментарии (80)