美文网首页
Laravel <= 8.4.2 Debug模式 _igniti

Laravel <= 8.4.2 Debug模式 _igniti

作者: xioooZorro | 来源:发表于2021-06-29 22:00 被阅读0次

声明:由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。

Laravel源码:https://github.com/laravel/laravel

参考链接:

https://www.ambionics.io/blog/laravel-debug-rce 原文
https://www.nosec.org/home/detail/4651.html 翻译版
https://blog.csdn.net/caiqiiqi/article/details/112556086
https://mp.weixin.qq.com/s/k08P2Uij_4ds35FxE2eh0g

历史版本漏洞信息:

CVE-2017-16894 框架信息泄漏 利用条件 version<=5.5.21
CVE-2018-15133 反序列化 利用条件 version 5.5.40
CNVD-2020-24410 FrozenNode Laravel-Administrator: 5.0.12
CVE-2021-3129 利用条件 Laravel < 8.4.3;facade ignition < 2.5.2

SQL注入、XSS......
本篇文章主要针对CVE-2021-3129编号漏洞进行复现。

  • 漏洞描述
    Facade Ignition for Laravel是比利时Facade公司的一款运行在Laravel Web框架中的可自定义的错误页面。Ignition for Laravel 2.5.2之前版本存在授权问题漏洞,该漏洞源于程序未进行正确的身份验证,攻击者可利用该漏洞执行任意代码。
  • 环境搭建
$ git clone https://github.com/laravel/laravel.git
$ cd laravel
$ git checkout e849812
$ composer install
$ composer require facade/ignition==2.5.1
$ cp ./.env.example ./.env    # .env文件必须这里设置了`APP_DEBUG=true`
$ php artisan serve
image-20210629162115504.png
{solution: "Facade\Ignition\Solutions\GenerateAppKeySolution", parameters: []}
parameters: []
solution: "Facade\\Ignition\\Solutions\\GenerateAppKeySolution"

通过这个请求Ignition成功在配置文件中生成了一个key。

image-20210629162042912.png
APP_KEY=base64:T4fFTEv/U0ttucMj/iMpJIu5mPl16I7iG20DpZqyoqs=
image-20210629214950301.png
image-20210629214956738.png

漏洞成因:

vendor/facade/ignition/src/Solutions/MakeViewVariableOptionalSolution.php过滤不严谨导致的

漏洞利用

rce利用后的laravel.log文件:


image-20210629213409361.png

利用结果:


image-20210629215438747.png

相关文章

网友评论

      本文标题:Laravel <= 8.4.2 Debug模式 _igniti

      本文链接:https://www.haomeiwen.com/subject/ruzkultx.html