Академический Документы
Профессиональный Документы
Культура Документы
Оглавление
Экскурс в мир хакинга ...................................................................................................... 1
Реверс-инжиниринг ...................................................................................................... 2
Внешний тест................................................................................................................ 4
Вардрайвинг................................................................................................................. 7
OSI ............................................................................................................................... 9
TCP/IP......................................................................................................................... 10
Вирусы........................................................................................................................... 13
NIST ............................................................................................................................ 19
ISSAF .......................................................................................................................... 19
PTES ........................................................................................................................... 20
1
Реверс-инжиниринг (реверсинг, reverse engineering) — обратная
разработка и исследование устройства или приложения, а также
документации для того, чтобы понять, как это работает.
2
Для того, чтобы дизассемблировать приложение, применяются
программы дизассемблеры. Например: hiew или sourcer.
3
Внешний тест (пентест инфраструктуры) — тестирование на
проникновение периметра корпоративной сети. Чаще всего является
вторым этапом, после тестирования веб-приложения. Так как в идеале,
после успешного тестирования веб-приложения, пентестер получает
доступ к машине, которая может находиться внутри корпоративной
сети. Этапы тестирования практически такие же, что и в тестировании
веб-приложений. Так же присутствует сбор информации о сети. А
именно диапазон IP адресов, топологию сети, количество хостов, типы
ОС на хостах, используемые протоколы и сервисы и т. п. Сканирование
на уязвимости и поиск способов закрепления в сети.
4
АСУ ТП (Автоматизированная система управления технологическими
процессами) - комплекс технических и программных средств,
предназначенный для автоматизации управления технологическим
оборудованием на промышленных предприятиях.
5
В идеале, при тестировании подобной системы, необходимо получить
доступ к машине оператора, управляющего системой.
6
Вардрайвинг — процесс поиска и получения несанкционированного
доступа к публичным точкам доступа Wi-Fi, осуществляемый в процессе
передвижения на транспорте. Вардрайвинг делится на множество
подтипов, которые различаются только в средстве передвижения.
7
Собираем все и идем на «охоту»
Сети и протоколы
8
TCP/IP ссылается на огромное количество протоколов, описание
которых находится в документах под названием RFC. Они находятся в
свободном доступе в Интернете. Протоколы и правила были разделены
на категории – уровни. Каждый уровень обладает своим набором
функций или сервисов, реализующихся за счет протоколов этого уровня.
OSI
Модель OSI представлена в таблице ниже:
9
адресация 802.22,
Ethernet,
DSL, ARP,
L2TP
USB, витая
Среда передачи
1 Физический Биты пара,
данных
оптоволокно
TCP/IP
№ Уровень Протоколы
4 Прикладной HTTP, RTSP, FTP, DNS
3 Транспортный TCP, UDP, SCTP, DCCP
2 Сетевой IP
Ethernet, IEEE 802.11 WLAN,
1 Уровень сетевого доступа
SLIP, Token Ring, ATM и MPLS
Прикладной
Данный уровень обеспечивает взаимодействие пользовательских
приложений с сетью. Данные передаются конкретному приложению
благодаря порту.
Представительский
На этом уровне происходит кодирование/декодирование данных.
Сеансовый
Данный уровень управляет созданием/завершением сеанса, позволяет
взаимодействовать приложениям между собой.
10
Транспортный
Данный уровень обеспечивает уровень надежности передачи данных.
Сам уровень надежности варьируется в зависимости от выбранного
протокола. Например, если использовать протокол TCP, то данные будут
сначала равномерно разделены на более мелкие сегменты. Каждый
сегмент пронумеруется при отправке. При получении сегмента
конечный хост будет пытаться собрать данные из этих сегментов в том
же порядке, в котором они были пронумерованы. Если же какой-то
сегмент потеряется по пути, то конечный хост отправит запрос на хост
отправителя для того, что бы отправитель снова послал этот сегмент. И
так до тех пор, пока не соберутся все данные.
Если же мы будем использовать протокол UDP, то в этом случае
проверки каждого сегмента не будет. Здесь надежность обеспечивается
дублированием сегментов.
TCP используется для передачи данных, критичных к нарушению
целостности. Например, текст, веб страница и пр. UDP используется в
обратном случае, например для передачи видео или звука.
Сетевой
Определяет куда именно должен уйти пакет. На этом уровне задается IP
адрес отправителя и IP адрес следующего узла.
Канальный
Этот уровень обеспечивает взаимодействие сетей на физическом
уровне, присваивая mac адреса отправителя и получателя.
Физический
Данный уровень преобразовывает данные в двоичный код и
определяет метод передачи его по каналу связи.
Для того, чтобы лучше понять, как происходит процесс передачи данных
в сети, нужно объяснить такие понятия, как инкапсуляция и
декапсуляция.
11
Инкапсуляция — процесс передачи данных с верхнего уровня на
нижний.
Декапсуляция — наоборот, процесс передачи данных с нижнего уровня
на верхний.
Например, когда мы запрашиваем веб-страницу с веб-сервера, вот что
происходит:
Сам адрес документа на сервере является данными, которые надо
передать на сервер в виде запроса
1) На представительском уровне данные кодируются в нужную для
передачи форму;
2) На сеансовом уровне, в нашем случае, ничего не добавится -
данные пойдут дальше;
3) На транспортном уровне определяется протокол для передачи. В
нашем случае, будет использован протокол TCP, а данные будут
разбиты на кусочки, которые называются сегментами. Каждому
сегменту, содержащему информацию о портах, добавляется
заголовок, в котором содержится информация о проходящих
через порт данных;
4) На сетевом уровне каждому сегменту добавляется еще заголовок,
который содержит IP адреса отправителя и получателя. Сами
сегменты становятся пакетами;
5) На канальном уровне снова каждому пакету добавляется еще
заголовок, в котором содержится информация о MAC адресах
отправителя и получателя. Пакеты становятся кадрами или
фреймами;
6) На физическом уровне фреймы преобразуются в битовый сигнал и
передаются по каналу связи.
При получении сигналов сервером произойдет декапсуляция. Процесс
ничем не отличает от инкапсуляции кроме направления по модели OSI.
Также полезно будет знать, что при передаче сигналов по сети,
маршрутизаторы декапсулируют до сетевого уровня, так как им надо
12
знать IP адрес. Коммутаторы же, в свою очередь, декапсулируют до
канального уровня, так как им достаточно знать MAC адрес.
Вирусы
История
1951 Джон фон Нейман предлагает метод создания
самовоспроизводящихся механизмов. Далекий предок
вируса.
1961 В свет выходит необычная игра "Дарвин" от разработчиков
В.А. Высотский, Д. Макилрой и Р. Моррис, которая
напоминала деятельность вирусов. Смысл игры был прост:
программы, которые назывались организмом, созданные
одним игроком, должны были уничтожать программы,
созданные другим игроком.
1980 Ю. Краус, на тот момент студент Дортмундского
университета защищает дипломную работу по теме
"Самовоспроизводящиеся программы".
1981 Создан первый загрузочный вирус, написанный Р. Скрента.
Вирус распознавался благодаря сообщению.
ELK CLONER:
THE PROGRAM WITH A PERSONALITY
IT WILL GET ON ALL YOUR DISKS
IT WILL INFILTRATE YOUR CHIPS
YES, IT'S CLONER
IT WILL STICK TO YOU LIKE GLUE
IT WILL MODIFY RAM, TOO
SEND IN THE CLONER!
13
1985 Т. Нефф начал распространять список, который содержал
известные, на тот момент, вирусы.
Также, в этом году Г. Вонг завершает работу над программой
DPROTECT. Программа работает как антивирус, перехватывая
и пресекая попытки записи на дискеты и жесткий диск, а так
же блокировала все операции производимые через BIOS
14
Chameleon. Технология данного вируса вдохновила на
создание более мощных вирусов: Frodo и Whale, которые
стали первыми стелс-вирусами, вобравшими в себя такие
технологии, как бронирование, многоуровневое
шифрование, анти отладочные механизмы и стелс-
технологии. В результате эти вирусы успешно противостояли
всем антивирусным решениям того времени.
На борьбу с новыми типами вирусов бросаются большие
силы и в свет выходит новый антивирус «Symantec Norton
Antivirus»
15
2012 Появление кибероружия. Другими словами в свет выходят
вирусы, к которым, по экспертным данным, приложили руку
правительственные структуры. К ним относятся: Flame, Gauss,
Red October, NetTraveler, Icefog
16
атакуемого требуются навыки в социальной инженерии, так как
надо убедить атакуемого запустить прикрепленный файл или
перейти по вредоносной ссылке.
Веб-страницы - благодаря скриптовым языкам, используемым
при front-end разработки сайтов, а так же различных компонентов,
таких как ActiveX и прочее, веб-сайты являются хорошим способом
доставить вирус жертве. Но, как и в предыдущем пункте,
необходимы навыки в социальной инженерии, ведь
инфицированный сайт должен привлекать и расслаблять
бдительность атакуемого. Само собой чаще всего такие сайты
содержат контент 18+ или контент, связанный с нелегальным
софтом. Также к этому пункту можно отнести и фишинговые
сайты, когда инфицированный сайт маскируется под оригинал для
компрометации данных входа или загрузки вирусного ПО жертве.
Системы обмена мгновенными сообщениями — другими словами
чаты и мессенджеры. Достаточно просто подсунуть атакуемому
ссылку на интересную новость или картинку, следствием нажатия
на которую будет заражение устройства. И снова не забываем про
социальную инженерию.
Переносные носители информации — я почти уверен, что у вас с
этим пунктом не возникнет вопросов. Достаточно просто
представить флешку, на которой будет исполняемый файл с
вирусом. Достаточно только заставить атакуемого запустить его.
Не забываем про социальную инженерию.
Сеть — как пример шифровальщик WannaCry, который описывался
чуть выше.
17
Rootkit (маскировщик) – вирус, направленный на то, чтобы
спрятать присутствие вредоносной активности в системе. Могут
модифицировать операционную систему на уровне ядра.
Zombie (бот-вирус) - направлен на то, чтобы захватить управление
ресурсами атакуемой машины. Из множества таких зараженных
компьютеров формирует специальная сеть, называемая ботнет.
Чаще всего используется для DDOS атак.
Winlock (блокировщики, шифровальщики, вымогатели) -
блокируют доступ к компьютеру атакуемого и выдают
инструкцию, следуя которой можно вернуть доступ.
Sypeware (шпионы) - собирают информацию обо всем, что
происходит на компьютере атакуемого.
Adware — наверняка каждый из вас хотя бы раз в жизни, да
встречался с этим вирусом. Вирус встраивает рекламу без ведома
пользователя.
Trojan — вирус, маскирующий себя под безобидную программу.
Является самым распространенным вирусом, а так же самым
опасным. Так же его очень тяжело отследить. Никак не проявляет
себя, пока атакуемый не запустит программу. В отличие от
остальных не может самостоятельно размножаться.
Методологии пентеста
Во время тестирования на проникновение, если вы хотите получить
правильный результат, принято придерживаться определенных
методологий. Другими словами рекомендаций и советов, которые дают
более опытные люди из этой области.
Существует множество методологий. Здесь будут описаны лишь самые
распространенные.
1. NIST
2. ISSAF
3. PTES
18
NIST
Создана и поддерживается компанией NIST-CSRS - центром по
компьютерной безопасности.
ISSAF
Разработан OISSG для внутренних контрольных проверок.
19
o Поддержание доступа
o Сокрытие пейте проникновения
Отчетность — составление отчета о проделанной работе, очистка
и уничтожение артефактов.
PTES
Стандарт, разработанный для объединения бизнес требований,
возможностей служб безопасности и масштабирования тестов на
проникновение.
Этапы:
Подготовительный — обговариваются каналы коммуникации,
правила взаимодействия и контроля, конкретные способы
мониторинга и контроля инцидентов;
Сбор информации;
Моделирование угроз;
Методы анализа уязвимостей;
Эксплуатация;
Пост-эксплуатация.
Служба Поддержки
20