簽名驗證反爬蟲

簽名驗證,與Cookie驗證類似,但是它的數據顯示在XHR類型文件中,是AJAX技術。

  對於部分網站,在發送網絡請求時,通過抓包,它發送多個請求,通過分析,它的響應值則在Type 爲 XHR 的響應中,而不是在text/html響應中。

  通過PostMan或者代碼發送XHR請求,數據都是爲空或403,就算是帶了User-Agent與Cookie也是一樣。


  如:有道翻譯,通過翻譯,返回值都在XHR響應中。
在這裏插入圖片描述

簽名驗證原理:

  發送請求時,客戶端生成一些隨機值和不可逆的MD5加密字符串,並在發起請求時將這些值發送給服務器。

  當服務器接收到請求時,服務器使用相同的方式對隨機值進行計算以及MD5加密。如果服務器得到的值與客戶端提交的值相等,就返回正常值,否則返回其它(403)

簽名驗證反爬突破:

  分析XHR請求數據,有的數據在URL中,有的在Form Data中,找到對應的加密請求數據,查找到對應的.js文件,仔細分析JavaScript代碼產生驗證數據的方式,把對應的代碼轉換成爬蟲編寫的代碼再請求。

簽名驗證個人觀點:

  對於簽名驗證,本身是結合AJAX技術,可以說是AJAX技術中的一種,現在很多頁面中,爲了提高效率,都採用了AJAX技術渲染。服務器返回的數據都在XHR響應中。


  然而簽名驗證則是以MD5加密爲主要方式進行客戶端與服務器之間的驗證。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章