FAQСтепан «Step» Ильин Хакер, номер #101, стр. 138 Задавая вопрос, подумай! Не стоит мне посылать вопросы, так или иначе связанные с хаком/кряком/фриком, для этого есть Hack-Faq (hackfaq@real.xakep.ru); не стоит также задавать откровенно ламерские вопросы, ответ на которые ты при определенном желании можешь найти и сам. Я не телепат, поэтому конкретизируй вопрос, присылай как можно больше информации. Q: Знаю, что у многих ноутбуков часто бывают проблемы с установкой Linux. Непонятные ошибки, сложно разрешимые несовместимости — все это знакомо каждому, кто пытался установить пингвина на лэптоп. Так вот вопрос следующий: как при покупке подстраховаться и купить именно то, что тебе подойдет в дальнейшем для работы под никсами. Для меня это важно. A: Самый проверенный способ – это попробовать бук в действии. Возьми LiveCD на платформе, которую в будущем будешь использовать: например, если это Slackware, то идеально подойдет Slax. Иди в магазин и внимательно все протестируй. Правда, есть еще один способ — обратиться к специальной базе данных www.linux-laptop.net. Пользователи постоянно обновляют ее, делясь опытом и добавляя информацию о том, какой дистрибутив на том или ином ноутбуке заработал, а какой нет. Q: В институте есть свободный доступ в интернет. Ограничение одно - подключение идет через прокси, и на нем стоит запрет на закачивание файлов размером более 300 Кб (или около того). А качать хотелось бы побольше и не один раз. Как это осуществить? A: Как вообще можно обойти ограничения прокси? Нужно сделать так, чтобы глупый прокси-сервер просто не знал, что именно ты делаешь в интернете, и тогда к твоей активности он никак не сможет применить часть заложенных правил. Лучший способ замаскировать свою деятельность — это поднять туннель. Существует довольно много различных реализаций, которые применимы в одних и неприменимы в других случаях. Но для обхода большинства ограничений прокси-сервера специально разработана утилита bouncer (www.arh.ru/~lionfish/rus/features.htm). Q: Многие подозрительные файлы я запускаю под виртуальной машиной. Так надежнее. Правда, иногда становится интересно, а что же эти файлики там натворили. Где и как себя прописали? Как это можно выяснить? A: В общем-то, большой проблемы в том, чтобы отследить активность одной из утилит на компьютере, нет. Допустим, ты используешь бесплатную версию Microsoft Virtual PC 2007 (www.microsoft.com), у которой есть замечательная функция — инкрементные диски. Ее фишка в том, что в качестве основного образа для системы используется один изначальный диск, а все произошедшие изменения система сама помещает в специальный контейнер. Нам остается только сравнить его с оригинальным, «чистым» диском, например, с помощью утилиты WinDiff, которая входит в Microsoft's free Platform SDKs, и все произошедшие изменения с файловой системой будут как на ладони. Для того чтобы активировать систему инкрементных дисков, в момент создания виртуального харда для гостевой ОС необходимо поставить галочку напротив опции Differential. Если какая-то подозрительная программа будет что-то отправлять в инет, это непременно отобразится в логах снифера. Проверено, что такие продукты, как Packetyzer (sourceforge.net/projects/packetyzer) и WireShark (www.wireshark.org), уверенно перехватывают трафик, который уходит с виртуальной машины. Рекомендуем! Q: Много рассказывая о программах для взлома под винду и никсы, вы почему-то незаслуженно обходите стороной мобильные платформы. Разве хакеры не используют КПК или смартфоны для взлома систем? Вот именно, что используют. Исправьтесь и подскажите, например, какие утилиты для Windows Mobile могли бы быть интересны и полезны взломщику? A: Большинству из нас знакома программа Cain&Abel (www.oxid.it), сыскавшая славу одной из самых продвинутых утилит для подбора паролей и хэшей. Так вот для Windows Mobile существует ее портированная версия. Причем функциональность ее почти не урезана: по-прежнему поддерживается взлом хэшей LM, NTLM, MD2, MD4, MD5, SHA1, RIPEMD160, CiscoPIX и MySQL, декодирование для Base64. Но если взламывать хэши средствами PocketPC едва ли эффективно, то функция снятия дампа с паролями для таких средств, как ActiveSync, Pocket IE, Pocket Outlook и Pocket MSN, будет очень и очень полезной. Двигаемся дальше. В каких случаях уместнее всего применять карманный компьютер для взлома? Правильно, при взломе беспроводных сетей или устройств. Грех не пошалить с Bluetooth-устройствами, которые можно обнаружить буквально-таки в любом месте, даже просто переходя улицу. И один из лучших помощников в этом — утилита btCrawler (www.silentservices.de/btCrawler.html). Это самый обычный и простой сканер с возможностями bluejacking и bluesnarfing для устройств, использующих стек Microsoft Bluetooth. На очереди Wi-Fi и средства для wardriving’а: гуру в этом деле рекомендуют небольшой сканер WiFiFoFum (www.aspecto-software.com/rw/applications/wififofum). В отличие от многих подобных тулз, он поддерживает практически все виды карт, проводные и беспроводные GPS-адаптеры, а также умеет экспортировать информацию о найденных точках в самом различном виде, включая формат Netstumbler (ns1). Не обойтись и без джентльменского набора обычных сетевых утилит: порт-сканера, DNS lookup’а, калькулятора IP-сетей, банального ping’а. vxUtil Personal (www.cam.com/vxutil_pers.html) собрал все в одном флаконе. Единственное, чего ему не хватает, — это возможностей известного «швейцарского ножа» под именем netcat, который используется чуть ли не в каждом взломе. К счастью, существует специальная версия netcat для мобильной платформы — Netcat for CE (http://prt.fernuni-hagen.de/%7Ebischoff/wince/#netcat). Что радует, основные функции здесь работают именно так, как и должны под виндой и никсами. Просканировать найденную сеть (к примеру, беспроводную) на наличие открытых расшаренных ресурсов не проблема с программой NBTStat CE (http://sourceforge.net/projects/nbtstatce). Как же быть с удаленными управлением? Рулить порутанным серваком можно по-разному: либо с помощью SSH (для этого пригодится Pocket PuTTY — www.pocketputty.net), либо с помощью функции удаленного рабочего стола прямо с экрана КПК, если установить на него VNC Viewer (http://dotnetvnc.sourceforge.net). Причем ничто не мешает тебе сохранить анонимность и использовать шифрованное VPN-соединение благодаря клиенту OpenVPN (http://ovpnppc.ziggurat29.com/ovpnppc-main.htm). Впрочем, он пригодится и просто для того, чтобы установить виртуальную частную сеть со своим домом. Ну и последнее. Сидя в кафе с устойчивым Wi-Fi соединением, можно сэкономить денежек на разговорах, если вместо мобильника использовать Skype (www.skype.com/intl/en-gb/download/skype/mobile). Q: В одной из статей вы упомянули об альтернативных потоках на NTFS-дисках? А каким образом их вообще можно просмотреть. Это же реально? A: Вообще говоря, штатными средствами винды этого сделать нельзя, несмотря на то что подходящие утилиты от Microsoft все же есть. Можно зайти на http://msdn.microsoft.com/library/en-us/dnfiles/html/ntfs5.asp и скачать оттуда файл NTFSext.exe. В архиве, помимо всего прочего, будет библиотека strmext.dll, которую нужно положить в папку system32 и прописать в системе с помощью команды regsvr32 StrmExt.dll. Теперь в окне свойств каждого из файлов появится новая вкладка, на которой будет отображена информация об альтернативных потоках. Этот способ едва ли полезен для того, чтобы найти скрытые данные, но пригодится, если ты знаешь, где именно их искать, чтобы посмотреть. Вполне реально добавить такую вкладку и для окна свойств папки. Для этого в реестре нужно прописать следующее: HKEY_CLASSES_ROOT\Drive\shellex\PropertySheetHandlers\{C3ED1679-814B-4DA9-AB00-1CAC71F5E337}. Если объем доступной памяти и занятого пространства в сумме намного меньше заявленного объема жесткого диска, есть все основания полагать, что внушительная часть данных кроется где-то в альтернативных потоках. Исследовать свойства каждой папки в надежде найти данные — способ для мазохистов. Для эффективного поиска альтернативных потоков была написана миниатюрная консольная утилита LADS (List Alternate Data Streams), которая легко сосканирует нужный диск или обычную директорию. На выходе ты получишь список всех файлов и размер альтернативных потоков, которые к ним привязаны. Бесплатная версия этой замечательной утилиты доступна здесь: www.heysoft.de/nt/lads.zip. Однако использовать ее возможно исключительно с правами администратора. Но, что удивительно, сами скрытые потоки может создавать кто угодно, даже гость. Q: Как одними только средствами JavaScript импортировать данные из XML-файла? Это очень критично, так как обработка данных должна выполняться не на сервере (в этом случае я бы просто все сделал с помощью PHP), а именно на стороне клиента (то есть его браузером). Подскажи наиболее изящный метод. A: Я как-то тоже столкнулся с подобной проблемой и даже умудрился найти огромную библиотеку для JS, в которой было реализовано все, что только можно для работы с XML-файлом, включая SAX- и DOM-парсеры. Первый обрабатывает файл последовательно (попутно выполняя с данными какие-то действия, не сохраняя их в памяти), другой — целиком, загружая всю информацию в память (с которой потом можно делать все что угодно). Но громоздкость решения меня тогда слегка испугала, и я решил найти альтернативу. Оказалось, не зря. Дело в том, что в ядро самого JavaScipt по умолчанию заложены возможности для эффективной обработки XML. Реализуется это следующим образом (работает почти во всех браузерах): function importXML() { if (document.implementation && document.implementation.createDocument { xmlDoc = document.implementation.createDocument("", "", null); xmlDoc.onload = createTable; } else if (window.ActiveXObject) { xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.onreadystatechange = function () { if (xmlDoc.readyState == 4) createTable() }; } else { alert('Your browser can\'t handle this script'); return; } xmlDoc.load("xakep.xml"); } После этого будет создан объект xmlDoc, с помощью методов которого можно обратиться к любому полю XML-файла. Для этого нужно лишь знать одну-единственную функцию-метод — getElementsByTagName. Подробнее тут: www.quirksmode.org/dom/importxml.html. |