Assessment Overview: This assignment evaluates students' ability to identify smart contract
vulnerabilities, develop attack scenarios, and propose security fixes. It assesses both technical understanding
and game-theoretic reasoning in adversarial crypto environments.
Point Distribution Summary
| Component | Points | Percentage |
|---|---|---|
| Part 1: Worksheet Analysis (30 points) | ||
| Contract 1 Analysis | 10 | 20% |
| Contract 2 Analysis | 10 | 20% |
| Contract 3 Analysis | 10 | 20% |
| Part 2: Group Presentation (15 points) | ||
| Content & Technical Accuracy | 8 | 16% |
| Clarity & Communication | 4 | 8% |
| Time Management & Preparation | 3 | 6% |
| Part 3: Participation & Engagement (5 points) | ||
| Class Participation | 5 | 10% |
| TOTAL | 50 | 100% |
| Bonus: Advanced Contracts (Optional) | +10 | - |
Detailed Rubric
Part 1: Worksheet Analysis (30 points)
Each of the 3 contracts is graded identically using the breakdown below (10 points each).
1. Vulnerability Identification (3 points)
3 points: Correctly identifies specific vulnerability type (e.g.,
"reentrancy attack" or "missing access control check") with accurate technical explanation
2 points: Identifies vulnerability category but with incomplete or partially incorrect technical explanation
1 point: Recognizes there's a security issue but cannot specify the type or mechanism
0 points: Incorrect identification or no answer
2 points: Identifies vulnerability category but with incomplete or partially incorrect technical explanation
1 point: Recognizes there's a security issue but cannot specify the type or mechanism
0 points: Incorrect identification or no answer
2. Attack Scenario Development (4 points)
4 points: Provides detailed step-by-step attack with:
2 points: General attack description without specific steps (e.g., "attacker steals funds by exploiting the bug")
1 point: Vague or partially incorrect attack scenario
0 points: No scenario or completely incorrect
- Clear sequence of actions attacker would take
- Technical details (e.g., fallback functions, transaction ordering)
- Explanation of why vulnerability allows exploitation
- Specific outcome/impact
2 points: General attack description without specific steps (e.g., "attacker steals funds by exploiting the bug")
1 point: Vague or partially incorrect attack scenario
0 points: No scenario or completely incorrect
3. Severity Assessment (1 point)
1 point: Selects appropriate severity level (within 1 level of answer key)
0 points: Severity off by 2+ levels (e.g., marking critical bug as "low")
0 points: Severity off by 2+ levels (e.g., marking critical bug as "low")
4. Proposed Fix (2 points)
2 points: Proposes valid, specific fix that addresses root cause
(code-level or architectural solution)
1 point: Suggests general direction for fix but lacks specificity or contains minor errors
0 points: No fix proposed or proposed fix doesn't address vulnerability
1 point: Suggests general direction for fix but lacks specificity or contains minor errors
0 points: No fix proposed or proposed fix doesn't address vulnerability
Part 2: Group Presentation (15 points)
A. Content & Technical Accuracy (8 points)
7-8 points: Presentation demonstrates:
3-4 points: Basic understanding shown but significant gaps in technical explanation or incorrect details. May skip economic analysis or provide weak fix.
1-2 points: Major technical errors, missing key sections, or demonstrates fundamental misunderstanding
0 points: Did not present or presentation completely incorrect
- Accurate vulnerability explanation with correct technical terminology
- Clear, logical attack scenario walkthrough
- Valid security fix with justification
- Thoughtful economic analysis (attack vs. report decision)
- Answers questions correctly and confidently
3-4 points: Basic understanding shown but significant gaps in technical explanation or incorrect details. May skip economic analysis or provide weak fix.
1-2 points: Major technical errors, missing key sections, or demonstrates fundamental misunderstanding
0 points: Did not present or presentation completely incorrect
B. Clarity & Communication (4 points)
4 points:
2 points: Somewhat unclear or disorganized. Uneven participation among group members.
1 point: Difficult to follow, poor organization, or single member dominates
0 points: Incomprehensible or unprofessional presentation
- Clear, well-organized presentation flow
- Uses appropriate examples and analogies
- All group members contribute meaningfully
- Effectively uses visual aids (if applicable)
- Maintains audience engagement
2 points: Somewhat unclear or disorganized. Uneven participation among group members.
1 point: Difficult to follow, poor organization, or single member dominates
0 points: Incomprehensible or unprofessional presentation
C. Time Management & Preparation (3 points)
3 points: Completes presentation within 5-minute window (±30 seconds),
well-rehearsed, smooth transitions
2 points: Slightly over/under time (±1 minute) but shows preparation
1 point: Significantly over/under time or appears under-prepared
0 points: Grossly inappropriate time usage or clearly unprepared
2 points: Slightly over/under time (±1 minute) but shows preparation
1 point: Significantly over/under time or appears under-prepared
0 points: Grossly inappropriate time usage or clearly unprepared
Part 3: Class Participation & Engagement (5 points)
Participation Criteria
5 points: Exceptional engagement:
3 points: Adequate engagement - pays attention, may ask 1 question
2 points: Minimal engagement - present but not actively participating
0-1 points: Disengaged, disruptive, or absent during peer presentations
- Asks 2+ thoughtful questions during peer presentations
- Provides constructive feedback or insights
- Contributes to class discussion meaningfully
- Shows active listening and note-taking
3 points: Adequate engagement - pays attention, may ask 1 question
2 points: Minimal engagement - present but not actively participating
0-1 points: Disengaged, disruptive, or absent during peer presentations
Bonus: Advanced Contracts (Optional +10 points)
Bonus Evaluation
Students completing analysis for Contracts 4, 5, and 6 can earn up to 10 additional points. Each bonus contract is worth 3.33 points and graded using the same criteria as main contracts:
Per Bonus Contract (3.33 points):
- Vulnerability identification: 1 point
- Attack scenario: 1.33 points
- Severity assessment: 0.33 points
- Proposed fix: 0.67 points
Note: Bonus contracts involve more sophisticated vulnerabilities (flash loans, oracle manipulation, timestamp dependence). Partial credit available for demonstrating understanding even if analysis is incomplete.
Grading Scale
| Grade | Points | Percentage | Description |
|---|---|---|---|
| A | 45-50 | 90-100% | Exceptional understanding of vulnerabilities, clear attack scenarios, valid fixes, excellent presentation |
| B | 40-44 | 80-89% | Good understanding with minor gaps, mostly correct analyses, competent presentation |
| C | 35-39 | 70-79% | Satisfactory understanding but some technical errors or incomplete analyses |
| D | 30-34 | 60-69% | Basic understanding but significant gaps, multiple errors, weak presentation |
| F | 0-29 | <60% | Insufficient understanding, major errors throughout, did not complete assignment |
Additional Grading Guidelines
Academic Integrity
- Collaboration: Encouraged within groups, but each group must submit original work
- Resources: Students may use vulnerability reference guide, course materials, and general web resources
- Plagiarism: Copying answers from other groups or online sources without attribution results in 0 points
- AI Tools: May be used for learning/verification but final answers must demonstrate personal understanding
Late Submission Policy
- Worksheet: Must be submitted immediately after presentation (same class period)
- Late Submissions: Not accepted except with prior instructor approval for documented emergencies
- Missed Presentation: Cannot be made up; group presents with remaining members or loses presentation points
Special Considerations
- Individual Grading: While worksheets are group-submitted, instructors may assign different presentation scores to individual members based on contribution
- Participation: Students absent during peer presentations receive 0 participation points
- Technical Depth: Credit given for demonstrating understanding even if terminology isn't perfect
- Bonus Attempt: Attempting bonus contracts with partial correctness is better than not attempting (encourages challenge)
Instructor Notes:
- Focus grading on conceptual understanding over perfect technical syntax
- Reward creative thinking in attack scenarios even if unconventional
- Consider partial credit generously for students showing effort on difficult bonus contracts
- Use presentation as opportunity to gauge individual comprehension beyond written work
- Document exceptional insights in comments for potential future reference letters
© Joerg Osterrieder 2025-2026. All rights reserved.