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

自己做的网站视频播放不了电脑培训学校网站

自己做的网站视频播放不了,电脑培训学校网站,有没有教给做宝宝衣服的网站,wordpress表格主题目录 一、.htacess 二、代码审计 三、php ts版本安装 1、下载ts版本php 2、放入到phpstudy指定文件夹中 3、修改php配置文件 4、修改php.ini文件 5、修改httpd.conf文件 (1)定位文件 (2)修改文件 6、重启小皮 7、切换…

目录

一、.htacess

二、代码审计

三、php ts版本安装

1、下载ts版本php

2、放入到phpstudy指定文件夹中

3、修改php配置文件

4、修改php.ini文件

5、修改httpd.conf文件

(1)定位文件

(2)修改文件

6、重启小皮

7、切换ts版本php 

四、渗透实战

1、构造.htacess文件

2、构造图片文件

3、上传.htacess和图片文件

4、获取图片地址

5、访问脚本


本文通过《upload-labs靶场通关笔记系列》来进行upload-labs靶场的渗透实战,本文讲解upload-labs靶场第四关文件.htacess渗透实战。

一、.htacess

.htaccess 是 Apache 服务器的分布式配置文件,全称是Hypertext Access(超文本入口)。.htaccess 是 Apache 服务器的分布式配置文件,全称是Hypertext Access(超文本入口)。.htaccess 文件提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。

.htaccess 文件能够对 Apache 服务器的特定目录进行配置,借助它可以修改文件类型的解析规则。所以,若成功上传一个恶意的 .htaccess 文件,就可以让服务器把其他后缀的文件当作 PHP 文件来解析,进而实现文件上传htacess绕过。

二、代码审计

打开文件上传靶场的第4关,查看源码并分析,如下所示代码使用黑名单方法检测脚本,虽然包含多种变体(".php", ".php5", ".php4", ".php3", ".php2", ".php1", ".html", ".htm", ".phtml", ".pht", ".pHp", ".pHp5", ".pHp4", ".pHp3", ".pHp2", ".pHp1", ".Html", ".Htm", ".pHtml", ".jsp", ".jspa", ".jspx", ".jsw", ".jsv", ".jspf", ".jtml", ".jSp", ".jSpx", ".jSpa", ".jSw", ".jSv", ".jSpf", ".jHtml", ".asp", ".aspx", ".asa", ".asax", ".ascx", ".ashx", ".asmx", ".cer", ".aSp", ".aSpx", ".aSa", ".aSax", ".aScx", ".aShx", ".aSmx", ".cEr", ".sWf", ".swf", ".ini"),但可能遗漏新的危险扩展名(如.htacess等)。

<?php
// 初始化上传状态和消息变量
$is_upload = false;  // 标记文件是否上传成功
$msg = null;         // 存储上传过程中的错误信息// 检查用户是否提交了表单(点击了上传按钮)
if (isset($_POST['submit'])) {// 检查上传目录是否存在if (file_exists(UPLOAD_PATH)) {// 定义禁止上传的文件扩展名黑名单(包含各种大小写变体)$deny_ext = array(".php",".php5",".php4",".php3",".php2",".php1",  // PHP相关扩展".html",".htm",".phtml",".pht",                   // HTML相关".pHp",".pHp5",".pHp4",".pHp3",".pHp2",".pHp1",   // PHP大小写变体".Html",".Htm",".pHtml",                          // HTML大小写变体".jsp",".jspa",".jspx",".jsw",".jsv",".jspf",".jtml",  // JSP相关".jSp",".jSpx",".jSpa",".jSw",".jSv",".jSpf",".jHtml", // JSP大小写变体".asp",".aspx",".asa",".asax",".ascx",".ashx",".asmx",".cer", // ASP相关".aSp",".aSpx",".aSa",".aSax",".aScx",".aShx",".aSmx",".cEr", // ASP大小写变体".sWf",".swf",                                    // Flash文件".ini"                                            // 配置文件);// 获取上传文件名并处理$file_name = trim($_FILES['upload_file']['name']);  // 去除首尾空格$file_name = deldot($file_name);    // 删除文件名末尾的点(防止file.php.绕过)$file_ext = strrchr($file_name, '.');  // 获取文件扩展名(从最后一个点开始)$file_ext = strtolower($file_ext);     // 转换为小写统一比较$file_ext = str_ireplace('::$DATA', '', $file_ext); // 去除NTFS备用数据流::$DATA$file_ext = trim($file_ext);           // 去除扩展名首尾空格// 检查扩展名是否在黑名单中if (!in_array($file_ext, $deny_ext)) {// 获取上传临时文件路径$temp_file = $_FILES['upload_file']['tmp_name'];// 构造目标路径(直接使用原始文件名,存在安全隐患)$img_path = UPLOAD_PATH.'/'.$file_name;// 移动上传文件到目标位置if (move_uploaded_file($temp_file, $img_path)) {$is_upload = true;  // 标记上传成功} else {$msg = '上传出错!';  // 文件移动失败(可能是权限问题)}} else {$msg = '此文件不允许上传!';  // 文件类型被禁止}} else {$msg = UPLOAD_PATH . '文件夹不存在,请手工创建!';  // 上传目录不存在}
}
?>

由于.htaccess后缀的文件本关卡没有在黑名单种,故而可以通过上传.htacess文件利用文件解析规则绕过,举个例子,.htaccess文件内容如下所示。

<FilesMatch "test4.jpg">SetHandler application/x-httpd-php
</FilesMatch>

在将.htaccess文件上传到服务器后,再上传一个test4.jpg文件(文件内容为php脚本),服务器会将test.jpg当作test4.php文件解析再进行访问。总之,虽然在本关卡中不能上传.php后缀的文件,但是可以通过先上传.htacess文件,再上传满足.htacess的图片文件,这样即可通过上传此2个类型文件达到绕过服务器的过滤规则的目的。 

三、php ts版本安装

详细很多使用phpstudy搭建靶场的网安人参考upload-labs靶场攻略却无法复现成功,为何PHPStudy中AddType application/x-httpd-php,以及.htacesss渗透方法等Apache命令之所以在Apache的设置文件中设置后未实现目标效果呢,这是由于PHP的版本不符导致的,但注意这里的PHP版本并不是指PHP7.3.0、PHP7.4.0这种版本号,也不是适用于32位的PHP、适用于64位的PHP这种不同机型的版本,而是PHP的NTS(Non Thread Safe)与TS(Thread Safe)的这种不同版本导致的。如下所示,当前phpstudy中点击软件管理,我们查看php软件都是nts版本,故而如果像渗透成功,需要安装TS版本的PHP,并在Apache中配置好相关设置。

将ts版本的php软件集成到phpstudy,步骤如下所示。 

1、下载ts版本php

在php官网下载ts版本的php软件,官网地址如下所示。

https://windows.php.net/download

以php7.30为例,下载过程要选择ts版本(即thread safe),具体如下图黑框所示。 

2、放入到phpstudy指定文件夹中

将下载解压后的ts版本php放到小皮的指定目录中,即“Extensions\php”子目录中,具体如下所示。

3、修改php配置文件

进入到php_7.3.30_t文件夹内,找到php.ini-development文件,复制黏贴一份并改名为php.ini。

4、修改php.ini文件

打开php.ini,找到extension_dir,并把前面的";"符号删掉(在php.ini相当于注释符),其值改为"PHP文件的路径/ext"。

;extension_dir = "D:/phpstudy_pro/Extensions/php/php-7.3.30ts/ext"

修改后如下所示,记得修改后保存文件。

5、修改httpd.conf文件

(1)定位文件

接下来在PHPStudy安装Apache的目录下,打开Apache的配置文件httpd.conf,以我的安装目录为例,httpd.conf的位置如下所示。

D:\phpstudy_pro, httpd.conf在D:\phpstudy_pro\Extensions\Apache2.4.39\conf

 也可以通过phpstudy-设置-httpd.conf找到该文件,具体方法如下所示。

(2)修改文件

为例防止将httpd.cofn改坏了,建议先把httpd.conf备份一份,以后更换时直接替换就好。搜索LoadModule,找到有很多LoadModule语句的地方。

.在末尾加上LoadModule php7_module "PHP文件的路径/php7apache2_4.dll"和PHPIniDir "PHP文件的路径"。

LoadModule php7_module "D:/phpstudy_pro/Extensions/php/php-7.3.30ts/php7apache2_4.dll"
PHPIniDir "D:/phpstudy_pro/Extensions/php/php-7.3.30ts"

修改后效果如下所示,注意需要保存文件。

6、重启小皮

完成修改配置文件后,需要重启服务生效,如下所示。

7、切换ts版本php 

通过首页-网站-管理-php版本-切换到php-7.3.30ts,将php切换为ts版本的php服务。

四、渗透实战

1、构造.htacess文件

2、构造图片文件

构造图片文件test4.jpg,内容为显示phpinfo的信息,具体如下所示,后缀为。

<?php
phpinfo();
?>

3、上传.htacess和图片文件

打开upload靶场的第四关,将.htacess和test4.jpg文件,如下所示两个文件都上传成功。

http://127.0.0.1/upload-labs/Pass-04/index.php

4、获取图片地址

鼠标右键点击上传成功的反馈框,获取到图片的URL地址,具体如下所示。

http://127.0.0.1/upload-labs/upload/test4.jpg

5、访问脚本

复制图片地址到URL地址栏并访问,显示php版本号就是上传成功,.hatcess绕过成功,文件成功上传到upload目录下了

http://www.dtcms.com/wzjs/53666.html

相关文章:

  • 网上有做衣服的网站有哪些seo优化推广业务员招聘
  • 做网站时的注册权起到什么作用网站在线生成app
  • 梦想小镇旅游官方网站建设seo综合查询站长工具关键词
  • 做网站的公司面试网站建设解决方案
  • 长沙公司做网站seo分析报告
  • 深圳做棋牌网站建设哪家技术好搜索引擎优化的内容
  • 网站建设实现后台数据导出excel武汉网站营销seo方案
  • vs2013做网站百度经验官网首页
  • 参考文献 教学网站建设今日新闻简讯30条
  • 唐山专业网站建设广州seo外包公司
  • 初学者学做网站怎么学seo网络推广什么意思
  • 农业推广学搜索引擎优化的简称
  • 网站系统建设凡科建站app
  • 网站表格怎么做徐州seo推广优化
  • 做网站的软件著作权你就知道首页
  • 夫唯徒弟做外贸服装批发的seo案例 用wp做的网站怎么创建公司网站
  • 做网站投入市场营销四大分析方法
  • seo建站是什么百度荤seo公司
  • 知名网站制作案例b2b有哪些电商平台
  • 网站banner作用品牌推广策划方案
  • 网站导航条图片素材一个新品牌如何推广
  • 做旅游网站的方法网站策划方案范文
  • 网站建设实训报告册找谁做百度关键词排名
  • php动态网站开发优势电工培训内容
  • 手机做网站服务器吗网络营销的方式有几种
  • 泰国做网站餐饮店如何引流与推广
  • 北京专业网站制作介绍奉节县关键词seo排名优化
  • 网站制作技术支持济南网站制作平台
  • 景安vps如何搭建wordpressseo知名公司
  • 深圳做网站 信科便宜威海网站制作