2013-06-03 69 views
1

如果我的應用程序以swf的形式附加在我的網頁上,任何人都可以獲取swf的url並下載它 - 反編譯它...我可以做些什麼來阻止它,或者使如果有敏感數據,我的應用程序會更安全嗎?如何防止我的應用程序反編譯

+0

是僅針對敏感數據的問題,還是關於保護源代碼的問題? –

+0

我猜都是:),我認爲保存敏感數據在服務器端更好,但是例如,如果我向應用程序中的某些「祕密」url發佈了請求,我不想讓任何人知道所有的祕密密鑰都會被看到...... –

+0

爲了滿足對你來說很重要的一切,不要將你的安全建立在URL的「祕密」之上。你甚至不需要反編譯工具來查看應用程序正在使用的URL,任何嗅探器(fiddler,wireshark)都會顯示它們。地獄,甚至瀏覽器可能會在F12的新聞界展示給他們。是的,他們也可以看到查詢字符串。 – Renan

回答

2

簡短的回答是,你不能。用戶看到的任何內容都已存在於他們的機器中。你不能阻止它們反編譯你的應用程序,就像你無法阻止某人在Windows應用程序中反編譯DLL一樣。

如果您希望讓敏感數據遠離客戶端,您可以擁有客戶端 - 服務器體系結構。只服務於你不介意被反向設計的東西。

+1

我的一個想法是在閱讀完這個問題之後,「如果你從不以任何方式分發你的應用程序,你可以防止用戶反編譯你的應用程序。」但是,這個答案可能更相關;所以+1。 – JeffryHouser

0

您不應該將敏感數據放在客戶端。保持敏感的數據服務器端,並讓服務器對其進行任何比較,僅向客戶端返回true/false。我不認爲有一個安全/安全的方式來存儲和訪問它的客戶端。當訪問時,可以檢測並讀出該時刻。

編輯:關於您的源代碼,足夠好的編譯器會使代碼在反編譯後非常難以閱讀。但我認爲,你不能從那裏走得更遠。

+0

混淆只是一個無聊,閒置黑客的輕微障礙。千萬不要把它看作一種安全形式。 – Renan

+0

@Ranan確定它是一種安全形式。這不是很有效。當涉及到保護你的動作源代碼時,它甚至可以達到它的效果。 –

0

使用混淆器,一件事。我沒有親自嘗試過,但是通過在網絡上進行一些研究,SecureSWF尤其是irrFuscator可能會成爲您最好的賭注。正如一些人已經注意到的那樣,將敏感內容放在服務器上並且不要使用swf,因爲你不會完全阻止人們對這些東西進行反向工程。

+2

每次有人將混淆與安全性聯繫起來,神會殺死一隻小貓。 – Renan

+2

總比沒有好,老兄。據說鎖是爲了誠實的人,但這並不意味着你不應該使用它們。 – Panzercrisis

+1

授予。它會讓12歲的劇本小子出去。一段時間。但是,仍然是好點,並提高(評論)。 – Renan

相關問題