На бб нашелся забавный кейс.
Есть Stored XSS на приложении, но стоит WAF AWS ELB/2.0.
Встал вопрос: как байпасить?
Сначала попробовал вектора для хитрых пейлоадов, но все, что дальше одного слова, завернутого в кавычки, возвращет бан на реквест.
Тогда встал вопрос как байпасить не сигнатуры, а вообще парсинг.
И тут буквально с первой тычки прошел следующий трюк.
Данный WAF парсит заголовок Content-Type и в соответствии с ним парсит тело запроса.
Соответственно ломаем этот заголовок так, чтобы WAF его не съел, а nginx съел:
Решение:
Вместо пробела - табуляция!
Спасибо CTFам! 😄
Есть Stored XSS на приложении, но стоит WAF AWS ELB/2.0.
Встал вопрос: как байпасить?
Сначала попробовал вектора для хитрых пейлоадов, но все, что дальше одного слова, завернутого в кавычки, возвращет бан на реквест.
Тогда встал вопрос как байпасить не сигнатуры, а вообще парсинг.
И тут буквально с первой тычки прошел следующий трюк.
Данный WAF парсит заголовок Content-Type и в соответствии с ним парсит тело запроса.
Соответственно ломаем этот заголовок так, чтобы WAF его не съел, а nginx съел:
Решение:
Content-Type: application/x-www-form-urlencoded
Вместо пробела - табуляция!
Спасибо CTFам! 😄