-4

我以 minecraft.net 为例:

我也尝试过 (https://www.facebook.com/login.php) 和 (https://www.facebook.com/login.php) 。

我的目标是让代码告诉我密码是正确还是不正确(显然)。

是我输入的链接还是我的代码?如果是我的代码,我做错了什么?我尝试了许多不同的脚本。

可以工作的代码表示赞赏,但我完全同意你告诉我如何解决这个问题!

import urllib2
import os
os.system("color 09")
print "URL To Login To: "
URL = raw_input("> ")
os.system("cls")
print "User Name To Login With: "
username = raw_input("> ")
os.system("cls")
print "Password As Test: "
password = raw_input("> ")
os.system("cls")

import urllib2, base64

request = urllib2.Request(URL)
base64string = base64.encodestring('%s:%s' % (username, password)).replace('\n', '')
request.add_header("Authorization", "Basic %s" % base64string)   
try:
    result = urllib2.urlopen(request)
    print "Password Recovered: " + password
except:
    print "Login Failed: "
4

1 回答 1

2

您的整个 Password Found / Brute Failed 逻辑基于是否收到有效的 HTTP 响应。

您收到 Brute Failed 消息,因为该 login.php 页面不存在(因此返回 404 错误)。

您获得了为其他页面找到的密码,因为它确实存在,并返回一个有效的 HTTP 响应,这正是 urllib2 所期望的。

毫无疑问,您会收到一个有效的 HTTP 响应,说明您的密码错误。

您需要始终检查有效的 HTTP 响应,然后添加进一步检查以查看是否收到“密码错误”或“密码正确”回复。您可以通过在共鸣正文中搜索所需的文本来做到这一点。

于 2013-08-15T05:34:22.937 回答