2012-11-06 142 views
1

我有註冊表單來註冊哪些工作正常。作爲濫用/防止機器人的一部分,如果您在最後3小時內嘗試從同一個IP地址註冊另一個帳戶,註冊頁面將顯示反註冊檢查。防止JavaScript hack腳本執行

但是我設法弄到了一個正在設法檢查這個檢查的腳本。該腳本可以在Windows上使用firefox的宏擴展運行。它使用email.txt作爲電子郵件地址的來源。

email="email.txt" 
akun=new Array() 
ID=new Array() 

for(ns=1;ns<=2000;ns++){ 
iimPlay("CODE:" 
+"\n"+"CMDLINE !DATASOURCE "+email 
+"\n"+"SET !DATASOURCE_COLUMNS 1" 
+"\n"+"SET !LOOP "+(ns) 
+"\n"+"SET !EXTRACT {{!COL1}}") 
akun[ns]=iimGetLastExtract();if(akun[ns]==""||akun[ns]=="undefined"||akun[ns]=="#eanf#") 
{break} 
ID[ns]=akun[ns].replace("@yahoo.com","") 


i=iimPlay("CODE:" 
+"\n"+"URL GOTO=http://www.website.com/signup" 
+"\n"+"TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:email CONTENT="+akun[ns] 
+"\n"+"TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:confirm CONTENT="+akun[ns] 
+"\n"+"TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:username CONTENT="+ID[ns] 
+"\n"+"SET !ENCRYPTION NO" 
+"\n"+"TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:password CONTENT=satan1234" 
+"\n"+"TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:confirm_password CONTENT=satan1234" 
+"\n"+"TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:referral CONTENT=52799" 
+"\n"+"TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:tos CONTENT=YES" 
+"\n"+"pause" 
+"\n"+"TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:street-register ATTR=NAME:register&&VALUE:Play<SP>For<SP>Free<SP>→" 
+"\n"+"TAG POS=1 TYPE=A ATTR=TXT:Logout" 
) 
if(i!=1){break}; 
iimDisplay (ns) 
} 

任何人都可以提出一個關於如何阻止這個腳本無休止地工作嗎?

感謝

+0

它是如何繞過你的支票?請求是否來自同一個IP地址,然後取消請求(在服務器端)。如果它們來自不同的IP地址,則可能無法很容易地阻止它。 –

+0

使用此腳本創建的所有帳戶都源自相同的IP地址。 –

+1

如果他們都來自同一個知識產權,那麼你的做法是錯誤的,以防止濫用。 – sberry

回答

1

由於所有的請求都來自同一個IP地址發送,請DOA服務器端檢查你的邏輯。某處你應該存儲什麼請求已經被放置。然後根據這些值檢查服務器變量「遠程地址」。他們是否已經在過去的3個小時內發出請求,然後拒絕它,並且不再進行處理。

不要依賴客戶端腳本。也不要依賴客戶請求傳遞的任何值,因爲它們都可以被操縱。