| Choosing the most appropriate and efficient password dictionary in the dictionarybased password cracking is a difficult task. And people’s habits of using password may vary from regions and countries which increases the difficulty for the selection of dictionary。 Based on that fact, this article collected some public password dictionaries leaked from the internet, analyzed potential features of the password, and excavated the rules people set their password, then compared the difference between groups of users, and finally proposed the method of password cracking based on special dictionary for the specific direction and application.Firstly, based on the public disclosed password dictionaries, we analyzed the features of passwords and the differences between password dictionaries by using information such as password length, password character type, probability of combination of characters, characters frequently used, and the password collision with user names, and summarized all feasible methods based on password attacks.Secondly, on the basis of password analysis, an algorithm was designed to generate general password dictionary, and another algorithm based on rules, researches were done to generate password based on Markov model, and analyzed the effect to the model by order, threshold; finally, we proposed a method to crack special password dictionary, at the beginning, this method got a part of the result by using dictionaries, rules or brute cracking the passwords, with this result, we generated a new password dictionary by using Markov model, and effectively crack the rest part of the password.Then, we analyzed the specific network-authentication protocol MS-CHAPv2, made the discussion the vulnerability that can be attacked. To solve the problems of password finding and executing efficiency, we designed three methods of dictionarycrack the password by using the features of protocol encryption. We proposed a password hash-indexing algorithm, a distributed cracking algorithm, and a GPU cracking algorithm.Finally, we designed and implemented a prototype system PCS, which is used for cracking MS-HCAPv2 protocol. The system works by collaborating with three cracking method: small CPU dictionary cracking method, big CPU dictionary cracking method and GPU violent cracking method, and we elaborate on the cracking process and the method of generating special password dictionary, constructed and tested a MSCHAPv2 password cracking task by using PPTP protocol data stream in actual networks. These results show that this proposed method can effectively improve the crack rate. |