V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ic3z
V2EX  ›  信息安全

Vite 开发服务器路径遍历漏洞(CVE-2025-30208)

  •  
  •   ic3z · 31 天前 · 4053 次点击

    描述

    前端构建工具 Vite 在 6.2.3 、6.1.2 、6.0.12 、5.4.15 及 4.5.10 之前的版本存在安全漏洞。

    正常情况下 @fs 仅允许访问 Vite 服务白名单内的文件,但通过在 URL 后添加?raw??或?import&raw;??参数可绕过限制,返回目标文件内容(若存在)。

    该漏洞成因在于多处代码虽移除了尾部分隔符(如?),但未在查询字符串正则表达式中进行相应处理,导致可读取任意文件内容并返回至浏览器。

    仅当应用显式将 Vite 开发服务器暴露至网络(使用--host 参数或配置 server.host 选项)时才会受影响。该问题已在 6.2.3 、6.1.2 、6.0.12 、5.4.15 和 4.5.10 版本中修复。

    影响

    黑客只需在 URL 中加上魔法咒语"?raw??"或"?import&raw;??",就能绕过 @fs 访问限制,轻松读取你的.env 、API 密钥、.bash_history 甚至那些"绝对不能让人看到"的配置文件!

    没错,你的命令历史和各种密钥可能正在向陌生人招手!

    修复建议

    将 Vite 升级到已修复的版本:6.2.3 、6.1.2 、6.0.12 、5.4.15 或 4.5.10

    如非必要,不要使用--hostserver.host配置选项将开发服务器暴露在网络上

    参考

    https://github.com/advisories/GHSA-x574-m823-4x7w

    25 条回复    2025-03-28 16:43:05 +08:00
    zeroskylian
        1
    zeroskylian  
       31 天前
    之前是 next 现在是 vite ,看来用前端开发服务器还是差点意思, 不是那么完美
    zhengfan2016
        2
    zhengfan2016  
       31 天前 via iPhone   ❤️ 2
    看清楚啊,是开发服务器,又不是生产服务器
    @zeroskylian
    zeroskylian
        3
    zeroskylian  
       31 天前
    @zhengfan2016 #2 刚上班, 脑子没转过来
    wangtian2020
        4
    wangtian2020  
       31 天前
    多大点事儿
    paopjian
        5
    paopjian  
       31 天前
    需要用 vite 做服务器,还要开放到公网, 不过这玩意是咋发现的, 真离谱
    Linho1219
        6
    Linho1219  
       31 天前 via Android
    @paopjian 前段时间 esbuild 的开发服务器也爆了个漏洞好像,挺奇妙的
    xuemian
        7
    xuemian  
       31 天前
    我的扫描器昨天晚上已经发布了
    https://github.com/xuemian168/CVE-2025-30208
    支持 FOFA 自动化和手动操作
    KinBob
        8
    KinBob  
       31 天前
    这个名字起的不好,有歧义
    Vegetable
        9
    Vegetable  
       31 天前
    总有聪明的懒蛋觉得开发服务器也能用来部署
    Nldgdsm
        10
    Nldgdsm  
       31 天前
    @xuemian #7 有点好奇为什么你的 poc 没有别的 POC 的 star 高,明明你的发布时间更早 难道是语言的问题么
    jenson47
        11
    jenson47  
       31 天前
    首先对外的服务器,第一件事就是对端口进行控制,最好就是能不暴露就不暴露,
    如果只是内部使用,可以试试 零信任,或者 ssh 隧道。
    开发的话,可以用 vscode 远程开发插件
    jaylee4869
        12
    jaylee4869  
       31 天前
    5 分,不太高。毕竟仅仅是 dev server 。真有小白用 dev server 作为 prod hosting 的话,只能说是 skill issue 了。
    sn0wdr1am
        13
    sn0wdr1am  
       31 天前
    用的 Nuxt ,没发现这个问题。
    xuemian
        14
    xuemian  
       31 天前
    @Nldgdsm 大概率是的,而且我的 POC 明显更完善。还有一个原因可能是 TOP1 自带流量
    weijancc
        15
    weijancc  
       31 天前
    内容太夸张了, vite 都是本地开发用的, 根本没有什么隐患
    xuemian
        16
    xuemian  
       31 天前
    @weijancc 其实公网上很多这种情况
    imba97
        17
    imba97  
       31 天前
    @zeroskylian 笑死,刚上班的状态确实是这样的
    liubaicai
        18
    liubaicai  
       31 天前
    哈哈,不排除有人用 vite 起个 npm run dev 跑服务
    dyq917
        19
    dyq917  
       31 天前
    屁大点儿事,一惊一乍,像个菜鸡
    HTML001
        20
    HTML001  
       31 天前
    这玩意儿不是本地开发阶段才用的吗,有人把这个东西上生产?
    lp4298707
        21
    lp4298707  
       31 天前
    什么鬼?意思是会有人在服务器上跑 npm run dev 供外网访问?
    yhxx
        22
    yhxx  
       31 天前
    @lp4298707 真有。。。我有个前同事就干过,npm run dev 然后 nginx 代理这个端口,就这么跑着。。。
    tcper
        23
    tcper  
       31 天前
    vite 这个基本没人 run dev 跑在服务器上,但是 nextjs 之前那个就是推荐 next start 这种命令跑在服务器上的
    leokun
        24
    leokun  
       31 天前
    这还是有点影响的
    有很多人都有公网 IP ,如果端口全漏, 在开发的时候一个不注意被人扫到就随便拿你电脑的文件了
    而且 vite 有 nodejs api,这个可能有一些 node 服务会用到 https://cn.vite.dev/guide/api-javascript
    也是很危险的
    CinHaiZio
        25
    CinHaiZio  
       30 天前
    @liubaicai 还真有, 之前闲鱼买汉堡王的时候卖家发来 ip:5174 的地址让我在里面点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   931 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 21:33 · PVG 05:33 · LAX 14:33 · JFK 17:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.