Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash/AS3是否处理RTLO和RTLE Unicode字符?_Flash_Actionscript 3_Unicode - Fatal编程技术网

Flash/AS3是否处理RTLO和RTLE Unicode字符?

Flash/AS3是否处理RTLO和RTLE Unicode字符?,flash,actionscript-3,unicode,Flash,Actionscript 3,Unicode,基于,我想知道Flash/AS3是否也处理从右到左的覆盖和从右到左的嵌入字符 例如,在AS中实现的聊天程序是否容易受到使用RTLO/RTLE绕过亵渎过滤器的人的攻击(例如,编写“\u202E!nmad”来编写“damn!”)或模拟其他用户(例如,将“\u202EmoT”作为用户名显示为“Tom”) 如果这是真的,可以采取什么对策来避免这些问题?这与文本渲染器有关,而不是与ActionScript有关。如果您使用的是支持双向和复杂文本布局的新Flash 10文本渲染器,那么是的,用户输入可能会以意

基于,我想知道Flash/AS3是否也处理从右到左的覆盖和从右到左的嵌入字符

例如,在AS中实现的聊天程序是否容易受到使用RTLO/RTLE绕过亵渎过滤器的人的攻击(例如,编写“\u202E!nmad”来编写“damn!”)或模拟其他用户(例如,将“\u202EmoT”作为用户名显示为“Tom”)


如果这是真的,可以采取什么对策来避免这些问题?

这与文本渲染器有关,而不是与ActionScript有关。如果您使用的是支持双向和复杂文本布局的新Flash 10文本渲染器,那么是的,用户输入可能会以意外的方式渲染。新的文本呈现器由类使用,例如
TextLine
。通过粘贴以下内容,您可以看到这一点:

well‮!nmad!
进入文本布局示例演示

在旧的文本渲染器中,您将无法获得这种效果,但也无法正确渲染复杂的脚本

当您接受不受信任的用户输入以包含在更宽的文本字符串中时,无论是否涉及Flash,您都应该过滤掉这些字符。W3C所描述的一个很好的过滤组。这包括bidi覆盖和一系列其他常见的麻烦控制代码

我建议大多数web应用程序定期过滤掉所有这些代码,以及除换行代码以外的所有ASCII和C1控制代码(U+0000–U+0009、U+000B–U+001F、U+007F–U+009F)


(亵渎过滤器并不是禁止bidi IMO的有力理由,因为他们很容易被任何东西愚弄,甚至不值得麻烦。)

过滤他们可以在框中键入的内容非常好的答案!感谢您提供的文本布局演示和W3C链接,我以前从未找到过这些链接。:)关于亵渎过滤器,你是对的。但是模仿另一个用户(甚至是主持人)是一个严重的问题。