Question
Your objective is to develop a secure software product to control an Automated Teller Machine (ATM). An ATM has a magnetic stripe reader for reading
Your objective is to develop a secure software product to control an Automated Teller Machine (ATM). An ATM has a magnetic stripe reader for reading an ATM card, a keyboard and a display for interaction with the customer, a slot for depositing envelopes, a dispenser for cash, a printer for printing customer receipts, and a key-operated switch to allow an operator to start or stop the machine. The ATM will communicate with the bank's computer over an appropriate communication link. The ATM services one customer at a time. A customer is required to insert an ATM card and enter a personal identification number (PIN) - both of which will be sent to the bank for validation as part of each transaction. The customer will then be able to perform one or more transactions. The card will be retained in the machine until the customer indicates that he/she desires no further transactions, at which point it will be returned - except as noted below. The ATM must be able to provide the following services to the customer:
A customer must be able to make a cash withdrawal, In addition to the money, the user is given a receipt showing the date, time, machine location, type of transaction, account number, amount withdrawn, and account balance after the withdrawal. The customer can have up to three bank accounts, namely: checking account, saving account, and credit card account.
A customer must be able to make a deposit to any account linked to the card, consisting of cash and/or checks in an envelope and a receipt is printed.
A customer must be able to make a transfer of money between any two accounts linked to the card. The user is given a receipt.
A customer must be able to determine the balance of any account linked to the card. This is displayed on the screen.
A customer must be able to quit at any time. When this is the case, the card will be rejected.
The ATM communicates each transaction to the bank and obtains verification that it was allowed by the bank. If the bank determines that the customer's PIN is invalid, the customer will be required to re-enter the PIN before a transaction can proceed. If the customer is unable to successfully enter the PIN after three tries, the card will be permanently retained by the machine, and the customer will have to contact the bank to get it back. If a transaction fails for any reason other than an invalid PIN, the ATM will display an explanation of the problem, and will then ask the customer whether he/she wants to do another transaction. The ATM has an operator panel with a key-operated switch, located on the "inside the bank" side that allows an operator to start and stop the servicing of customers. When the switch is moved to the "off" position, the machine will shut down, so that the operator may remove deposit envelopes and reload the machine with cash, blank receipts, etc. The operator will be required to verify and enter the total cash on hand before starting the system from this panel.
Phase 2
- Apply the MOSRE framework on the problem above.
Phase 3
- Apply the SRIDE model on the DFD generated for the problem above.
- Apply the DREAD model for tow of threats you has defined in (C), justify your rating
Phase 4
- Apply the secure design principles you learned in the class
- Apply the secure design patterns you learned in the class
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started