Our Services

Get 15% Discount on your First Order

[rank_math_breadcrumb]

Program

CSCI 351 Assignment

60 points

Instruction:

· Show your own work (at least 50% penalty otherwise)

· Submit
(1) a single word document containing the source code (copied from the source program file) of your program and screenshot of the program run including the number of words tested.

· Submit
source program files (e.g.,checker.py) and a Word document containing the plaintext password found, the number of words tested, and the screenshot capturing the program run and the password found, and the source code (copied from the source program file)

· Make sure you submit the intended one. It is recommended that you download what has been uploaded and double-check if the correct document has been submitted.

· You can submit as many times as you want, but the last submission will only be graded. If the last submission is made after the deadline, there will be a late submission penalty.

· No plagiarism: Do not copy and paste any from textbooks and other resources to answer questions (Zero points will be given otherwise).

· No resubmission/extension request will be accepted.

Problem 1. Linux File Permissions (20 pt., 4 pt. each)

For each permission requirement below, provide (1) symbolic permission and (2) 4-digit octal (numeric) permission.

a. For a file named “a.png”,

· Owner: can read and write

· Group: can read and write

· World: forbidden

Symbolic permission?

Numeric permission?

b. For a directory of “dir1”,

· Owner: can read, write, and execute

· Group: can read and execute

· World: can read and execute

Symbolic permission?

Numeric permission?

c. For a file named “passwd”,

· Owner: can read, write, and execute

· Group: can read and execute

· World: can read and execute

· Set user ID bit enabled

Symbolic permission?

Numeric permission?

d. For a directory of “dir2”,

· Owner: can read, write, and execute

· Group: can read, write, and execute

· World: can read, write, and execute

· Sticky bit enabled

Symbolic permission?

Numeric permission?

e. For a file of “b.txt”,

· Owner: can read, write, and execute

· Group: can read, write, and execute

· World: can read and execute

· Set group ID bit enabled

Symbolic permission?

Numeric permission?

Problem 2. (10 pt.) Password Strength Checker

What makes a strong password?

Strong passwords have many different attributes:

· Length – typically > 8 characters

· Case – contain both uppercase and lowercase letters

· Special characters – contain at least one special character (e.g., !, %,@)

· Numbers – contain one or more numbers

· Additionally, your password should never contain any personal information (like your birthday, middle name).

Develop a Python or C++ program that can check the strength of a password. There are a few requirements for the program.

Requirements

· Take user input (the password to be tested)

· Calculate a score based on the contents of the password

· Tell the user the score of their password

· Tell the user the strength of their password (Weak, Moderate, Strong)

Below is a python program snippet for reference.

# Get user’s password to check

userPassword = input(“What is your password: “)

# Set a baseline for the possible counts of each character type

# Loop through each character and see what type it is

# Calculate the score of the password

# Tell the user how strong their password is

Problem 3. Password Brute-force Attack (30 pt.)

Write a program that performs the brute-force attack to break the password. The following table shows encrypted passwords using the crypt() function. Your mission is to break the password corresponding to your CWID in the table. For example, the last digit of your CWID is 1, then you should identify the password for indBOW06MoVz6.

In this case my last number is 7.

Last digit of CWID

Encrypted password

1

indBOW06MoVz6

2

in79RsnfG/VWo

3

inbqJM0dLgWvo

4

incT1ji3YqQ/Y

5

in7haMV00ylgk

6

in1U0tb9WpIcI

7

inPlXS.yNKivQ

8

inqidvfWapJp2

9

injY7hdQJTeu2

0

inQW.HgtuEe.M

Crypt() is a function to check UNIX/LINUX passwords, and the encrypted passwords above are encoded by the standard crypt() function. Hence, you should use the crypt() function to break the password. The crypt() function takes two input parameters and returns the encrypted password, as follows:

Input parameters:

· Password (plaintext): string

· Salt: string

Output:

· Encrypted password: string

The password length is six and the salt is set to ‘infosec’ (without using the quotation mark). For the brute-force attack, you should try 6-character lower case letters of alphabet from ‘aaaaaa’, ‘aaaaab’, ‘aaaaac’, …, to ‘zzzzzz’, with the salt. Report the original plaintext password by breaking the encrypted password (one based on your CWID). Also report how many words you tested to find the original password.

It is recommended to write a program using either Python or C/C++. While there are numerous resources for referencing crypt(), the following shows just two of them (but you can refer to any other helpful resources).

· Python:



· C:







pages/man3/crypt.3.html

Below is a python program snippet for reference.

# Please show the pycharm inside our VM with Kali Linux to do the coding

# import the following modules import pwd

import crypt

#usage and sample output password = “computer”

salt=”science”

crypt.crypt(password, salt)

Output is:

‘scRKJfdmHndxk’

Finally, submit the following:

· Screenshot showing the program running, the key found, and the number of words tested: 10 pts.

· Source code in the document: 10 pts.

· Source programming file (must be compliable and executable): 10 pts.

1

1

1

Share This Post

Email
WhatsApp
Facebook
Twitter
LinkedIn
Pinterest
Reddit

Order a Similar Paper and get 15% Discount on your First Order

Related Questions

Computer Science 2 Assignments

Operational Excellence Week 2 Assignment Information Systems for Business and Beyond Questions: · Chapter 3 – study questions 1-8, Exercise 2, 4 & 5 Information Technology and Organizational Learning Assignment: Chapter 3 – Complete the two essay assignments noted below:  · Review the strategic integration section.  Note what strategic integration is and how

Discussion 3: generative adversarial nets

  Generative adversarial nets are mentioned in 2014 by Ian Goodfellow et al.  Why is generative adversarial network a key turning point in the history of generative modeling? Why is the field of image generation important? 

Week 3 – Linear Regression & Business Decision Making

attached file.  An asset management company must replace the manager of its two signature mutual funds, who is about to retire. Two candidates have been short-listed. The management team is divided and cannot decide which of the two candidates would make the better mutual fund manager. The retiring manager presents

data science

Final Exam Due Saturday 11:59 pm (Week 15) You cannot use any of the datasets in our assignments, class notes, and your own midterm project. If you are using the same one, you will receive 0 for your final project. 1. Question Formulation (5 points): You need to devise a

Letter of Recommendations

Hi  Attached is the sample of Letter of recommendation  Please write about it accordingly  1. Write about author :AUTHOR WILL BE professor David Kimble I will give links about his Biography write accordingly or you can use your own search engines about him to write it. 2 . How the

Letter of Recommendations

Hi  Attached is the sample of Letter of recommendation  Please write about it accordingly  1. Write about author :AUTHOR WILL BE professor David Kimble I will give links about his Biography write accordingly or you can use your own search engines about him to write it. 2 . How the

data science

Final Exam Due Saturday 11:59 pm (Week 15) You cannot use any of the datasets in our assignments, class notes, and your own midterm project. If you are using the same one, you will receive 0 for your final project. 1. Question Formulation (5 points): You need to devise a

IT 202

5/15/24, 10:59 AM Assignment Information 1/3 IT 202 Project One Milestone Guidelines and Rubric Overview For the purposes of this assignment, imagine that you are a systems architect at a medium-sized publishing company with 130 employees. The company primarily publishes books, both in print and online. It also produces other

Assessments

Perimeter defense techniques Evaluate the types of assessments, select one that you might use, and explain why it is important. Of the top eight areas to research when conducting an assessment, select no less than three and explain how one should approach the research and why it should be approached

project ppt presentation

Project 3 – Ensemble Methods and Unsupervised Learning In this project you will explore some techniques in unsupervised learning as well as ensemble methods. It is important to realize that understanding an algorithm or technique requires understanding how it behaves under a variety of circumstances. You will go through the

Week 2 understanding on Python.

PDF for reference purpose other file is requirement Python Installation & Examples Atif Farid Mohammad PhD 1. Open any Browser 2. Go to 3. Click at Download button 4. Go to your Download Folder (In both Windows and Mac) a. In Windows you will have the file: Anaconda3-2022.05-Windows-x86_64.exe b. Double

Computer Science Assignments

Operational Excellence Week 2 Assignment information Systems for Business and Beyond Questions · Chapter 2 – study questions 1-10, Exercise 2      Information Technology and Organizational Learning Questions · Chapter 2 – Note why the IT organizational structure is an important concept to understand.  Also, note the role of

Computer Science IT project assignment

Pg. 01 Project I Project Deadline: Sunday 12/5/2024 @ 23:59 [Total Mark is 14] Introduction to Database IT244 College of Computing and Informatics Project Instructions · You can work on this project as a group (minimum 2 and maximum 3 students). Each group member must submit the project individually with

project ppt presentation

Project 3 – Ensemble Methods and Unsupervised Learning In this project you will explore some techniques in unsupervised learning as well as ensemble methods. It is important to realize that understanding an algorithm or technique requires understanding how it behaves under a variety of circumstances. You will go through the

coding

Assignment 6 Due Saturday 11:59 pm (Week 14) Part 1 (50 points) We will explore the Marvel Network Universe. The dataset which you will find in Blackboard consists of the hero’s networks. For this dataset, you will need to ask yourself 3 questions (i.e which superhero knows more superheroes?) ,

project ppt presentation

Project 3 – Ensemble Methods and Unsupervised Learning In this project you will explore some techniques in unsupervised learning as well as ensemble methods. It is important to realize that understanding an algorithm or technique requires understanding how it behaves under a variety of circumstances. You will go through the

How hackers get info

Identify at least two ways in which hackers gather information about companies. What can companies do to limit this access, specifically to the ways you have identified? Which type of information can be gathered with enumeration? How and why should companies protect themselves against enumeration attempts?