Reаl cаse — Sаmy wоrm, MySpace (2005) In Octоber 2005, a user named Samy Kamkar pоsted content to his MySpace profile that carried a small piece of JavaScript. MySpace allowed some user markup on profiles but did not effectively neutralize it. When another user merely VIEWED an infected profile, the script ran in that viewer's browser: it silently added Samy as a friend and copied itself onto the viewer's own profile, which then infected the next viewer. In under a day it had spread to more than a million profiles, and MySpace was taken offline to stop it. Write a structured analysis (roughly 250-400 words) that does four things: (1) name and justify the primary vulnerability class using the mechanism described; (2) explain WHY it spread on view alone and what made it self-propagating, referencing the browser-as-interpreter idea; (3) contrast this class with reflected XSS on the dimension of who is exposed and when; and (4) propose a layered defense (at least two independent layers) and state one concrete limit of your primary layer. Do not depend on any specific product API — reason from principles. Tip: Student tip (not an answer): anchor your classification to two facts in the prompt case. The payload was saved on the server, and it ran when a victim simply viewed the page. Then let those two facts drive the rest: why viewing is enough, why that makes it worse than a link someone must click, and which layer stops the script from being treated as markup versus which layer only limits the damage if it slips through. Naming a defense is not enough; say what each layer does and where your main one stops. Observation: It is not to classify using STRIDE (categorization), but the name of the correct type of threats that you studied in Units 2.2, 2.3, and 2.4. Rubric Criterion Advanced Average Weak Criteria & weights Full marks for this criterion Partial credit Little or no credit C1 Classification & Justification / 4 pts Full: 4 pts Names the correct vulnerability class AND grounds the label in two specific mechanism facts from the case description, not in a memorized definition. The reasoning flows from evidence stated in the prompt, not from a template. Partial: 2 – 3 pts A relevant class is named, but justification restates a general definition rather than deriving from the case mechanism. The link between the label and the evidence from the prompt is loose or implied. Weak: 0 – 1 pts Class is absent, incorrect, or named without any reasoning drawn from the mechanism described in the case. C2 Self-Propagation & Browser-as-Interpreter / 5 pts Full: 5 pts Explains BOTH components: (a) Why a passive action (viewing) was sufficient to trigger execution, referencing the browser's role as an interpreter of rendered content. (b) What allowed that execution to expose the next wave of victims (the copy-and-spread step that makes it a worm, not a single event). Partial: 3 – 4 pts States that the script spread without requiring clicks, but either: (a) does not explain the browser's content-interpretation role, OR (b) addresses only the trigger without explaining how victims became new sources. Weak: 0 – 2 pts Attributes the spread to a server-side mechanism or to something unrelated to the browser's execution of rendered content. Does not explain why viewing alone was sufficient. C3 Contrast with Reflected XSS / 4 pts Full: 4 pts Addresses BOTH dimensions explicitly: (a) Who is at risk — the difference in the population of affected users between the two variants. (b) When the risk materializes, the difference in persistence or timing of exposure. The comparison reveals a structural difference in the exposure model. Partial: 2 – 3 pts Contrasts the two classes but covers only one of the two dimensions (who OR when), or the distinction is present but imprecise. Weak: 0 – 1 pts No contrast is drawn, or the two classes are conflated, or differences are stated without explaining what drives them. C4 Layered Defense & Limit of Primary Layer / 7 pts Full: 6 – 7 pts Proposes ≥ 2 independent defense layers. For each layer, explains what it does mechanically — not just names it. States a concrete failure scenario as the limit of the primary layer (a real gap, not a vague hedge such as 'it might not work in all cases'). Partial: 3 – 5 pts Proposes a valid primary defense and ≥ 1 additional layer, but at least one of the following is missing or vague: • the mechanism of a layer is unexplained (only named), OR • the limit of the primary layer is absent or is a non-specific hedge. Weak: 0 – 2 pts Proposes a single defense layer only, OR defenses belong to the wrong class for this vulnerability type, OR the limit of the primary layer is not addressed at all.