Сбор информации.

Основа любого успешного теста на проникновение - это сбор данных об обьекте.
Отсутствие всей необходимой информации о цели во время атаки, подобно «стрельбе из пушки по воробьям», атакуя машины, которые не являются уязвимыми.
В этом разделе мы будем освещать различные особенности сбора информации об удаленных системах, эта инфомация послужит базой для дальнейших действий.



sbor

The Dradis Framework.

В мире «пентеста» вы можете быть как «вольным охотником», так и входить в одну из многочисленных «security teams», в том и другом случае может возникнуть необходимость сохранить результаты теста как для членов команды, так и для собственного доклада. Отличным инструментом для выполнения всего вышеперечисленного является dradis framework. Dradis это проект с открытым исходным кодом для обмена информацией в ходе оценки уровня безопасности. Dradis framework активно развивается в настоящее время, регулярно обновляя свой функционал.
Dradis это нечто большее чем приложение для заметок: обмен данными осуществляется через SSL, возможность импорта файлов результата сканирования Nmap и Nessus, прикрепление файлов к отчету, экспорт отчетов, поддержка нескольких соединений.
Для установки в backtrack|4 вы можете выполнить следующую комманду.

root@bt4: apt-get install dradis

Как только framework установится, перейдите в директорию установки и запустите сервер.

root@bt4: cd /pentest/misc/dradis/server
root@bt4: ruby ./script/server -b localhost
 
=> Booting WEBrick...
=> Rails application started on https://localhost:3004
=> Ctrl-C to shutdown server; call with --help for options
[2009-08-29 13:40:50] INFO WEBrick 1.3.1
[2009-08-29 13:40:50] INFO ruby 1.8.7 (2008-08-11) [i486-linux]
[2009-08-29 13:40:50] INFO
 
[2009-08-29 13:40:50] INFO WEBrick::HTTPServer#start: pid=8881 port=3004

После запуска вы можете перейти к веб-интерфейсу. В строке браузера наберите https://localhost:3004 , примите предупреждение о сертификате, установите новый пароль и логин на сервере. Обратите внимание, что при первом подключении нет логина, установите любой логин. Далее вам будет предоставлена основная рабочая область dradis.

dradis

С левой стороны можно создать структуру дерева. С его помощью можно отсортировать вашу информацию (например: хосты, подсети, службы и т.д.). С правой стороны, вы можете добавить соответствующую информацию по каждому элементу (например, заметки или вложения).
До запуска консоли dradis, вам понадобится отредактировать файл 'dradis.xml', чтобы задать логин и пароль, которые вы установили во время первичного запуска сервера. В back|track4 этот файл находится по следующему пути '/pentest/misc/dradis/client/conf'. Теперь консоль можно запустить, перейдя в директорию '/pentest/misc/dradis/client/' и введя команду:

root@bt4:/pentest/misc/dradis/client# ruby ./dradis.rb
event(s) registered: [:exception]
Registered observers:
        {:exception=>[#>, @io=#>]}
 
dradis>

За дополнительной информацией о radis framework, вы можете обратиться к сайту http://dradisframework.org/.

Сканирование портов.

Так как мы уже установили и настроили dradis, хранить в нем наши заметки и выводы, будет хорошей практикой. Так как данные могут быть полезны еще когда-то либо для быстрого поиска, или как вариант, в других атаках. Создадим базу данных для Metasploit.

msf > db_create
[*] Creating a new database instance...
[*] Successfully connected to the database
[*] File: /root/.msf3/sqlite3.db
msf > load db_tracker
[*] Successfully loaded plugin: db_tracker
msf > help
...
...
 
Database Backend Commands
=========================
 
Command Description
------- -----------
db_add_host Add one or more hosts to the database
db_add_note Add a note to host
db_add_port Add a port to host
db_autopwn Automatically exploit everything
db_connect Connect to an existing database
db_create Create a brand new database
db_del_host Delete one or more hosts from the database
db_del_port Delete one port from the database
db_destroy Drop an existing database
db_disconnect Disconnect from the current database instance
db_driver Specify a database driver
db_hosts List all hosts in the database
db_import_amap_mlog Import a THC-Amap scan results file (-o -m)
db_import_nessus_nbe Import a Nessus scan result file (NBE)
db_import_nmap_xml Import a Nmap scan results file (-oX)
db_nmap Executes nmap and records the output
db_notes List all notes in the database
db_services List all services in the database
db_vulns List all vulnerabilities in the database

Теперь воспользуемся 'db_nmap' против нашей цели, а результаты сохраним в только что созданную базу данных, данная команда запускает сканер nmap. Однако при таком запуске Metasploit на выходе создаст только файл xml с результатами сканирования. В то время, когда dradis может импортировать данные в трех видах nmap (xml, grepable, и нормальный вывод). Для этого мы должны запустить сканирование nmap с флагами '-oA', чтобы на выходе получить три вида данных, затем скомандовать 'db_import_nmap_xml' для помещения данных в базу Metasploit.
Если вы не хотите импортировать результаты в dradis, просто запустите Nmap используя 'db_nmap "с параметрами, которые вы обычно используете, исключая флаги вывода.
Например 'db_nmap -v -sV 192.168.1.0/24'.

msf > nmap -v -sV 192.168.1.0/24 -oA subnet_1 
[*] exec: nmap -v -sV 192.168.1.0/24 -oA subnet_1