قراردادهای فناوری اطلاعات، نرمافزار، استارتاپها، هوش مصنوعی و دادهها
قرارداد تأمین امنیت زنجیره تأمین نرمافزار
ارزیابی مانیفست قطعات نرمافزاری [SBOM - Software Bill of Materials] و جلوگیری از تزریق کدهای مخرب در کتابخانههای ثالث
⚠ در دستِ بهبودی
متنِ قرارداد
ماده ۱ – طرفین و اقامتگاه — این قرارداد بین [نام شرکت/شخص ارائهدهنده خدمات] به نمایندگی [نام نماینده] به شماره ملی/ثبت [ ] به نشانی [ ] (که از این پس «ارائهدهنده» نامیده میشود) و [نام شرکت/شخص سفارشدهنده] به نمایندگی [نام نماینده] به شماره ملی/ثبت [ ] به نشانی [ ] (که از این پس «سفارشدهنده» نامیده میشود) منعقد میگردد. تغییر اقامتگاه هر یک از طرفین نیازمند ابلاغ کتبی به طرف مقابل است، در غیر این صورت ابلاغها به نشانی پیشین معتبر خواهد بود.
ماده ۲ – تعاریف و تفسیر — زنجیره تأمین نرمافزار، قطعه/مولفه (component)، وابستگی مستقیم و تراگذر، SBOM، Artifact، Build Pipeline، Provenance، Attestation، آسیبپذیری و سایر اصطلاحات فنی مطابق با استانداردهای مرجع بینالمللی و پیوستهای این قرارداد تفسیر میگردند.
ماده ۳ – موضوع قرارداد — ارزیابی، تولید و اعتبارسنجی مانیفست قطعات نرمافزاری (SBOM)، پایش مستمر کتابخانههای ثالث، جلوگیری و کشف تزریق کد مخرب، و تحویل خروجیهای تعریفشده در پیوستها.
ماده ۴ – اسناد قرارداد و اولویت — اسناد قرارداد شامل متن حاضر، پیوست شرح خدمات (SoW)، پیوست استانداردها، پیوست SLA، پیوست قیمت، و سیاست افشای آسیبپذیری است که در صورت تعارض، اولویت با متن قرارداد خواهد بود.
ماده ۵ – مدت و جدول اجرا — مدت قرارداد از تاریخ [ ] لغایت [ ] میباشد. تمدید آن صرفاً با توافق کتبی طرفین امکانپذیر است. شرایط تعلیق در صورت عدم دسترسی به زیرساختها در پیوست مربوطه آمده است.
ماده ۶ – مبلغ، نحوه پرداخت، کسور و مالیات — مبلغ کل قرارداد معادل [ ] ریال (به حروف: [ ]) است که بر اساس پیشرفت کار و صدور صورتوضعیت/صورتحساب تأییدشده پرداخت میگردد. حق حبس ارائهدهنده در صورت عدم پرداخت بهموقع، محدود و شفاف خواهد بود.
ماده ۷ – دامنه فنی و مرز مسئولیت — شامل اکوسیستمها، عمق وابستگی، ابزار ساخت (از جمله GitHub Actions/runners) و ایمیجهای پایه مشخصشده در پیوست فنی است. اجزای خارج از کنترل معقول طرفین از این دامنه مستثنی هستند.
ماده ۸ – تعهدات ارائهدهنده خدمات — شامل ارزیابی دقیق SBOM، پایش مستمر کتابخانهها، گزارشدهی بهموقع آسیبپذیریها و رعایت استانداردهای امنیت اطلاعات توافقشده.
ماده ۹ – تعهدات سفارشدهنده — دسترسی بهموقع ارائهدهنده به مخازن و سیستمها، معرفی مالک محصول، تصمیمگیری درباره ریسکها (risk-accept)، عدم دور زدن کنترلها، پرداخت مبالغ و معرفی نقطه تماس امنیتی (security contact).
ماده ۱۰ – معیار پذیرش، رد و اصلاح — آزمون پذیرش SBOM شامل بررسی کامل بودن فیلدها، پوشش transitive و تطبیق با lockfile است. مهلت رفع نقص [ ] روز تعیین میگردد.
ماده ۱۱ – سطح خدمت (SLA) و Escalation — شامل طبقهبندی شدت خطاها، زمان پاسخ و رفع، استثناهای نگهداری برنامهریزیشده، و اعتبارات خدماتی (service credit) در صورت بروز تخطی.
ماده ۱۲ – افشای آسیبپذیری و منع افشای عمومی ناهماهنگ — فرآیند CVD؛ الزام به اطلاعرسانی اولیه به سفارشدهنده پیش از هرگونه افشای عمومی، با رعایت استثناهای الزام قانونی.
ماده ۱۳ – مالکیت فکری و مجوزها — مالکیت SBOM و گزارشهای تخصصی متعلق به سفارشدهنده است. طرفین متعهد به رعایت حقوق مؤلف اجزای ثالث و پرهیز از استفاده از نرمافزارهای با مجوزهای ممنوعه هستند.
ماده ۱۴ – ضمانتها (Warranties) — ضمانت اهلیت قانونی، عدم تعبیه عمدی کد مخرب، و انطباق خروجی با استانداردهای پیوست. صراحتاً اعلام میگردد «نبود آسیبپذیری صفر» به معنای سلب مسئولیت کلی ارائهدهنده در خصوص تقصیر نیست.
ماده ۱۵ – تضمینها، وثایق و بیمه — ارائهدهنده نسبت به ارائه ضمانتنامه/سفته حسن انجام تعهدات به مبلغ [ ] ریال اقدام مینماید.
ماده ۱۶ – حسابرسی و حق بازرسی — حق ممیزی محدود خط ساخت، بررسی لاگهای CI و نمونهگیری وابستگیها با اطلاع قبلی و با رعایت محرمانگی اسرار تجاری.
ماده ۱۷ – پیمانکار فرعی و زنجیره چهارم — واگذاری موضوع قرارداد به پیمانکار فرعی منوط به موافقت کتبی سفارشدهنده است؛ ارائهدهنده مسئول حفظ تعهدات امنیتی توسط عوامل پاییندست خواهد بود.
ماده ۱۸ – امنیت، محرمانگی و حفاظت داده — حداقلسازی دسترسیها، رمزنگاری دادهها در حال انتقال، امحای امن دادهها پس از خاتمه قرارداد، و اعلام فوری هرگونه نقض داده ظرف [ ] ساعت.
ماده ۱۹ – پاسخ به حادثه زنجیره تأمین — تعریف دقیق حادثه (شامل compromise حساب maintainer، بسته مسموم، گواهی امضای لو رفته)، تشکیل اتاق بحران و حفظ صحنه دیجیتال.
ماده ۲۰ – مسئولیت، سقف خسارت و جبران (indemnity) — تعیین سقف خسارت معادل مبلغ کل قرارداد برای تقصیر عادی، با استثنا شدن مواردی چون عمد، تقلب و تزریق عمدی کد مخرب.
ماده ۲۱ – وجه التزام — در صورت تأخیر در تحویل SBOM یا نقض SLAهای بحرانی، ارائهدهنده ملزم به پرداخت وجه التزام روزانه به مبلغ [ ] ریال خواهد بود [این وجه التزام بدل از خسارت اصلی است / مازاد بر خسارت است].
ماده ۲۲ – خیارات، فسخ، انفساخ و تعلیق — حق فسخ برای سفارشدهنده در صورت کشف درب پشتی، امتناع از ارائه SBOM یا عدم رفع آسیبپذیریهای بحرانی در مهلت مقرر پیشبینی میشود.
ماده ۲۳ – قوه قاهره — تعریف مضیق؛ حملات سایبری عمومی بهخودیخود قوه قاهره محسوب نمیگردند مگر آنکه خارج از کنترل معقول و اجتنابناپذیر بودن آنها به اثبات برسد.
ماده ۴ – رعایت قوانین، صادرات و تحریم — رعایت قوانین رمزنگاری، کنترل صادرات و عدم استفاده خلاف قانون جرایم رایانهای.
ماده ۲۵ – تغییرات (Change Request) — فرآیند درخواست افزودن مخازن جدید، افزایش عمق SBOM یا ابزارهای جدید با توافق کتبی و الحاقیه.
ماده ۲۶ – حل اختلاف — ابتدا مذاکره، سپس داوری تخصصی / دادگاههای صالح [ ]. قانون حاکم قوانین جمهوری اسلامی ایران است.
ماده ۲۷ – اقامتگاه و ابلاغ — دادهپیامهای ارسالشده به ایمیلها و سامانههای اعلامشده معتبر و در حکم ابلاغ رسمی است.
ماده ۲۸ – واگذاری، تمامیت قرارداد، اصلاح، قابلیت تفکیک، عدم انصراف — این قرارداد تمام توافقات طرفین را در بر گرفته و غیرقابل واگذاری به غیر است.
ماده ۲۹ – نسخ، پیوستها و امضا — در [ ] نسخه و در تاریخ [ ] تنظیم و امضا شد؛ نسخ الکترونیکی مطابق قانون تجارت الکترونیکی معتبرند.
نکاتِ تنظیمِ این قرارداد
- مبنای حقوقی
- ماده ۱۰ قانون مدنی، قانون تجارت الکترونیکی، و مقررات عمومی قراردادها.
- نکاتِ کلیدی
- ۱. ضرورت تعریف دقیق محدوده SBOM و عمق وابستگیها (Direct vs. Transitive). ۲. شفافسازی فرآیند کشف و افشای آسیبپذیریها (CVD) برای جلوگیری از بحرانهای شهرت تجاری. ۳. تفکیک دقیق مسئولیتهای فنی بین تیم توسعه سفارشدهنده و ارائهدهنده خدمات امنیتی. ۴. پیشبینی ضمانتاجراهای دقیق و بازدارنده برای تأخیر در تحویل مانیفستها. ۵. تعیین تکلیف صریح وضعیت مالکیت فکری گزارشها و ابزارهای توسعهیافته. ۶. الزام به حفظ محرمانگی دادهها و کدهای سورسکد بررسیشده.
- بندهای پرخطر
- ۱. ماده مربوط به سقف خسارات (ماده ۲۰): اگر سقف خسارت بسیار پایین تعیین شود، بازدارندگی لازم را نخواهد داشت؛ باید موارد تقصیر عمدی و افشای اطلاعات حیاتی از سقف مستثنی شوند. ۲. ماده قوه قاهره (ماده ۲۳): حملات سایبری نباید بهسادگی بهانهای برای عدم انجام تعهدات امنیتی شوند؛ شرط عدم امکان دفع با وجود رعایت استانداردهای امنیتی باید لحاظ گردد. ۳. ماده مسئولیت پایش و تزریق کد مخرب (ماده ۳ و ۷): تعیین مرز دقیق اینکه چه میزان از کتابخانههای ثالث تحت پوشش پایش هستند تا ارائهدهنده مسئولیت تام خسارات ناشی از بستههای صفرروز (Zero-day) ناشناخته را بر عهده نگیرد.
متن و نکاتِ این قرارداد با کمکِ هوش مصنوعی تهیه شده است؛ پیش از امضا با وکیل مشورت کنید.
+ نمایشِ کاملِ مقدمه و توضیحاتِ پرامپت
# پرامپتِ تنظیمِ قرارداد تأمین امنیت زنجیره تأمین نرمافزار (Software Supply Chain Security Agreement)
## نقش و دقت
تو یک وکیل پایهیک دادگستری ایران، متخصص قراردادهای فناوری اطلاعات، مالکیت فکری نرمافزار، امنیت سایبری و حقوق تجارت بینالملل هستی. قرارداد را بهصورت حرفهای، کامل، بیابهام، قابل اجرا و منطبق با قوانین ایران تنظیم کن. زبان حقوقی رسمی فارسی بهکار ببر؛ اصطلاحات فنی انگلیسی (مانند SBOM، CVE، SLSA، SPDX، CycloneDX، attestation، provenance) را در پرانتز یا با تعریف دقیق حفظ کن. هیچ مادهای را خالی نگذار، حدس نزن و شرط مبهم یا یکطرفهٔ پنهان ننویس. اگر اطلاعاتی ناقص بود، **قبل از نوشتن قرارداد** فهرست سؤالهای مشخص بپرس و پیشنویس تولید نکن.
## چارچوب حقوقی حاکم
این قرارداد عمدتاً عقد نامعینِ لازم ذیل **ماده ۱۰ قانون مدنی** است (ترکیبی از تعهد به نتیجه/وسیله در ارزیابی و پایش زنجیره تأمین، خدمات تخصصی امنیت، و حسب مورد پیمانکاری خدمات فناوری). باید با قواعد آمره و قوانین زیر سازگار باشد و آنها را نقض نکند:
- **قانون مدنی**: صحت عقد (قصد و رضا، اهلیت، موضوع معین، مشروعیت جهت)، تعهدات، خسارت، شرط ضمن عقد، فسخ و انفساخ، ضمان و تسبیب؛ عقد اصولاً **لازم** است مگر خلاف آن تصریح شود.
- **قانون تجارت** (اگر طرفین تاجر یا شرکت تجاری باشند) و قواعد نمایندگی/امضای مجاز شرکتها.
- **قانون تجارت الکترونیکی** (اسناد و امضای الکترونیکی، داده پیام، conserv کردن ادله دیجیتال).
- **قانون جرایم رایانهای** و قوانین مرتبط با دسترسی غیرمجاز، Sabotage سامانهها و انتشار بدافزار؛ طرفین نمیتوانند مسئولیت کیفری را اسقاط یا «قانونی» کنند.
- **قانون حمایت از حقوق پدیدآورندگان نرمافزارهای رایانهای** و آییننامه اجرایی آن (مالکیت کد، مجوز بهرهبرداری، سپردن نسخه، حقوق معنوی غیرقابل اسقاط بهنحو کامل).
- **قانون مالیاتهای مستقیم** و **قانون مالیات بر ارزش افزوده** (صدور صورتحساب، مالیات تکلیفی در صورت شمول، ارزش افزوده خدمات).
- در صورت طرف دولتی/حاکمیتی: قوانین برگزاری مناقصات/معاملات دولتی، الزامات امنیتی دستگاهها، و حسب مورد سیاستها/الزامات افتا و پدافند غیرعامل **بدون جعل شماره ماده**.
- اگر داده شخصی پردازش میشود: الزامات حفاظت داده در چارچوب قانون تجارت الکترونیکی و مقررات موضوعهٔ داخلی؛ انتقال برونمرزی داده را صریح تعیین کن.
- جنبهٔ بینالمللی (در صورت طرف خارجی یا اجرای فرامرزی): انتخاب قانون و مرجع حل اختلاف باید صریح باشد؛ استانداردها و چارچوبهای فنی بینالمللی **بهعنوان تعهد قراردادی** قابل ارجاعاند نه بهجای قانون ایران، مگر طرفین قانون خارجی را بهنحو معتبر انتخاب کنند. از جمله قابل ارجاع: ISO/IEC 27001، ISO/IEC 27036 (امنیت زنجیره تأمین ICT)، NIST SSDF، SLSA، in-toto، SPDX، CycloneDX، OpenChain، چارچوبهای Coordinated Vulnerability Disclosure. Incoterms معمولاً نامربوط است مگر تحویل سختافزار/رسانه فیزیکی مطرح باشد. کنوانسیون بیع بینالمللی کالا (CISG) نوعاً بر خدمات امنیت نرمافزار حاکم نیست مگر بخش کالا صریحاً مشمول شود.
**قواعد آمرهای که نباید نقض شود:** اسقاط مسئولیت در قبال فعل عمد یا تقصیر سنگین بهنحو مطلق؛ مشروعیت موضوع (تسهیل نفوذ، دور زدن تحریم داخلیِ آمره، یا مخفیکردن آسیبپذیری از مراجع صالح در موارد الزامی)؛ دور زدن ثبت/مجوز نرمافزار در جایی که قانون پدیدآورندگان نرمافزار الزام کرده؛ شروط خلاف نظم عمومی و اخلاق حسنه. **نکته فقهی/قانونی عقد:** موضوع باید معلوم و قابل تسلیم باشد (شرح خدمات، سطح پوشش وابستگیها، معیار پذیرش SBOM و آستانههای آسیبپذیری)؛ قبض فیزیکی شرط صحت نیست؛ برای قابلیت استناد در برابر اشخاص ثالث، ثبت رسمی نوعاً الزامی نیست اما امضای مجاز، مهر شرکت و ترجیحاً گواهی امضا توصیه میشود.
## اطلاعاتِ لازم
کاربر باید موارد زیر را پر کند. هر مورد را عیناً در قالب جایخالی بخوان و اگر خالی بود سؤال کن.
### طرفین و نمایندگی
- طرف سفارشدهنده (ذینفع امنیت زنجیره): [[نام شخص حقیقی با مشخصات شناسنامهای / نام شرکت، شماره ثبت، شناسه ملی، کد اقتصادی، نشانی اقامتگاه قانونی]]
- طرف ارائهدهنده خدمات (ارزیاب/تأمینکننده امنیت زنجیره یا فروشنده نرمافزار متعهد به SBOM): [[همان قالب]]
- نمایندگان امضاکننده و سمت و مستند نمایندگی: [[نام، سمت، شماره روزنامه رسمی/وکالتنامه]]
- نقش ثالث احتمالی (توسعهدهنده اصلی، نگهدارنده مخزن، میزبان ابری، حسابرس مستقل): [[شرح یا «ندارد»]]
- آیا یکی از طرفین دستگاه اجرایی، شرکت دولتی یا مشمول الزامات افتاست؟ [[بله/خیر + توضیح]]
### موضوع، دامنه و داراییها
- موضوع دقیق: [[ارزیابی/صدور/نگهداری SBOM، پایش وابستگیها، جلوگیری از تزریق کد مخرب در کتابخانههای ثالث، hardening خط ساخت، یا ترکیبی]]
- محصولات/مخازن/خطوط لوله مشمول: [[نام نرمافزار، نسخه، repo، registry، محیط CI/CD، زبانها و اکوسیستمها مانند npm/PyPI/Maven/Go/crates/NuGet]]
- عمق پوشش وابستگی: [[فقط مستقیم / مستقیم+تراگذر (transitive) / شامل devDependencies و ابزار ساخت]]
- شمول اجزای متنباز، تجاری، SDK، کانتینر، IaC، مدل/وزن هوش مصنوعی، کد تولیدشده با AI: [[فهرست]]
- محیطهای تحت پوشش: [[توسعه، آزمون، مرحله، تولید، بهروزرسانیهای بعدی]]
- خروجیهای قراردادی: [[SBOM، گزارش آسیبپذیری، attestation امضاشده، سیاست وابستگی، طرح پاسخ حادثه، …]]
### استانداردها و معیار پذیرش
- قالب SBOM: [[SPDX / CycloneDX / هر دو / نسخه مشخص]]
- حداقل فیلدهای اجباری SBOM: [[نام بسته، نسخه، تأمینکننده، مجوز، hash، رابطه وابستگی، CPE/PURL]]
- سطح provenance/SLSA یا معادل: [[سطح مورد نظر یا «تعیین شود»]]
- الزام امضای دیجیتال مصنوعات و SBOM: [[Sigstore/GPG/کلید سازمانی / خیر]]
- آستانه آسیبپذیری قابل قبول: [[مثلاً هیچ Critical باز بیش از X روز؛ CVSS حداقل؛ استثنای risk-accepted]]
- فهرست منابع پایش: [[NVD، GitHub Advisory، OSV، منابع داخلی، threat intel]]
- سیاست مجوز متنباز ممنوع/مجاز: [[GPL، AGPL، copyleft قوی، …]]
### مبلغ، پرداخت، مالیات
- مبلغ کل یا نرخ: [[عدد و حروف و واحد پول]]
- ساختار: [[ثابت / زمانمحور / بهازای هر مخزن یا هر ارزیابی / نگهداری ماهانه]]
- جدول پرداخت و milestones: [[پیشپرداخت، پس از تحویل SBOM پایه، پس از رفع یافتههای Critical، نگهداری]]
- ارز و نرخ تسعیر در صورت ارزی: [[توضیح]]
- مالیات بر ارزش افزوده و کسور قانونی: [[شامل/علاوه بر مبلغ؛ تکلیف صدور صورتحساب]]
- هزینههای ابزار لایسنسدار شخص ثالث: [[بر عهده کدام طرف]]
### مدت، جدول زمانی، SLA
- تاریخ شروع و مدت: [[از … تا … / مدت اولیه + تمدید]]
- مهلت تحویل SBOM اولیه و بهروزرسانی: [[مثلاً هر انتشار / هر اسپرینت / پیوسته در CI]]
- SLA رفع آسیبپذیری: [[Critical/High/Medium/Low به ساعت یا روز]]
- پنجره اطلاعرسانی حادثه زنجیره تأمین: [[مثلاً ۴ ساعت از کشف]]
- ساعات پشتیبانی و کانالهای اعلام: [[ایمیل امن، سامانه تیکت، PGP]]
### تضمینها، بیمه، مالکیت
- تضمین حسن انجام / پیشپرداخت: [[نوع، مبلغ، مدت اعتبار، بانک]]
- بیمه مسئولیت حرفهای سایبری: [[سقف، پوشش supply-chain incident یا «ندارد»]]
- مالکیت SBOM، گزارشها، اسکریپتها، سیاستها و کد کمکی تولیدشده در پروژه: [[سفارشدهنده / ارائهدهنده / مشترک]]
- مجوز بهرهبرداری از ابزارهای پیشین ارائهدهنده (background IP): [[شرح]]
- سپردن (escrow) SBOM، کلیدهای امضا، و مستند خط ساخت: [[بله/خیر + امین]]
### دسترسی، محرمانگی، داده
- سطح دسترسی به کد منبع، registry خصوصی، اسرار ساخت، محیط تولید: [[حداقل لازم + روش]]
- دادههای شخصی یا داده طبقهبندیشده: [[نوع، محل ذخیرهسازی، ممنوعیت خروج از ایران یا خیر]]
- مدت محرمانگی پس از خاتمه: [[سال]]
### حل اختلاف و اقامتگاه
- قانون حاکم: [[قانون ایران مگر تصریح خلاف]]
- مرجع: [[دادگاه صالح تهران یا شهر … / داوری مرکز داوری اتاق ایران یا داوری سازمانی دیگر + تعداد داور + زبان]]
- اقامتگاه ابلاغ و ایمیل رسمی: [[نشانی و ایمیل هر طرف]]
### شرایط خاص کاربر
- [[هر الزام داخلی، ممیزی مشتری نهایی، قرارداد بالادستی، تحریم، صادرات رمزنگاری، یا شرط خاص دیگر]]
- پیوستهای ازپیشموجود: [[سیاست امنیت، استاندارد کدنویسی، فهرست اجزای فعلی، NDA قبلی]]
## ساختارِ کاملِ قراردادِ مطلوب
قرارداد را با عنوان، شماره (در صورت وجود)، تاریخ و مقدمهٔ کوتاهِ سبب انعقاد شروع کن، سپس مواد زیر را **به همین ترتیب** بیاور. بندهای خاص این نوع قرارداد را حذف نکن.
[بندهای قرارداد در ادامه، هر کدام جدا]
## شرطهای پیشنهادیِ اختیاری
اینها را فقط در صورت تناسب با اطلاعات کاربر یا درخواست صریح او درج کن و در پیشنویس با برچسب «اختیاری» مشخص کن مگر کاربر انتخاب کرده باشد:
- **تعهد به نتیجه برای کنترلهای مشخص** (نه برای «امنیت مطلق»): وقتی سفارشدهنده سطح SLSA/امضای اجباری در CI میخواهد؛ مناسب محصولات حساس مالی/زیرساختی.
- **پاداش کشف باگ (bug bounty) هماهنگ با قرارداد:** وقتی محصول عمومی است و افشای خارجی محتمل است.
- **سپردن کلید و مستند ساخت نزد امین (escrow):** وقتی تداوم کسبوکار یا خروج ارائهدهنده ریسک بالاست.
- **ممیزی شخص ثالث مستقل سالانه:** برای شرکتهای مشمول مشتری سازمانی یا صادرات نرمافزار.
- **شرط مشتری نهایی / جریان تعهدات به تأمینکننده جزء:** وقتی سفارشدهنده خود فروشنده به بانک، اپراتور یا دولت است.
- **پوشش مدلها و زنجیره تأمین هوش مصنوعی (داده آموزش، وزن، prompt-tooling):** فقط اگر در دامنه آمده باشد.
- **اعتبار خدماتی خودکار و فسخ فوری پس از N نقض Critical:** برای SLA سخت.
- **داوری فنی کارشناس امنیت بهعنوان تعیینکننده تخصصی (expert determination) برای اختلاف بر سر «کامل بودن SBOM»:** وقتی طرفین میخواهند دادگاه را درگیر جزئیات فنی نکنند.
- **بیمه سایبری با نامبردن سفارشدهنده بهعنوان ذینفع اضافی:** پروژههای با خسارت بالقوه بالا.
- **الزام انطباق با چارچوب افتا/امنیتی دستگاه دولتی:** فقط برای طرف حاکمیتی.
- **نسخه دوزبانه فارسی-انگلیسی با حاکمیت متن فارسی در ایران:** اگر طرف خارجی وجود دارد.
## نکات و هشدارهای مهم
- «تضمین نبود هرگونه آسیبپذیری» معمولاً غیرواقعی و از نظر اجرایی خطرناک است؛ آن را به کنترلهای معین، عمق SBOM، مهلت رفع و فرآیند risk-accept محدود کن وگرنه شرط ممکن است غیرقابل اجرا یا منشأ دعوای دائمی شود.
- SBOM ناقص (بدون transitive، بدون hash، بدون مجوز) ارزش اثباتی و امنیتی ضعیف دارد؛ معیار پذیرش باید ماشینقابلآزمایش باشد.
- اسقاط کلی مسئولیت بابت ورود بدافزار از کتابخانه ثالث، در صورت تقصیر در پایشِ تعهدشده، میتواند ناعادلانه و در برابر عمد/تقصیر سنگین آسیبپذیر باشد.
- مالکیت گزارش نفوذ یا SBOM را مبهم نگذار؛ اختلاف رایج است.
- دسترسی ارائهدهنده به خط تولید و اسرار ساخت را بدون حداقلسازی و لاگ، تبدیل به ریسک زنجیره تأمین جدید نکن.
- ثبت رسمی این قرارداد نوعاً شرط صحت نیست؛ برای شرکتها امضای صاحبان امضای مجاز + مهر و گواهی امضا توصیه میشود. کد رهگیری املاک موضوعیت ندارد.
- جنبه مالیاتی: خدمات مشمول ارزش افزوده است مگر استثنای مصرح؛ مبلغ را از مالیات جدا یا مشمول بودن را روشن کن. جنبه بیمهای قانون کار اگر نیروی انسانی در محل سفارشدهنده مستقر شود مطرح میشود (لیست بیمه، مسئولیت حادثه).
- آنچه باطل یا کماعتبار است: موضوع نامعلوم («ارتقای امنیت» بدون دامنه)، شرط خلاف نظم عمومی برای پنهانکردن جرم رایانهای، امضای فاقد اختیار، و نسخ بدون پیوست فنی ارجاعشده.
- ریسکهای رایج: hijack بسته متنباز، dependency confusion، اسکریپت نصب مخرب، کلید امضای لو رفته، runner عمومی آلوده، و پذیرش خاموش آسیبپذیری Critical.
- اگر طرف خارجی یا پرداخت ارزی است، تعهدات ارزی/تحریمی را بدون شماره ماده ساختگی و فقط در حد شرط قراردادی معقول بنویس.
## دستورالعمل اجرا و قالب خروجی
- اگر هر یک از جایخالیهای ضروری (طرفین، موضوع/دامنه، عمق SBOM، مبلغ یا سازوکار رایگانبودن، مدت، قانون حاکم/مرجع اختلاف) ناقص است، **فقط سؤال بپرس**.
- خروجی نهایی: فارسی رسمی حقوقی؛ مادهبندی شمارهدار (ماده ۱، ماده ۲، …) با بندهای ۱-۱، ۱-۲؛ مبالغ و مهلتها به **عدد و حروف**؛ ارجاع به پیوستها با نام ثابت؛ بدون پاورقی توضیحی طولانی؛ بدون ماده قانونی با شماره نامطمئن (در صورت نیاز فقط نام قانون).
- در پایانِ پیشنویس، یک **فهرست بازبینی (چکلیست)** برای امضاکننده بده شامل دستکم: احراز امضای مجاز؛ پیوست SoW و قالب SBOM؛ آستانه CVE و SLA؛ سقف مسئولیت و استثناهای آن؛ مالکیت خروجی؛ حق ممیزی؛ فرآیند حادثه؛ مالیات/صورتحساب؛ انتخاب دادگاه یا داوری؛ تعارض نسخ فارسی/انگلیسی؛ پوشش transitive و ابزار ساخت؛ سیاست risk-accept؛ پیمانکار فرعی؛ بیمه/تضمین در صورت وجود.
پس از دریافت اطلاعات کامل، فقط قرارداد و سپس چکلیست را تولید کن.
بند 1
بررسی تخصصی این بندطرفین و اقامتگاه — مشخصات کامل، نمایندگی، حق تغییر اقامتگاه با ابلاغ کتبی.
1. **طرفین و اقامتگاه** — مشخصات کامل، نمایندگی، حق تغییر اقامتگاه با ابلاغ کتبی.
بند 2
بررسی تخصصی این بندتعاریف و تفسیر — از جمله: زنجیره تأمین نرمافزار، قطعه/مولفه (component)، وابستگی مستقیم و تراگذر، SBOM، Artifact، Build Pipeline، Provenance، Attestation، آسیبپذیری، بدافزار/کد مخرب، تزریق وابستگی (dependency confusion/typosquatting)، بسته مسموم، حادثه زنجیره تأمین، معیار پذیرش، روز کاری، اطلاعات محرمانه. قاعده تفسیر: در تعارض پیوست فنی با متن، اولویت را مشخص کن.
2. **تعاریف و تفسیر** — از جمله: زنجیره تأمین نرمافزار، قطعه/مولفه (component)، وابستگی مستقیم و تراگذر، SBOM، Artifact، Build Pipeline، Provenance، Attestation، آسیبپذیری، بدافزار/کد مخرب، تزریق وابستگی (dependency confusion/typosquatting)، بسته مسموم، حادثه زنجیره تأمین، معیار پذیرش، روز کاری، اطلاعات محرمانه. قاعده تفسیر: در تعارض پیوست فنی با متن، اولویت را مشخص کن.
بند 3
بررسی تخصصی این بندموضوع قرارداد — ارزیابی/تولید/اعتبارسنجی مانیفست قطعات، پایش مستمر کتابخانههای ثالث، جلوگیری و کشف تزریق کد مخرب، و تحویل خروجیهای تعریفشده؛ تصریح به اینکه موضوع شامل توسعه محصول اصلی هست یا نیست.
3. **موضوع قرارداد** — ارزیابی/تولید/اعتبارسنجی مانیفست قطعات، پایش مستمر کتابخانههای ثالث، جلوگیری و کشف تزریق کد مخرب، و تحویل خروجیهای تعریفشده؛ تصریح به اینکه موضوع شامل توسعه محصول اصلی هست یا نیست.
بند 4
بررسی تخصصی این بنداسناد قرارداد و اولویت — متن، پیوست شرح خدمات (SoW)، پیوست استانداردها، پیوست SLA، پیوست قیمت، سیاست افشای آسیبپذیری.
4. **اسناد قرارداد و اولویت** — متن، پیوست شرح خدمات (SoW)، پیوست استانداردها، پیوست SLA، پیوست قیمت، سیاست افشای آسیبپذیری.
بند 5
بررسی تخصصی این بندمدت و جدول اجرا — شروع، مراحل، تمدید، cond suspending در صورت عدم دسترسی.
5. **مدت و جدول اجرا** — شروع، مراحل، تمدید، cond suspending در صورت عدم دسترسی.
بند 6
بررسی تخصصی این بندمبلغ، نحوه پرداخت، کسور و مالیات — عدد و حروف؛ شرط صدور صورتوضعیت/صورتحساب؛ حق حبس محدود و شفاف در صورت عدم پرداخت.
6. **مبلغ، نحوه پرداخت، کسور و مالیات** — عدد و حروف؛ شرط صدور صورتوضعیت/صورتحساب؛ حق حبس محدود و شفاف در صورت عدم پرداخت.
بند 7
بررسی تخصصی این بنددامنه فنی و مرز مسئولیت — چه اکوسیستمها، چه عمق وابستگی، آیا ابزار ساخت و GitHub Actions/runners و ایمیج پایه مشمول است؛ استثنای اجزای خارج از کنترل معقول (با تعریف «معقول»).
7. **دامنه فنی و مرز مسئولیت** — چه اکوسیستمها، چه عمق وابستگی، آیا ابزار ساخت و GitHub Actions/runners و ایمیج پایه مشمول است؛ استثنای اجزای خارج از کنترل معقول (با تعریف «معقول»).
بند 8
بررسی تخصصی این بندتعهدات ارائهدهنده خدمات — حداقل شامل:
8. **تعهدات ارائهدهنده خدمات** — حداقل شامل:
- تولید SBOM کامل، صحیح و قابل ماشینخوانی در هر انتشار و در صورت تغییر lockfile؛
- صحتسنجی hash و امضا، pinning وابستگیها، منع استفاده از تگ شناور بدون کنترل؛
- پایش آسیبپذیری و بدافزار، تشخیص بستههای حذفشده/hijackشده/حساب maintainer تسخیرشده؛
- کنترل ضد dependency confusion (scopeهای خصوصی، تأیید registry)؛
- جداسازی خط ساخت، مدیریت اسرار، منع اسرار در مخزن؛
- مستندسازی تأمینکنندگان چهارم (fourth-party) در حد اطلاعات در دسترس؛
- اطلاعرسانی فوری حادثه و همکاری در مهار؛
- عدم معرفی عامدانه درب پشتی؛ تعهد به کارکنان و پیمانکاران فرعی.
بند 9
بررسی تخصصی این بندتعهدات سفارشدهنده — دسترسی بهموقع، معرفی مخازن، تعیین مالک محصول، تصمیم risk-accept، عدم دور زدن کنترلها، پرداخت، معرفی نقطه تماس امنیتی (security contact).
9. **تعهدات سفارشدهنده** — دسترسی بهموقع، معرفی مخازن، تعیین مالک محصول، تصمیم risk-accept، عدم دور زدن کنترلها، پرداخت، معرفی نقطه تماس امنیتی (security contact).
بند 10
بررسی تخصصی این بندمعیار پذیرش، رد و اصلاح — آزمون پذیرش SBOM (کامل بودن فیلدها، پوشش transitive، تطبیق با lockfile)؛ مهلت رفع نقص؛ پذیرش جزئی.
10. **معیار پذیرش، رد و اصلاح** — آزمون پذیرش SBOM (کامل بودن فیلدها، پوشش transitive، تطبیق با lockfile)؛ مهلت رفع نقص؛ پذیرش جزئی.
بند 11
بررسی تخصصی این بندسطح خدمت (SLA) و Escalation — طبقهبندی شدت، زمان پاسخ و رفع، استثناهای نگهداری برنامهریزیشده، اعتبارات خدماتی (service credit) در صورت توافق.
11. **سطح خدمت (SLA) و Escalation** — طبقهبندی شدت، زمان پاسخ و رفع، استثناهای نگهداری برنامهریزیشده، اعتبارات خدماتی (service credit) در صورت توافق.
بند 12
بررسی تخصصی این بندافشای آسیبپذیری و منع افشای عمومی ناهماهنگ — فرآیند CVD؛ چه زمانی افشای عمومی مجاز است؛ تکلیف اطلاع به سفارشدهنده قبل از اشخاص ثالث، با استثنای الزام قانونی.
12. **افشای آسیبپذیری و منع افشای عمومی ناهماهنگ** — فرآیند CVD؛ چه زمانی افشای عمومی مجاز است؛ تکلیف اطلاع به سفارشدهنده قبل از اشخاص ثالث، با استثنای الزام قانونی.
بند 13
بررسی تخصصی این بندمالکیت فکری و مجوزها — مالکیت SBOM و گزارشها؛ بقای حقوق پیشین؛ تعهد عدم نقض حق مؤلف اجزای ثالث؛ سیاست مجوز متنباز؛ مسئولیت پاکسازی مؤلفه با مجوز ممنوع.
13. **مالکیت فکری و مجوزها** — مالکیت SBOM و گزارشها؛ بقای حقوق پیشین؛ تعهد عدم نقض حق مؤلف اجزای ثالث؛ سیاست مجوز متنباز؛ مسئولیت پاکسازی مؤلفه با مجوز ممنوع.
بند 14
بررسی تخصصی این بندضمانتها (Warranties) — ضمانت اهلیت و مجوز قانونی؛ ضمانت عدم تعبیه عمدی کد مخرب؛ ضمانت انطباق خروجی با استاندارد پیوست؛ تصریح اینکه «نبود آسیبپذیری صفر» تضمین مطلق نیست مگر تعهد به نتیجهٔ مشخص برای کنترلهای تعریفشده؛ ضمانت اصالت امضا و کلیدها.
14. **ضمانتها (Warranties)** — ضمانت اهلیت و مجوز قانونی؛ ضمانت عدم تعبیه عمدی کد مخرب؛ ضمانت انطباق خروجی با استاندارد پیوست؛ تصریح اینکه «نبود آسیبپذیری صفر» تضمین مطلق نیست مگر تعهد به نتیجهٔ مشخص برای کنترلهای تعریفشده؛ ضمانت اصالت امضا و کلیدها.
بند 15
بررسی تخصصی این بندتضمینها، وثایق و بیمه.
15. **تضمینها، وثایق و بیمه**.
بند 16
بررسی تخصصی این بندحسابرسی و حق بازرسی — حق ممیزی محدود خط ساخت، سیاست دسترسی، لاگ CI، و نمونهگیری وابستگیها با اطلاع قبلی؛ conserv کردن ادله؛ محدودیت افشای اسرار تجاری ارائهدهنده.
16. **حسابرسی و حق بازرسی** — حق ممیزی محدود خط ساخت، سیاست دسترسی، لاگ CI، و نمونهگیری وابستگیها با اطلاع قبلی؛ conserv کردن ادله؛ محدودیت افشای اسرار تجاری ارائهدهنده.
بند 17
بررسی تخصصی این بندپیمانکار فرعی و زنجیره چهارم — ممنوعیت واگذاری کامل؛ فهرست مجاز؛ جریان یافتن تعهدات امنیتی به پاییندست؛ مسئولیت ارائهدهنده در قبال فعل عوامل.
17. **پیمانکار فرعی و زنجیره چهارم** — ممنوعیت واگذاری کامل؛ فهرست مجاز؛ جریان یافتن تعهدات امنیتی به پاییندست؛ مسئولیت ارائهدهنده در قبال فعل عوامل.
بند 18
بررسی تخصصی این بندامنیت، محرمانگی و حفاظت داده — حداقلسازی دسترسی، رمزنگاری در انتقال، امحای داده پس از خاتمه، نقض داده و مهلت اعلام.
18. **امنیت، محرمانگی و حفاظت داده** — حداقلسازی دسترسی، رمزنگاری در انتقال، امحای داده پس از خاتمه، نقض داده و مهلت اعلام.
بند 19
بررسی تخصصی این بندپاسخ به حادثه زنجیره تأمین — تعریف حادثه (از جمله compromise حساب maintainer، بسته مسموم، گواهی امضای لو رفته، دستکاری runner)؛ اتاق بحران؛ حفظ صحنه دیجیتال؛ گزارش نهایی root cause.
19. **پاسخ به حادثه زنجیره تأمین** — تعریف حادثه (از جمله compromise حساب maintainer، بسته مسموم، گواهی امضای لو رفته، دستکاری runner)؛ اتاق بحران؛ حفظ صحنه دیجیتال؛ گزارش نهایی root cause.
بند 20
بررسی تخصصی این بندمسئولیت، سقف خسارت و جبران (indemnity) — تفکیک خسارت مستقیم؛ سقف متناسب با مبلغ قرارداد برای تقصیر عادی؛ استثنای سقف برای عمد، تقلب، تزریق/چشمپوشی از کد مخرب، نقض محرمانگی و نقض حقوق داده؛ جبران خسارت ناشی از ادعای ثالث بابت بدافزار یا نقض مجوز متنباز در اجزای تحویلی.
20. **مسئولیت، سقف خسارت و جبران (indemnity)** — تفکیک خسارت مستقیم؛ سقف متناسب با مبلغ قرارداد برای تقصیر عادی؛ **استثنای سقف برای عمد، تقلب، تزریق/چشمپوشی از کد مخرب، نقض محرمانگی و نقض حقوق داده**؛ جبران خسارت ناشی از ادعای ثالث بابت بدافزار یا نقض مجوز متنباز در اجزای تحویلی.
بند 21
بررسی تخصصی این بندوجه التزام — تأخیر در SBOM، تأخیر در اعلام حادثه، نقض SLA Critical؛ تصریح اینکه وجه التزام بدل از خسارت مازاد هست یا خیر (صریح بنویس تا ابهام ماده قانونی رفع شود).
21. **وجه التزام** — تأخیر در SBOM، تأخیر در اعلام حادثه، نقض SLA Critical؛ تصریح اینکه وجه التزام بدل از خسارت مازاد هست یا خیر (صریح بنویس تا ابهام ماده قانونی رفع شود).
بند 22
بررسی تخصصی این بندخیارات، فسخ، انفساخ و تعلیق — فسخ بهسبب نقض اساسی (از جمله کشف درب پشتی، امتناع از ارائه SBOM، عدم رفع Critical در مهلت)؛ فسخ بدون سبب با اخطار در صورت توافق؛ آثار فسخ (تحویل آخرین SBOM، امحای دسترسی، بقای محرمانگی و مالکیت).
22. **خیارات، فسخ، انفساخ و تعلیق** — فسخ بهسبب نقض اساسی (از جمله کشف درب پشتی، امتناع از ارائه SBOM، عدم رفع Critical در مهلت)؛ فسخ بدون سبب با اخطار در صورت توافق؛ آثار فسخ (تحویل آخرین SBOM، امحای دسترسی، بقای محرمانگی و مالکیت).
بند 23
بررسی تخصصی این بندقوه قاهره — تعریف مضیق؛ حملات سایبری عمومی بهخودیخود قوه قاهره نیست مگر اثبات شود خارج از کنترل معقول و با اعمال کنترلهای قراردادی باز هم اجتنابناپذیر بوده؛ تکلیف اطلاع و کاهش خسارت.
23. **قوه قاهره** — تعریف مضیق؛ حملات سایبری عمومی بهخودیخود قوه قاهره نیست مگر اثبات شود خارج از کنترل معقول و با اعمال کنترلهای قراردادی باز هم اجتنابناپذیر بوده؛ تکلیف اطلاع و کاهش خسارت.
بند 24
بررسی تخصصی این بندرعایت قوانین، صادرات و تحریم — رمزنگاری، کنترل صادرات، فهرستهای تحریمی در حد اطلاع و تعهد معقول؛ منع استفاده خلاف قانون جرایم رایانهای.
24. **رعایت قوانین، صادرات و تحریم** — رمزنگاری، کنترل صادرات، فهرستهای تحریمی در حد اطلاع و تعهد معقول؛ منع استفاده خلاف قانون جرایم رایانهای.
بند 25
بررسی تخصصی این بندتغییرات (Change Request) — افزودن مخزن/اکوسیستم جدید، افزایش عمق SBOM، ابزار جدید.
25. **تغییرات (Change Request)** — افزودن مخزن/اکوسیستم جدید، افزایش عمق SBOM، ابزار جدید.
بند 26
بررسی تخصصی این بندحل اختلاف — مذاکره، سپس داوری یا دادگاه؛ قانون حاکم؛ زبان؛ اجرای موقت تعهدات حیاتی امنیتی حین دعوا.
26. **حل اختلاف** — مذاکره، سپس داوری یا دادگاه؛ قانون حاکم؛ زبان؛ اجرای موقت تعهدات حیاتی امنیتی حین دعوا.
بند 27
بررسی تخصصی این بنداقامتگاه و ابلاغ — داده پیام معتبر، نسخه امضاشده الکترونیکی.
27. **اقامتگاه و ابلاغ** — داده پیام معتبر، نسخه امضاشده الکترونیکی.
بند 28
بررسی تخصصی این بندواگذاری، تمامیت قرارداد، اصلاح، قابلیت تفکیک، عدم انصراف.
28. **واگذاری، تمامیت قرارداد، اصلاح، قابلیت تفکیک، عدم انصراف**.
بند 29
بررسی تخصصی این بندنسخ، پیوستها و امضا — تعداد نسخ فارسی؛ اعتبار نسخ الکترونیکی در چارچوب قانون تجارت الکترونیکی.
29. **نسخ، پیوستها و امضا** — تعداد نسخ فارسی؛ اعتبار نسخ الکترونیکی در چارچوب قانون تجارت الکترونیکی.
**بندهای خاص همین قرارداد که نباید فراموش شود:** کنترل حسابهای maintainer و احراز هویت چندعاملی تأمینکنندگان؛ سیاست جایگزینی بسته رهاشده (abandoned)؛ ممنوعیت نصب از منابع تأییدنشده؛ مدیریت کلید امضای release و ابطال گواهی؛ تفکیک محیط build از لپتاپ توسعهدهنده؛ تعهد بهروزرسانی SBOM پس از hotfix؛ وضعیت اجزای «بدون نسخه» و submoduleهای git؛ مسئولیت اسکریپتهای post-install؛ رویه risk-accept مکتوب با امضای صاحب ریسک؛ همسویی با قراردادهای بالادستی مشتری نهایی (flow-down) در حد پیوست.
