天呐!我竟然把Solr提权脚本玩出了花,这波操作连我自己都怕!
哎呀,各位老铁们,今天咱们来聊点刺激的——Solr提权脚本,说实话,我一开始接触这玩意儿的时候,心里是有点发怵的,毕竟听起来就像是黑客电影里才会出现的高端操作,当我真正深入研究下去,发现这玩意儿简直就是个宝藏啊,今天不吐不快,必须跟大家好好唠唠!

初次见面,请多关照——Solr是个啥?
先跟刚入门的小伙伴们科普一下,Solr呢,就是Apache基金会下面一个超级好用的开源搜索平台,基于Java写的,很多大厂的站内搜索都用它,但是呢,就像再完美的人也总有点小缺点一样,Solr在某些配置不当的情况下,就会暴露出一些安全问题,这时候就需要咱们的Solr提权脚本登场了。
我记得我第一次接触的时候,哇塞,那感觉就像是在玩一个解谜游戏,每个漏洞点都是一个线索,串联起来就能拿到服务器的权限,那种成就感,说真的,比我当年考过六级还爽!
亲测有效的Solr提权路径,我踩过的坑都在这了!
好了好了,不扯闲篇了,咱们直接上硬菜!我把自己踩过无数坑总结出来的经验分享给大家。
第一步:信息收集要细心 拿到目标之后呢,千万别急着动手,得先看看目标Solr的版本、开启的插件、配置信息等等,这个环节我吃了不少亏,以前有一次就是没仔细看版本信息,直接用了老版本的exp,结果碰了一鼻子灰——人家早就修复了!那种感觉,哎哟喂,真是欲哭无泪啊!
第二步:找准入口是关键 Solr的提权方式有好几种,最常见的就是利用Velocity模板注入,还有CVE-2019-17558这种经典漏洞,我比较喜欢用公开的Solr提权脚本扫描一下,看看哪些API接口暴露了,然后有针对性地开发利用,这个过程就像是开锁师傅在找突破口,每个接口就是一个锁孔,总有一个能撬开的!
第三步:利用API配置修改 当找到入口之后呢,如果权限足够,我们可以直接修改Solr的配置文件来获取RCE(远程代码执行),这一步步操作下来,那种心跳加速的感觉,真的比坐过山车还要刺激,不过大家要记住,一定要小心操作,要不然一不小心把服务搞挂了,那就尴尬了!
实战复盘:那次我差点翻车...
说起来有一回,我在测试一个目标站点,用Solr提权脚本扫描发现它的config API没做身份验证,可以直接修改配置,我当时那个激动啊,赶紧按照网上教程一步步操作,准备写入恶意配置拿到命令执行权限。
坑爹的地方来了!我改了配置之后,怎么都不生效,试了各种方法都不行,当时我差点就放弃了,心想:这是不是个蜜罐啊?后来冷静下来仔细排查,才发现是Solr的权限控制参数没设置对,那瞬间真是又气又好笑,就像你准备开门,结果钥匙卡在锁里了,得换个角度才能插进去!
防御者的反击:血泪教训
当然啦,咱们提这套操作,肯定得聊聊怎么防,后来我也参与了一些安全加固的项目,发现了很多企业其实都对自己服务器的Solr配置不太上心,默认密码不改,权限设置随便糊弄,这不就是给黑客递刀子嘛!
要我说啊,防这个真的不难:第一,一定要给Solr的管理接口加上强认证;第二,配置文件里把那些危险的API都给禁用了;第三,定期排查日志,看看有没有异常的请求记录。
结尾有话说
哎呀,不知不觉唠叨了这么多,主要是想到之前自己在这个领域摸爬滚打的经历,真的是感慨万千啊!Solr提权脚本这个东西,用得好是安全测试的利器,用不好就是违法的工具,大家一定要三思而后行,千万别拿它去做坏事!
好啦好啦,今天就聊到这里,如果你也对Solr安全感兴趣,欢迎在评论区跟我交流心得,咱们一起进步!记住啊,技术本身没好坏,使用它的人才有善恶,大家共勉!加油!