尧图精选

文件上传及其防范

🕒 发布时间:2026/10/1 7:23:24 📁 来源:尧图网络
写一句话 PHP 木马?php eval($_POST[pass]);?eval()执行传入的 PHP 代码pass连接密码蚁剑 / 菜刀用 POST 提交参数上传木马文件Low 级别直接上传shell.phpMedium抓包修改Content‑Type绕过 MIME 检测或者修改文件名后缀绕过High制作图片马文件头加上 GIF 标识GIF89a?php eval($_POST[pass]);?保存为shell.jpg让服务器解析执行木马关键上传成功不等于拿 Shell两种执行方式1直接访问如果上传目录允许 PHP 解析直接浏览器访问http://xxx/hackable/uploads/shell.php2配合本地文件包含 LFI 漏洞上传图片马 / PHP 马用?page../../hackable/uploads/shell.jpg文件包含把图片当作 PHP 代码解析执行。连接 WebShell使用蚁剑URL填写触发木马的完整访问地址直接访问地址 / LFI 漏洞地址密码pass连接成功后就可以浏览服务器文件、读写文件、执行系统命令、提权。攻击要点①上传只是把文件写到服务器磁盘②必须让 Web 服务器把这个文件当作脚本解析执行才会得到 webshell如果上传目录禁止执行脚本就算上传 php 木马也只能下载不能运行。二、安全措施生产环境防护重点 4 大核心1. 文件后缀使用白名单拒绝黑名单✅白名单只允许业务需要的后缀例如仅允许jpg,png,gif不在列表直接拒绝。❌不要黑名单禁止 php、php5、phtml变种后缀无穷无尽黑名单防不住绕过。2. 校验文件真实内容不要只看文件名读取**文件幻数文件头**判断真实文件类型防止改后缀的图片马。gifGIF89ajpg\xFF\xD8\xFFpng\x89PNG图片二次渲染对上传图片重新压缩生成新图片清除图片内部嵌入的 PHP 代码干掉图片马。只检查文件名可以上传伪装成图片的 php 木马。3. 重命名文件丢弃用户原始文件名用户提交的文件名完全不可信。服务器生成随机文件名例如a2f3bc7d9.jpg不要保留用户上传的shell.php.jpg。过滤特殊字符.. / \ %00 ;防止路径穿越、00 截断、解析漏洞绕过。4. 上传目录关闭脚本执行权限【非常关键】Web 服务器配置上传文件夹关闭 PHP 脚本解析。即使攻击者成功上传 php 木马放到这个目录也只会被当作普通文件下载不会执行代码。Apache 配置示例Directory /var/www/html/upload php_admin_flag engine off /Directory5. 其他辅助加固MIME‑Type 请求头仅做辅助判断不能作为唯一校验抓包可以篡改。文件存储隔离上传文件存放到 OSS 或者独立目录尽量不放在网站 web 根目录。限制上传文件大小。访问上传文件增加鉴权不能直接通过文件名可控访问。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →