Projects
बनाने वाले काम
Har phase ke apne projects hote hain aur wo mushkil hote jaate hain. Har project ka rubric है — matlab pass hone ki shart pehle se saaf likhi hui hai, baad mein tay nahi hoti.
PRJ-001Machine Field Guide (मशीन गाइड)
Objective
Architecture
Requirements
- CPU, memory hierarchy, storage, boot chain, process model और privilege boundaries — सब cover हो।
- हर claim के पीछे आपके चलाए हुए command का output हो।
- ऐसे लिखा हो कि सिर्फ़ Level 0 पूरा कर चुका reader भी समझ जाए।
- हर layer के लिए एक security note हो।
Tasks
- Lesson 1–7 के commands से हर layer का evidence इकट्ठा करो।
- हर section अपने शब्दों में लिखो, और हर term को पहली बार use करते वक़्त define करो।
- हर layer का security note add करो।
- एक 'जो मैं पता नहीं कर पाया' section add करो — gaps के बारे में ईमानदारी भी grade का हिस्सा है।
- किसी से document review करवाओ (या एक हफ़्ते बाद ख़ुद दोबारा पढ़ो और जो अब समझा ना सको उसे mark करो)।
Deliverables
- Field guide document
- Raw command output का folder जिसको document refer करता हो
Testing
- एक section किसी ऐसे इंसान को दो जो topic नहीं जानता; अगर वो follow ना कर पाए, तो वो section अभी पूरा नहीं हुआ।
- एक हफ़्ते बाद हर command दोबारा चलाओ और confirm करो कि output अभी भी document से match करता है।
Security considerations
- किसी को देने से पहले hostnames, serial numbers, MAC addresses और UUIDs हटा दो।
- अपनी machine का exact Secure Boot state + kernel version + mitigation configuration publicly मत डालो — ये combination targeting में मदद करता है।
Rubric
सातों lessons का coverage
कोई layer छूटी नहीं; gaps साफ़ लिखे हैं।
Evidence की quality
हर claim आपके ख़ुद के command output तक traceable।
अपने शब्दों में explanation
Copy-paste definitions नहीं; हर term पहली बार पे define की।
Security relevance
हर layer का security note specific है, generic नहीं।
Limits के बारे में ईमानदारी
Unknowns छुपाए नहीं, लिखे गए।
PRJ-002Lab Isolation Verifier
Objective
Architecture
Requirements
- चारों connectivity properties test करे, explicit timeouts के साथ।
- हर property का साफ़ PASS/FAIL print करे और किसी भी failure पे non-zero exit करे।
- अगर एक से ज़्यादा non-loopback interface मिले तो PASS report करने से MANA कर दे।
- ऐसा पढ़ने लायक़ हो कि Level 4 Bash ख़त्म किया इंसान समझ ले।
Tasks
- Interface enumeration और single-interface check लिखो।
- Guest-to-guest reachability लिखो, peer address configurable हो।
- Internet का negative test hard timeout के साथ लिखो।
- LAN का negative test लिखो, gateway address configurable हो।
- Summary और सही exit codes add करो।
- जान-बूझ कर TODI हुई configuration पे चलाओ और confirm करो कि वो ज़ोर से FAIL करता है।
Deliverables
- verify-lab.sh
- एक छोटा README जिसमें लिखा हो कि हर check क्या prove करता है और क्या NAHI
Testing
- सही isolated lab पे चलाओ: सब PASS।
- NAT adapter लगाओ और दोबारा चलाओ: internet test FAIL होना चाहिए।
- Bridged adapter लगाओ और दोबारा चलाओ: LAN test FAIL होना चाहिए।
- Peer VM बंद करो और दोबारा चलाओ: guest-to-guest FAIL होना चाहिए।
Security considerations
- Script FAIL-CLOSED होनी चाहिए: कोई भी error या confusion = FAIL, कभी PASS नहीं।
- एक well-known connectivity probe के अलावा किसी third party को traffic ना भेजे।
- README में साफ़ लिखो कि ये script सिर्फ़ NETWORK isolation prove करती है — hypervisor escape resistance नहीं।
Rubric
चारों checks का सही होना
हर check passing AUR failing दोनों configurations में verify किया।
Fail-closed behaviour
Script का कोई भी रास्ता error पे PASS report नहीं करता।
Timeouts
हर negative test time-bounded है।
पढ़ने लायक़ होना
shellcheck clean; Level 4 वाला learner follow कर सके।
ईमानदार scope statement
README बताता है कि script क्या prove NAHI करती।