ctf web方向与php学习记录17之文件上传
ctf web方向与php学习记录17之文件上传
以我目前的见识来说,文件上传就是将木马植入服务器,获取权限,拿到flag的一类题型。
这里以ctfhub的题目为例,介绍所接触题目的相关原理。
首先是前端验证,由于网上都有详细的wp,在此不过多介绍。
JavaScript 表单验证
JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。
被 JavaScript 验证的这些典型的表单数据有:
用户是否已填写表单中的必填项目?
用户输入的邮件地址是否合法?
用户是否已输入合法的日期?
用户是否在数据域 (numeric field) 中输入了文本?
可以选择修改后缀名的方法,也可以把js禁用,然后再上传一句话木马。
接下来是.htacess
.htaccess是一个纯文本文件,存放着一些apache指令,与httpd.conf类似,但作用范围仅限当前目录。
.htaccess是在用户访问该目录下的站点时加载的,不需要重启apache服务进行载入,更灵活但更耗系统资源。
.htaccess文件(或者"分布式配置文件"),全称是Hypertext Access(超文本入口)。提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。
管理员可以通过Apache的AllowOverride指令来设置。<