檢測微信小程序是否被反編譯獲取源碼


眾所周知,微信小程序的代碼安全性很弱,很容易被別人反編譯獲取源碼。我自己的小程序也被別人反編譯拿到源碼還上線了,非常無語。

既然客戶端不好防范,服務端還是可以做點手腳的。

小程序的Referer是不可以更改的,從手機上發出的請求的Referer一般是這樣

https://servicewechat.com/wx05ac2038cb1a1286/1000/page-frame.html

結構很清晰,可以分為四部分:

https://servicewechat.com是小程序的域名,wx05ac2038cb1a1286是小程序的APPID,1000這個數字是什么不清楚,不過看這個數字有很多,大概率是通過小程序不同頁面發起的請求對應的數字不同,page-frame.html這個不用管,每個請求最后都一樣。

如果你想過濾掉所以來自微信小程序的請求,只需要在加一個Referer檢測的中間件,所有Referer里包含“https://servicewechat.com”的請求全部返回500就可以了。

別人拿到你的代碼,肯定要在開發者工具里運行的,小程序通過開發者工具發出的請求的Referer和通過手機發出的是不同的

https://servicewechat.com/wx05ac2038cb1a1286/devtools/page-frame.html

可以看出,通過開發者工具發出的請求Referer里和普通手機發出的請求的唯一區別就是原本的數字變成了devtools,所以可以加個中間件攔截所有Referer里包含devtools的請求,當然也可以攔截到請求以后直接將請求的IP地址拉黑,一勞永逸,這樣即便是用手機也無法訪問你的小程序了。

當然這樣也有個問題,就是你自己在開發者工具調試的時候也沒辦法訪問服務器,可以給自己的IP地址開個白名單什么的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM