任天堂NEX服务UnicodeToUtf8栈溢出漏洞分析

该报告详细披露了任天堂NEX服务中UnicodeToUtf8函数存在的栈溢出漏洞,影响3DS、Wii U和Switch平台。攻击者可利用该漏洞实现远程代码执行或导致游戏崩溃,漏洞利用涉及ASLR绕过和ROP链构建技术。

NEX: UnicodeToUtf8栈溢出漏洞

漏洞概述

在匹配对战过程中,任天堂游戏将IP地址发送至游戏服务器,服务器将其转发给其他主机以协助NAT穿越。接收主机需要将IP地址从平台特定编码转换为UTF-8格式。在3DS、Wii U和Switch平台上,负责该转换的函数存在栈溢出漏洞。

影响分析

  • Switch平台: 攻击者可导致受害者主机游戏崩溃,若成功绕过ASLR防护可实现远程代码执行
  • 3DS/Wii U平台: 由于缺乏ASLR保护,攻击者可通过ROP链直接实现远程代码执行
  • 攻击规模化: 基于NAT遍历的实现机制,攻击者可请求服务器同时向多台主机发送攻击载荷

修复方案

通过在服务器端转发前验证IP地址的有效性,已成功修复该漏洞。

时间线

  • 2018年12月19日: 研究人员kinnay提交漏洞报告
  • 2018年12月21日: 任天堂员工tattsun确认漏洞
  • 2019年1月7日: 标记为重复报告
  • 2023年4月17日: 严重等级调整为无
  • 2024年3月27日: 请求公开披露
  • 2024年5月1日: 双方达成披露共识
  • 2025年6月27日: 正式公开披露

技术参数

  • 弱点类型: 栈溢出(Stack Overflow)
  • CVE编号: 无
  • 赏金状态: 隐藏
  • 验证状态: 研究人员已完成身份验证和背景调查
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计