type
status
date
slug
summary
tags
category
icon
password
Abstract
虚拟现实(VR)可以为用户提供元宇宙中的敌意体验。虚拟现实最有前景的特性之一是,用户的身份可以通过将他们的物理世界外观更改为任意的虚拟化身来保护。然而,最近提出的去匿名攻击证明了识别VR化身伪装背后的用户身份的可行性。
在本文中,我们提出了AvatarHunter,一种基于受害者固有的运动信号性质的非侵入性和用户无意识的去匿名攻击。AvatarHunter在不需要任何许可的情况下,通过在VR场景中录制多个视图的视频,不知不觉地收集受害者化身的步态信息。我们设计了一个基于Unity的特征提取器,可以在不受化身外观变化影响的情况下保留化身的运动特征。现实世界的实验是在VRChat中进行的,VRChat是最受欢迎的VR应用程序之一。实验结果表明,AvatarHunter在封闭世界和开放世界的化身设置中分别能获得92.1%和66.9%的攻击成功率,这两种设置都比现有的作品要好得多。
Introduction
Related Work
关于VR隐私问题目前的工作:
最近的两项研究从流量分析[8]和基于侧信道的去匿名化的角度调查了VR中的隐私泄露年龄问题。具体而言,前者分析了源自MetaOculus Quest VR设备的流量有效载荷,并表明受害者的身份可能会泄露给恶意的VR开发者。
而后者则试图通过利用恶意应用程序从耳机显示器获取加速度和陀螺仪数据并进行用户识别,在VR中进行去匿名化攻击
Intro
在这项研究中,我们提出了AvatarHunter,这是第一个实用的去匿名攻击(nb),旨在从虚拟世界中对方化身的运动行为中揭示目标受害者的身份。AvatarHunter不需要入侵受害者的网络,也不需要注入恶意应用程序。
首先,AvatarHunter采用了一种新的攻击者,只需要记录目标受害者在开放的虚拟世界中行走时的视频片段,就可以推断受害者化身背后的身份。基于以下观点:在元宇宙中,无论化身发生什么变化,受害者固有的、独特的运动模式(即本研究中的步态信息)保持相对稳定。
Challenge
为了实现AvatarHunter,我们需要解决以下三个关键挑战:(1)如何将用户在物理世界中的身份链接到她在虚拟世界中的化身,以稳定可靠的方式进行去匿名化?
(2) 如何提取一个有效的特征来表征受害者的唯一身份签名,并对化身的变化具有鲁棒性?请注意,在处理步态视频片段时,现有的基于计算机视觉的步态识别方案基于运动和外观特征,其中后者是不稳定的,因为虚拟外观经常发生变化。
(3) 考虑到AvatarHunter是第一个将虚拟现实中的化身和真实世界身份联系起来的非侵入性和用户非自愿匿名攻击,而且目前还没有公开的数据集,我们如何在现实世界的虚拟现实应用程序中实现AvatarHunt并展示其有效性和稳健性
Our Work
为了应对上述三个挑战,我们首先引入了一种新的生物特征签名,即movement签名,将受害者在物理世界中的身份与虚拟世界中的行为联系起来。我们通过一个动机例子进一步验证了它在可变化身设置下的可行性和鲁棒性。
其次,考虑到现有的基于视频的用户识别方案,这些方案集中于物理世界中的步态样本,对化身多变的外表引起的失真很敏感,我们在提取运动特征时设计了一个新颖的特征提取器。他们的权利是让提取器拥有关于各种化身的先验知识。为了实现这一点,我们利用开发VR应用程序的最大平台Unity,从各种化身中自动生成丰富的步态视频。在基于源自Unity中各种化身的大量步态视频构建特征提取器后,AvatarHunter可以对化身的外观变化免疫。
最后,在拥有400万用户的最受欢迎的VR应用程序之一VRChat上实现AvatarHunter。我们部署了多个VR账户来记录步态视频试验,其中包含100个志愿者化身对(即,10名招募的志愿者具有10个不同的化身)。
实验结果表明,AvatarHuntercan在封闭世界和开放世界化身设置中的攻击成功率分别为92.1%和66.9%。AvatarHunter对各种因素都很稳健,包括摄像机的数量、输入视频的长度和目标受害者的先验知识。我们的主要贡献总结如下
Preliminaries
Multi-user VR Application Framework
随着虚拟现实技术的普及,虚拟现实应用吸引了越来越多的用户参与。VR平台为参与者提供各种场景、动画和通信功能。为了保证虚拟世界中用户的个性化,目前的多用户VR应用框架采用了avatar机制。如图1(a)所示,在多用户VR应用场景中,客户端用户首先在VR设备的辅助下进入虚拟世界。然后,用户可以在VR应用程序中进行包括聊天、移动和游戏在内的各种动作。为了保护用户的身份并增加娱乐性,VR平台允许用户将自己转换成各种化身,以隐藏自己的真实外表。此外,用户还可以更改声音以提高匿名性
VR Device
消费市场上有很多VR设备。为了改善用户的交互体验,当前流行的VR设备(如Meta Quest 2、HTC VIVE pro 2)不仅配备了通用传感器(如陀螺仪、加速器),还配备了人机交互传感器(如控制手柄)
在本研究中,我们选择了一款名为Meta Quest 2的特定单机设备作为研究对象。Quest由Meta开发,Meta拥有全球90%的VR耳机市场。它由一个执行计算的片上系统(SoC)、一个显示视觉内容的LCD、一个通过语音通道与人类交互的麦克风-扬声器对组成。Quest不仅支持官方商店的VR应用程序,还支持第三方VR应用程序平台(如Steam VR、SideQuest)的游戏。此外,Quest可以连接到笔记本电脑/台式机,并为开发者提供其LCD屏幕的视图(即用户观看的视图),用于游戏视频录制或应用程序调试
Workflow of Avatars in VR Applications
如图1(b)所示,用户可以利用化身来改变他们的外表,并在虚拟世界中隐藏他们的真实世界身份。
(1) 化身生成过程:在大多数VR应用程序中,化身是基于由三个步骤组成的骨架动画机制生成的。
- 设计化身模型:设计师首先绘制化身的静态人物草图,然后在三维虚拟空间中创建由丰富的网格结构组成的相应模型。
- 建筑骨架结构:对于生成的化身三维模型,定义骨架以执行动作。化身的骨骼具有父子结构,可以看作是化身在动作期间的骨骼和关节。更具体地说,当父节点移动时,子节点将根据映射规则执行相应的移动。
- 绘制骨骼和皮肤:皮肤是虚拟世界中化身的外观。在构建骨骼后,确定与骨骼相关的皮肤特性(例如,位置、颜色、材料、装饰物)。当化身的骨骼移动时,皮肤将生成相关的移动
(2) 将虚拟现实的传感器数据映射到化身动作:与传统的桌面应用程序不同,在传统的台式应用程序中,用户的输入设备是键盘和鼠标,在虚拟现实场景中,化身的动作与用户的身体运动行为高度耦合。在用户玩VR应用程序期间,从配备的VR头盔和控制器手柄收集的数据被映射到化身的骨架。然后,由运动数据驱动骨架,并在虚拟世界中渲染其相关的皮肤。
(3) VR应用程序开发平台:几个平台帮助VR开发者快速生成和激活化身。Unity是开发60%流行VR游戏的典型平台。Unity还允许开发人员设置VR应用程序的虚拟场景,并在基于C#的程序控制化身的虚拟形象。
Attack Overview and Motivation Example
Attack Model and Adversary Capabilities
(1) 攻击模型:
图2展示了AvatarHunter的典型攻击场景。受害者正在玩虚拟现实游戏(例如,虚拟现实聊天[3]),并将她的外表转化为化身。与此同时,对手还登录受害者播放的同一个VR应用程序,并开始通过录制VR设备屏幕上显示的视频来监控受害者的行为。由于对手可以在没有受害者参与的情况下进行录音程序,受害者无法识别并相信她的身份隐藏在化身后面。然而,从对手的角度来看,在完成对受害者视频片段的收集后,对手可以基于提取的与受害者身份相关的生物特征发起去匿名化攻击
2) 对抗者的能力:
我们假设AvatarHunter中的对手在攻击准备和实施阶段具有两种能力。
攻击准备阶段:获取化身的视频带身份标签(即图库构建)。众所周知,在去匿名化攻击中,对手必须提前获取受害者的先验知识,如视频剪辑和身份标签。请注意,在实践中,有几种方法可以获得受害者的步态视频剪辑。例如,当目标受害者在昵称中显示自己的身份时,对手可以主动记录受害者化身行走的视频。攻击者可以从受害者的社交网络内容中获取此类视频片段。在本研究中,我们将预先收集的视频片段视为gallery
攻击实施阶段:在没有身份标签的情况下录制化身的视频。对手可以作为目标受害者进入相同的VR应用程序并录制视频。请注意,录制视频不需要受害者的任何许可和批准。以流行的VR聊天应用程序VRChat为例。对手可以集中注意力在受害者并记录视线视图(即记录Quest的LCD屏幕的内容或桌面上的远程同步)。此外,为了避免受害者的怀疑,对手可以通过使用外观空洞的化身(即化身变得不可见)将自己转变为隐形相机
Motivation Example
当受害者选择具有各种外表的化身来隐藏他们的身份时,有可能将他们固有的运动特征与他们的身份联系起来
在案例研究中,招募了两名志愿者(即userA和userB),并要求他们登录VR应用程序(即VRChat)。首先,这两名志愿者使用同一个化身(即avatarX)行走几秒钟,同时我们部署虚拟相机来记录他们的步态视频。图3(a)和图3(b)说明了收集的视频帧及其提取的步态能量图像(GEI),这些图像是表征人类行走特性的表示。可以观察到,即使两个用户在VR中的外观相同,但他们不同的步态行为也会导致他们的GEI存在显著差异,如图所示。然后,用户使用另一个化身(即,avatarY)并再次行走。图3(c)显示了收集的视频帧和GEI。我们观察到,在这种情况下,GEI与用户BemploysavatarXand与红色矩形中显示的用户A的GEI非常不同时的GEI相似(尽管略有不同)。因此,AvatarHunter 可行的
Closed-world and Open-world
场景1:封闭世界化身设置。在发动攻击之前,对手收集受害者的步态视频(图库),其中使用了一组几个化身。然后,受害者隐藏她的外部信息(例如昵称),并将她的头像更改为画廊内的其他步态。对于疏忽,目的是在观察新到达的步态视频剪辑后识别受害者的身份。
场景2:开放世界头像设置。在这种情况下,受害者可以隐藏她的外部信息,并在封闭的世界环境中利用画廊外的anovelavatar。与场景1相比,AvatarHunter更难获得真实世界的身份,因为预先收集的Gallery不包含关于受害者在这个新化身中步态行为的先验知识。请注意,如第III-A节所述,我们假设对手可以在调查收集的视频片段后了解受害者使用的新奇化身的详细信息。
Design of AvatarHunter
AvatarHunter由四个模块组成:攻击初始化模块、数据预处理模块、基于Unity的特征提取模块和身份识别模块。
Attack Initialization Module
AH在实施去匿名化攻击之前就已经构造了gallery,然后在受害者使用VR应用时,AH会不可觉察地收集视频切片。
1) 攻击准备期间的图库构建:如第III-A节所述,构建图库是去匿名化攻击的关键,因为没有它,AvatarHunter就不知道目标受害者的身份。在本研究中,为了建立画廊,对抗者的一种常见方法是登录受害者所在的VR应用程序,暴露他们的身份,以获得步态视频剪辑和身份标签。最后,AvatarHunter在发起去匿名化攻击之前,收集了一个包含目标受害者的多个用户的Gallery。
Gallery中的元素可以表示为三元组〈VG,i,AG,i,IG,i〉,其中VG,i是收集的视频片段,AG,i是该视频中使用的化身,IG,i是画廊成员的身份
2) 在虚拟世界中录制受害者的视频:对于目标受害者,在建立画廊后,AvatarHunter使用相机在VR应用程序中收集她的动作视频片段。如图5所示,受害者进入VR应用程序,并通过匿名提供外部信息(如昵称、用户档案)和使用各种化身来隐藏自己的身份。AvatarHunter使用NV帐户登录VR应用程序,按照第III-A节和图2所述的方式使用NV个视角监控受害者的行为。此外,为了在不易察觉的情况下录制视频,AvatarHunter将Vavatar的外观设置为不可见。如图5所示,收集到的视频包含NV个视角,可以表示为步态视频V={V1,V2,··,VNV},其中Vi表示来自第i个不可见相机的视频。此外,Vi包含 M=T×S帧,其中T是记录持续时间,S是每秒帧数
Data Pre-processing Module
为了提高去匿名性能,AvatarHunter在将收集到的视频集合V发送到下一个模块之前对其进行预处理。
(1)背景消除:对于给定的M×NV帧的视频trial V,为了消除VR应用背景在提取运动特征时的失真,AvatarHunter首先消除了这些框架的背景,只保留了与化身移动相关的信息。
首先,对于具有特定视角的视频,AvatarHunter收集了一个背景图像BI(其中受害者的化身在数据收集步骤中没有停留)。
然后,在收集到的BI的基础上,针对视频中的每一帧,AvatarHunter使用Lin等人提出的背景抠图方案。以获得其相应的轮廓。最后,对于集合的V,AvatarHunter得到了一个尺寸为M×NV的剪影序列,每个元素为sij=BE(vij.BI)
vij为某个视角的(所有)视频中的某个帧的相应剪影,BE为背景消除操作。因此,执行这个预处理方案后,受害者avatar的运动行为会明显暴露
(2)多视角数据聚合:
AvatarHunter使用多个摄像头来收集多样性更强的数据,以提高去匿名攻击的性能。因此,AvatarHunter将来自多视图的数据聚合为下一个模块的输入。
由于多个摄像头有不同的位置、视野和角度,AvatarHunter需要统一处理不同摄像头的剪影。给定剪影sij,AvatarHunter首先计算其质心cij。然后,AvatarHunter切割了sij的边缘,以获得cij位于中心的新的s‘ij。
为了证明利用多个相机可以提供更细粒度的信息,我们计算了GEI基于剪影{s'ti}
如图5所示,部署多个摄像头可以提供化身运动所反映的多样化信息。例如,当部署NV=4相机时,从正面的角度,我们可以观察到腿部运动的存在,但只有从侧面的角度(即左右相机的GEI)才能清楚地标记出腿部运动的幅度。最后,对于收集到的尺寸为M×NV的视频数据V,AvatarHunter利用预处理的轮廓S′作为特征提取模块的输入,S′可以表示为一个MxN_v的矩阵
基于Unity的特征提取模块
在对收集的视频轨迹进行预处理后,AvatarHunter需要从受害者化身的步态中获得特征,以进行最终身份推断。请注意,为了表征步态特征,现有的基于视频的步态特征提取器(例如,GaitSet)通常利用深度学习模型,这些模型是使用公共步态视频数据集(CASIA B步态数据集)预训练的。
然而,这些用于训练的用户步态是在物理世界中收集的(即,没有使用任何化身,并且不同真实人类志愿者的出现差异很大),而不是在虚拟世界中。因此,当将现有特征提取器应用于输入S′时,提取的生物特征签名包含外观和运动签名,其中前者在改变化身时是不稳定的。
图6(a)可视化了GaitSet提取的特征,GaitSet是本研究中的基准特征提取器,当三名志愿者使用三个不同的化身时。请注意,使用t-分布式随机邻居嵌入(t-SNE)方法[30]将特征投影到2D空间中。观察到,由基准标记提取器提取的特征是根据化身的外表而不是志愿者的运动特征来聚类的。(简单来说,使用现实的分类器GaitSet会造成按照Avatar分类而非用户)
为了应对化身多变的外表所带来的挑战,如图7所示。在特征提取器的预训练过程中,我们没有使用在物理世界中收集的公共步态数据等,而是在自己构建的虚拟世界中使用步态数据集。在我们的VR步态数据集中,按照第II-C节中描述的步骤,在Unity平台中由用户的运动数据设计和驱动各种化身。因此,重新训练的方案可以专注于化身背后的身份,因为它事先知道用户在各种化身外观下的运动特征。详细步骤如下所示。
- Unity平台中的化身构建:在Unity平台形式中,AvatarHunter构建了出现在gallery的NA个化身,表示为A={a1,a2,··,aNA}。对于目标avatar ai,如果它是开源的,我们可以直接将其源文件(例如.FBXfile)导入Unity平台。否则,我们将在Unity使用流行的3D角色制作工具MakeHuman来设计闭源avatar ai。
- 步态视频剪辑生成:为了在Unity中激活化身的运动,我们使用Blender将人类行走过程中收集的传感器数据映射到化身的骨骼运动中。
本研究中的传感器数据是从第三方CMU CoMap数据集[33]中选择的,该数据集利用41个接触式传感器在运动过程中跟踪参与者。由于AvatarHunter是基于受害者的步态信息,我们只从CMU-CoMap中选择了涉及29名进行行走行为的参与者的NM=136个行走样本的传感器数据。eNMmotion数据样本被定义为M={m1,m2,··,mNM}。此外,我们在Unity中修改了化身的骨骼,以符合传感器数据。为了从多个视图录制视频片段,我们部署了八台摄像机,化身和摄像机之间的角度设置为0◦,72◦,90◦,144◦,180◦,216◦,270◦, 288◦分别地最后,在将NMsensor数据应用于库中的NA化身后,我们完全生成了NM×NA八视图视频。如下所示:
Pij是一个有八个视角的视频,代表第i个动作数据 第j个avatar
- 特征提取器预训练:我们将生成的NM×NA八视图视频视为预训练数据集。请注意,数据集中的每个视频持续几分钟,这远远大于图库中的视频(例如,通常为几秒)。我们按照9:1的比例将预训练数据集划分为训练和验证组件。在预训练过程中,视频片段将被转换为剪影,如第IV-B节所述,我们将特征提取器的模型结构设置为与GaitSet相同。请注意,AvatarHunter的特征提取器可以接收具有任意相机视图的剪影,并输出具有统一维度的特征
- 从输入中提取特征:对于给定的采集等待视频TrialV及其预处理的剪影S′,如果画廊中存在V中的avatar,AvatarHunter将S′作为输入并获得特征F(封闭世界设置)。否则,在开放世界化身设置中,我们在Unity平台中添加虚拟 avatara',并重复上述三个步骤(从化身构建开始)。更新的预训练数据集可以表示为
最后,AvatarHunter从由P′pre预训练的更新的特征提取器中获得特征F
Identity Inference
最后,在从目标用户获得表征固有运动特征的特征F后,AvatarHunter基于galleryG生成分类器Ψ。然后,它确定特征F的身份
Gallery-based Classifier Generation
对于包含Nu个用户身份的galleryG,我们表示第i个元素Gi=〈VGi,AGi,IGi〉,其中VGi是视频切片,AGi∈{a1,a2,··,aNA}是avatar,IGi∈{u1,u2,·,uNU}是身份。为了构建分类器,AvatarHunter将G变换为G′,其中第i个元素Gi表示为:
G′i=H(Gi)=〈E(VGi),IGi〉
其中H(·)是变换运算,E(·)为第IV-C节中定义的特征提取函数。然后,我们遍历一个以G′为输入的随机森林,生成分类器Ψ。
Identity Recognition
最后,对于从V中提取的F,AvatarHunter利用Ψ来确定其身份如下:
Ψ(F)=J,其中J∈{u1,u2,··,uNU}。如果是受害者的真实身份,AvatarHunter成功地进行了去匿名攻击。
Evaluation
Evaluation Setup
评估设置实验条件。在这项研究中,我们评估了AvatarHunter在VRChat中的匿名性能,VRChat是一款为实时社交而开发的虚拟现实应用程序。实验招募了10名志愿者。如图8(a)所示,每个志愿者都需要佩戴Oculus Quest 2设备,然后进入VRChat。为了发起攻击,当志愿者在虚拟环境中行走时,在志愿者的前面、左边、右边和后面部署四个摄像头,同时录制视频。图8(b)显示了在给定时间从四个视觉视图获得的帧。在数据收集期间,每个志愿者被要求使用10个化身,如图8(c)所示,并在使用每个化身时行走10次。
数据集描述和度量。我们总共获得了10个用户×10个vatars×10个trials=1000个步态视频试验,其中每个试验包含4个不同视图的视频。对于每个视图,视频至少持续4.5秒,每秒30帧。在评估过程中,对于每个志愿者使用的每个化身,我们随机选择3个试验作为图库,其余7个试验作为AvatarHunter的测试数据集。因此,gallery和测试数据集分别有300次和700次试验。在实验中,我们选择攻击成功率(ASR)作为评估指标,该指标被定义为NSNT,其中NT是总攻击次数,NS是AvatarHunters成功揭示受害者身份的次数。
Overall Performance of AH
Discussion
对策
侦测VR中的可疑用户:对于AvatarHunter来说,在攻击阶段记录受害者化身的行为至关重要。因此,我们可以检测到可疑用户,他们将自己的见解集中在固定用户上,或者选择一个有空位的化身
将传感器数据映射到化身的运动时添加噪音:如第II-C节所述,化身的运动是由VR设备的传感器收集的数据驱动的。因此,通过在化身运动生成过程中有意将噪声添加到传感器数据中,使AvatarHunter提取关于目标受害者的运动特征的无意义信息是可行的。(This is What I concern)
受限访问控制:最直接的解决方案之一是增强VR应用程序的访问控制。对于对保密性要求很高的用户来说,他们只能和他们信任的用户分享他们的VR场景。然而,只有当用户可以控制他们的VR应用程序时,这种对策才有效(例如,用户是VRChat聊天室的管理员)。
限制+未来工作
1) 扩大包括具有非人形外观和更多用户的化身的数据集:在本研究中,仅研究了如图所示的人形化身。第8(a)段。然而,对于具有非人类适应性外观的化身,由于其骨架与人类骨架不同,特征提取器很难提取出人类运动特征。将类似动物的化身纳入基于Unity的特征提取模块,或提出更先进的技术都是潜在的解决方案,我们将其留给未来的工作
2) 不在库中的受害者:获取有关目标用户的先验知识是用户识别或身份验证方案的重要先决条件。在这项研究中,AvatarHunter建立了一个画廊,用于存储VR场景中受害者的化身步态信息。对于无法在VR中提取步态的用户来说,从他们在物理世界中的步态中提取特征是一个潜在的解决方案,我们将在未来进行研究。
3) 其他动作类型:在本研究中,我们只收集了受害者行走行为的视频,并提取了基于步态的特征。尽管步态是现有用户识别方案中最常用的特征之一,但用户可以在VR场景中进行其他动作(如跑步、投掷)。构建基于全球行动的去匿名攻击是一个很有前途的未来研究方向
4) 其他VR设备类型:对于HTC Vive Pro 2和Valve Index等其他VR设备,AvatarHunter也应该工作,因为它们的工作原理与我们评估中的Questused相同。此外,通过将先进的全身跟踪和手势跟踪传感器集成到VR设备中,AvatarHunter有望实现更有效的性能,这将在未来进行研究
- Author:faii
- URL:https://www.faii.top/article/e9219bfe-0a9e-4443-88a6-364f7a7c9f26
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts