我玩的網頁遊戲允許用戶上傳的內容與使用navigateToURL函數將玩家發送到隨機網站的用戶有很多問題。我很好奇是否有方法使用Actionscript 2或3禁用此功能。我已經看到了一種使用HTML嵌入的方法,但我沒有對該網站的管理訪問權限。Actionscript 3.0禁用navigateToURL
1
A
回答
1
在做了一些更多的研究之後,我想出了一個可靠的答案: 您應該在服務器端使用PHP和名爲swfdump的可執行文件的組合來驗證用戶上傳的內容。
swfdump是一個位於Flex SDK的bin文件夾中的exe文件。你可以使用exec從PHP運行它。 它將讀取swf的字節碼並生成報告。從那裏你可以很容易地找到哪些文件包含navigateToURL()並拒絕這些文件。
我測試使用我自己的文件swfdump -abc退房手續myfilereport.swfx myfile.swf 並且在輸出我發現這一點:
findpropstrict flash.net:navigateToURL
findpropstrict flash.net:URLRequest
pushstring "http://www.plasticsturgeon.com"
constructprop flash.net:URLRequest (1)
callproperty flash.net:navigateToURL (1)
我使用URL爲「HTTP:// www.plasticsturgeon.com」。但是要消除包含flash.net.navigateToURL的任何swf將會更加容易。一旦您確定存在,您可以向最終用戶生成錯誤通知。
所以使用這種方法,你可以找到並拒絕任何使用導航到URL的swf。你甚至可以創建一個批處理來運行,並使這個問題的任何現有斷言無效。重定向做用戶必須點擊: http://code.google.com/p/redtamarin/wiki/ABC
而關於反編譯ASbytecode: http://dougmccune.com/flex/FOTB_Decompiling_Doug_McCune.pdf
相關問題
- 1. 的ActionScript 3的navigateToUrl方法
- 2. ActionScript 2.0和ActionScript 3.0項目
- 3. ActionScript 3.0 import swf
- 4. Flash CS6 actionscript 3.0
- 5. ActionScript 3.0類
- 6. flash actionscript 3.0
- 7. ActionScript 3.0 Ragged Line
- 8. onDragOver for Actionscript 3.0
- 9. Actionscript 3.0 swap
- 10. Adobeflash Actionscript 3.0
- 11. Actionscript 3.0 addchild
- 12. ActionScript 3.0 Flash CS5
- 13. 在ActionScript 3.0
- 14. 解析XML使用ActionScript 3.0
- 15. Actionscript 3.0 - removeChild不起作用
- 16. 創建使用ActionScript 3.0
- 17. navigateToUrl
- 18. ActionScript 3.0:類關係
- 19. Actionscript 3.0 Tween錯誤
- 20. Actionscript 3.0聲音鏈
- 21. 解析URL(ActionScript 3.0)
- 22. Actionscript 3.0 Tween問題
- 23. 多個HitTestObject ActionScript 3.0
- 24. Actionscript 3.0 RSS訂閱
- 25. ActionScript 3.0 TransformGestureEvent和MouseEvent
- 26. ActionScript 3.0錯誤1010
- 27. Flash Actionscript 3.0 Audio Scrubber
- 28. Actionscript 3.0 Detect Camera Detachment
- 29. Actionscript 3.0 getter setter increment
- 30. ActionScript 3.0 textInput和Display
描述利用更多的有關使用字節碼
的更多信息?或者是由最終用戶造成的代碼。用戶內容的文件類型是什麼?> –
好的,網站允許用戶上傳圖片或.swf文件。這些上傳可以作爲傢俱,「玩具」,寵物或化身放入房間。遊戲本身是基於Flash的,所以房間是一個Flash客戶端。上傳的.swfs可以運行Actionscript,它允許人們在查看房間的所有客戶端上簡單地運行navigateToURL。大多數目標都被阻塞了,但有一些目標被繞過了,所以我需要一種方法來將一個.swf文件輸入到一個僅僅阻止該函數工作的房間中。 – Zoltea