JS混淆加密:僵尸代碼
僵尸代碼植入,是JS混淆加密中一項很有用的技術。
比如JShaman,作為國內知名的JS混淆加密產品,便具備這一功能。
它可以給原始代碼中增加一些額代的功能代碼,比如:變量定義、函數調用、if語句、switch語句,等等,以及這些新增代碼之間的互相調用,甚至原始代碼也會調用這些新增代碼。
這樣,邏輯上而言,原始代碼會憑空多出了許多新代碼、新調用關系。
但是,這些新增的代碼,雖然存在,卻不會影響原始代碼的正常執行、正常邏輯。這些被新增的代碼,即是“僵尸代碼”。
但它是非常有用的,直觀的用途便是:防止代碼被任意分析。新增的僵尸代碼,會干擾分析過程、干擾逆向分析。因為僵尸代碼是混在原始代碼中的,且有互相調用關系,因此使人很難分清楚哪些是原始正常功能的代碼、哪些是新增出來的代碼。
此外,更有用的是:它對于小游戲、小程序過審非常有幫助。業內人都知道,當相似的小游戲或小程序代碼提交審核時,常常會因為代碼雷同而被判定為代碼侵權。而僵尸代碼植入功能,會憑空新增出不同的新代碼,特別是:每次JS混淆加密所增加的“僵尸代碼”還是隨機的、不同的。因而極大的降低代碼與之前的相似度,從而更容易過審。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.