| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> PHP知识库 -> 攻防世界-web ics-05 -> 正文阅读 |
|
[PHP知识库]攻防世界-web ics-05 |
题目描述:其他破坏者会利用工控云管理系统设备维护中心的后门入侵系统 逐个点击菜单栏,发现只有设备维护中心有跳转 题目提示了利用后门入侵,应该和网站后台页面有关系 首先使用dirsearch扫描网站目录,发现有个/index.php/login目录 dirsearch 是一款网络路径扫描器,自带的字典比较齐全,个人认为比较好用 下载地址:https://github.com/maurosoria/dirsearch 尝试访问,发现页面有超链接,尝试点击 发现page有默认的参数,并且修改这个参数后也会有输出 ?猜测是文件包含漏洞,尝试使用php伪协议读取文件: PHP伪协议读取文件源码用法
PHP伪协议执行php代码用法
??php伪协议用法参考:https://www.cnblogs.com/endust/p/11804767.html 构造payload读取index.php
? 对读取的内容进行BASE64解密? ?BASE64解密在线工具:http://www.jsons.cn/base64/ 第一部分关键代码分析:(拿不到flag可以直接跳到第二部分的代码分析看)
关键函数: ctype_alnum() 函数检测字符串是否全部为字母和(或)数字字符; strpos()函数查找字符串在另一字符串中第一次出现的位置(区分大小写),返回字符串在另一字符串中第一次出现的位置,如果没有找到字符串则返回 FALSE; 首先会对传入的参数使用type_alnum() 函数检测,因为我们使用的是php伪协议包含了' :// ',不全是字母和(或)数字字符,接下来就会进入else{}部分,一共有4次的strpos()函数判断,只要参数中存在:input、ta:text、text、index.php就会执行die()结束程序(之所以把input也过滤了,是因为我们要使用伪协议的php:input来执行代码查看flag路径) 而想要到达include包含,就要想办法绕过strpos(),而strpos()是区分大小写的,我们只要使用php://INPUT即可绕过 构造payload 但是却没有我们想要的结果输出,好吧,应该是php://input的利用条件没有满足 是真的坑,被这部分代码干扰消耗了许多时间? 再来审计第二部分关键代码:
?preg_replace是已知存在/e代码执行漏洞的 /e 修正符使 preg_replace() 将 replacement 参数当作 PHP 代码 利用此漏洞的同时需要抓包构造X-Forwarded-For: 127.0.0.1才能进入if语句内部 构造payload查看当前目录(记得抓包添加X-Forwarded-For: 127.0.0.1)
? ?修改payload查看s3chahahaDir目录,发现flag
?修改payload查看flag文件夹下内容
?读取flag.php文件
cyberpeace{05d630f89591041c654a2b6245f2080a} |
|
PHP知识库 最新文章 |
Laravel 下实现 Google 2fa 验证 |
UUCTF WP |
DASCTF10月 web |
XAMPP任意命令执行提升权限漏洞(CVE-2020- |
[GYCTF2020]Easyphp |
iwebsec靶场 代码执行关卡通关笔记 |
多个线程同步执行,多个线程依次执行,多个 |
php 没事记录下常用方法 (TP5.1) |
php之jwt |
2021-09-18 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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 10:39:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |