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

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

  •  
  •   ic3z · 4 天前 · 3394 次点击

    描述

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