devote, твою "защиту" (в кавычках, потому что в контексте сабжа это скорее нападение) легко выявить, проверив свойсво "toString" у метода.
alert.hasOwnProperty( "toString" ) // должно быть false
Но вроде как уже очевидно, что нативный метод от переделанного никак не отличишь, если
переделать Function.prototype.toString.
DjDiablo, дело не в хацкерах. Тут логика понятна: сам расширение поставил - сам дурак. У меня другая проблема: не дать пользователю самому (по его собственному желанию) влезть в логику приложения.