Assignment

.pdf

School

Carleton University *

*We aren’t endorsed by this school

Course

4810A

Subject

Computer Science

Date

Jan 9, 2024

Type

pdf

Pages

13

Uploaded by ChefOyster3965

Problem 1 2 3 4 5 Total Points: 25 25 25 25 10 110 Page 1 of 13 SYSC 4810A: Introduction to Network and Software Security Assignment Fall 2023 Prof.Hala Assal Carleton University Department of Systems and Computer Engineering This assignment contains 13 pages (including this cover page) and 5 problems. You are responsible for ensuring that your copy of the assignment is complete. Bring any discrepancy to the attention of your instructor. Special Instructions: 1. Start early as this assignment is much more time consuming than you might initially think! 2. The burden of communication is upon you. Solutions not properly explained will not be considered correct. Part of proper communication is the appearance and layout. If we cannot “decode” what you wrote, we cannot grade it as a correct solution. 3. You may consult outside sources, such as textbooks, but any use of any source must be documented in the assignment solutions. 4. You are permitted to discuss general aspects of the problem sets with other students in the class, but you must hand in your own copy of the solutions. 5. Your assignment solutions are due by 04:59PM on the due date and must be submitted on BrightSpace. Late assignments will be graded with a late penalty of 20% of the full grade per day up to 48 hours past the deadline . 6. You are responsible for ensuring that your assignment is submitted correctly and without corruption. Posted: October 29, 2023 Due: December 4, 2023 Due on Monday, December 4, 2023 by 04:59PM
In this assignment, you will participate in activities related to the operation and use of user authentication and access control mechanisms. This assignment aims to assess your understanding of security policies, as well as protocols to implement such policies. It also aims to assess your ability to develop basic security enhancements in stand-alone applications by implementing and using basic security tools to enhance and enforce user authentication and access control policies. Background Research A significant portion of this assignment is to do the required background research on working with basic cryptographic libraries and tools to support user authentication and access control such as Python Cryptographic Services and/or the C OpenSSL . Keep in mind that a substantial component of any software or computer systems project is to solve and/or eliminate the underlying technical difficulties. This often means exploring user manuals and documentation. Submission Requirements Please read the following instructions very carefully and follow them precisely when submitting your assignment! The following items are required for a complete assignment submission: 1. PDF Assignment Report : Submit a detailed report that carefully and concisely describes what you have done and what you have observed. Include appropriate code snippets and listings, as well as screenshots of program outputs and results. You also need to provide an adequate explanation of the observations that are interesting or surprising. You are encouraged to pursue further investigation beyond what is required by the assignment description. 2. ZIP Archive of Source Code : In addition to embedding source code listings in your assignment report, create and submit a ZIP archive of all programs that you write for this assignment. Please name each of your source code files appropriately to indicate the purspose of each file and. A simple naming scheme may be to name files according to the problem number to which they correspond (e.g., for Problem 7(a), the source code file should be named Problem7a.c ). Your source code must compile and run in the VM environment, producing the desired output. Also, please remember to provide sufficient comments in your code to describe what it does and why. 3. ZIP Archive of Screenshot Image Files : In addition to embedding screenshots of program outputs and results in your assignment report, create and submit a ZIP archive of all of the raw screenshot images that you capture for this assignment. Grading Notes An important part of this assignment is following instructions. As such, the following grade penalties will be applied for failure to comply with the submission requirements outlined above: Failure to submit an Assignment Report will result in a grade of 0 for the assignment. Failure to submit the Source Code files will result in deduction of 10% of the full grade of the assignment. Failure to submit the Screenshot Image files will result in deduction of 10% of the full grade of the assignment. Failure of Source Code to compile/run will result in a grade of 0 for the corresponding problem(s). You are required to ensure that your code will compile and run in the VM! Failure to submit any deliverable in the required format (PDF or ZIP) will result in deduction of 5% of the full grade of the assignment. Page 2 of 13 SYSC 4810A Assignment Due Date: December 4, 2023
Part I Assignment Challenge 1 Introduction Imagine that you are an employee of a computer security consulting firm. Your consulting firm has recently been approached and contracted by a company called Finvest Holdings , which has requested the design and implementation of a user authentication and access control system prototype for their proprietary financial software and data systems to better support their clients. You have been assigned as the lead developer for this contract and are responsbile for developing and documenting the prototype design and implementation to fulfill the contractual obligations of your consulting firm with Finvest Holdings . The details of these contractual obligations are provided in the sections below. The different parts of this assignment are designed to guide your investigation into the client’s concerns. At the end of the assignment, you will be required to summarize your findings and provide recommendations to Finvest Holdings addressing their concerns. 2 Context Finvest Holdings specializes in financial planning and investment banking, with access to numerous financial instruments. Financial instruments are assets that can be traded, or they can also be seen as packages of capital that may be traded. Most types of financial instruments provide efficient flow and transfer of capital all throughout the world’s investors. These assets can be cash, a contractual right to deliver or receive cash or another type of financial instrument, or evidence of one’s ownership of an entity. Finvest Holdings operates numerous computer applications to manage and assist clients. They seek to have a new user authentication and access control system for their proprietary financial software and data systems. Details of their previous user authentication and access control system have not been provided. It is clearly stated in the contract that the following access control policy must be enforced: 1. Clients can view their account balance, view their investments portfolio, and view the contact details of their Financial Advisor. 2. Premium Clients can modify their investment portfolio and view the contact details of their Financial Planner and Investment Analyst. 3. All Finvest Holdings employees (except for Technical Support) can view a client’s account balance and investment portfolio, but only Financial Advisors, Financial Planners, and Investment Analysts can modify a client’s investment portfolio. 4. Financial Planners can view money market instruments. 5. Financial Advisors and Financial Planners can view private consumer instruments. 6. Investment Analysts can view money market instruments, derivatives trading, interest instruments, and private consumer instruments. 7. Technical Support can view a client’s information and request client account access to troubleshoot client’s technical issues. 8. Tellers can only access the system during business hours from 9:00AM to 5:00PM. 9. Compliance Officers can validate modifications to investment portfolios. Page 3 of 13 Due Date: December 4, 2023 SYSC 4810A Assignment
In addition to the access control policy, the prototype must implement a proactive password checker that ensures all passwords adhere to the following password policy: Passwords must be least 8-12 characters in length Password must include at least: one upper-case letter; one lower-case letter; one numerical digit, and one special character from the set: { ! , @ , # , $ , % , ? , ∗} Passwords found on a list of common weak passwords (e.g., Password1 , Qwerty123 , or Qaz123wsx ) must be prohibited Special Note : The list should be flexible to allow for the addition of new exclusions over time. Passwords matching the format of calendar dates, license plate numbers, telephone numbers, or other common numbers must be prohibited Passwords matching the user ID must be prohibited In addition, to the access control and password policies described above, Finvest Holdings has expressed the following requirements and constraints of their system, which must be considered in the eventual design and implementation of the prototype. 1. A balance between performance and security is required. 2. Selected algorithms should not have any well-known weaknesses or vulnerabilities. Finvest Holdings has provided a sketch of what is expected from the prototype system (see Figure 1 ). Once a user logs in, the prototype shall display a list of the operations that the user is able to perform in the system (these do not need to be implemented). Finvest Holdings has expressed that the prototype does not require any “fancy” user interface as they have already contracted another firm for that purpose. Instead, they are interested specifically in the design and implementation of the security mechanisms and a prototype that is able to demonstrate that the system will meet their needs. Figure 1: Sample prototype interface for the Finvest Holdings system Page 4 of 13 Due Date: December 4, 2023 SYSC 4810A Assignment
To assist with testing and validation of the system, Finvest Holdings has provided the following sample list of employees and clients: Name Role Name Role Mischa Lowery Regular Client Willow Garza Premium Client Veronica Perez Regular Client Nala Preston Premium Client Winston Callahan Teller Stacy Kent Investment Analyst Kelan Gough Teller Keikilana Kapahu Investment Analyst Nelson Wilkins Financial Advisor Kodi Matthews Financial Plannerr Kelsie Chang Financial Advisor Malikah Wu Financial Planner Howard Linkler Compliance Officer Caroline Lopez Technical Support Stefania Smart Compliance Officer Pawel Barclay Technical Support 3 Obligations At the end of this assignment, you will be required to deliver the following information and outcomes to Finvest Holdings : 1. Provide a detailed report documenting the design choices and details of the prototype implementation. This is necessary to enable Finvest Holdings to make important decisions about whether to proceed with the implementation of the prototype. 2. Provide a functioning prototype system. You must demonstrate and provide a convincing argument that the system satisfies all of the requirements outlined by Finvest Holdings . Page 5 of 13 Due Date: December 4, 2023 SYSC 4810A Assignment
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help