Добро пожаловать на сайт DrTroi, здесь вы сможете найти практически всё о  хакинге, и ещё очень много всяких вкусностей

 

 

 

Энциклопедия

Начинающего хакера

 

 

Софт и программы

 

ЧАТ

 

ФОРУМ

 

ГОСТЕВУХА

 

Прикольные надписи на партах и   разное

 

2.5. Начинающему хакеру

 

Для начала давайте определимся, кто такой хакер.

 

Хакер — это человек, который досконально знает организацию сети, операционные системы сети, языки программирования.

 

Так же хакер знает, как построены сетевые протоколы (например, TCP/IP). И еще очень многое.

 

Почему хакеры будут всегда?

 

Ответ прост — потому что все сделанное людьми — может ими же быть взломано! А так же потому что всегда будут администраторы с именем “ЛАМЕР ДНЯ”.

 

Итак начнем…

 

Для начала вам необходимо найти дистрибутивы следующих сетевых ОС:

 

● Linux

 

● RedHat — для начинающего пользователя UNIX

 

● SlackWare — для более опытного пользователя UNIX

 

● FreeBSD — для людей, которые уже довольно свободно чувствуют себя в UNIX

 

Постоянная дилемма: что лучше Linux или проект BSD (FreeBSD, OpenBSD, NetBSD…)? Каждый выбирает для себя. Каждая из них имеет свои преимущества и недостатки.

 

А теперь ближе к взлому… Итак, вот список популярных в сети сервисов:

 

● ftp 21

 

● telnet 23

 

● smtp 25

 

● http 80

 

● pop3 110

 

Цифры — это порядковый номер того или иного сервиса.

 

Итак, все по порядку:

 

FTP (21)

 

Наверное, все пользовались FTP, если нет, то все впереди.

 

Что такое FTP? File Transfer Protocol (протокол передачи файла). Так вот, когда вы подключаетесь через FTP на сервер, то вы автоматически подключаетесь к порту 21 и дальше, используя команды, пользуетесь этим сервисом.

 

TELNET (23)

 

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

 

Что можно сделать если вы имеете telnet доступ? Ну, на верное все(!) от переформатирования винчестера (на удаленной машине конечно!) до изменения ядра системы.

 

SMTP (25)

 

Вы, наверное, не раз в жизни отсылали электронную почту? Так вот, вся электронная почта проходит через этот порт. Simple Mail Transfer Protocol — простой протокол передачи почты.

 

HTTP (80)

 

Hyper Text Transfer Protocol — Протокол передачи гипертекста.

 

Ну, наверное, этот протокол знают все, кто когда-либо пользовался Internet. Все web-серверы, все странички (по большей части) работают через этот порт. Одним словом — все, что вы грузите в ваш браузер доставляется к вам через этот порт.

 

Так как этот протокол существует давно и при этом претерпел мало изменений, то взлом через него практически невозможен даже для профессионала! Исключая случаи, когда программа на web-сервере с “дырами” в безопасности.

 

POP3 (110)

 

Через этот порт вы получаете электронные сообщения к себе в Mail-Agent (например, Microsoft Outlook).

 

Вот вы теперь и разбираетесь (немного) в основных протоколах.

 

Так как взломать? Не спешите, не все так просто…

 

Для данного этапа вашего развития как хакера вам необходимо знать основы UNIX систем в целом. Так вот — очень (ну очень) краткое описание UNIX.

 

Файловая система

 

В отличие от Windows (далее MUST_DIE), где имена дисков (A, B, C, D…) и путь к файлу выглядит как:

 

C:\ MUST_DIE\ die.com

 

в UNIX существует один основной каталог /, а устройства (такие как CD-ROM) можно найти в директории (например, /cdrom).

 

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

 

Далее.

 

Все настройки системы находятся в каталоге /etc. Файл с паролями (обычно) находится в каталоге /etc под именем passwd т.е. полный путь к нему — /etc/passwd.

 

Существует много программ, расшифровывающих этот файл, поэтому я не советую сразу находить их, потому что главное — это списать этот файл, а расшифровать это уже не проблема.

 

Итак, ломаем провайдера!

 

Первое, что нужно сделать — узнать реальный IP-адрес.

 

Делается это очень просто:

 

tracert (под UNIX traceroute) w3.cnn.com

 

и вторая строка — это то что нам нужно…

 

Оттуда (из второй строки) берем IP-адрес (IP — уникальный адрес для каждой машины в сети Internet. Пример 195.55.55.55 (каждое число может быть в диапазоне от 0…255 т.е. 0-255.0-255.0-255.0-255).

 

Теперь пишем ftp (и после пробела пишем этот IP-адрес). Где писать? В MS-DOS PROMPT или в сеансе MS-DOS.

 

Теперь (немного подождав) мы видим строчку login. Здесь пишем ваш логин для входа в систему Internet. Теперь видим строчку Password. Здесь пишем ваш пароль для входа в Internet.

 

И мы получаем что-то типа вот этого (честно говоря очень маленькая вероятность того, что ваш провайдер настолько глуп, но с чем черт не шутит! Один популярный сервер w3.dos.net взломали еще проще — подключились к сервису IIS (Internet Information Server), а там вообще не было пароля!

 

Так вот — продолжаем.

 

Видим:

 

Directory /home/usr/ваш_логин not found

 

Logging in "/"

 

Вот и все, считайте, что взлом окончен.

 

Просто напишите строку:

 

ftp> (писать здесь) get /etc/passwd

 

Вы получили файл с паролями. “Куда?” — спросите вы. Это легко узнать, запустив команду find под MUST_DIE и искать нужно passwd файл (без расширения). Обычно он записывается в ту директорию, из которой вы запустили ftp программу (т.е. обычно это директория MUST_ DIE). Вот и ищите его там, если нет — то смотрите команду find.

 

Как ни жаль, но таких провайдеров все меньше и меньше. Но они существуют, и, к тому же, появляются новые!

 

Не огорчайтесь, если у вас ничего не вышло! Это только начало…

 

Правило номер один: главное — стремление и желание найти “дырки”, а так же умение ими воспользоваться.

 

 

 

 

 

 

2.6. Основы хакинга

 

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

 

Небольшое отступление: Ты скажешь что это за фигня такая — порты и прочая лабуда? Порт — это адрес определенного сервиса, запущенного на данном компьютере в Internet. Также их очень часто называют TCP/IP (Transfer Control Protocol/Internet Protocol) порты, так как на них может обратиться другой пользователь из Internet.Примером может служить принтер или модем — они ведь тоже обращаются с компьютером через свои порты.

 

Как только человек выходит в Internet, он сразу же получает свой уникальный IP-адрес (например, ppp103-3-5.dialup.glasnet.ru). После этого любой желающий может воспользоваться твоими ресурсами (которые доступны) также, как и тебе ресурсы других. Для того, чтобы воспользоваться услугами, необходимо указать IP:port (к примеру, 195.34.34.30:21 — для того, чтобы попасть на FTP сервер zone.ru).

 

Теперь ты, возможно, приконнектишься к какому-нибудь серваку к порту 23 (порт telnet) (Пуск к выполнить к telnet ip:port. Если не указывать порт, то по умолчанию это 23 порт). Если ты нормально приконнектишься, то увидишь приглашение с просьбой ввести логин и пароль. Но поскольку ты не знаешь логина/пароля, то сервер через некоторое время пошлет тебя подальше. Если тебе нечего делать, то можешь попытаться поперебирать пароли, а когда надоест, можешь читать дальше.

 

Если попробовать приконнектиться к серверу не через 23 порт, а через какие-нибудь другие порты, то при большом везении сервер тебе скажет что ты приконнектился удачно и ты сможешь легко найти нужную комбинацию. Это самый простой способ взламывания серверов. Можно проявить себя как Белый хакер в шляпе — посылаешь письмо сисадмину и уходишь с этого сервера (типа незаконно и все в таком духе). Ну а если ты никогда не слышал про 273-275 статьи УК РФ, то… ну, я думаю, ты сам догадаешься, что тебе делать…

 

Небольшое отступление: Сервак — компьютер, подключенный к Internet. Сервис — программа, запущенная на серваке на определенном порту. Каждая такая программа должна отвечать на определенные программы. Если ты дашь этой программе правильную команду, то она должна что-то сделать для тебя. Самый простейший пример — сервис ЭХО или по другому — генератор символов (порт 19). Если ты приконнектишься телнетом по этому порту к компьютеру, у которого запущен этот сервис, эта программа будет реагировать на любой нажатый тобой символ и будет показывать его в окне телнета. Все что тебе нужно — приконнектиться к серваку, на котором запущен нужный тебе сервис.

 

Другой пример — это сервис поиска нужного человека в сети (Finger). Если ты задашь этой программе искать какого либо человека с другого хоста и при этом программа finger запущена на сервере, а также пользователь не сделал так, чтобы его эта программа не находила, то ты получишь об этом пользователе очень много полезной инфы.

 

Какие сервисы запущены, на каких портах и где об этом узнать? Порты находятся в диапазоне от 1 до 1024 и называются хорошо известные порты (well-known). Список использованных портов можно посмотреть в файле на компьютере, который называется “services”. В Windows он находится в C:\ твой_Windows\ SERVICES\ . В NT это — C:\ WINNT\ SYSTEM32\ DRIVERS\ ETC\ SERVICES. Ну а в Юниксе это /etc/services/ (хотя если у тебя стоит Юникс, я думаю тебе это объяснять не надо). Эти порты называются хорошо известными, так как они используются для наиболее распространенных сервисов (WWW, е-mail, FTP, news, telnet). Например, SMTP — отправка почты — 25 порт, POP3 — прием почты 110 порт, WWW — 80 порт, FTP — 21…

 

Ты можешь быть сбит с толку тем, то что существует куча прог для сканирования всего, чего только возможно и хакеры ими очень часто пользуются. Но! При этом ты можешь нарваться на неприятности, так как у сисадминов есть привычка (далеко не лучшая в твою пользу) просматривать логи всех коннектов и по каким портам, а так же попытки взлома их сервера. Некоторые сисадмины свободно разрешают сканить их серверы, а некоторые, увидев что-нибудь не ладное, сразу откапывают твоего сисадмина и жалуются ему какой ты нехороший (в исключительных случаях это может окончиться тем, что тебя отключит из Internet твой пров навсегда!). В США сканирование разрешено и сами сисадмины часто сканят друг друга в целях нахождения дырок. Но от греха подальше если кого-нибудь собираешься сканить из добрых побуждений — лучше попроси разрешение или хотя бы уведоми об этом сисадмина.

 

Так что же такое дырки в системах, о которых столько говорят? Дырка — что-нибудь в системе, которое позволяет кому-нибудь контролировать систему в обход сисадмина.Существует очень много типов дырок. Это может быть неправильно сконфигурированная программа, ошибка в самой программе… Наглядным примером плохо сконфигурированной программы может служить старая версия программы sendmail (если сисадмин оставлял команды wiz и debug или дал директории неправильные права доступа на FTP-сервере, то любой желающий мог скачать файл паролей). В таких случаях вся вина лежит на сисадминах, так как ошибка допущена при конфигурировании, а не из-за самой программы.

 

Другой очень известный и распространенный баг — расшаривание ресурсов в Windows когда это совершенно не нужно или пустой пароль на полный доступ. Из ошибок программ самые распространенные — переполнение буфера обмена у программ, созданных для Internet. Очень часто это используют для того, чтобы перехватить контроль над серваком и потом делать с ним все что твоей душе угодно.

 

Ну а теперь перейдем к очень известному сейчас виду атак — Эксплоитам. Ты уже наверно не раз слышал об этой атаке, но не понимал, что это такое и как этим пользоваться. Так вот. Эксплоит — это программа, написанная на Си++, использующая дырки в системе для получения прав рута (root) — самого главного человека, которому доступно ВСЕ!!! К примеру это так называемая FTP-Bounce дырка, заключаемая в том, что FTP-сервер (служит для скачки/закачки файлов с сервера/на сервер) настроен так, чтобы переадресовывать запрос пользователя на другой компьютер. По идее эта фича вообще на фиг не нужна (в смысле для сисадминов — нам она как раз таки и нужна). Это только создает возможность взлома, так как эта фича позволяет любому человек просканить порты другого компьютера и представиться компьютеру FTP сервером, с которого идет переадресация и этот человек получит ключи от квартиры где деньги лежат. Вообще эксплоиты наиболее практичные и довольно таки легко применяются (если голова с руками растет откуда надо). С эксплоитом можно хорошо поиздеваться над сисадмином, а также над его системой (ой — а зачем вот эти файлы — они тут ва-а-а-аще не нужны!).

 

Эксплоит хорош еще тем, что он не ломает систему (сам справишься!), а только дает тебе ключи. Как ты знаешь, сейчас серваки стоят как минимум на трех типах платформ: NT, VMS и UNIX. У них куча разных версий и типов — UNIX делится на BSD, AIX, SCI, Sun OS, Irix и (наверно) твой любимый Линукс. Ну и конечно же каждая версия глючит по разному и поэтому под разные типы и версии существуют эксплоиты так сказать нужного калибра, ведь как ты понимаешь эксплоит, сделанный под NT, не будет пахать под UNIX, а сделанный для Sun OS не будет пахать под Линукс (ну, хакеру не проблема переделать эксплоит — на то он и хакер). Ну а разные версии не будут пахать, так как очень часто вообще меняют прогу, которая стоит, только оставляют то же имя и номер версии чуть-чуть переделывают. Конечно же все дырки рано или поздно фиксят и нужно стараться пользоваться новыми эксплоитами. Ну, а теперь самое

главное — как же найти эти дырки?

 

Для начала посмотри, что у тебя из сервисов есть на компе — набери команду netstat -aПуск к Выполнить) и ты увидишь что-то типа этого:

 

Active Connections

 

Proto Local Address Foreign Address State

 

TCP localhost:1027 0.0.0.0:0 LISTENING

 

TCP localhost:135 0.0.0.0:0 LISTENING

 

TCP localhost:135 0.0.0.0:0 LISTENING

 

TCP localhost:1026 0.0.0.0:0 LISTENING

 

TCP localhost:1026 localhost:1027 ESTABLISHED

 

TCP localhost:1027 localhost:1026 ESTABLISHED

 

TCP localhost:137 0.0.0.0:0 LISTENING

 

TCP localhost:138 0.0.0.0:0 LISTENING

 

TCP localhost:nbsession 0.0.0.0:0 LISTENING

 

UDP localhost:135 *:*

 

UDP localhost:nbname *:*

 

UDP localhost:nbdatagram *:*

 

Хммм… вроде ничего интересного. Ну начнем разгребать, что это такое появилось.

 

Мы видим, что у Local Address (твой комп) прослушиваются порты 135, 137, 138 и nbsession (в общем это 139 порт прослушивается… можешь написать netstat -an, чтобы увидеть не название портов, а их номера. Насчет этих портов можешь не беспокоиться — это часть Microsoft Networking и они нужны для поддержки LAN (локальной сети). Теперь зайди в Internet и топай, допустим на www.uxx.com, хотя нет, лучше на www.happyhacker.org. Одновременно телнеться на какой-нибудь сервак (ну допустим www.whitehouse.gov). Теперь снова жми netstat -a и вот что у тебя примерно должно получиться:

 

Active Connections

 

Proto Local Address Foreign Address State

 

TCP localhost:1027 0.0.0.0:0 LISTENING

 

TCP localhost:135 0.0.0.0:0 LISTENING

 

TCP localhost:135 0.0.0.0:0 LISTENING

 

TCP localhost:2508 0.0.0.0:0 LISTENING

 

TCP localhost:2509 0.0.0.0:0 LISTENING

 

TCP localhost:2510 0.0.0.0:0 LISTENING

 

TCP localhost:2511 0.0.0.0:0 LISTENING

 

TCP localhost:2514 0.0.0.0:0 LISTENING

 

TCP localhost:1026 0.0.0.0:0 LISTENING

 

TCP localhost:1026 localhost:1027 ESTABLISHED

 

TCP localhost:1027 localhost:1026 ESTABLISHED

 

TCP localhost:137 0.0.0.0:0 LISTENING

 

TCP localhost:138 0.0.0.0:0 LISTENING

 

TCP localhost:139 0.0.0.0:0 LISTENING

 

TCP localhost:2508 zlliks.505.ORG:80 ESTABLISHED

 

TCP localhost:2509 zlliks.505.ORG:80 ESTABLISHED

 

TCP localhost:2510 zlliks.505.ORG:80 ESTABLISHED

 

TCP localhost:2511 zlliks.505.ORG:80 ESTABLISHED

 

TCP localhost:2514 whitehouse.gov:telnet ESTABLISHED

 

Теперь посмотрим, что в этот раз за лабуду выдало. Те же порты, что и по началу, вот только добавилось несколько новых активных портов — 4 коннекта с zllinks.505.ORG по 80 порту и коннект с whitehouse.gov телнетом. Это полная статистика того, что происходит с твоим компом и Internet.

 

Так ты узнал настоящее имя сервака www.happyhacker.org (zlliks.505.ORG). По идее у тебя должен возникнуть вопрос — а какого черта есть порты, у которых номера больше 1024??? Так вот, если ты помнишь начало главы, то я там говорил, что эти порты ждут коннекта к ним. Но вот если эта программа коннетиться куда-нибудь, то ей помимо своего порта еще нужен какой-нибудь порт для приема информации, и этот порт берется за пределами этих 1024 портов. Так понятно? К примеру, браузер может открывать до четырех портов —с 2508 по 2511.

 

Теперь ты возможно захочешь посканить порты друга? Лучший способ сделать это и не бояться быть выкинутым из Internet своим провайдером — попроси друга (подругу) набрать netstat -r. Тогда у него появится что-то типа:

 

Route Table

 

Active Routes:

 

Network Address Netmask Gateway Address Interface Metric

 

0.0.0.0 0.0.0.0 198.59.999.200 198.59.999.200 1

 

127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1

 

198.59.999.0 255.255.255.0 198.59.999.200 198.59.999.200 1

 

198.59.999.200 255.255.255.255 127.0.0.1 127.0.0.1 1

 

198.59.999.255 255.255.255.255 198.59.999.200 198.59.999.200 1

 

224.0.0.0 224.0.0.0 198.59.999.200 198.59.999.200 1

 

255.255.255.255 255.255.255.255 198.59.999.200 0.0.0.0 1

 

Active Connections

 

Proto Local Address Foreign Address State

 

TCP lovely-lady:1093 mack.foo66.com:smtp ESTABLISHED

 

Gateway Address и Interface покажут твой реальный IP (ну или IP сервера, если ты сидишь через локальную сеть). Учти, если твой друг сидит в локалке, то прежде 10 раз подумай, чем его сканить, а то сисадминам очень не нравится, когда какой недохакер (как они считают) пытается их поломать и могут пойти на все меры, лишь бы отомстить и поразвлечься (иногда самое безобидное — синий экран).

 

Вообще-то под таким распространенным термином, как взлом Internet подразумевают сразу несколько разных вещей. Во-пеpвых: незаконное подключение к провайдеру и халявные подключения. Как же можно это осуществить? Самый простой вариант — украсть чужой пароль. В наше время при огромном количестве тупых юзверей сие не представляет никакого труда. Так как подавляющее большинство пользователей пользуется таким популярным пакетом e-mail как UUPC Чернова. А также некоторые туповатые провайдеры все еще предоставляют вход в систему как online так и offline под одним паролем. Остается самое простое — переписать файлик init или init1 с каталога \ UUPC. Там будет прописан как login так и password. Пользуйтесь им на здоровье. Ho не забывайте про то, что “жадность фраера сгубила”.

 

При более сложном варианте вы запускаете на машину user’a вирус или прогу резидентную, отслеживающую появление строчки login:. Дальше остается грабать клавиатуру и записать полученное в файл.

 

Если юзверь относительно грамотный и не просто умеет качать почту, а работает более “круто” в Netscape, используя SLIP & PPP, то обратите внимание — при таком качестве связи, как y нашего Совка, связь обрывается частенько. Очень редко можно увидеть, чтобы кто-то из них при соединении набирал логин и пароль вручную. Часто это все делает скрипт командами transmit и им подобными. А все настройки, хитрец, держит под своим паролем в Windows. Как известно, на всякую хитрую жопу… находится очень быстрое решение проблемы: стоит только поискать файлик с расширением .pwl. Там Windows хранит все практически настройки по каждому юзверю. Включая и пароли. Тем паче, что шифрует она все это примитивным вариантом DES. Ho алгоритм шифрования в каждом релизе разный. Однако, имея в руках чужой .pwl файл, создав несколько своих с именами 1,2,3,4 и аналогичными паролями, можно проследить интересную зависимость, которая и выведет вас к желаемому результату.

 

Если на машину юзера доступа нет, то к решению проблемы можно подойти и другим путем. Справедливости ради надо заметить, что практически лавинная доля соединений приходится на телефонные линии. Дальше — лучше. Наверняка у вас в офисе есть мини-АТС. Перепрограммировать ее, чтобы звонки с данного номера перероучивались на ваш — плевое дело. Осталось только запустить терминальную программу BBS, в заставке указать заставку вашего провайдера. И юзер ведь купится! Ha 100%. Введет и login, и password. Проверено уже, и не раз. Теперь осталось выдать ему кучу ошибок, а затем дропнуть линию. После двyх-тpех попыток (вдруг он неверный пароль введет) верните АТС в нормальное состояние. А то прецеденты с последующей раздачей слонов и пряников уже бывали.

 

Если удалось раздобыть login/passwd, то имея пароль с минимальными пользовательскими привилегиями хочется получить их гораздо больше. С минимальными привилегиями получить статус root — задача не одного дня. Ho начинать с чего-то надо. А начнем мы с того, что узнаем, с какой системой имеем дело. В настоящее время провайдеры висят на самых популярных UNIX: FreeBSD, BSDI, SCO open server, Linux. Некоторые, правда, используют такую экзотику как NexStep, UnixWare, Solaris, Aix, HP-UX, VAX-ORX5.12. Встречаются уникумы, работающие с Xenix. Ho несмотря на видимое обилие операционных систем, все они имеют практически одинаковую систему защиты и идентификации пользователей и их ресурсов, которые передавались по наследству от AT&T UNIX с 1971 года. Стандартные средства защиты в UNIX:

 

● защита через пароли;

 

● защита файлов;

 

команды su, newgrp, at, prwarn, sadc, pt_chmod;

 

● шифрование данных.

 

 

 

Любой пользователь UNIX имеет свой пароль, без которого он не может включиться в систему, писать/читать почту. Практически во всех UNIX пароли находятся в /etc/passwd. Этот файл содержит информацию о пользователе, его пароле и уровне привилегий. Дописать в этот файл информацию о своем login/passwd и уровне привилегий может только root. Ты можешь его только читать.

 

Ho что же мешает переписать/прочитать его и пользоваться чужими login’ами? Прочитать можно. И с огорчением увидеть, что не все так в жизни просто. Да, там хранится login пользователя. Ho сам пароль хранится только в зашифрованном виде. И вместо пароля в лучшем случае увидишь абракадабру типа #@4OFIU`0346`e.

 

Расшифровкой этого занимаются программы типа jack, crackerjack, blob и множество подобных. Успех напрямую зависит от данной операционной системы. Чтобы успешно расшифровать passwd, необходимо, как минимум, иметь две пары логинов, паролей расшифрованных и зашифрованных. Напустив на passwd от Linux 2.1.3 крякалку паролей blob и имея пять пар известных паролей, в опытном варианте за 20 минут успешно расшифровываются все пароли. Но проблема в том, что алгоритмы шифрования очень улучшаются с каждой новой версией системы, а в таких коммерческих UNIX как SCO Open Server 5 имеется очень навороченные системы криптования. К примеру, если SCO 3 с уровнем защиты от 1,2,3 сломалась в течение 3 часов перебора, то 4,5 где-то за четверо суток, 6 так и не удалось поломать.

На Главную

                       

 

 

 

 



Hosted by uCoz