Python Scripting
This is an individual assignment!
1) Download the following 2 files from Canvas, under Supplemental Material a. An /etc/shadow file
• This is a sample /etc/shadow file, formatted as below b. 100000passwords.txt
• A password dictionary file • One hundred thousand passwords, one password per line
Note: not every password in this /etc/shadow file is “encrypted” using the same hashing algorithm. See the /etc/shadow guide below (courtesy nixCraft)…
2) Using only standard UNIX commands like crypt, and a script in the scripting language of your choice (from PERL, PHP, Python, bash, etc)….
a. Transform the /etc/shadow file any way you like… for instance, you can turn it into multiple files, each containing nothing but one password per line, etc. This is for your convenience, for part b.
b. Write a script that uses the password dictionary file to crack as many passwords as possible in the original /etc/shadow file. NOTE: YOU MUST WRITE AN ORIGINAL SCRIPT. YOU CANNOT USE ANY KIND OF DOWNLOADED TOOL OR UTILITY FOR THIS PART!
You will likely want to use crypt.crypt(…) in Python
• For full credit, you must paste your script here, and then explain exactly what steps you took to execute the script and crack the passwords in the file.
• Which passwords were you able to crack? • How long did the entire process take?
3) Using a tool of your choice (see those available in Kali Linux, for instance), crack the /etc/shadow file.
• Which tool(s) did you use for this task? Paste the complete set of command lines for full credit.
• Which passwords were you able to crack? (Were you able to crack any that you could not crack in part 2?)
• How long did the process take?