免责申明
本文章仅用于信息安全防御技术分享,因用于其他用途而产生不良后果,作者不承担任何法律责任,请严格遵循中华人民共和国相关法律法规,禁止做一切违法犯罪行为。
相关漏洞POC路径如下:
POST /fort/system;login/netConfig/set_port HTTP/1.1
xxxxx
select=文件写入poc
二、漏洞分析
这里先来看POC,根据路径其实就可以判断出来这个源码是存在鉴权绕过的问题的,而且大概率是其requestURI等方式来绕过的,我们晚点分析这个鉴权绕过,先来看RCE是如何产生的。
在其xxxcontroller当中存在对应路由。
找到对应路由之后,可以看到接受两个参数,分别是select以及Unselect两个参数,并且传递到了setPort方法当中。
在方法当中可以看到将我们传递的参数写入到了一个文件名为firewall.sh的文件当中,返回刚才的方法,继续查看。
在下面则是对我们的sh文件进行了命令执行,这里其实就是我们先通过select参数将我们要执行的命令写到了sh文件当中,然后执行这个sh文件即可达到rce的效果,但是这里我看了下别的方法发现有拼接的情况。
例如这里,但是在验证之后并没有RCE,跟入方法之后才发现存在过滤 。
这里在细跟对应方法,发现存在过滤。
存在过滤器,跟入查看类文件。
使用这种方式进行获取url并且判断url当中是否存在login等关键信息,如果存在的话是可以放行的,所以这里我们直接;xxx即可绕过。
都是同样的道理。
没有回复内容