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

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

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

  #2  
Старый 21.05.2021, 12:58
Baskin-Robbins
Guest
Сообщений: n/a
Провел на форуме:
92829

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

Натыкано)

Если мы имеем загрузку файлов по блек листу + апач(nix) и отсутствие проверки

содержимого загружаемого файла, то все это может привести к XSS.

Дело в том, что браузером файлы:

- с "неизвестным" расширением или без расширения

- начинающиеся с html/js кода

- отсутсвующим content-type от веб сервера

будут интерпритированны как html. Т.е. файл sss.sss с содержимым

Код:
Code:
alert()
выдаст ксс, так как апач по умолчанию не отправит content-type в response, а браузер

расценит его как text/html.

Тот же файл, но, например, с содержимым:

Код:
Code:
#!/bin/bash
alert()
браузер воспримет как text/plain, несмотря на то, что content-type также отсутсвует.

Такие ксски по факту являются stored, хотя эксплуатация их больше относится к

reflected, но обладают некоторыми преимуществами:

1) Учитывая название топика, это длинна.

Объем кода зависит лишь от размера файла, который нам позволяют заливать.

Reflected и stored например могут быть ограничены кодом, или длинной url, если

попадают из GET. Проинклудить код удаленно не всегда представляется возможным.

2) Обход некоторых ограничений CSP, WAF, защитных плагинов типа NoScript для FF.

3) "Легитимность" ссылки.

Нет необходимости пытаться скрыть подозрительную ссылку, она вполне "обычна".

4) Может что-то еще...

Гугл по этому вопросу несильно был ко мне дружелюбен, поэтому чутка расписал,

хотя я думаю все об этом знали.

Собственно для чего это все?

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

Дело в том, что браузер, например, файл ss.mp3 при открытии через обертку

Код:
Code:
file:///Desktop/ss.mp3
откроет его как audio/mpeg. И даже если содержимое его будет alert(),

браузер все равно попытается его открыть как mp3.

Однако, если апач каким-то образом не знает об mp3 и, всвязи с этим, вернет

response без content-type, браузер будет интерпритировать файл по содержимому,

и наш алерт отработает.

В файле мим типов mp3 будет однозначно, с распространенными расширениями не прокатит.

Но иногда разрабы могут разрешать заливать некоторые не слишком распространенные

расширения. Что впринципе мне и попалось, допускалась возможность заливки расширений:

1) aac - аудио

2) thm - изображение

3) и что-то там еще

а апач + отсутсвие mime type для этих файлов позволяло выполнить XSS.

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





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


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




ANTICHAT.XYZ