IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> PHP代码审计-1 -> 正文阅读

[PHP知识库]PHP代码审计-1

前言

·本篇文章为新手级别,挖掘到的漏洞问题具有较强的针对性,旨在对代码审计有一个初步的认识与了解。

审计前的准备

·先把代码安装好,不要下载下来就开始搞,安装前后代码是有变化的。安装好后就可以开始了。👇

在这里插入图片描述

关键字搜索

SQL注入

·针对SQL注入的定向审计->联想产生注入常见的场景->针对关键字进行全局搜索($_GET、$_POST、$_REQUEST等)

在这里插入图片描述

·搜出来不少,先看第一个
·看到SQL语句时就该有所警觉,从上面获取到的参数ad_id,被带入SQL语句。

在这里插入图片描述

·现在搞不清getone函数是做什么的,然后再进行搜索,找到getone函数是在哪里定义的

在这里插入图片描述
在这里插入图片描述

·捋清楚了,将ad_id参数带入SQL语句进行执行,并且该程序没有任何过滤(毕竟是新手区)

在这里插入图片描述

任意文件删除

·百度搜索PHP删除文件常用函数👇

在这里插入图片描述

·去文件中进行查找,找啊找,看啊看,最后锁定在 zzz_file.php 文件中的 del_file() 函数👇

在这里插入图片描述

·找到对应的函数功能后再干什么?当然是查找是谁调用这个函数啦。找到了delfile()函数👇

在这里插入图片描述

·再去查看save.php里的delfile()函数,在哪里被调用👇

在这里插入图片描述

·顺藤摸瓜,找到了switch-case👇

在这里插入图片描述
·再找一下$act是怎么来的👇
在这里插入图片描述
·$act受 safe_word() 和 getform() 两个函数影响。

·先看一下 getform() 函数是干啥的,来判断请求形式是GET还是POST,还是GET、POST都行。👇

在这里插入图片描述
 
·再来看一下 safe_word() 函数干啥用的,过滤👇
在这里插入图片描述

·再来捋一捋,使用GET请求方式传递 $act=delfile,才会去执行delfile(),进一步执行del_file()

·del_file()函数使用 POST 方式接受 path 参数,如果需要删除的文件路径在白名单里,则允许删除👇

在这里插入图片描述

·尝试进行重新安装👇

在这里插入图片描述

·根据提示,构造payload删除install.lock文件👇

在这里插入图片描述

·再次访问,发现还是有问题,返回代码继续查看👇

在这里插入图片描述

·删除.lock文件后。使用GET或POST请求方式,使 act = step1,即可重新安装本程序👇

在这里插入图片描述

·成功进入安装界面👇

在这里插入图片描述

任意文件下载

·安装好程序后,突然想到了南山必胜客😄
·一个音乐网站无非就是注册、登录、用户信息更改,上传、下载音乐,评论,充会员~等主要功能
·相较于上传和下载,大多数程序对上传的限制比下载严格,因为上了马意味着服务器的沦陷;这次就来审下载

在这里插入图片描述

·随便上传几首歌,点击下载音乐,把音乐下载的链接获取到,就能大体上定位下载功能有关的代码位置👇

在这里插入图片描述

·变量id 受到intval()、SafeRequest()两个函数的影响👇

在这里插入图片描述
在这里插入图片描述

·跟踪一下SafeRequest() 函数,过滤用的👇

在这里插入图片描述

·接受到的id值被带入SQL语句执行👇

在这里插入图片描述
在这里插入图片描述

·这段代码好熟悉的感觉,VIP Pay,这是告诉你,部分歌曲要打钱才能听啊、下载啊啥的👇

在这里插入图片描述

·剩下的这一块就是下载用的了👇

在这里插入图片描述

·geturl()函数就比较简单了,判断你是要下载歌词还是封面啥的

在这里插入图片描述

·来捋捋👇

在这里插入图片描述

·走,去数据库看看,结合代码进行分析👇

在这里插入图片描述
在这里插入图片描述

·到此呢,发现我们只能控制id值,无法控制in_audio列的内容
·如果挖掘任意文件下载,就要去找能控制in_audio列的地方
·全局搜索in_audio,这个add.php就很可疑👇

在这里插入图片描述

·也就是说在上传音乐的时候,音频地址就是in_audio,控制输入的音频地址就可以控制下载内容👇

在这里插入图片描述

·有过滤!👇

在这里插入图片描述
在这里插入图片描述

·过滤在此👇

在这里插入图片描述

·如果写的是完整路径呢👇

在这里插入图片描述
在这里插入图片描述

·。。。。。换成斜线试试👇

在这里插入图片描述
在这里插入图片描述

·bingo👇

在这里插入图片描述

·突然感觉略鸡肋,毕竟绝对路径哪有那么好猜
  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-12-16 17:27:50  更:2021-12-16 17:28:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 14:54:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码