怎樣檢測用戶端是瀏覽器發出的操作?

來源:互聯網
上載者:User
現在headless瀏覽器很多,能夠類比出瀏覽器的很多行為,這對於發垃圾廣告資訊來說相當容易,即使沒有phantomJs或者CasperJs,通過抓包擷取目標請求地址,以curl或者snoopy為例,user-agent、mac地址、ip地址、cookie等等全都可以偽造,唯一能防範的驗證碼,網上的打碼軟體也太多了,都是僱傭一些大媽大叔來識別,發SPAM也很容易,我就想有沒有一種方法檢測用戶端是實實在在的瀏覽器,這樣我就ban掉這個瀏覽器就容易多了

回複內容:

現在headless瀏覽器很多,能夠類比出瀏覽器的很多行為,這對於發垃圾廣告資訊來說相當容易,即使沒有phantomJs或者CasperJs,通過抓包擷取目標請求地址,以curl或者snoopy為例,user-agent、mac地址、ip地址、cookie等等全都可以偽造,唯一能防範的驗證碼,網上的打碼軟體也太多了,都是僱傭一些大媽大叔來識別,發SPAM也很容易,我就想有沒有一種方法檢測用戶端是實實在在的瀏覽器,這樣我就ban掉這個瀏覽器就容易多了

你連打碼都算進去的話,沒有。

可以試試這兩個非常累的做法:

  1. 把驗證碼做複雜。比如gif動啊動的驗證碼。。。
  2. 限制頻率,後端做記錄,同一個ip請求頻率過快就拉黑。。。

同意 @賣小女孩的火柴 的觀點,你要先清楚你為什麼要區分使用者和機器人,通常有兩種情況:

一是防攻擊,減輕伺服器壓力,希望屏蔽掉非使用者的訪問;這種情況更好的方式是在系統中做好緩衝,確保無論怎樣量級的訪問都不會拖垮伺服器才是。

二是防止一些機制被濫用,比如防止使用者使用機器人在「邀請朋友註冊」中作弊;這種情況更好的方式是把使用者和一個實體關聯起來,比如可以是手機號,社會安全號碼這樣不容易被偽造的實體。當然,有一些使用者是方案這種做法的,不希望提供個人隱私資訊。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.