所以,這是問題所在。JavaScript完全「篡改安全」變量
我有類似:
// Dangerous __hostObject that makes requests bypassing
// the same-origin policy exposed from other code.
(function(){
var danger = __hostObject;
})();
delete __hostOBject;
我是絕對安全的認識沒有腳本可以篡改或訪問__hostObject
?
(如果可以的話,我有一個CSRF vulnerability或更糟)。
注1:這是一個瀏覽器擴展。我比頁面上運行的其他腳本擁有更好的鉤子。我在他們面前執行,並且在他們裝載之前完成。
注2:我知道這已被多次詢問腳本的一般情況。我想知道是否有可能,如果我知道我在之前加載任何其他腳本。
我寫了一個[示例代碼](http://jsfiddle.net/35G8e/2/),它會覆蓋'Function.prototype的.call'。 (如果你真的認爲我在幫助惡意開發者,請隨時舉報此帖,在我看來,最終的攻擊者無論如何都會知道這些技術。) – ComFreek
@ComFreek你已經忘記'返回''oldCall'的結果。但的確,這是用於修補(內置)JavaScript方法的一般原則。 –