امنیت، هویت، استقرار و تاب‌آوری · فصل ۳ — Retention، TLS، Supply Chain و Verification Baseline · 93

OWASP ASVS و NIST SSDF به‌عنوان Verification Baseline

ASVS/SSDF را به checklist یکسان یا badge نهایی تبدیل می‌کند و version/applicability/evidence را جدا ثبت نمی‌کند. می‌تواند برای «OWASP ASVS و NIST SSDF به‌عنوان Verification Baseline» threat/trust boundary، کنترل و evidence را در یک سناریوی محدود تعریف و justify کند.

Use OWASP ASVS and NIST SSDF as a Verification Baseline — en-US

خلاصهٔ درس

ASVS/SSDF را به checklist یکسان یا badge نهایی تبدیل می‌کند و version/applicability/evidence را جدا ثبت نمی‌کند.

می‌تواند برای «OWASP ASVS و NIST SSDF به‌عنوان Verification Baseline» threat/trust boundary، کنترل و evidence را در یک سناریوی محدود تعریف و justify کند.

خروجی این درس

می‌تواند برای «OWASP ASVS و NIST SSDF به‌عنوان Verification Baseline» threat/trust boundary، کنترل و evidence را در یک سناریوی محدود تعریف و justify کند.

پیش‌نیازها

_Locale: fa-IR · Lesson: SEC-016 · Public order: 93_

خروجی و artifact کاری

این درس برای ساختن رکورد رهگیری baseline راستی‌آزمایی امنیت نسخه ۱ است: یک artifact تصمیم که مشاهده، فرض، محدودیت و evidence موردنیاز را از هم جدا می‌کند. هدف حفظ یک مدل قابل‌انتقال است، نه حفظ‌کردن نام ابزارها.

می‌تواند برای «OWASP ASVS و NIST SSDF به‌عنوان Verification Baseline» threat/trust boundary، کنترل و evidence را در یک سناریوی محدود تعریف و justify کند.

مدل مرزی

OWASP ASVS و NIST SSDF زمانی کنار هم مفیدند که scope متفاوت آن‌ها حفظ شود. ASVS requirementهای verification امنیت application را فراهم می‌کند و SSDF practiceهای توسعه امن software را سازمان می‌دهد. این دو checklist قابل جایگزینی نیستند و به‌تنهایی certification نمی‌سازند. baseline قابل دفاع، version/status منبع، applicability، evidence، rowهای open و residual risk را صریح نگه می‌دارد.

در هر بخش سه برچسب نگه دارید: «مشاهده‌شده»، «استنباط محدود» و «نیازمند بررسی». اگر evidence در دسترس نیست، نتیجه را unknown ثبت کنید؛ نام ابزار یا pass شدن یک happy path جای evidence را نمی‌گیرد.

1. منبع و status را pin کنید

requirement identifier بدون version ASVS evidence پایدار نیست. material نهایی و draft در SSDF باید دقیق label شود؛ آگاهی از draft اجازه معرفی آن به‌عنوان authority نهایی نیست.

2. Scopeها را جدا نگه دارید

rowهای ASVS درباره verification کنترل application هستند و rowهای SSDF درباره اجرای practice توسعه امن. crosswalk مفید evidence را link می‌کند، اما mapping یک‌به‌یک اختراع نمی‌کند.

3. Applicability دلیل می‌خواهد

PASS، FAIL، OPEN و NOT_APPLICABLE تصمیم هستند. N/A بدون rationale مبتنی بر threat، architecture یا process یک row بسته‌شده محسوب نمی‌شود.

4. Evidence باید قابل یافتن و متصل به build باشد

هر row باید test، review، artifact یا process record دقیق و release/build مرتبط را معرفی کند. dashboard سبز عمومی یا report قدیمی کافی نیست.

5. تکمیل baseline certification نیست

مجموعه انتخاب‌شده می‌تواند در threat/product boundary اعلام‌شده به release decision کمک کند؛ امنیت یا compliance همگانی را ثابت نمی‌کند.

روش پنج‌مرحله‌ای

  1. service boundary مصنوعی، threat summary، release identity و تاریخ evidence را freeze کنید.
  2. version ASVS و requirementهای انتخابی را ثبت و version/status publication مربوط به SSDF را جدا نگه دارید.
  3. برای هر row پیش از PASS/FAIL/OPEN/N/A، applicability rationale بنویسید.
  4. evidence locator دقیق اضافه و اتصال آن به همان build و behavior مورد نظر را verify کنید.
  5. version، publication status، locator و N/A rationale را mutate کنید؛ gate باید fail-closed و gap را حفظ کند.

مثال حل‌شده

یک account service مصنوعی دو reference از ASVS 5.0.0 و دو practice از SSDF 1.1 انتخاب می‌کند. row اول به authentication test متصل به build اشاره و PASS می‌شود؛ row دوم evidence ندارد و OPEN می‌ماند. یک practice SSDF به review record وصل است. material نسخه 1.2 فقط به‌عنوان draft awareness ثبت می‌شود و baseline نهایی را جایگزین نمی‌کند. حذف version، معرفی draft به‌عنوان final، حذف locator و N/A بدون rationale همگی رد می‌شوند.

ماتریس تصمیم و evidence

موضوعمرز/مالکevidenceتصمیم یا محدودیت
control در ASVS 5.0.0applicableauth test متصل به buildPASS در boundary انتخابی
control در ASVS 5.0.0applicableبدون evidenceOPEN
practice در SSDF 1.1applicablereview/process recordPASS فقط برای process evidence
آگاهی از draft نسخه 1.2authority نهایی نیسترکورد publication statusINFORMATIONAL
row نوع N/Athreat boundary متفاوتrationale مکتوبN/A با residual note

خطاهای محتمل و روش اصلاح

  • فرض mapping یک‌به‌یک و قابل جایگزینی میان ASVS و SSDF
  • تلقی baseline انتخابی به‌عنوان certification امنیت
  • معرفی draft نسخه SSDF به‌عنوان guidance نهایی
  • اعمال یکسان همه requirementها بدون applicability analysis

برای هر مورد، ادعا را محدود کنید، یک counterexample بسازید و بنویسید کدام مشاهده می‌تواند آن را تأیید یا رد کند.

تمرین انتقال

سناریو را طوری تغییر دهید که یکی از فرض‌های مثال دیگر برقرار نباشد. بدون کپی‌کردن تصمیم قبلی، رکورد رهگیری baseline راستی‌آزمایی امنیت نسخه ۱ را دوباره بسازید؛ سپس تفاوت decision rule و تفاوت دادهٔ ورودی را توضیح دهید.

این درس چه چیزی را ثابت نمی‌کند

این درس certification، تضمین production یا پوشش همه implementationها را ادعا نمی‌کند. نتیجه فقط در مرز سناریو، sourceهای تاریخ‌دار و observationهای ثبت‌شده معتبر است.

خودسنجی

  • [ ] آیا مسئولیت‌ها را از نام framework یا tool جدا کرده‌ام؟
  • [ ] آیا دست‌کم یک failure probe و نتیجه موردانتظار آن را نوشته‌ام؟
  • [ ] آیا fact، inference و design choice از هم مشخص‌اند؟
  • [ ] آیا non-claim و evidence گمشده را ثبت کرده‌ام؟
  • [ ] آیا transfer را روی context تغییرکرده و بدون پاسخ آماده انجام داده‌ام؟

منابع و مرز تازگی

sourceها در 2026-09-19 طبق Bible منجمدشده مرور شده‌اند. تاریخ review_due یک trigger برای بازبینی نسخه‌ای است؛ هیچ بسته‌ای نباید درجا و بدون نسخه جدید تغییر کند.

  • OWASP-ASVS — Used for ASVS purpose, current stable version 5.0.0, and guidance to version-pin requirement identifiers. (https://owasp.org/www-project-application-security-verification-standard/; review: 2026-10-02)
  • NIST-SSDF-11 — Used for final SSDF Version 1.1 scope as high-level secure software development practices. (https://csrc.nist.gov/pubs/sp/800/218/final; review: 2026-10-02)
  • NIST-SSDF-12-IPD — Used only to record that SSDF Version 1.2 is an Initial Public Draft, not final authority, at retrieval time. (https://csrc.nist.gov/pubs/sp/800/218/r1/ipd; review: 2026-10-02)
  • NIST-SSDF-PUBS — Used to distinguish the project publication status: 1.1 final and 1.2 draft at retrieval time. (https://csrc.nist.gov/projects/ssdf/publications; review: 2026-10-02)

ارزیابی

پاسخ‌نامه‌ی این درس در بسته‌ی آموزش وجود ندارد؛ خودت جواب بده و صادقانه علامت بزن. «نیاز به مرور» درس را به صف تکرار می‌فرستد.

SEC-016-S1 retrieval

lesson ✗AI ✗notes ✗

SEC-016-S2 application

lesson ✗AI ✗notes ✗

SEC-016-S3 diagnosis

lesson ✗AI ✗notes ✗

SEC-016-S4 decision

lesson ✗AI ✗notes ✗

SEC-016-S5 transfer

lesson ✗AI ✗notes ✗
ملاک‌های ارزیابی (rubric)
DimensionCriticalSufficient evidence
bounded security model correctnessyesExplanation preserves the owned trust/control boundary and declared assumptions.
evidence qualityyesPositive and negative observations are traceable and separated from inference.
scope disciplineyesAdjacent security outcomes and unsupported assurance claims are deferred.
transfer independenceyesChanged-context task is solved without decisive scaffold.

A submission passes only when every critical dimension is sufficient and the learner states missing evidence honestly. AI suggestions are not observed evidence; the learner remains accountable for the final bounded judgment.

منابع و تازگی

· TOOL_VOLATILE
Used for ASVS purpose, current stable version 5.0.0, and guidance to version-pin requirement identifiers.
· TOOL_VOLATILE
Used for final SSDF Version 1.1 scope as high-level secure software development practices.
· TOOL_VOLATILE
Used only to record that SSDF Version 1.2 is an Initial Public Draft, not final authority, at retrieval time.
· TOOL_VOLATILE
Used to distinguish the project publication status: 1.1 final and 1.2 draft at retrieval time.

مطالعهٔ موارد (case studies)

فایل‌های آزمایشگاه

با fixture امن محلی، رکورد رهگیری baseline راستی‌آزمایی امنیت نسخه ۱ را بسازید. ابتدا prediction را بنویسید؛ سپس baseline و failure probeهای اعلام‌شده را ثبت کنید و observation مثبت و منفی را نگه دارید. transfer را بدون کپی تصمیم مثال انجام دهید.

starter عمداً classification یا risk decision نهایی را انتخاب نمی‌کند. evaluate_record.py و evidence template را تکمیل کنید. اجرای python3 ../run_checks.py فقط environment و شکل fileها را بررسی می‌کند و تصمیم محتوایی شما را grade نمی‌کند.

مرز ایمنی: Synthetic defensive environment only; no real credentials, production systems, external targets, exploitation, vulnerability scanning or covert access.

رسانه و اسلایدهای درس

MAKNOW_SEC-016_DECISION_EVIDENCE_TABLE_v1.0.0.svg
DECISION EVIDENCE TABLE v1.0.0.svg
MAKNOW_SEC-016_FAILURE_REPAIR_v1.0.0.svg
FAILURE REPAIR v1.0.0.svg
MAKNOW_SEC-016_PRIMARY_MODEL_v1.0.0.svg
PRIMARY MODEL v1.0.0.svg
MAKNOW_SEC-016_WORKED_EXAMPLE_v1.0.0.svg
WORKED EXAMPLE v1.0.0.svg

فایل‌های آموزشی (دانلود)

XLSXSecurity Verification Baseline Traceability Record v1 v1.0.0.xlsxفایل‌های آموزشی (دانلود)
DOCXSecurity Verification Baseline Traceability Record v1 WORKSHEET v1.0.0.docxفایل‌های آموزشی (دانلود)
PDFSecurity Verification Baseline Traceability Record v1 WORKSHEET v1.0.0.pdfفایل‌های آموزشی (دانلود)