攻防世界-fakebook题目__详解

1.打开题目先用dirsearch工具扫描一波,扫出来了robots.php目录,然后访问robots.txt

目录,发现了有一个备份文件 ,访问备份文件,下载内容

文件的大致内容如下

里面有一个curl_exec这个函数容易造成ssrf攻击的漏洞

我们回到首页先去注册一个账号

然后登陆进去了,点击一下admin这个用户,发现url上有可以注入的点,那么我们尝试使用sql语句来判断,输入?no=1 and 1=1 的时候回显正常,输入?no=1=2的时候回显报错,明显是数字类型的注入

我们先来判断有多少列

?no=1 order by 1#   //正常
?no=1 order by 2#   //正常
?no=1 order by 3#    //正常
?no=1 order by 4#   //正常
?no=1 order by 5#   //错误

通过测试发现有4列

我们进行联合注入测试使用命令1' union select 1,2,3,4#结果发现这句话被过滤了

那么我们测试一下是过滤了什么,通过测试发现过滤了union和select那么我们使用注释绕过语句为-1 union/**/select 1,2,3,4--+测试回显位在哪里,-1是不存在的,给一个不存在的才可以看到占位符,从这个回显图上可以看到username的位置有回显,这个就是第二列的参数,就是-1 union/**/select 1,2,3,4#中数字2的参数回显,这就是回显位,那么从这里注入

构造payload语句为-1 union/**/select 1,database(),3,4#查看数据库名,可以看到数据库名字为fakebook

接下来我们来查看数据库信息使用payload:-1 union/**/select 1,user(),3,4#,可以知道用户是root用户的权限,知道了是root权限之后可以使用函数load_file()来利用绝对路径加载文件,可以构造的payload为-1 union/**/select 1,load_file("/var/www/html/flag.php"),3,4#来查看flag,网页直接回显了flag

另一种获取的 方法是-1 union/**/select 1,group_concat(table_name),3,4 from informaion_schema.tables where table_schema='fakebook'#来查看表名,然后通过表名来查看列名字

构造的payload为-1 union/**/select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='users'# 从下图可以看出no是第一列的,username是第二列的,passwd是第三列的data是第四列

然后在data里看到了一个序列化的字符串?no=-1 union/**/select 1,2,3,'O:8:"UserInfo":3:{s:4:"name";s:5:"admin";s:3:"age";i:19;s:4:"blog";s:29:"file:///var/www/html/flag.php";}'然后源码里的base64加密,解密之后就是flag了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/27884.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于微信小程序的童书购买系统的设计与实现

基于微信小程序的童书购买系统的设计与实现 摘 要 《“十三五”规划》第一次把“保障妇女、未成年人、残疾人的基本权利”作为重要内容,充分体现了党和国家对广大人民群众的关心,为广大人民群众营造了良好的学习氛围,并出台多项文件及政策&…

斯坦福ALOHA机器人团队最新论文-HumanPlus: 从人类学习的人形机器人动作模仿和自主操作

斯坦福ALOHA机器人团队最新论文-HumanPlus,继续推进了机器人技术的前沿进展,我进行了部分翻译和解读: HumanPlus人形机器人系统技术解读 1 简介 本教程将介绍一个名为HumanPlus的全栈式人形机器人系统。该系统能够让机器人从人类数据中学习…

【MySQL】(基础篇十二) —— 子查询

分组数据 本文介绍什么是子查询以及如何使用它们。 SQL允许我们创建子查询(subquery),即嵌套在其他查询中的查询。这样可以实现更复杂的查询,理解这个概念的最好方法是考察几个例子。 利用子查询进行过滤 需求:查询…

Python设计模式 - 简单工厂模式

定义 简单工厂模式是一种创建型设计模式,它通过一个工厂类来创建对象,而不是通过客户端直接实例化对象。 结构 工厂类(Factory):负责创建对象的实例。工厂类通常包含一个方法,根据输入参数的不同创建并返…

React+TS前台项目实战(七)-- 全局常用组件Select封装

文章目录 前言Select组件1. 功能分析2. 代码详细注释说明3. 使用方式4. 效果展示(1)鼠标移入效果(2)下拉框打开效果(3)回调输出 总结 前言 今天这篇主要讲全局select组件封装,可根据UI设计师要…

网络通信的两大支柱:TCP与UDP协议详解(非常详细)零基础入门到精通,收藏这一篇就够了

在构建现代互联网通信的基石中,TCP(传输控制协议)和UDP(用户数据报协议)起着至关重要的作用。本文将深入探讨两者的区别及应用场景。 1 TCP和UDP的共同点 传输层协议: TCP和UDP都是传输层协议&#xff…

紫光展锐5G处理器T750__国产手机芯片5G方案

展锐T750核心板采用6nm EUV制程工艺,CPU架构采用了八核设计,其中包括两个主频为2.0GHz的Arm Cortex-A76性能核心和六个主频为1.8GHz的A55小核。这种组合使得T750具备卓越的处理能力,并能在节能的同时提供出色的性能表现。该核心模块还搭载了M…

L51--- 144. 二叉树的前序遍历(深搜)---Java版

1.题目描述 2.思路 二叉树的前序遍历遵循 根左右 (1)方法 preorderTraversal 输入参数: TreeNode root root是二叉树的根节点。 返回值: List 返回一个包含二叉树节点值的列表,这些值按照前序遍历的顺序排列。 功能: 这个方法是前序遍历的…

微信小程序04: 获取openId和unionId

全文目录,一步到位 1.前言简介1.1 专栏传送门1.1.1 上文小总结1.1.2 上文传送门 2. 获取openId和unionId操作2.1 准备工作2.1.1 请先复制00篇的统一封装代码2.1.2 微信登录请求dto 2.2 具体代码使用与注释如下2.2.1 业务代码2.2.2 代码解释(一)[无需复制]2.2.3 获取的map使用方…

值传递和址传递

值传递 上面的代码是想要交换x,y的值,把x,y传递给swap函数之后,执行下面的操作: 在swap中a和b交换了,但是和x,y没有关系,所以x,y在main中不会变。 址传递 下面再看把x…

2024FIC决赛

容器密码:2024Fic~Competition~Finals杭州&Powered~By~HL! 案件背景: 2023年3月15日凌晨,受害人短视频平台上看到一段近期火爆的交通事故视频,留言后有人通过私信联系,称有一个赚大钱的机会,该人自称李某,提议让…

软件工程期末复习题

目录 选择 判断 选择 下列说法中正确的是 ( B )。 A、20 世纪50 年代提出了软件工程的概念摇 B、20 世纪60 年代提出了软件工程的概念 C、20 世纪70 年代出现了客户端/ 服务器技术 D、20 世纪80 年代软件工程学科达到成熟 软件危机的主要原因是 ( D )。 A、软件工具落后…

基于STM32移植U8g2图形库——OLED显示(HAL库)

文章目录 一、U8g2简介1、特点2、U8g2的使用步骤 二、I2C相关介绍1、I2C的基本原理2、I2C的时序协议 三、OLED屏的工作原理四、汉字点阵显示原理五、建立STM32CubeMX工程六、U8g2移植1、U8g2源码2、移植过程 七、代码编写1、参考博主实现的U82G的demo例程(1&#xf…

【Linux内核】伙伴系统算法和slab分配器(1)

【Linux内核】伙伴系统算法和slab分配器(1) 目录 【Linux内核】伙伴系统算法和slab分配器(1)伙伴系统(buddy)算法伙伴系统算法基本原理内存申请内存回收 接口函数源码分析内存分配接口物理内存释放接口规范…

基于Wireshark实现对FTP的抓包分析

基于Wireshark实现对FTP的抓包分析 前言一、虚拟机Win10环境配置二、FileZilla客户端的安装配置下载FileZilla客户端安装FileZilla 三、FileZilla Server安装下载FileZilla Server安装 四、实现对FTP的抓包前置工作实现抓包完成抓包 前言 推荐一个网站给想要了解或者学习人工智…

Setapp:只需一次订阅,即可获得 240 款+ Mac 软件

为一项任务寻找合适的应用程序是一项相当艰巨的任务。过去,最好的办法要么是花费宝贵的时间搜索可靠的评论,要么就是相信无论安装什么软件都能完成任务。 如果你是 Mac 用户,那么 Setapp 将让这一问题成为过去。无需在需要时下载单个程序&am…

vue之一键部署的shell脚本和它的点.bat文件、海螺AI、ChatGPT

MENU 前言vite.config.ts的配置deploy文件夹的其他内容remote.shpwd.txtdeploy.bat 前言 1、在src同级新建deploy.bat文件; 2、在src同级新建deploy文件夹,文件夹中新建pwd.txt和remote.sh文件; 3、配置好后,直接双击deploy.bat文…

鸿蒙轻内核M核源码分析系列二一 02 文件系统LittleFS

1、LFS文件系统结构体介绍 会分2部分来介绍结构体部分,先介绍LittleFS文件系统的结构体,然后介绍LiteOS-M内核中提供的和LittleFS相关的一些结构体。 1.1 LittleFS的枚举结构体 在openharmony/third_party/littlefs/lfs.h头文件中定义LittleFS的枚举、…

在线时钟python案例

试了一下用通义来编写一些代码,以下是一个在线时钟的样例,只要能运行python就可以使用。 以下是运行后的结果。 代码(复制可用) import tkinter as tk from time import strftimedef update_time():current_time strftime(&quo…

Postman使用教程(Postman详细图文教程)

本文讲解的是postman工具安装、postman安装教程、postman工具下载、postman使用教程。Postman使得得开发人员和测试人员能够更高效地与Web服务进行交互和调试。 Postman不仅支持常见的HTTP方法,如GET、POST、PUT、DELETE等,还提供了丰富的请求编辑功能&…