Erhalten Sie Zugang zu diesem und mehr als 300000 Büchern ab EUR 5,99 monatlich.
Авторы шаг за шагом познакомят вас с основами и возможностями Kali Linux. В книге предложен краткий курс работы с командной строкой Linux и ее концепциями, описаны типичные сценарии установки Kali Linux. Прочитав эту книгу, вы научитесь конфигурировать, отлаживать и защищать Kali Linux, а также работать с мощным менеджером пакетов дистрибутива Debian. Научитесь правильно устанавливать Kali Linux в любых окружениях, в том числе, в крупных корпоративных сетях. Наконец, вам предстоит познакомиться и со сложными темами: компиляция ядра, создание собственных образов ISO, промышленное шифрование и профессиональная защита конфиденциальной информации.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 399
Veröffentlichungsjahr: 2023
Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:
Переводчик С. Черников
Технические редакторы Н. Гринчик, Н. Хлебина
Литературные редакторы Н. Гринчик, Н. Хлебина
Художники Н. Гринчик, Л. Егорова, С. Заматевская
Корректоры О. Андриевич, Т. Радецкая
Верстка Г. Блинов
Рафаэль Херцог, Джим Горман, Мати Ахарони
Kali Linux от разработчиков. — СПб.: Питер, 2018.
ISBN 978-5-4461-0548-9
© ООО Издательство "Питер", 2018
Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.
Вы не представляете, насколько здорово, что вы сейчас читаете эту книгу.
В 1998 году я был подающим надежды хакером, а также одним из сооснователей профессиональной команды «белых шляп» (хакеров, не нарушающих закон). Мы были детьми, получившими работу мечты. Нам платили за проникновения в самые защищенные компьютерные системы, сети и здания мира.
Звучит весьма заманчиво, но на самом деле большую часть времени мы проводили, нависая над клавиатурой, вооружившись цифровыми инструментами нашего ремесла. В нашем распоряжении была убогая коллекция программ, созданных, чтобы находить сети и обнаруживать цели, затем сканировать их, эксплуатировать и менять их задачи в наших интересах. В некоторых случаях один из нас (зачастую Джим Чаппел) мог написать специальную утилиту для грязных делишек типа сканирования сетей класса А (то, чего в то время не могло сделать ни одно другое средство), но чаще мы использовали или модифицировали инструменты, созданные хакерским сообществом. В те дни, когда еще не существовало Google, мы часто посещали BugTraq, AstaLaVista, Packet Storm, w00w00, SecurityFocus, X-Force и прочие ресурсы для проведения исследований и построения собственного арсенала.
Поскольку на каждое задание отводилось ограниченное время, нам приходилось работать быстро. Это значило, что мы не могли долго возиться с утилитами. А значит, мы вынуждены были изучить основные инструменты вдоль и поперек, а вспомогательные на всякий случай держать под рукой. И наш инструментарий нам следовало содержать в полном порядке, документированным и протестированным, чтобы во время работы иметь как можно меньше сюрпризов. В конечном счете, если проникнуть не удавалось, мы теряли лицо перед клиентами и наши рекомендации воспринимались менее серьезно.
Из-за этого я тратил немало времени на каталогизацию инструментов. Таким образом, как только выходили новые программы или появлялись обновления для уже доступных, начиналась моя рутинная деятельность. Я обязан был выяснить, будет ли инструмент функционировать на платформе атаки (часть из них не работала) и заслуживает ли он внимания вообще (некоторые того не стоили). Мне приходилось обновлять каждый сценарий, зависящий от этого инструмента, документировать его и тестировать, включая перенос любых изменений, внесенных в предыдущих версиях.
Затем я реорганизовывал все инструменты и помещал их в различные каталоги согласно их предназначению. Я должен был писать сценарии-оболочки для определенных инструментов, объединять часть из них и помещать все это на отдельный компакт-диск, который мы могли бы использовать в уязвимых областях, когда клиенты не позволяли нам применять машины атаки или извлекать носители данных из своих лабораторий.
Этот процесс был многострадальным, но необходимым. Мы знали, что у нас имелась возможность проникнуть в любую сеть: достаточно было только надлежащим образом применить наши навыки и опыт, оставаться организованными и работать эффективно. И хотя желание оставаться непобежденными нас очень мотивировало, все же речь шла о предоставлении услуг клиентам, которые нуждались в них для проникновения в различные сети таким образом, чтобы они могли заполнить пробелы и перевести деньги на критически важные, но должным образом неоцененные программы, связанные с информационной безопасностью.
На то, чтобы отточить наши навыки и приобрести бесценный опыт, были потрачены годы, но мы не добились бы этого успеха без должной организации и эффективности. Мы однозначно потерпели бы неудачу, не окажись необходимые инструменты в нужный момент под рукой.
Именно поэтому я тратил много времени на проведение различного рода исследований, проверку и каталогизацию инструментов, и на пороге XXI века все перечисленное очень быстро стало непростой работой с полной занятостью. С распространением Интернета разнообразие атак по всему миру значительно увеличилось и, соответственно, количество инструментов для проведения атак возросло экспоненциально, как и количество усилий, необходимых для их поддержания.
Начиная с 2004 года Интернет стал стремительно развиваться не только как база для многих вариантов ведения бизнеса, но и как прогрессивная социальная платформа. Компьютеры стали доступными, повсеместными и простыми в использовании. Технология хранения была расширена от мегабайтов до гигабайтов. Ethernet вырос с сотен килобит до десятков мегабит в секунду, а интернет-соединения стали быстрее и дешевле, чем когда-либо прежде. Электронная коммерция была на подъеме, появились такие социальные сети, как Facebook (2004) и Twitter (2006), а Google (1998) возмужал настолько, что любой (в том числе и преступник) мог найти в Интернете что угодно.
Проведение исследований стало критически необходимым действием для команд, подобных нашей, поскольку нам приходилось идти в ногу с новыми видами атак и наборами инструментов. Мы имели дело с большим количеством компьютерных преступлений, и криминалистическая работа требовала, чтобы мы действовали осторожно, не повредив потенциальные улики. Концепция live CD позволяла нам провести полноценную экспертизу на подвергшемся атаке компьютере без ущерба для улик.
Теперь нашей маленькой команде приходилось управляться с инструментами атаки, криминалистическими утилитами и распределением программ уязвимых зон. Мы должны были не отставать от всех последних методов проведения атак и взломов; и нам приходилось делать то, за что нам, собственно говоря, и платили, — проводить тесты на проникновение, которые пользовались большим спросом. Все выходило из-под контроля, и вскоре мы проводили уже меньше времени непосредственно в бою и гораздо больше — за исследованиями, оттачиванием наших инструментов и детальным планированием.
Мы были не одни в этой борьбе. В 2004 году Мати Мутс Ахарони, хакер и специалист по безопасности, выпустил WHoppiX (White Hat Knoppix), live CD для Linux, который назвал «Окончательная версия live CD для тестирования на проникновение». Этот инструмент содержал «все эксплойты из SecurityFocus, Packet Storm и k-otik, Metasploit Framework 2.2 и др.».
Я помню, как скачивал WHoppiX и думал, насколько это замечательная вещь. Я скачал другие образы live CD и думал, что если когда-либо попаду в некую передрягу, эти диски смогут реально спасти мою шкуру. Тем не менее я не особо рассчитывал на WHoppiX или любые другие диски в реальной работе. Я не доверял ни одному из них, выполняя свои основные задачи; ни один из них не подходил для моего рабочего процесса; все они не были полными устанавливаемыми дистрибутивами и в момент их скачивания уже являлись устаревшими. Использование устаревших наборов инструментов в нашей сфере деятельности равносильно поцелую смерти.
Я просто добавил эти образы компакт-дисков, несмотря на их относительно большие размеры, в наш арсенал и продолжил болезненный процесс поддержания нашего «реального» инструментария.
Однако несмотря на мое личное мнение в тот момент и, возможно, несмотря на ожидания Мутса, WHoppiX и его «потомки» произвели сейсмический толчок в жизни Мутса, нашей сфере деятельности и нашем сообществе.
В 2005-м WHoppiX эволюционировал в WHAX с расширенным и обновленным набором инструментов, основанным на «более модульном live CD SLAX (Slackware)». Мутс и растущая команда волонтеров из сообщества хакеров, казалось, понимали: независимо от их уровня проницательности, они никогда не могли предвидеть весь рост и постоянную изменчивость нашей сферы деятельности и то, что пользователи их компакт-дисков будут иметь абсолютно разные потребности в этой области. Представлялось очевидным, что Мутс и его команда фактически использовали WHAX в реальной работе и были заинтересованы в том, чтобы он функционировал должным образом. Это меня очень воодушевляло.
В мае 2006 года Мутс и Макс Мозер объединили Auditor Security Linux и WHAX в один дистрибутив под названием BackTrack. Все еще основываясь на SLAX, BackTrack продолжал расти, включая в себя больше утилит и фреймворков, расширенную языковую поддержку, широкую беспроводную поддержку, структуру меню, обслуживающую как начинающих, так и профессиональных пользователей, и сильно модифицированное ядро. BackTrack стал ведущим дистрибутивом в области безопасности, но многие, как я, все еще применяли его в качестве резервной копии для своих «реальных инструментов».
К началу 2009 года Мутс и его команда значительно расширили BackTrack до версии 4. Будучи постоянной работой для Мутса, BackTrack больше не был просто live CD, а являл собой полноценный дистрибутив Ubuntu, использующий репозитории программного обеспечения (ПО) Ubuntu. Данное изменение означало серьезную эволюцию: BackTrack 4 имел механизм обновления. По словам самого Мутса: «При синхронизации с репозиториями BackTrack вы будете регулярно получать обновления средств безопасности вскоре после их выпуска».
Это был переломный момент. Команда BackTrack настроилась на ту борьбу, которую вели все специалисты по тестированию на проникновение, криминалистические аналитики и прочие специалисты, работающие в нашей сфере. Их усилия сэкономили нам много времени и предоставили твердую и уверенную основу, позволяя нам возвращаться в бой и проводить больше времени над решением важных (и забавных) задач. В результате сообщество отреагировало активной дискуссией на форумах и в «Вики»; многие подключились к команде разработчиков. BackTrack был поистине общественным детищем с Мутсом во главе.
BackTrack 4 наконец стал промышленно мощной платформой, и мы с коллегами смогли вздохнуть с облегчением. Мы прекрасно осознавали всю «боль и страдание», которое испытывал Мутс и его команда, поскольку все мы были на их месте. В результате многие из нас начали использовать BackTrack в качестве базовой основы для нашей деятельности. Да, мы по-прежнему работали с инструментами, писали собственный код и разрабатывали личные приемы и различные техники; мы продолжали исследовать и экспериментировать, но не тратили все время на сбор, обновление, проверку и организацию утилит.
В 2010 году BackTrack 4 R1 и R2 стали очередными изменениями, приведшими к восстановлению с нуля BackTrack 5 в 2011 году. Продолжая основываться на Ubuntu и набирая обороты с каждым новым выпуском, BackTrack стал массивным проектом, который теперь уже требовал не только огромных усилий со стороны волонтеров и сообщества, но и серьезного финансирования. Мутс запустил Offensive Security (в 2006 году) не только для предоставления тренинга мирового класса и услуг тестирования на проникновение, но и для того, чтобы обеспечить механизм разработки BackTrack и убедиться в том, что BackTrack по-прежнему останется с открытым исходным кодом и бесплатным в использовании.
BackTrack продолжал развиваться и улучшаться до 2012 года (с R1, R2 и R3), поддерживая ядро Ubuntu и пополняясь сотнями новых инструментов, включая средства физического и аппаратного обеспечения, поддержку VMware, бесчисленные беспроводные и аппаратные драйверы и множество улучшений стабильности и исправления ошибок. Однако после выпуска R3 разработка BackTrack продолжила развиваться как-то подозрительно спокойно.
Сразу же появилось несколько основных предположений относительно того, что же происходит на самом деле. Некоторые считали, будто BackTrack за огромную сумму «продал душу» некоему злобному корпоративному повелителю. Со временем Offensive Security превратилась в одну из самых уважаемых обучающих компаний, а также стала лидером новаторских мыслей в нашей сфере, и кое-кто судачил, что подобный успех поглотил и оттеснил на второй план ведущих разработчиков BackTrack. Однако ничто не могло быть настолько далеким от правды.
В 2013 году была выпущена версия Kali Linux 1.0. Из примечаний к выпуску: «Через год безмолвного развития Offensive Security с гордостью объявляет о выпуске и общей доступности в сети Kali Linux — самого передового, надежного и стабильного дистрибутива для проведения тестов на проникновение на сегодняшний день. Kali — более зрелая, безопасная и готовая к работе версия BackTrack».
Kali Linux не был простым ребрендингом BackTrack. Включая в себя более 600 полностью переупакованных инструментов, он являл собой просто потрясающий набор утилит, но это еще не все. Kali был создан с нуля на основе Debian. Для неосведомленных данный факт может показаться не очень большим достижением. Благодаря огромным усилиям по переупаковке инструментов пользователи Kali могли загрузить исходный код для каждого отдельного средства; они могли модифицировать и перестраивать его по мере необходимости всего лишь несколькими нажатиями клавиш. В отличие от других основных современных операционных систем, Kali Linux синхронизировался с репозиториями Debian четыре раза в день, а это значило следующее: пользователи могли получить актуальные обновления пакетов и необходимые исправления безопасности. Разработчики прилагали огромные усилия для создания новых пакетов и поддержки более свежих версий инструментов таким образом, чтобы пользователи всегда имели доступ к любым обновлениям. Благодаря Debian-корням Kali пользователи могли загружать дистрибутив или ISO-образ непосредственно из репозиториев, что предоставило новые возможности для полностью настроенных Kali-установок или массивных развертываний предприятий, которые можно было бы дополнительно автоматизировать и настроить с помощью файлов-пресетов. И в завершение настраиваемого трио пользователи Kali могли изменять среду рабочего стола, меню, значки и даже заменять среды окон. Широкое развитие ARM создало предпосылки для установки Kali Linux на большой спектр аппаратных платформ, включая точки доступа, одноплатные компьютеры (например, Raspberry Pi, ODROID, BeagleBone и CubieBoard) и компьютеры Chromebook на базе ARM. И последнее, но не по важности: Kali Linux поддерживает плавные маленькие и большие обновления, а это значит, что приверженцам Kali никогда не придется переустанавливать уже настроенные пользовательские установки Kali Linux.
Сообщество обратило внимание, что в первые пять дней 90 000 человек загрузили Kali 1.0.
Это было только начало. В 2015 году был выпущен Kali 2.0, за которым следуют календарные релизы в 2016 году. Вкратце: «Если Kali 1.0 был ориентирован на создание прочной инфраструктуры, то Kali 2.0 в основном сосредоточен на том, чтобы реорганизовывать опыт пользователя и поддерживать обновленные пакеты и репозитории инструментов».
Современная версия Kali Linux является динамическим дистрибутивом, что само по себе знаменует конец дискретных версий. Теперь пользователи постоянно обновляются и получают обновления и исправления по мере появления последних. Основные инструменты обновляются чаще благодаря более новой версии системы ярлыков, также были реализованы революционные улучшения доступности для слабовидящих или полностью слепых людей, а ядра Linux обновлены и исправлены в целях продолжения поддержки беспроводной инъекции 802.11. Software Deffined Radio (SDR) и Near-Field Communication (NFC) добавляет поддержку для новых областей тестирования безопасности. Благодаря Linux LV и LUKS доступны дополнительные возможности установки зашифрованных дисков Linux, а также добавлены опции USB-устойчивости, позволяющие поддерживать изменения между перезагрузками, для установки Kali с USB-накопителя независимо от того, зашифрован он или нет. И наконец, последние версии Kali открыли дверь для NetHunter — операционной системы мирового класса с открытым исходным кодом, работающей на мобильных устройствах на базе Kali Linux и Android.
Дистрибутив Kali Linux эволюционировал не просто в платформу для профессионалов информационной безопасности, а в полноценный, безопасный, оперативный и созревший дистрибутив мирового класса.
На протяжении десяти лет Мутс и его команда вместе с бесчисленным множеством волонтеров из хакерского сообщества занимались оптимизацией и организацией нашей рабочей среды, таким образом освободив нас от монотонных операций, предоставив безопасный и надежный фундамент, позволив сконцентрироваться на продвижении нашей сферы деятельности к финальной цели — обеспечению безопасности нашего цифрового мира.
Очень интересно, но неудивительно, что вокруг Kali Linux образовалось потрясающее сообщество. Каждый месяц от 300 до 400 тысяч новых пользователей скачивают версию Kali. Мы собираемся на Kali-форумах сорокатысячным сообществом, а 300–400 из нас можно одновременно найти на IRC-канале Kali. Мы встречаемся на конференциях и посещаем Kali Dojos, чтобы узнать у самих разработчиков, как лучше применять Kali.
Kali Linux изменил мир информационной безопасности к лучшему, и Мутс со своей командой спасли каждого из нас от бесчисленных часов работы и разочарования, что позволило нам тратить больше времени и энергии на совместное развитие нашей сферы деятельности.
Однако несмотря на удивительное признание, поддержку и популярность, к Kali никогда не прилагалось официальное руководство. Теперь ситуация изменилась. Я очень рад, что вместе с командой разработчиков Kali (Мати Ахарони, Рафаэлем Херцогом, Девоном Кирнсом и Джимом О’Горманом) могу предложить вам это руководство — возможно, первое издание в предстоящей серии публикаций, посвященных Kali Linux. В данной книге мы сосредоточимся на самом дистрибутиве Kali Linux, который поможет вам понять и максимально упростить использование Kali с нуля. Тем не менее пока мы не будем углубляться в арсенал инструментов, содержащихся в Kali Linux. Однако, независимо от того, являетесь ли вы ветераном или абсолютным новичком в данной сфере, начинать лучше отсюда, если вы готовы разбираться в Kali Linux и относиться к нему со всей серьезностью. Независимо от того, сколько времени вы работаете в этой сфере, ваше решение прочитать книгу связывает вас с растущим сообществом Kali Linux — одним из старейших, крупнейших, активнейших и ярчайших в нашей отрасли.
От имени Мутса и остальной части потрясающей команды Kali поздравляю вас с первым шагом к освоению Kali Linux!
Джонни Лонг, февраль 2017
Шестнадцать профессиональных ноутбуков, заказанных для вашей команды специалистов по тестированию на проникновение, только что прибыли, и вам поставлена задача настроить их для дистанционного использования. Вы установили Kali и запустили один из ноутбуков, чтобы выяснить, работает ли он. Несмотря на новейшее ядро Kali, сетевая карта и мышь не функционируют, а мощная видеокарта NVIDIA и GPU выводят изображение ужасного качества, так как для них не установлены драйверы. Вы вздыхаете.
В Kali в режиме реального времени вы быстро набираете в оболочке командной строки lspci и ждете. Прокручиваете список аппаратного обеспечения: «PCI-мост, USB-контроллер, SATA-контроллер. Aга! Контроллеры сети и Ethernet». Быстрый поиск в Google соответствующих номеров моделей, соотнесенных с версией Kali, — и оказывается, что эти драйверы еще не попали в основное ядро.
Но не все потеряно. В вашей голове постепенно созревает план, и вы благодарите небеса за эту книгу, которую приобрели пару недель назад. Вы можете применить live-сборку системы Kali, чтобы создать пользовательский ISO-образ Kali, в который будут входить необходимые драйверы, встроенные в систему установки. Кроме того, можете добавить драйверы для видеокарты NVIDIA, а также библиотеки CUDA, нужные для того, чтобы этот GPU «мило общался» с хешкэтом (hashcat) и не мешал быстро взламывать пароли. Хо-хо, вы можете даже внедрить пользовательские обои с логотипом Microsoft, чтобы подразнить свою команду.
Так как технические профили для вашей установки идентичны, вы добавляете опцию автоматического запуска для ISO, чтобы ваша команда могла подключить USB и установить Kali без вмешательства пользователя — установка сама позаботится о себе, о шифровании дисков и т.д.
Великолепно! Теперь вы можете создавать по первому требованию усовершенствованную версию Kali, спроектированную и оптимизированную под ваше аппаратное обеспечение. Вы сэкономили целый день. Миссия выполнена!
Учитывая огромное количество аппаратного обеспечения, наводнившего рынок, данный сценарий становится более приемлемым для тех, кто хочет уйти от основных операционных систем в поиске чего-то более экономного, среднего или более соответствующего нашей работе и стилю.
Вышесказанное особенно применимо к тем, кого привлекает область безопасности, будь то хобби, увлечение или постоянная работа. Новички часто заходят в тупик из-за окружения или операционной системы. Для многих новичков Kali — первый шаг к Linux.
Мы заметили эту тенденцию в нашей базе пользователей пару лет назад и поняли, что можем помочь им, создав структурированную книгу, которая упростит ориентацию в мире безопасности, предоставляя знания о Linux, необходимые для начала работы.
В итоге мы остались довольны результатами. Книга соответствует всем нашим требованиям, и я с гордостью могу сказать, что она превзошла ожидания. Мы поняли, что увеличили базу пользовательского потенциала книги. Она больше не предназначается для новичков в области безопасности и включает много полезной информации для опытных специалистов, которым необходимо улучшить их контроль над Kali Linux, что позволит им раскрыть весь потенциал нашего продукта. Будут ли они тестировать одну машину или тысячи по всему предприятию, вносить незначительные изменения либо полностью модифицировать программное обеспечение под заказчика, создавать собственные репозитории или углубляться в удивительный пакет системы управления Debian, — эта книга всегда предоставит план действий.
С вашим путеводителем в руках, от своего имени и имени всей команды Kali Linux я желаю вам захватывающего, веселого, плодотворного и «раскрывающего» путешествия!
Мутс, февраль 2017
Kali Linux — самый мощный и популярный в мире дистрибутив для тестирования на проникновение, используемый профессионалами безопасности в широком спектре специальностей, включая тестирование на проникновение, криминалистику, обратное проектирование и оценку уязвимости. Это кульминация многолетних усовершенствований и результат непрерывной эволюции от WHoppiX к WHAX, затем к BackTrack, а теперь к полноценному дистрибутиву тестирования на проникновение. В Kali применяются многие функции Debian GNU/Linux и учитываются ценные советы членов динамичного мирового сообщества, работающего над ПО с открытым исходным кодом.
Kali Linux был создан не как простая коллекция инструментов, а скорее как гибкая структура, в которой специалисты по тестированию на проникновение, энтузиасты в сфере безопасности, студенты и любители могут настроить утилиты в соответствии с конкретными потребностями.
Kali Linux — это не просто набор различных средств информационной безопасности, которые установлены на стандартной платформе Debian и предварительно настроены, чтобы позволить незамедлительно начать работу. Для получения максимальной отдачи от Kali важно иметь полное представление о возможностях его оснований Debian GNU/Linux (которые поддерживают все эти прекрасные инструменты) и изучить, каким образом вы можете использовать их в своей среде.
Хотя Kali определенно многоцелевой дистрибутив, он в первую очередь предназначен для оказания помощи в тестировании на проникновение. Цель этой книги состоит в том, чтобы не только помочь вам чувствовать себя увереннее в момент использования Kali Linux, но также углубить ваше понимание и оптимизировать опыт. При проведении теста на проникновение и ограниченном времени вам не придется переживать о потере драгоценных минут, уходящих на установку нового программного обеспечения или включение нового сетевого сервиса. В этой книге мы познакомим сначала с Linux, а затем, окунувшись чуть глубже, рассмотрим нюансы, характерные для Kali Linux, чтобы вы точно понимали всю суть происходящего.
Это бесценные знания, особенно если вам приходится работать в условиях ограниченного времени. Они обязательно пригодятся, когда вы будете настраивать программу, устранять проблему, пытаться сконфигурировать инструмент по своему усмотрению, анализировать вывод утилиты или использовать Kali в расширенной среде.
Если вы хотите погрузиться в интеллектуально богатую и невероятно увлекательную область информационной безопасности и по праву выбрали Kali Linux в качестве основного дистрибутива, то эта книга поддержит вас в данном путешествии. Она была написана, чтобы помочь тем, кто использует Linux впервые, а также пользователям Kali, стремящимся углубить свои знания об основах Kali, и тем, кто уже много лет применяет Kali, но хочет формализовать свое обучение, расширить знания об этом дистрибутиве и заполнить пробелы в знаниях.
Кроме того, эта книга может служить путеводителем, технической ссылкой и учебным пособием для тех, кто готовится к сертификации Kali Linux Certified Professional.
Книга структурирована таким образом, что вы можете приступить к использованию Kali Linux с самого начала ее прочтения. Вам не придется читать до середины книги, прежде чем начать практиковаться. Каждая тема рассматривается очень подробно, и издание наполнено примерами и снимками экрана, призванными сделать объяснения более наглядными.
В главе 1 «О Kali Linux» мы определим некую базовую терминологию и объясним предназначение Kali Linux. В главе 2 «Начало работы с Kali Linux» мы шаг за шагом проведем вас от загрузки ISO-образа к запуску этого дистрибутива на вашем компьютере. Далее следует глава 3 «Основы Linux», в которой предоставлены необходимые базовые знания о системе Linux, такие как ее архитектура, процесс установки, иерархия файловой системы, разрешения и т.д.
После прочтения первых трех глав вы будете уметь использовать Kali Linux лишь в качестве live-системы. В главе 4 «Установка Kali Linux» вы узнаете, как выполнить постоянную установку дистрибутива (на ваш жесткий диск), и в главе 5 «Настройка Kali Linux» — как настроить его по вашему усмотрению. Став полноценным пользователем Kali, вы получили возможность ознакомиться с важными ресурсами: глава 6 «Самостоятельное решение проблем и получение помощи» даст вам ключи для решения непредвиденных проблем, с которыми, вероятно, придется столкнуться.
Поскольку основы освещены достаточно подробно, в остальной части книги объясняются более продвинутые темы: глава 7 «Защита и контроль Kali Linux» поможет удостовериться, что установка дистрибутива соответствует вашим требованиям безопасности. Далее, в главе 8 «Управление пакетами Debian» объясняется, как применять весь потенциал системы пакетов Debian. И в главе 9 «Расширенное использование системы» вы узнаете, как создать полностью настроенный ISO-образ Kali Linux. Все эти темы еще более актуальны, когда вы переходите к полноценной работе с дистрибутивом, как описано в главе 10 «Kali Linux в организации».
Глава 11 «Оценка защищенности информационных систем» устанавливает связь между всем, что вы узнали в этой книге, и повседневной работой специалистов по безопасности.
Я хотел бы поблагодарить Мати Ахарони: в 2012 году он связался со мной, поскольку я был одним из десятков консультантов Debian, а ему нужно было создать преемника BackTrack, который основывался бы на Debian. Так я начал работать над Kali Linux, и мне понравилось путешествие в мир Kali.
За прошедшие годы Kali Linux приблизился к Debian GNU/Linux, особенно с переходом к Kali Rolling, основанному на Debian Testing. Теперь большая часть моей работы, на Kali или Debian, обеспечивает преимущества для всей системы Debian. И это именно то, что мотивирует меня продолжать, изо дня в день, месяц за месяцем, из года в год.
Работа над данной книгой также является прекрасной возможностью, которую предложил Мати. Это совершенно другой вид деятельности, но все такой же полезный: помогать людям и делиться с ними своими знаниями об операционной системе Debian/Kali. Основываясь на моем опыте с книгой Debian Administrator’s Handbook, я надеюсь, что мои разъяснения помогут вам начать работу в быстро развивающемся мире компьютерной безопасности.
Я также хотел бы поблагодарить всех представителей Offensive Security, которые были вовлечены в работу над этой книгой: Джима О’Гормана (соавтора отдельных глав), Девона Кирнса (рецензента), Рона Генри (технического редактора), Джо Штейнбаха и Тони Круза (руководителей проекта). И спасибо Джонни Лонгу, который присоединился, чтобы написать предисловие, но в итоге работал над всей книгой.
Я хотел бы поблагодарить всех, кто участвовал в этом проекте, за их вклад, в котором лишь малая часть моя. Данная книга так же, как и сам дистрибутив Kali Linux, стала совместным проектом множества людей, выполняющих простую работу. Особая благодарность Рафаэлю, Девону, Мати, Джонни и Рону за то, что взяли на себя львиную долю усилий. Без них книга не появилась бы.
Прошло несколько лет с тех пор, как Kali Linux был впервые выпущен, и с первого дня я всегда мечтал опубликовать официальную книгу, которая охватывает всю операционную систему Kali в целом. Поэтому для меня большая честь наконец видеть книгу, которая сделает Kali доступным для общественности. Я хотел бы искренне поблагодарить всех, кто участвует в создании данного проекта, включая Джима, Девона, Джонни и Рона. Особая благодарность Рафаэлю за то, что он сделал большую часть тяжелой работы в этой книге и привнес свой огромный опыт в нашу группу.
Ключевые темы:
• дистрибуция Linux;
• производный дистрибутив Debian;
• предназначение;
• характеристики;
• политики.
Kali Linux (https://www.kali.org/) — это дистрибутив Linux для проверки корпоративной безопасности, основанный на Debian GNU/Linux. Операционная система Kali предназначена для специалистов по безопасности и ИТ-администраторов и позволяет им проводить профессиональное тестирование на проникновение в систему, информационный криминалистический анализ и аудит безопасности информационных систем.
Что такое дистрибутив Linux
Хотя обычно так называют целую операционную систему, Linux — это лишь название ядра, части программного обеспечения, которая обрабатывает взаимодействия между оборудованием и конечными пользовательскими приложениями.
В то же время выражение «дистрибутив Linux» определяет в целом операционную систему, построенную на ядре Linux, обычно содержащую программу установки и множество приложений, которые либо предварительно установлены, либо пакетированы для легкой установки.
Debian GNU/Linux (https://www.debian.org/) — ведущий универсальный дистрибутив Linux, известный своим качеством и стабильностью. Kali Linux основывается на работе проекта Debian, добавляя более 300 собственных специализированных пакетов, связанных с информационной безопасностью, особенно в области тестирования на проникновение.
Debian — это проект, относящийся к свободно распространяемому ПО и предоставляющий несколько версий операционной системы. Для обозначения его конкретной версии часто используют термин «дистрибутив», скажем, дистрибутивы Debian Stable или Debian Testing. То же самое относится и к Kali Linux — например, дистрибутив Kali Rolling.
Проект Kali Linux плавно стартовал в 2012 году, когда специалисты Offensive Security решили заменить свой почтенный проект Linux BackTrack, который поддерживался вручную, чем-то, что могло бы стать настоящим деривативом Debian (https://wiki.debian.org/Derivatives/Census), дополненным всеми необходимыми объектами и улучшенными методами пакетирования. Было принято решение построить Kali поверх дистрибутива Debian, известного своим качеством, стабильностью и широким выбором доступного программного обеспечения. Вот почему я (Рафаэль) участвовал в этом проекте как консультант Debian.
Первый релиз (версия 1.0) вышел год спустя, в марте 2013 года, и был основан на Debian 7 Wheezy, стабильном (в то время) дистрибутиве Debian. В течение первого года разработки мы компоновали сотни приложений, связанных с тестированием на возможность проникновения, и создавали инфраструктуру. И хотя количество приложений имеет значение, они были тщательно отобраны — мы отбросили те из них, которые больше не работали, а также те, что дублировали функции, уже доступные в более эффективных инструментах.
На протяжении двух лет после выхода версии 1.0 у Kali появилось множество дополнительных обновлений, которые расширили диапазон доступных приложений и улучшили аппаратную поддержку благодаря новым версиям ядра. Вкладывая силы и средства в непрерывную интеграцию, мы стремились гарантировать, что все важные пакеты готовы к установке и пользователь всегда сможет создать собственные live-образы (отличительная черта дистрибутива).
В 2015 году, когда вышел релиз Debian 8 Jessie, шла работа над переносом на его базу Kali Linux. Хотя система Kali Linux 1.x обходилась без GNOME (используя вместо этого GNOME Fallback), в новой версии мы решили охватить и улучшить эту оболочку. В частности, мы добавили некоторые расширения GNOME для внедрения недостающих функций, в первую очередь меню Applications (Приложения). Результатом нашей деятельности стал дистрибутив Kali Linux 2.0, выпущенный в августе 2015 года.
GNOME — рабочая среда Kali Linux по умолчанию
Рабочая среда (среда рабочего стола, настольная среда) представляет собой набор графических приложений, которые используют общий графический инструментарий и предназначаются для совместного применения на рабочих местах пользователей. На серверах такие среды обычно отсутствуют. Чаще всего они предоставляют программу запуска приложений, менеджер файлов, браузер, почтовый клиент, офисный пакет и т.д.
GNOME (https://www.gnome.org/) — одна из самых популярных сред рабочего стола (вместе с KDE (https://www.kde.org/), Xfce (https://xfce.org/), LXDE (https://lxde.org/), MATE (http://mate-desktop.org/)), устанавливается на основные ISO-образы, предоставляемые Kali Linux. Если вам не нравится GNOME, то можете легко создать пользовательский ISO-образ со средой рабочего стола по вашему выбору. Инструкции описаны в главе 9.
В то же время мы еще тщательнее проработали инструменты, отвечающие за защиту от несанкционированного доступа, с целью гарантировать, что Kali Linux всегда содержит последнюю версию приложений для тестирования на проникновение. К сожалению, данная задача немного расходилась с использованием Debian Stable в качестве основы дистрибутива, поскольку для ее выполнения требовалось резервировать множество пакетов. Это связано с тем, что в Debian Stable приоритетом является стабильность программного обеспечения, результатом чего выступает большой промежуток от момента выпуска обновления до его интеграции в дистрибутив. Учитывая наше стремление к непрерывной интеграции, было вполне естественным шагом перенести Kali Linux на базу Debian Testing, чтобы мы могли воспользоваться последней версией пакетов Debian, как только они становились доступными. У Debian Testing гораздо более интенсивный цикл обновления, который оптимально соответствует философии Kali Linux.
По сути, это концепция релиза Kali Rolling. В то время как дистрибутивы с плавающими релизами были доступны в течение уже довольно длительного времени, Kali 2016.1 стал первым релизом, официально принявшим плавающий характер. Когда вы устанавливаете последнюю версию Kali, ваша система фактически отслеживает дистрибутив Kali Rolling и каждый день вы получаете новые обновления. Раньше выпуски Kali представляли собой снимки базового дистрибутива Debian с установленными в него пакетами Kali.
Дистрибутив с плавающим релизом имеет много преимуществ, но сопряжен и со множеством проблем как для тех из нас, кто работает над ним, так и для пользователей, которым приходится справляться с бесконечным потоком обновлений, а иногда и обратно-несовместимыми изменениями. Эта книга предоставит вам информацию, необходимую для решения всех проблем, которые могут возникнуть при управлении установкой Kali Linux.
Дистрибутив Kali Linux основан на версии Debian Testing (https://www.debian.org/releases/testing/) (это текущее состояние разработки следующего стабильного дистрибутива Debian). Как следствие, большинство пакетов, доступных в Kali Linux, исходят прямо из репозитория Debian.
Хотя Kali Linux в значительной степени зависит от Debian, он также полностью независим в том смысле, что есть собственная инфраструктура, в которую можно вносить любые изменения по своему желанию.
Создатели Debian ежедневно ведут работу над обновлением пакетов и загрузкой их в дистрибутив Debian Unstable. Оттуда пакеты переносятся в дистрибутив Debian Testing сразу после удаления самых вредоносных ошибок. Процесс переноса также гарантирует нерушимость каких-либо зависимостей в Debian Testing. Задача состоит в том, чтобы поддерживать Debian Testing всегда в удобном для пользователя (или даже общедоступном!) состоянии.
Цели Debian Testing и Kali Linux полностью совпадают, так что мы взяли их за основу. Чтобы добавить в дистрибутив пакеты, специфичные для Kali, мы следуем процессу, состоящему из двух этапов.
Для начала мы берем Debian Testing и принудительно внедряем наши собственные пакеты Kali (расположенные в нашем хранилище kali-dev-only) для создания репозитория kali-dev. Время от времени последний будет недоступен: например, наши пакеты, специфичные для Kali, могут не устанавливаться до тех пор, пока не будут перекомпилированы в отношении более новых библиотек. В других ситуациях пакеты, которые мы разветвляли, могут требовать обновлений, чтобы снова стать готовыми к установке или исправить проблему невозможности установки другого пакета, зависящего от более новой версии разветвленного пакета. В любом случае kali-dev не предназначен для конечных пользователей.
kali-rolling — это дистрибутив, обновления которого пользователи Kali Linux должны отслеживать и который основан на репозитории kali-dev таким же образом, как и Debian Testing базируется на Debian Unstable. Пакеты переносятся в данный дистрибутив только после проверки соответствия всех зависимостей в целевом дистрибутиве.
В качестве конструктивного решения мы стараемся минимизировать количество разветвленных пакетов, насколько это возможно. Однако реализация некоторых из уникальных особенностей Kali требует внесения определенных изменений. В целях ограничения влияния этих изменений мы стремимся отправить их «выше по течению», интегрируя особенность напрямую или добавляя необходимые методы таким образом, чтобы непосредственно включить нужные функции было легко без дальнейшей модификации самих вышестоящих пакетов.
Kali Package Tracker (http://pkg.kali.org/derivative/kali-dev/) помогает нам отслеживать расхождения с Debian. В любой момент можно увидеть, какой пакет был разветвлен, синхронизирован ли он с Debian или не требуется ли ему обновление. Все наши пакеты хранятся в репозиториях Git, где рядом находятся ветки Debian и Kali. Благодаря этому обновление разветвленного пакета — простой двухэтапный процесс: обновление ветки Debian, а затем объединение ее с веткой Kali.
Хотя разветвленных пакетов в Kali сравнительно немного, количество дополнительных пакетов довольно внушительное: в апреле 2017 года их было почти 400. Большинство из них — это бесплатное ПО, соответствующее Руководству по свободному программному обеспечению Debian (Debian Free Software Guidelines) (https://www.debian.org/social_contract), и наша конечная цель заключается в том, чтобы всегда поддерживать эти пакеты в Debian. Вот почему мы стремимся следовать политике Debian (https://www.debian.org/doc/debian-policy/) и придерживаться хороших методов пакетирования, используемых в Debian. К сожалению, есть также немало исключений, когда правильное пакетирование практически невозможно. В результате нехватки времени несколько пакетов были перемещены в Debian.
Хотя основная цель Kali обобщенно может быть сформулирована как «тестирование на проникновение и аудит безопасности», за этими словами скрыто большое количество различных задач. Kali Linux создан как фреймворк, поскольку включает множество инструментов, предназначенных для самых различных задач (при этом они могут применяться комбинированно во время тестирования на проникновение).
К примеру, Kali Linux можно использовать на разных типах компьютеров: конечно же, на ноутбуках специалистов по тестированию на проникновение (пентестеров — penetration tester), но также и на серверах системных администраторов, желающих контролировать свою сеть, на рабочих системах криминалистических аналитиков. Что еще более неожиданно, дистрибутив можно применять на скрытых встроенных устройствах, как правило, с процессорами ARM, которые могут работать удаленно в диапазоне беспроводной сети или быть подключенными к компьютеру целевых пользователей. Кроме того, многие ARM-устройства — прекрасные атакующие машины благодаря своим компактным размерам и небольшому количеству потребляемой энергии. Kali Linux также может работать в облаке для создания «армии» машин, занимающихся взломом паролей, и на смартфонах и планшетах, чтобы обеспечить действительно портативное тестирование на проникновение.
Но это еще не все. Пентестеры также нуждаются в серверах: чтобы задействовать программное обеспечение для совместной работы в команде, настраивать веб-сервер для использования в фишинговых кампаниях, запускать инструменты для сканирования уязвимости и для прочих соответствующих действий.
После загрузки Kali вы обнаружите, что главное меню Kali Linux организовано по темам различных задач и действий, подходящих для пентестеров и других специалистов по информационной безопасности (рис. 1.1).
Рис. 1.1. Меню приложений Kali Linux
Эти задачи и действия включают следующие.
•Сбор информации — сбор данных о целевой сети и ее структуре, идентификация компьютеров, их операционных систем и служб, которые они запускают. Определение потенциально уязвимых частей информационной системы. Извлечение всех видов листингов из запущенных сервисов каталогов.
• Анализ уязвимостей — быстрое тестирование локальной или удаленной системы на предмет подверженности влиянию ряда известных уязвимостей или ненадежных конфигураций. Сканеры уязвимостей используют базы данных, содержащие тысячи сигнатур, для выявления потенциальных уязвимостей.
• Анализ веб-приложений — идентификация неправильных настроек и слабых мест в безопасности веб-приложений. Крайне важно выявлять и устранять эти проблемы, учитывая, что общедоступность таких приложений делает их идеальными целями для злоумышленников.
• Оценка базы данных — от SQL-инъекций до атак учетных данных — атаки баз являются очень популярным направлением для злоумышленников. В меню можно найти инструменты для тестирования векторов атаки, начиная от SQL-инъекций и заканчивая извлечением и анализом данных.
• Атаки паролей — системы аутентификации всегда являются вектором атаки. Здесь можно найти множество полезных инструментов: от онлайн-утилит атаки паролей до автономных атак с помощью систем шифрования или хеширования.
• Беспроводные атаки — повсеместный характер беспроводных сетей означает, что они всегда будут популярным вектором атаки. Благодаря широкому спектру поддержки различных беспроводных карт Kali — очевидный выбор для проведения атак против множества типов беспроводных сетей.
• Обратное проектирование (реверс-инжиниринг) — это деятельность, включающая множество задач. В рамках поддержки атакующих действий выступает одним из основных методов выявления уязвимости и развития эксплойта. Со стороны обороны используется для анализа вредоносного ПО, применяемого в целевых атаках. В этом случае задача состоит в том, чтобы определить возможности атакующей вас шпионской программы.
• Инструменты эксплуатации — эксплуатация или использование уязвимости (ранее идентифицированной) позволяет получить контроль над удаленной машиной (или устройством). Данный доступ можно применить для дальнейшей эскалации атаки как на взломанном компьютере, так и на других компьютерах, доступных в его локальной сети. Эта категория содержит ряд инструментов и утилит, которые упрощают процесс создания ваших собственных эксплойтов.
• Сниффинг и спуфинг(перехват и подмена) — получение доступа к данным во время их перемещения по сети часто выгодно для злоумышленника. В меню вы можете найти инструменты для спуфинга, которые позволят вам выдавать себя за авторизированного пользователя, а также для сниффинга, пригодные к захвату и анализу данных прямо в момент их передачи. При совместном использовании эти инструменты могут быть весьма эффективными.
• Пост-эксплуатация — после получения доступа к системе вам нередко захочется поддерживать данный уровень доступа или увеличивать контроль путем продвижения по сети. В меню найдутся инструменты, которые помогут выполнить эти задачи.
• Криминалистическая экспертиза — криминалистическая live-среда загрузки Linux очень популярна уже много лет. Kali содержит большое количество популярных криминалистических инструментов, основанных на Linux, позволяющих выполнять все: от начальной сортировки и обработки данных до полного анализа и ведения дел.
• Инструменты отчетности — тестирование на проникновение завершено лишь тогда, когда был выполнен отчет о полученных результатах. Эта категория содержит инструменты, которые помогут собрать данные, полученные из средств сбора информации, обнаружить неочевидные взаимосвязи и представить объединенные сведения в различных отчетах.
• Инструменты социальной инженерии — когда техническая сторона хорошо защищена, часто существует возможность использования человеческого фактора в качестве вектора атаки. При грамотной мотивации людей нередко можно побудить к действиям, которые ставят под угрозу безопасность окружения. Безопасен ли PDF-файл на Flash-накопителе, который только что подключил секретарь? Или это был троянский конь, установивший бэкдор? Был ли банковский сайт, на котором только что зарегистрировался бухгалтер, оригинальным сайтом или его идеальной копией, используемой для фишинговых целей? Данная категория содержит инструменты, помогающие справляться с такими типами атак.
•Системные сервисы — эта категория включает средства, которые позволяют запускать и останавливать приложения, выполняемые в фоновом режиме в виде системных сервисов.
Kali Linux — это дистрибутив Linux, который содержит собственную коллекцию, состоящую из сотен программных средств, специально предназначенных для целевых пользователей Kali: пентестеров и других специалистов по безопасности. Он поставляется вместе с программой для установки, чтобы можно было полностью настроить Kali Linux в качестве основной операционной системы на любом компьютере.
Данный дистрибутив похож на все прочие существующие дистрибутивы Linux, но имеет и особые функции, свойственные только Kali Linux, многие из которых адаптированы к конкретным потребностям пентестеров. Рассмотрим часть этих функций.
В отличие от большинства дистрибутивов Linux, скачиваемый ISO-образ предназначен не только для установки операционной системы; его также можно использовать в качестве самозагружаемой live-системы. Другими словами, вы можете задействовать Kali Linux без предварительной установки, просто загрузив ISO-образ (обычно после копирования образа на USB-накопитель).
Live-система содержит инструменты, наиболее часто используемые пентестерами, поэтому, даже если вы не применяете Kali Linux регулярно, то можете просто вставить диск или USB-накопитель и перезагрузиться, чтобы запустить Kali. Однако имейте в виду, что конфигурация по умолчанию не будет сохранять изменения между перезагрузками. Настройка постоянного хранилища с помощью USB-накопителя (см. раздел 9.4) позволяет задать параметры системы по своему вкусу (например, изменять файлы конфигурации, сохранять отчеты, обновлять программное обеспечение и устанавливать дополнительные пакеты), и изменения будут сохранены при перезагрузке.
В основном, проводя криминалистическую работу над системой, вы пожелаете избежать любой деятельности, которая каким-либо образом способна изменить данные в анализируемой системе. К сожалению, современные рабочие среды, как правило, мешают выполнению этой задачи, пытаясь автоматически монтировать любые обнаруженные ими диски. Избежать такого поведения поможет имеющийся в Kali Linux режим криминалистической экспертизы, который можно активировать из меню загрузки: он отключит все подобные функции.
Live-система особенно полезна для криминалистических задач, поскольку позволяет перезагрузить любой компьютер в систему Kali Linux без доступа к жестким дискам или изменения данных на них.
Kali Linux всегда предоставляет последнее настроенное ядро Linux, основанное на версии в Debian Unstable. Это обеспечивает надежную аппаратную поддержку, особенно для широкого спектра беспроводных устройств. Ядро модернизировано для поддержки беспроводной инъекции, так как многие средства оценки защищенности беспроводной сети полагаются именно на эту функцию.
Поскольку для многих аппаратных устройств требуются обновленные файлы прошивки (расположены в каталоге /lib/firmware/), то Kali устанавливает их по умолчанию, включая прошивку, доступную в закрытой секции Debian. Они не установлены по умолчанию в Debian, так как закрыты и, следовательно, не являются частью Debian.
Kali Linux создан пентестерами для пентестеров, но мы понимаем, что не все согласятся с нашими проектными решениями или выбором инструментов по умолчанию. Помня о данном обстоятельстве, мы всегда гарантируем возможность легко настроить Kali Linux в соответствии с вашими собственными потребностями и предпочтениями. С этой целью мы публикуем live-сборки, используемые для создания официальных образов Kali, чтобы вы могли настроить их по своему вкусу. Благодаря универсальности live-сборки очень просто начать работу с применения данной конфигурации и внести различные изменения, основываясь на ваших нуждах.
Live-сборка включает множество функций для модернизации установленной системы, установки вспомогательных файлов, дополнительных пакетов, выполнения произвольных команд и изменения значений, предварительно загруженных в debconf.
Пользователи данного дистрибутива, имея целью обеспечение безопасности, по праву хотят знать, можно ли ему доверять и был ли он разработан таким образом, что каждый имел возможность ознакомиться с исходным кодом. Kali Linux разработан небольшой командой опытных проектировщиков, работающих прозрачно и с соблюдением лучших методов безопасности: они загружают подписанные исходные пакеты, которые затем собираются на специализированных демонах сборки. Затем пакеты проверяются и распространяются как часть подписанного репозитория.
Работа над пакетами может быть полностью просмотрена через репозитории пакетирования Git (содержащие подписанные теги), которые используются для создания исходных пакетов Kali. Кроме того, эволюцию каждого пакета можно отслеживать через контроллер пакетов Kali (http://pkg.kali.org/).
Kali Linux предоставляет бинарные пакеты для таких архитектур ARM, как armel, armhf и arm64. Благодаря легко устанавливаемым образам, предоставленным Offensive Security, дистрибутив можно развернуть на различных типах устройств: от смартфонов и планшетов до Wi-Fi-роутеров и компьютеров различных форм и размеров.
Хотя Kali Linux стремится следовать политике Debian, насколько это возможно, все же существует ряд областей, в которых наши варианты дизайна значительно разнятся из-за специфических потребностей пентестеров.
Большинство дистрибутивов Linux довольно разумно поощряют использование непривилегированной учетной записи при запуске системы и применении такой утилиты, как sudo, когда необходимы административные права. Это обоснованная рекомендация по безопасности, обеспечивающая дополнительный уровень защиты между пользователем и любыми потенциально деструктивными командами или операциями операционной системы. Данное замечание особенно справедливо для многопользовательских систем, где ограничение прав пользователя — обязательное требование, так как неправильное поведение одного участника может нарушить или уничтожить работу других.
Ввиду того что многие инструменты, включенные в Kali Linux, могут выполняться только с правами root, такая учетная запись пользователя Kali установлена по умолчанию. В отличие от других дистрибутивов Linux, вам не будет предложено создать непривилегированного пользователя при установке Kali. Именно эта черта служит большим отличием от большинства систем Linux и, как правило, вводит в заблуждение неопытных пользователей. Новичкам нужно быть особенно осторожными в момент применения Kali, поскольку самые деструктивные ошибки возникают именно при работе с правами root.
В отличие от Debian, в Kali Linux отключены все установленные сервисы, которые связываются по общедоступному сетевому интерфейсу по умолчанию, например HTTP и SSH.
Это решение обосновано минимизацией уязвимости во время теста на проникновение, когда небезопасно сообщать о вашем присутствии и существует риск обнаружения из-за неожиданных сетевых взаимодействий.
Вы по-прежнему можете вручную активировать любые сервисы по вашему усмотрению, запустив сервис systemctl. Мы вернемся к этому позже в главе 5.
Debian стремится стать универсальной операционной системой и устанавливает очень мало ограничений касательно того, что будет пакетировано, при условии наличия у каждого пакета сопровождения.
Kali Linux, напротив, не пакетирует каждое средство для тестирования на проникновение. Вместо этого мы стремимся предоставить только лучшие инструменты со свободной лицензией, охватывающие большинство задач, которые могут потребоваться пентестеру.
Разработчики Kali, практикующие пентестеры, управляют процессом отбора, и мы используем их опыт и компетентность, чтобы сделать мудрый выбор. В большинстве случаев это происходит именно так, но есть и другие, более сложные решения, принятие которых просто сводится к личным предпочтениям.
Вот часть вопросов, рассматриваемых при оценке нового приложения:
• полезность приложения в контексте тестирования на проникновение;
• уникальность функций элементов приложения;
• лицензия на приложение;
• ресурсные требования приложения.
Поддержка обновленного и полезного хранилища инструментов для тестирования на проникновение — сложная задача. Мы приветствуем предложения касательно новых утилит в рамках выделенной категории (New Tool Requests — Запросы новых инструментов) в Kali Bug Tracker (https://bugs.kali.org/my_view_page.php). Мы предпочитаем получать те запросы новых программ, в которых есть подробное представление средства, в том числе объяснение его полезности, сравнение с другими подобными приложениями и т.д.
В этой главе мы познакомили вас с Kali Linux, слегка ушли в историю, пробежались по некоторым из основных функций и показали несколько вариантов использования этого дистрибутива. Мы также обсудили ряд стратегий, которые были применены при его разработке.
• Kali Linux — это дистрибутив Linux для аудита корпоративной безопасности, основанный на Debian GNU/Linux. Kali предназначен для специалистов по безопасности и ИТ-администраторов и позволяет им проводить обширные тестирования на проникновение, криминалистический анализ и аудит безопасности.
• В отличие от большинства основных операционных систем, Kali Linux — дистрибутив с плавающим релизом, то есть вы будете получать обновления каждый день.
• Kali Linux основан на Debian Testing. Поэтому большинство пакетов, доступных в Kali Linux, поставляются прямо из хранилища Debian.
• Хотя основная цель Kali обобщенно может быть сформулирована как «тестирование на проникновение и аудит безопасности», существуют различные варианты использования дистрибутива, включая потребности системных администраторов, желающих контролировать свои сети, криминалистический анализ, установку встроенных устройств, беспроводной мониторинг, установку на мобильных платформах и пр.
• Меню Kali облегчает доступ к инструментам для различных задач и действий, включая анализ уязвимости, анализ веб-приложений, оценку базы данных, атаки паролей, беспроводные атаки, обратное проектирование, эксплуатационные средства, сниффинг и спуфинг, утилиты постэксплуатации, криминалистики, программы для отчетности, инструменты социальной инженерии и системные сервисы.
• Kali Linux имеет множество дополнительных функций, в том числе: использование в качестве live-системы (не предустановленной), надежный и безопасный режим криминалистики, настраиваемое ядро Linux, возможность полной настройки системы, надежная и безопасная базовая операционная система, возможность установки на ARM-устройства, безопасная сетевая политика и набор приложений с сопровождением.
В следующей главе мы перейдем к Kali Linux и опробуем его с помощью live-режима.
Ключевые темы:
• скачивание ISO-образа;
• загрузка live-образа.