Безопасность в Web План лекцииОтчет с YUT CodeGate 2012, пример задачиHex-editorФаил robots.txt.svn - vulnerabilityToolchain: ping/nslookup/traceroute Арыков Никита, [email protected]
YUT CodeGate 2012 Всего было зарегистрировано 472 командыТолько 182 команды сдало хотя бы одну задачуМы заняли 102 место Разделы задач:Vulnerability(SQL-Injection)Binary(Disassembly)NetworkForensics(Комп.криминалистика)MiscСдали F100, F200, M300, B100
Forensics 100 Условие:Дан «backup» системы(Windows7)Известно, что с компьютера был украден Excel документ. Необходимо найти полный путь до документа и его размер.Решение:Находим фаилы с раширением .xls;Сразу бросается в глаза фаил[Top-Secret]_2011_Financial_deals.LNKСамого фаила в «backup» нету :(
.LNK — обычный ярлык(shortcut) в windows(аналог в Unix symlink);Если посмотреть его свойства, то размер исходного фаила не будет виден;Бинарный формат имеет открытую спецификацию[MS-SHLLINK]: Shell Link (.LNK) Binary File Format:http://msdn.microsoft.com/en-us/library/dd871375(v=prot.13).aspx
Hex-editor 1 Byte — 8 bit, может принимать одно из 2^8 = 256 значений.1 Byte ~ [0x00, 0xFF]hex = [0,255]dec2 Byte ~ [0x0000, 0xFFFF]hex = [0,65535]decHex-editor — приложение для редактирования данных, в котором данные представлены в «сыром виде»(raw) — как последовательность байтов.Мы использовали 010 editor, так же есть и другие, например, достаточно популярный WinHEX
Forensics 100 FileSize(4 bytes, offset 0x0034), 0x00000000;0x00002450=9296 — размер фаила(запись байтов в обратном порядке)
Forensics 100 Есть плагин который понимает формат .LNKLNK Template http://blog.didierstevens.com/2010/08/08/quickpost-2-lnk-tools/
Фаил robots.txt Стандарт исключений для роботов (robots.txt) — файл ограничения доступа к содержимому поисковым роботам на http-сервере. Файл должен находиться в корне сайта (то есть иметь путь относительно имени сайта /robots.txt).Использование:Запрет доступа робота googlebot к каталогу /private/:User-agent: googlebotDisallow: /private/Запрет доступа всех роботов ко всему сайту: User-agent: * Disallow: /
Фаил robots.txt Следующий пример дает явную подсказку хакеру User-agent: * Disallow: /admin/ Disallow: /secret/Эксплуатацияhttp://mail.ru/robots.txthttp://en.wikipedia.org/robots.txt
Фаил .htaccess/.htpasswd .htaccess (от. англ. hypertext access) — файл дополнительной конфигурации веб-сервера Apache, а также подобных ему серверов. Позволяет задавать большое количество дополнительных параметров и разрешений для работы веб-сервера в отдельных каталогах (папках), таких как управляемый доступ к каталогам, переназначение типов файлов и т.д., без изменения главного конфигурационного файла.!!!Аналог robots.txt(использовать аналогично)
.svn - vulnerability В силу особенностей архитектуры, Subversion хранит в каждой директории проекта свои метафайлы, аккуратно сложенные в скрытую директорию .svn.Там находится информация о расположении репозитория, размере файлов, даты их изменения и логины пользователей, работающих над проектом.Эксплуатацияhttp://site.com/.svn/entrieshttp://site.com/.svn/text-base/index.php.svn-base
.svn - vulnerability Немного статистики:Просканировано доменов: 2253388Уязвимых: 3320В их числе сайты Yandex, Rambler, Opera...ПричинаИспользуется svn checkout вместо svn export, в следствие чего пользователь извне обладает правами доступа к фаилам!!!Можно добавить в наш Filter безопасностиСсылка http://habrahabr.ru/blogs/infosecurity/70330/
ping ping — утилита для проверки соединений в сетях на основе TCP/IP;Практическое использованиеМожно узнать IP-адрес по доменному имени.Можно узнать, работает ли сервер.
Ping of Death Ping of death — тип сетевой атаки, при которой компьютер-жертва получает особым образом подделанный эхо-запрос (ping), после которого он перестает отвечать на запросы вообще (DoS); По стандарту RFC 791 IPv4 суммарный объем пакета не может превышать 65 535 байт;Примерping -l 65500 example.comhttp://en.wikipedia.org/wiki/Ping_of_death
DNS (Domain Name System) — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста.Записи тип A (A RECORDS)Запись типа A позволяет установить соответствие между именем хоста в домене и его IP-адресом. Например, если Вы хотите, чтобы mycomputer.yourdomain.com указывала на Ваш домашний компьютер(который имеет адрес, например, 192.168.0.3);
Записи сервера имён (NS)Записи типа NS (Name Server - cервер имен) описывают authoritative DNS-серверы для данного домена.Записи MXЗапись типа MX (Mail Exchange - почтовый сервер) определяет почтовый сервер - машину, которая обрабатывает почту для вашего домена.
nslookup nslookup (name server lookup) — утилита, предоставляющая пользователю интерфейс командной строки для обращения к системе DNS IP-адресов уже больше чем с помощью ping
nslookup set d2 - включает дополнительную отладочную информацию
Traceroute — это служебная компьютерная программа, предназначенная для определения маршрутов следования данных в сетях TCP/IP;В windows называется tracert
Литература Календарь CTF http://capture.thefl.ag/calendar/Большая часть решений(eng) http://eindbazen.net/Часть решений(rus) http://darkbyte.ru/2012/35/codegate-2012-writeup/http://blog.0x01000000.org/2010/08/10/lnk-parsing-youre-doing-it-wrong-i/