HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Уязвимости > Веб-уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 15.09.2016, 14:27
Grenaro
Guest
Сообщений: n/a
Провел на форуме:
913

Репутация: 12
По умолчанию

Нашел сам. Вроде в паблике еще не было.

Фича №1) В ISPmanager имеется возможность управления через api без авторизации. Просто отправляем GET запрос на внутренний адрес http://127.0.0.1/manager и панель автоматически, работая от рута, распознает от какого пользователя был отправлен запрос и выполняет его с правами этого пользователя. Примеры:

Создать ftp-пользователя к корневой папке пользователя:

http://127.0.0.1/manager/ispmgr?nam...t=0&note=&func=ftp.edit&elid=&sok=ok& out=json

Cмена пароля пользователя(нужно знать имя пользователя, чтобы потом авторизоваться):

http://127.0.0.1/manager/ispmgr?out...nfirm=[pass]&func=usrparam&elid=[user]&sok=ok

Создать ключ для авторизации по ключу(нужно знать имя пользователя, чтобы потом авторизоваться):

http://127.0.0.1/manager/ispmgr?out=...03567567567567

+

Фича №2) В wordpress имеется возможность отправлять запросы от сервера через функцию pingback в файле xmlrpc.php. Нужно лишь знать путь к существующей странице на сайте. Отправляем POST запрос к скрипту http://site.com/xmlrpc.php вида:

Код:
Code:

pingback.ping

http://site.com/manager/ispmgr?name=[ftpuser]&passwd=[pass]&htype=equalme&dir=&disklimit=0&note=&func=ftp.edit&elid=&sok=ok&out=json
http://site.com/?p=2
и сервер сам к себе отправляет запрос, а панель создает ftp пользователя и заданными именем и паролем. Обычно отправку несанкционированного запроса от сервера называют SSRF уязвимостью, но разработчики Wordpress считают пинговалку фичей и исправлять явно не будут.

=

Получаем 2 фичи, которые никто не будет патчить, но которые дают полный доступ к сайту. Wordpress самая распространенная cms в мире, а isp самая распространенная серверная панель у снг вебмастеров. Проверялось на isp4, но по-моему и в 5-ой версии все так же. Т.к. у многих php работает от пользователя apache или nginx, можно установить пароль к пользователям apache, www-data, nginx. Через них можно авторизоваться в панели и получив доступ к крон-задачам выполнять команды шелла, ну или по ssh подключиться. Прошлой осенью разрабы ispmanager в новых версиях закрыли возможность отправлять запросы к api через пользователя веб-сервера, но запросы обычным пользователем остались. Да и многие не обновляют панели.

Лечение:

Можно удалить файл xmlrpc.php, но ssrf могут быть и в других скриптах, эту уязвимость часто игнорируют. Если не пользуетесь api - отключите его в файл-конфиге isp.
 
Ответить с цитированием

  #2  
Старый 17.09.2016, 09:32
strelok20094
Guest
Сообщений: n/a
Провел на форуме:
24770

Репутация: 2
По умолчанию

Мб я пенек, но Auth failed from IP
 
Ответить с цитированием

  #3  
Старый 17.09.2016, 17:17
pas9x
Guest
Сообщений: n/a
Провел на форуме:
97867

Репутация: 52
По умолчанию

Баг-репорт кривой. Непонятно в какой именно панели. Lite или Pro. Непонятно как воспроизвести проблему.

Цитата:
Сообщение от Grenaro  
Grenaro said:

isp4
Тестировать надо не на какашке мамонта а на нормальной версии. Четвёрные версии isp-панелей давно устарели, лицензии на них купить невозможно и вымирают они очень быстро. По моей статистике, из 8000 vps'ок ispmgr4 установлена всреднем на 10-20 виртуалках. В основном четвёртые версии панелей сохранились у хостеров, но сейчас на них работают только говнохостинги, которые даже не думают обновляться.

Цитата:
Сообщение от Grenaro  
Grenaro said:

Просто отправляем GET запрос на внутренний адрес
http://127.0.0.1/manager
и панель автоматически, работая от рута, распознает от какого пользователя был отправлен запрос и выполняет его с правами этого пользователя.
Это бред сивой кобылы. Сам процесс ispmgr, конечно, работает под рутовым аккаунтом. Но при авторизации (например методом authinfo) панель делает su на авторизированный аккаунт. Но это не значит, что любому api-запросу на 127.0.0.1 панель назначит высший уровень доступа. 127.0.0.1 для ihttpd ничем не отличается от любого другого айпишника в паблик-интернете.

Возможно ты путаешь вызов api-функций по http с их вызовом через консоль.

Напиши более подробно как воспроизвести проблему и протестируй дыру на пятой версии с указанием типа панели к которой выполняются апи-запросы (Lite/Business/Node). Баг-репорт под четвёртую панель настолько-же актуален, насколько сейчас актуален баг-репорт под win98. Если под рукой нет пятой панели - могу в ЛС скинуть рутовый доступ к тестовой виртуалке с нужной версией панели.
 
Ответить с цитированием

  #4  
Старый 18.09.2016, 00:51
RWD
Guest
Сообщений: n/a
Провел на форуме:
56255

Репутация: 2
По умолчанию

совет автору писать сразу разробам. там еще и денег платят)

если конечно лишние деньги опиши тут)

https://www.ispsystem.ru/bug-report

100 €

Проблемы, приводящие к зависанию наших продуктов или приводящие к неработоспособности какого-либо сервиса действиями от лица пользователя (не администратора) через панель.

300 €

Проблемы безопасности, если в результате каких-либо действий от пользователя можно получить данные другого пользователя.

900 €

Проблема безопасности, если в результате действий от пользователя (не главного администратора панели управления) можно получить права администратора.
 
Ответить с цитированием

  #5  
Старый 18.09.2016, 02:17
ghost8
Guest
Сообщений: n/a
Провел на форуме:
37430

Репутация: 0
По умолчанию

за такие деньги им писать ни кто не будет,особенно по пункту 3,выгоду сами все вытянут,думаю многие будут согласны
 
Ответить с цитированием

  #6  
Старый 18.09.2016, 10:53
попугай
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
Провел на форуме:
2459557

Репутация: 606


По умолчанию

Дык чтобы отправить запрос к панели через GET, не нужно быть авторизованным в панели?
 
Ответить с цитированием

  #7  
Старый 18.09.2016, 15:31
Grenaro
Guest
Сообщений: n/a
Провел на форуме:
913

Репутация: 12
По умолчанию

Цитата:
Сообщение от strelok20094  
strelok20094 said:

Мб я пенек, но Auth failed from IP
Работает это не везде. Похоже с какой-то версии запросы на localhost без авторизации по-умолчанию выключены и таких серверов все больше. Я все это разбирал больше года назад. Сейчас больше не нужно и выложил.

Цитата:
Сообщение от pas9x  
pas9x said:

Баг-репорт кривой. Непонятно в какой именно панели. Lite или Pro. Непонятно как воспроизвести проблему.
Работало и на лайт и на про.

Цитата:
Сообщение от pas9x  
pas9x said:

Тестировать надо не на какашке мамонта а на нормальной версии. Четвёрные версии isp-панелей давно устарели, лицензии на них купить невозможно и вымирают они очень быстро. По моей статистике, из 8000 vps'ок ispmgr4 установлена всреднем на 10-20 виртуалках. В основном четвёртые версии панелей сохранились у хостеров, но сейчас на них работают только говнохостинги, которые даже не думают обновляться.
Если только за год все не обновились. На 4 версии все брали пожизненные лицензии и когда появилась 5-ая версия никто не хотел покупать заново. Пятерка вышла уже давно, но чуть больше года назад я собирал инфу по панелям на сотнях тысяч серверов. Чекая лицензию по запросу http://lic.ispsystem.com/ispmgr.lic?ip= . Так вот из найденых isp, пятерка была у меньше 5 процентов. И я не думаю что за год изменилось настолько.

Цитата:
Сообщение от pas9x  
pas9x said:

Это бред сивой кобылы. Сам процесс ispmgr, конечно, работает под рутовым аккаунтом. Но при авторизации (например методом authinfo) панель делает su на авторизированный аккаунт. Но это не значит, что любому api-запросу на 127.0.0.1 панель назначит высший уровень доступа. 127.0.0.1 для ihttpd ничем не отличается от любого другого айпишника в паблик-интернете.
Возможно ты путаешь вызов api-функций по http с их вызовом через консоль.
Я нигде не писал, что по любому запросу на локалхост панель выдаст права рута. Я писал что она обработает запрос с правами того пользователя от которого отправили запрос. Php скрипт с банальным file_get_contents("http://127.0.0.1/manager/ispmgr?out...nfirm=[pass]&func=usrparam&elid=[user]&sok=ok"); запускаем любым пользователем и этому пользователю установится новый пароль.

Цитата:
Сообщение от pas9x  
pas9x said:

Напиши более подробно как воспроизвести проблему и протестируй дыру на пятой версии с указанием типа панели к которой выполняются апи-запросы (Lite/Business/Node). Баг-репорт под четвёртую панель настолько-же актуален, насколько сейчас актуален баг-репорт под win98. Если под рукой нет пятой панели - могу в ЛС скинуть рутовый доступ к тестовой виртуалке с нужной версией панели.
Как воспроизвести подробнее, если это примеры из старой документации? Это же не ошибка в софте которую пропустили разрабы, это проблема архитектуры. Отбрось вордпресс и отправь запрос к панели 4 версии. На 5-ой версиии было так мало панелей, что возится с ними было нерентабельно. Читай выше про распределение версий, что ты несешь про win98.

Чтобы запустить все это массово нужно собрать много информации. Базу ip с панелями и списки доменов на этих ip. Прочекать их на вордпресы. Найти существующую стараницу в блоге, чтобы сделать pingback. Отправлять кучу запросов по этим данным, чтобы выяснить от какого пользователя работал php и по какому адресу была панель. Думаете если все было так просто я бы выложил это?

Вот здесь можно увидеть что бывает когда запускаешь массово:

http://searchengines.guru/archive/in.../t-903583.html

Тогда и пофиксили запросы от пользователя веб-сервера(http://forum.ispsystem.ru/showthread.php?28944-Changelog-для-ISPmanager-4), только проблема была шире.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ