用python加载用户字典和密码字典遇到的问题?

本人在写POC时候想从硬盘上同时加载用户字典和密码字典对某个web进行爆破,但加载后字典txt文件后,发现用户字典只加载

了第一个用户名与密码的所有匹配,接下来的用户名都没有和密码相应的做匹配,然后程序就停止了,本来以为是for循环语句的问

题,后来发现是从外界把文本读入内存后是一个字符串造成的,所以我们需要把读入的文本转换成列表,这样就没问题,具体实现

案例如下

用户字典username.txt内容如下:

root
admin
administrator
guest

代码:

# coding: utf-8

f=open('username.txt','r')
username=[line.strip('\n') for line in f.readlines()]
passwd=[pwd for pwd in xrange(000000,888888)]

def login(user,pwd):
    if user=='admin' and pwd=='666555':
        return True
    else:
        return False


def main():
    print '[+]starting to crack the web!'
    for u in username:
        for p in passwd:
            #print u+':'+str(p)
            b=login(u,str(p))
            if b==False:
                continue
            else:
                print 'username is :%s,password is : %s' % (u,str(p))
                break

if __name__=='__main__':
    main()

效果如下:

 

posted @ 2016-04-18 11:59  kennyhip  阅读(636)  评论(0)    收藏  举报