Type of assignment: This assignment should be done in same groups as the term project.
Note: The assignment submission should clearly list the student members of the group, their names, and student numbers on the first page.
Points: The maximum number of points for this assignment is 42, which will be prorated accordingly after all assignments are posted. Weight of each problem is in parenthesis.
Format:
- Assignment submissions are accepted in the following formats only: HTML (extension .html), PDF (.pdf), ASCII text (.txt). Assignments submitted in any other format will be discarded. All text in the assignment submissions must be typed and figures plotted to be easy to read and understand. Spelling, grammar, and other language errors will result in fewer points credited to the corresponding problem solutions.
- Your submission file should be named to reflect the group number (see group number assignments below), and the assignment number, e.g., group53-5.pdf.
Problems
-
(10) (Malicious Logic): Pick one of the following malicious software (malware):
- SQL slammer
- Code Red
- Blaster
- Sasser
- Conficker
- Koobface
- Stuxnet
- Kenzero
- VBMania
- Daprosy
- Storm Worm
- Post a message (one message per group) in the course WebCT discussion topic named "Malware" indicating which malware your group has picked.
- If another group posted an earlier message indicating that they had picked the same malware as your group, go back to step 1 and pick "free" malware.
- Analyze the design of the picked malware, i.e., its structure, behavior, mechanisms it uses for selecting victims, infecting them, hiding itself and its authors, etc.
- Identify the aspects specific to your malware that can be used to detect or prevent it. Based on your analysis, recommend short, medium and log term countermeasures (i.e., protection and detection techniques) against the threat posed by this malware. Classify your techniques using material from the corresponding course session.
- Identify which of the principles for designing secure systems have not been followed by the developers of those systems vulnerabilities in which allowed the malware you analyzed to become effective.
- Cite all your sources of information.
- Use no more than 4 pages to write a short report documenting your findings obtained in steps 3--5. Use figures and tables, if necessary to achieve better impact of your report.
- Your report should be submitted as one file in format of IEEE Transactions with proper title, authors, abstract, introduction, body, conclusion, and references sections.
- Post your report in PDF on WebCT discussion topic named "Malware" by the same deadline as the one for this assignment. Marks for late reports will be decreased, 1% of the problem mark per each minute after the deadline.
- (32) (Development of Secure Software):
Each group is to complete successfully as many lessons as it can by logging in http://webgoat.ece.ubc.ca:8180/WebGoat-5.2/attack with the corresponding user name and password
from the following table. Groups cannot help each other. If it is found out that one group received help from another group, both groups will receive zero points for this problem even if one of them is eligible for the bonus points (see below). One point per completed lesson will be credited for this problem. Not all questions are equally difficult. The lessons are on learning about common vulnerabilities of Web applications. Some of these vulnerabilities are common to many other types of software applications.
Important rule: WebGoat source code cannot be examined in order to complete this question. That is, you cannot download the source code for WebGoat and examine it in order to help yourself with the assignment.
Hints for increasing success with this problem:
- You can access webgoat.ece.ubc.ca only from the UBC network. To access it from outside of the UBC network, you need to use VPN (see www.vpn.ubc.ca for instructions). If on campus, use an IAPv2 port, which can be found in various buildings, including MacLeod and the Libraries. Direct your questions about IAPv2 port to ECE IT services (help@ece.ubc.ca).
- Install personal copy of WebGoat on your computer(s) so that you restart WebGoat whenever it crashes because of your actions. webgoat.ece.ubc.ca will crash too often if each group will be trying to attack it while doing this assignment.
- If you cannot access webgoat.ece.ubc.ca because, for example, your or another group crashed WebGoat, send e-mail asking to reboot WebGoat on webgoat.ece.ubc.ca to help@ece.ubc.ca. The course teaching staff does not have privileges to reboot WebGoat on that host.
Attention: Only the report card on webgoat.ece.ubc.ca is what counts for marks. So, make sure your group account completes the lessons on webgoat.ece.ubc.ca.
group members |
username |
password |
Christopher Eng, Derick Hsieh, Joong Kang, Cheng (Oscar) Hou |
group01 |
yejCSD |
Frankie Angai, Calvin Ching, Isaiah Ng, Cameron Smith |
group02 |
CdsFna |
Paul Chiu, Tayler Hetherington, Alvin Lam, Ryan Jung |
group03 |
ZfxPfH |
Dillon Yo-Kang Yang, Nick Hanssmann, Tsung-Ying Tsai, Chia-En Pan |
group04 |
leygsZ |
Matt Fong, Herman Lee, Chih-Hao Lin, David Yue |
group05 |
BWJDzo |
Derek Gourlay, Yuan Sunarto, Yik Lam Sit, Tian-Cheng Wang |
group06 |
qIVhwb |
Hei Wang Chan, Evan Gillespie, Delfino Leong |
group07 |
wqTfva |
Tarek Amin, James An, James Lu, Oseghale Okhiria |
group08 |
eXkrpa |
Joel Beales, Karl Campbell, Janina Fedjko |
group09 |
DzLgUu |
Moses Chan, Rob O’Dwyer, Steve Powell, Marie Elise Desormeaux Leowski |
group10 |
HhNvig |
Victor Tsang, Jovi Wong, Sanduni Patikiriarachchi, Nathan Comstock |
group11 |
HGKQWg |
Alfred Lam, Tony Lei |
group12 |
dKZMEt |
- (9 points) (Bonus question) First group who can also complete the challenge of attacking three "hackable" admin interfaces and post a message on the course WebCT discussion topic "Assignments" indicating that it completed the challenge will receive additional (i.e., bonus) 18 points for this assignment. The group will have to demonstrate to the course TA the technique of accomplishing the challenge before the credit will be dispensed. If the group fails to demonstrate, the second group will become eligible for the bonus.
Important rule: WebGoat source code cannot be examined in order to complete this question, i.e., you cannot download a distribution of WebGoat and go through its source code. However, you can look at the code provided in each lesson.
|