• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      網(wǎng)絡(luò)投票的作弊原理及綜合解決方案

      2010-04-05 06:37:54賴春江蘇哲新
      電視技術(shù) 2010年1期
      關(guān)鍵詞:作弊字符IP地址

      賴春江,蘇哲新

      (東莞廣播電視臺陽光網(wǎng)站,廣東 東莞 523129)

      1 引言

      網(wǎng)絡(luò)調(diào)查及投票是伴隨互聯(lián)網(wǎng)的發(fā)展而出現(xiàn)的新的調(diào)查及投票方式,這種新方式打破了傳統(tǒng)投票在時(shí)間和地域上的限制,拓寬了參與人群的范圍,尤其在電視節(jié)目與觀眾互動(dòng)中被廣泛應(yīng)用。由于投票的數(shù)據(jù)基本上是記錄在數(shù)據(jù)庫里,使得投票結(jié)果的統(tǒng)計(jì)和分發(fā)變得便捷和及時(shí)。但由于HTTP協(xié)議本身的缺陷和網(wǎng)絡(luò)參與者身份確認(rèn)的復(fù)雜性,也使其極易遭受作弊攻擊,出現(xiàn)“刷票”行為。近年來,東莞陽光網(wǎng)承辦了多次大型網(wǎng)絡(luò)投票活動(dòng),筆者在這些活動(dòng)的技術(shù)工作中積累了一定實(shí)踐經(jīng)驗(yàn),針對在實(shí)際工作中發(fā)現(xiàn)的不同攻擊手段進(jìn)行深入分析,并提出有效的解決方案。

      2 攻擊原理及技術(shù)

      2.1 HTTP的無狀態(tài)性

      超文本傳輸協(xié)議HTTP的設(shè)計(jì)目的在于支持超文本的傳輸,客戶端向HTTP服務(wù)器發(fā)送請求,HTTP服務(wù)器接收到請求后將相應(yīng)資源發(fā)回給客戶端。因?yàn)槊看蔚恼埱蠛晚憫?yīng)都是相對獨(dú)立的,所以服務(wù)器和客戶端都沒有必要記錄這一過程。一般而言,一個(gè)URL對應(yīng)著唯一的超文本資源,HTTP服務(wù)器對于不同的客戶端的同一個(gè)URL的請求也會返回相同的超文本。因此,沒有必要記錄用戶的行為狀態(tài),HTTP協(xié)議被設(shè)計(jì)成無狀態(tài)的連接協(xié)議。

      2.2 網(wǎng)絡(luò)投票記錄用戶行為需求

      網(wǎng)絡(luò)投票一般是指用戶通過Web頁面在客戶端瀏覽器填寫投票表單,然后提交給服務(wù)器進(jìn)行記錄處理的一種方式。網(wǎng)絡(luò)投票往往需要選擇候選選項(xiàng)(候選人或候選單位等)、投票人的身份信息(姓名、身份證號碼等)。由于投票的結(jié)果可能涉及各參與方的利益,候選人往往會為了影響投票結(jié)果而進(jìn)行各種各樣的作弊“刷票”行為。因此,為了保證投票結(jié)果的公平有效,投票活動(dòng)組織者需要對投票行為進(jìn)行有效地控制,其方法一般有要求填寫表單的身份證號碼字段進(jìn)行身份證號碼合法性校驗(yàn)、IP地址投票限制和驗(yàn)證碼等。

      2.3 網(wǎng)絡(luò)投票常見的作弊攻擊手段

      2.3.1 偽造身份證號碼

      一般來說,重大的網(wǎng)絡(luò)投票一般都需要投票者填寫表單時(shí)提交合法的身份證號碼才能進(jìn)行投票,并以身份證號碼來作為甄別是否重復(fù)投票的依據(jù)。但互聯(lián)網(wǎng)上的網(wǎng)絡(luò)投票一般不可能跟公安系統(tǒng)的身份證數(shù)據(jù)庫進(jìn)行對接,因此,投票處理程序只能從邏輯上根據(jù)客戶端提交的身份證號碼進(jìn)行算法有效性的校驗(yàn),只要客戶端提交的身份證號碼通過算法校驗(yàn),投票程序就認(rèn)為這是一個(gè)合法的身份證號,并且若投票記錄數(shù)據(jù)庫里沒有該身份證號碼的投票記錄就允許其進(jìn)行投票。因此作弊者很可能對該投票程序進(jìn)行任意攻擊和作弊“刷票”。

      2.3.2 突破IP地址投票數(shù)限制

      為了防止作弊者不斷地進(jìn)行作弊“刷票”,投票處理程序往往對同一個(gè)IP地址在特定時(shí)間段內(nèi)的投票總數(shù)進(jìn)行限制。服務(wù)器端對客戶端IP地址一般會采用兩種方式,一種是通過HTTP會話的REMOTE_ADDR獲取跟服務(wù)器通信的客戶端IP地址,如果投票程序通過這種方式獲取客戶端IP,并對每個(gè)IP在某一時(shí)段內(nèi)的投票總數(shù)做了限制,作弊者必須擁有相當(dāng)數(shù)量的公網(wǎng)真實(shí)IP資源才能對投票程序發(fā)起影響結(jié)果的攻擊;另一種是先通過HTTP頭的X_FORWARDED_FOR字段來獲取通過代理服務(wù)器訪問投票服務(wù)器的客戶端真實(shí)IP,但是否可以獲取客戶端真實(shí)IP取決于代理服務(wù)器是否允許服務(wù)器端獲取客戶端的真實(shí)IP,同時(shí)如果客戶端不通過代理服務(wù)器訪問投票服務(wù)器,投票服務(wù)器同樣獲取不了客戶端的IP。一般來說,Web程序開發(fā)人員為了更加準(zhǔn)確地獲取客戶端的IP地址往往會先試圖去獲取X_FORWARDED_FOR的值,獲取失敗后再去獲取跟服務(wù)器直接通信的主機(jī)IP。

      由于X_FORWARDED_FOR是通過客戶端提交的HTTP頭來獲取,而客戶端的HTTP頭的數(shù)據(jù)可以在提交前進(jìn)行任意修改,因此,Web程序開發(fā)人員想盡可能地通過穿透代理服務(wù)器獲取客戶端真實(shí)IP地址的美好愿望給投票作弊者敞開了大門,客戶端通過修改每次提交的HTTP頭里的X_FORWARDED_FOR字段值就能成功突破IP投票數(shù)限制進(jìn)行任意投票。

      2.3.3 識別破解圖片認(rèn)證碼

      為了解決HTTP協(xié)議的無狀態(tài)性給Web應(yīng)用程序帶來的問題,產(chǎn)生了兩種用于保持HTTP連接狀態(tài)的技術(shù),一個(gè)是Cookie,而另一個(gè)則是Session。由于Cookie值存儲在客戶端的硬盤上,同樣存在與HTTP頭一樣被修改的危險(xiǎn),因此,數(shù)據(jù)保存在服務(wù)器端的Session技術(shù)則顯得更加安全可靠。網(wǎng)絡(luò)投票程序?yàn)榱朔乐箍蛻舳死锰囟ㄜ浖ㄟ^重復(fù)提交投票表單信息進(jìn)行作弊,往往使用圖片驗(yàn)證碼技術(shù),在服務(wù)端生成圖片驗(yàn)證碼信息并通過Session來對客戶端輸入進(jìn)行認(rèn)證,理論上只要驗(yàn)證碼信息不被客戶端作弊程序破解,客戶端就無法實(shí)施大規(guī)模的批量刷票作弊行為,從而保證投票的安全可靠。

      圖片驗(yàn)證碼技術(shù)的實(shí)施,提高了網(wǎng)絡(luò)投票作弊的技術(shù)門檻,在一定程度上保證了投票的安全。同時(shí),投票驗(yàn)證碼實(shí)施技術(shù)的復(fù)雜性也對Web開發(fā)人員提出了更高的技術(shù)要求。目前,基于圖片驗(yàn)證碼生成技術(shù)的難度限制,絕大部分網(wǎng)站都使用了阿拉伯?dāng)?shù)字和英文字母的圖片驗(yàn)證碼,并且生成的圖片上的干擾線和噪點(diǎn)并不多。針對數(shù)字和英文字母的破解算法很容易獲取,并且破解率比較高,其攻擊原理如下:

      1)先分析目標(biāo)驗(yàn)證碼圖片的驗(yàn)證碼類型(數(shù)字、字母或組合型等)、驗(yàn)證碼位數(shù)、字符位移范圍、字符旋轉(zhuǎn)范圍、干擾線及噪點(diǎn)、前景色、背景色、圖片的大小等。

      2)根據(jù)驗(yàn)證碼類型確定相應(yīng)的破解字符范圍及各字符圖片獨(dú)特的像素值。

      3)根據(jù)圖片的前景色、背景色、干擾線及噪點(diǎn)情況去除圖片的干擾線、噪點(diǎn)及背景色。

      4)根據(jù)驗(yàn)證碼位數(shù)、字符位移范圍、字符旋轉(zhuǎn)范圍對圖片進(jìn)行字符截取。

      5) 將截取的字符圖片跟預(yù)先確定的破解字符范圍內(nèi)的字符圖片進(jìn)行像素匹配,匹配像素命中率最高的字符就是驗(yàn)證碼字符。

      3 解決方案

      通過對網(wǎng)絡(luò)投票攻擊原理及手段的技術(shù)分析,可以知道目前要完全通過技術(shù)手段杜絕網(wǎng)絡(luò)投票的作弊行為難度很大。但若對現(xiàn)有技術(shù)進(jìn)行改進(jìn),并組合使用更加難破解的圖片驗(yàn)證碼、單一IP投票數(shù)限制及身份證號碼校驗(yàn)等多種防范手段,可以大幅提高作弊成本并降低其成功率,使其作弊行為不足以影響投票結(jié)果。通過同步采取以下幾種手段,可以基本堵塞網(wǎng)絡(luò)投票中的漏洞。

      第1種防范手段是采用復(fù)雜干擾像素背景中文圖片驗(yàn)證碼技術(shù)。這是最核心的防范手段,通過本網(wǎng)站近年來多場大型網(wǎng)絡(luò)投票的檢驗(yàn),效果明顯,投票結(jié)果得到社會各界的公認(rèn)。該手段采用圖片驗(yàn)證碼技術(shù),很好地彌補(bǔ)了HTTP協(xié)議無狀態(tài)連接的缺陷。但其缺點(diǎn)是實(shí)施技術(shù)門檻高,一般網(wǎng)絡(luò)程序只能生成數(shù)字和英文字母驗(yàn)證碼,降低了攻擊破解技術(shù)門檻,這需要對驗(yàn)證碼生成技術(shù)進(jìn)行改進(jìn)。目前,不少允許用戶上傳圖片的網(wǎng)站都會對用戶上傳的圖片疊加網(wǎng)站版權(quán)信息的“水印”文字或者圖片,因此可以把該技術(shù)運(yùn)用到中文驗(yàn)證碼的生成上來。該技術(shù)把驗(yàn)證碼字符疊加到背景圖片上,因此可以根據(jù)文字前景顏色選擇干擾性強(qiáng)的背景圖片,同時(shí)對驗(yàn)證碼的字符集可以簡單地進(jìn)行大范圍擴(kuò)充,只要服務(wù)器上字符集有字符生成,甚至可做出如 “10除以2加3等于幾”這樣的問題式驗(yàn)證碼。用于生成 “水印”的技術(shù)一般使用Web Server組件,目前基于ASP,PHP,Java等Web開發(fā)語言的組件很容易得到,技術(shù)實(shí)現(xiàn)的門檻相對也比較低。下面簡要介紹其防范流程:

      1)預(yù)先制作干擾性強(qiáng)的復(fù)雜背景圖片集,如制作20張圖片。

      2)隨機(jī)生成驗(yàn)證碼值,并寫入Session里。為了投票客戶端輸入的方便,這里只選擇了GB2312字符集的第1級常用漢字3 755個(gè)。

      3)隨機(jī)選擇背景圖片、字體、前景色及驗(yàn)證碼位移值,把驗(yàn)證碼疊加到圖片上。

      4)為了防范攻擊程序不斷重復(fù)獲取驗(yàn)證碼來進(jìn)行攻擊,在生成驗(yàn)證碼后隨即把系統(tǒng)當(dāng)前時(shí)間當(dāng)作驗(yàn)碼生成時(shí)間寫入Session里,并在投票程序里提交延時(shí)設(shè)置。

      第2種防范手段是除了使用難破解的驗(yàn)證碼外,可以直接獲取跟服務(wù)器通信的主機(jī)IP地址,而不用通過獲取HTTP頭的X_FORWARDED_FOR字段來獲取客戶端IP地址,避免IP地址偽造攻擊,然后根據(jù)需要進(jìn)行一定的IP投票數(shù)限制,使得作弊攻擊者必須擁有大量的真實(shí)公網(wǎng)IP地址資源,大幅提高作弊門檻和成本。

      第3種防范手段是進(jìn)行投票時(shí)要求客戶提交個(gè)人信息,如提交身份證號碼等,并對其進(jìn)行合法性校驗(yàn)。該方法對使用投票作弊軟件的攻擊者往往作用不大,但能增加其手動(dòng)刷票的作弊成本。

      第4種防范手段是對每次投票都進(jìn)行詳細(xì)記錄,如投票對象、投票時(shí)間、來源IP、個(gè)人信息等,以便發(fā)現(xiàn)作弊攻擊時(shí)進(jìn)行查找和清理。

      4 小結(jié)

      由于HTTP協(xié)議本身的弱點(diǎn)及現(xiàn)有技術(shù)的限制,目前難以完全通過技術(shù)手段杜絕網(wǎng)絡(luò)投票的作弊行為,但通過對現(xiàn)有技術(shù)的改進(jìn),根據(jù)具體情況靈活使用不同的技術(shù)手段,可以大幅提高網(wǎng)絡(luò)投票的作弊成本,降低作弊行為的成功率,從而保證投票結(jié)果的真實(shí)、公正、可靠。

      猜你喜歡
      作弊字符IP地址
      換裝等
      尋找更強(qiáng)的字符映射管理器
      作弊
      鐵路遠(yuǎn)動(dòng)系統(tǒng)幾種組網(wǎng)方式IP地址的申請和設(shè)置
      字符代表幾
      一種USB接口字符液晶控制器設(shè)計(jì)
      電子制作(2019年19期)2019-11-23 08:41:50
      消失的殖民村莊和神秘字符
      有人要你幫忙作弊怎么辦
      基于SNMP的IP地址管理系統(tǒng)開發(fā)與應(yīng)用
      黑龍江電力(2017年1期)2017-05-17 04:25:16
      沒作弊
      三都| 云南省| 天水市| 化隆| 昆明市| 金塔县| 阜阳市| 阳新县| 西乌珠穆沁旗| 龙陵县| 九江市| 会泽县| 定边县| 陆川县| 西盟| 仲巴县| 托克托县| 资源县| 洛扎县| 苗栗县| 专栏| 称多县| 丁青县| 安龙县| 九龙县| 澄迈县| 始兴县| 保康县| 苏尼特左旗| 九台市| 江达县| 滁州市| 曲麻莱县| 石台县| 高青县| 庆城县| 忻城县| 苍梧县| 竹山县| 化德县| 台前县|