一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - 基于PHP給大家講解防刷票的一些技巧

基于PHP給大家講解防刷票的一些技巧

2020-12-02 15:35chenpingzhao PHP教程

刷票行為,一直是一個難題,無法從根本上解決問題,目前最好的解決辦法就是通過人為增加的邏輯限制,下面給大家介紹基于PHP給大家講解防刷票的一些技巧,小伙伴們跟著腳本之家的小編一起學習吧

刷票行為,一直以來都是個難題,無法從根本上防止。

但是我們可以盡量減少刷票的傷害,比如:通過人為增加的邏輯限制。

基于 PHP,下面介紹防刷票的一些技巧:

1、使用CURL進行信息偽造

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localhost/2.php");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8'));
curl_setopt($ch, CURLOPT_REFERER, "http://localhost/ ");
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.0)");
$out = curl_exec($ch);
curl_close($ch);

2、驗證碼:采用非常復雜的驗證碼

確切的說驗證碼的出現(xiàn)不是針對于人,而是針對于機器。通過復雜度和識別難易度的控制來阻攔掉一部分刷票機,從而減少刷票的發(fā)生。但隨著軟件技術(shù)、識別技術(shù)的發(fā)展越來越多的驗證碼面對著先進的刷票軟件也失去了其防范的作用、但是專業(yè)刷票機可以攻破。如果不用驗證碼,投票基本就歇菜了,驗證碼獲取方式,采用異步加載,即點擊輸入框時,才去請求,投票成功后,刪除驗證碼的 Session

3、限時投票

比如:從早8點至晚23 點

4、設(shè)置投票間隔

用戶投票后,需要隔多長時間才能繼續(xù)投。

很多投票站點基本上都有這個限制,但是對于更改 IP的攻擊,就沒辦法了

5、投票結(jié)果展示:延遲展示,友好展示

頁面上投票,JS 立馬加1,但是刷新頁面,不一定立馬展示最新投票結(jié)果,返回狀態(tài)給頁面(感謝您的投票!或者 投票成功!至于有沒有成功,另說了?。?/p>

6、扣量邏輯:常見于一些軟件評選之類的投票

這是個殺手锏,后臺跑腳本實時監(jiān)控異常增長(刷票)的項,然后實施扣量邏輯
即對于這個項,投 10 票才算一票

7、Cookie:常用的手段。比較低級

投票后,在客戶端寫入 Cookie,下次投票時判斷 Cookie 是否存在
但是,這種方式非常容易攻破,因為 Cookie 可刪除

8、加密選項 ID:對一些投票選項的ID,進行隨機加密

加密算法,加Salt,并且設(shè)置有效時間,比如5分鐘內(nèi)
服務器端進行解密并且驗證

9、nginx限制鏈接數(shù)

ngx_http_limit_conn_module
ngx_http_limit_req_module
nginx_limit_speed_module

可以使用這三個模塊來限制,不過這不是一個好的解決方法

10、iptables限制

/sbin/iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 60 --hitcount 10 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --set -j ACCEPT
/sbin/iptables -t filter -A INPUT -p tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 10 --connlimit-mask
 32 -j REJECT

具體腳本

 
?
1
 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash
# Date: 2015-09-29
# # Author: [email protected]
shopt -s -o nounset
export PATH=/usr/bin/:/bin
iptables_log="/tmp/iptables_conf.log"
/sbin/iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 60 --hitcount 10 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --set -j ACCEPT
/sbin/iptables -t filter -A INPUT -p tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 10 --connlimit-mask 32 -j REJECT
while [ true ]; do
  #sleep 1
  for IP in `netstat -an | grep -i ':80 '|grep 'ESTAB' | awk '{print $5}' | cut -d : -f 1 | sort | uniq -c | awk '{if($1 > 30 && $2!="127.0.0.1" ) {print $2}}'`
  do
    /sbin/iptables -L -n | grep $IP >/dev/null || /sbin/iptables -A INPUT -p tcp --dport 80 -s $IP -j DROP
    echo "/sbin/iptables -A INPUT -p tcp -s $IP -j DROP" >> ${iptables_log}
  done
done

以上內(nèi)容就是小編給大家介紹基于PHP給大家講解防刷票的一些技巧,希望大家喜歡。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲爱视频 | 九色PORNY真实丨国产大胸 | 国产精品原创视频 | 成人免费观看一区二区 | 啊啊啊好大好爽视频 | www.91麻豆 | 全程粗语对白视频videos | 国产一级真人毛爱做毛片 | 国产精品久久久久久五月尺 | 黑人巨大vs北条麻妃在线 | 色婷婷影院在线视频免费播放 | 欧美一区二区三区免费看 | 成人免费影 | 蜜桃麻豆| 热99精品只有里视频最新 | 免费的伦理片 | 美国女艳星brandilove | 色五夜婷婷| 国语自产拍在线播放不卡 | aⅴ天堂小视频 | 亚洲干综合 | 国内自拍2020| 女人狂吮男人命根gif视频 | 欧美干b视频 | 久久re6热在线视频 久久AV喷吹AV高潮欧美 | 好男人好资源在线观看 | 亚洲国产欧美在线人网站 | 国产玖玖在线 | 香蕉久久网 | 97色伦在线观看 | 久久久这里有精品999 | 成 人 亚洲 综合天堂 | 好吊操这里有精品 | 免费av在线视频 | 国产一区二区视频免费 | 青青热久久综合网伊人 | 毛片资源 | 亚洲系列国产系列 | 日韩免费视频播播 | 99视频在线国产 | 91尤物在线 |