Атака через подвійні розширення в Apache

22:40 24.12.2011

Як я вже неодноразово розповідав, окрім виконання коду на сервері при завантаженні скриптів з відповідними розширеннями (як то php-скрипта у вигляді файла з розширенням php), існують альтеранативні методи. Відомі три методи виконання коду, коли розширення файла відмінне від того, яке повинно виконуватися на сервері відповідно до його налаштувань. Які дозволяють обходити захисні механізми веб додатків і проводити Code Execution атаки.

Обхідні методи виконання коду:

1. Через “1.asp;.txt” в імені файла. Працює в IIS.

Дана атака була названа semicolon attack. Ця уразливість була знайдена в 2009 році.

2. Через “1.asp” в імені папці. Працює в IIS.

Дана можливість виконання коду в Microsoft IIS була знайдена в 2011 році.

3. Через подвійне розширення (1.php.txt). Працює в Apache (з спеціальною конфігурацією). Цей метод відомий вже багато років, але все ще є дуже багато веб додатків вразливих до нього.

Про два перших методи (для IIS) я вже розповідав у вищезгаданих записах, а зараз я розповім детально про третій метод (для Apache). Ще в травні 2010 я запланував написати цю статтю і ось нарешті знайшов час.

Code Execution в Apache:

Атака відбувається при завантаженні через аплоадер файла, наприклад, з PHP кодом (або іншого скрипта), з подвійним розширенням. Це може знадобитися, коли завантаження php-файлів заборонене.

http://site/1.php.txt

Цей метод я виявив ще 04.11.2007 в себе на http://websecurity.com.ua коли зробив екслоіт для reCaptcha. Спочатку я зробив файл reCaptcha.pl.txt, але файл виконувався на сервері (як Perl скрипт, хоча і мав останнє розширення txt), тому я його перейменував на reCaptcha.txt і з тих пір в себе на сайті розміщую експлоіти як txt-файли (без подвійних розширень).

Спочатку я вирішив, що це некоректе налаштування на моєму сервері. Але потім я почав знаходити випадки такої misconfiguration на інших сайтах. З тих пір я ще неодноразово зустрічав подібні випадки на багатьох сайтах, тобто це поширене явище. Яке використовується для атаки на веб сайти.

Дана атака можлива через специфічні налаштування Apache. Вона пов’язана з модулем mod_mime. Тому атака можлива тільки на серверах Apache з модулем mod_mime.


Leave a Reply

You must be logged in to post a comment.