Linux systems keep user account information in the passwd file and the encrypted password in the shadow file

Linux systems keep user account information in the passwd file and the encrypted password in the shadow file.

The passwd file containing account information might look like this:

smithj:x:1001:1001:John Smith:/home/smithj:/bin/bash

The shadow file containing password and account expiration information for users might look like this:

smithj:KJDKKkkLLjjwlnttqoiybnm.:10063:0:99999:7:::

The fields in the shadow file are separated by a colon, with the first field being the username and the second being the password.

Under normal circumstances, the password is encrypted. But for the purpose of this assignment, you can assume the password is already unencrypted.

Review the bruteLogin function program on pp. 58–59 of Ch. 2, “Penetration Testing with Python,” of Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers.

Make the following changes/additions to the function:

  • Modify the bruteLogin function to use both the passwd and shadow files. Assume your passwd and shadow files include two accounts.  
  • Change the bruteLogin to extract the username and full name from the passwd file and the password from the shadow file
  • Change the output to display the full name when confirming successful FTP Login; e.g.,  “Myhostname FTP Logon Succeeded: John Smith/ KJDKKkkLLjjwlnttqoiybnm”

You can also use the site test.rebex.net as your host.  It provides demo logins and passwords to test a successful login to their FTP servers.

find the cost of your paper