绕WAF(Bypass)--随时更新

基础

(1)https降级绕过:https->http

(2)选用一个WAF不支持的算法,但是服务器支持的算法

(4)修改method:GET->POST、POST->上传、cookie传值

(5)Header IP绕过

X-forwarded-for、X-remote-IP、X-originating-IP、x-remote-addr、x-client-i

(6)eader content-type 绕过

置为空、改为其它值、指定唯一的类型(例如:application/octet-stream --安全狗)、改成不规则值(例如:text/htmlxxxxxx)

命令执行

(1)'(单引号)\(反斜杠)绕过

root@fengwenbo:~# echo yourname
yourname
root@fengwenbo:~# echo y\o\u\r\n\a\m\e
yourname

(2)?、*、[、]、^、- 通配符绕过

root@fengwenbo:~# cat /etc/pa??wd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin

(3)$u 不存在符号绕过

root@fengwenbo:~# cat $u/etc$u/passwd$u
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin

(4); 分号执行

root@fengwenbo:~# cat /ect/passwd;ls
cat: /ect/passwd: 没有那个文件或目录
公共  模板  视频  图片  文档  下载  桌面

文件上传

文件名绕过

(1)文件名后加回车

(2)shell.php(%80-%89).jpg

(3)先上传,再改名

(4)%00

(5)00截断(HEX)

(6)长文件名(Windows 258byte | Linux 4096byte),可以使用:非字母数字(如:中文)

(7)重命名

脚本后缀

Php/php3/php/php5/php6/pht/phpt/phtml

asp/cer/asa/cdx/aspx/ashx/ascx/asax

jsp/jspx/jspf

解析漏洞

(1)IIS 5.x 6.0解析漏洞

  • 目录解析:在网站下建立文件夹的名字为 .asp、.asa 的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来解析并执行。

  • 在IIS6.0下,分号后面的不被解析

(2)Apache 1.x 2.x解析漏洞

  • Apache 是从右到左开始判断解析,如果为不可识别解析,就再往左判断。

(3)Nginx0.5.* Nginx0.6.* Nginx0.7-0.7.65 Nginx0.8-0.8.37

  • 上传shell.jpg,然后以shell.jpg.php进行请求

(4)Nginx 0.8.41-1.5.6

  • 上传shell.jpg,然后以shell.jpg%20.php进行请求

(5)PHP CGI解析漏洞 IIS7.0 IIS7.5 Nginx<0.8.3

  • 默认PHP配置文件cgi.fix_pathinfo=1时,上传shell.jpg,在请求时以shell.jpg/shell.php请求,会将以shell.jpg以PHP来解析

(6)系统特性

NTFS ADS特性:ADS时NTFS磁盘格式的一个特性,用于NTFS交换数据流。在上传文件时,吴国waf对请求正文的filename匹配不当的话可能会导致绕过。

假设现在我们有一个文件shell.php,文件内容是

利用Windows server 2008 r2 DVWA上传测试

上传的文件名 服务器表面现象 生成的文件内容
shell.php:a.jpg 生成shell.php
shell.php::$DATA 生成shell.php
shell.php::$INDEX_ALLOCATION 生成shell.php文件夹
shell.php::$DATA.jpg 生成0.jpg
shell.php::$DATA\aaa.jpg 生成aaa.jpg

垃圾数据

文件名

  • 文件名回车
  • 多个filename字段,前一个正常,后一个恶意
  • 遗漏文件名

参数

  • 参数溢出
  • 参数截断
  • 参数污染/拼接

编码

URL、Double URL、UTF-8(2 byte)、UTF-8(java)、HTML、Decimal、Unicode、Base64

posted @ 2020-09-22 10:18  WindStream  阅读(404)  评论(0编辑  收藏  举报