KavLabs
خانهبلاگ
KavLabs

یادداشت‌هایی از ذهن‌های کاوشگر، برای ذهن‌های کنجکاو

پرهام·پرهام·زال·زال·
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
نوشته‌هادسته‌بندی‌هاجستجوی پیشرفتهلاگ تغییرات

©۲٬۰۲۶ KavLabs — تمام حقوق محفوظ است

ساخته‌شده با عشق توسط پرهام و زال

واژه‌نامه
۰۴ اسفند ۱۴۰۴OWASP Top 10پیشرفتهزبان: فارسی

شکست‌های یکپارچگی نرم‌افزار و داده(N/A)

پیشرفتهنسخه انگلیسی

آسیب‌پذیری‌هایی که به مهاجمان اجازه می‌دهد کد یا داده‌ها را بدون تأیید اعتبار تغییر دهند یا دستکاری کنند.

اوسپیکپارچگیامضاupdate

شکست‌های یکپارچگی نرم‌افزار چیه؟

خلاصه در یه جمله: وقتی نتونی مطمئن بشی کد یا داده‌ها دستکاری نشدن، هکر می‌تونه کد مخرب تزریق کنه!

فرض کن یه بسته از پست می‌گیری. از کجا مطمئن می‌شی کسی بازش نکرده و چیزی توش نذاشته؟ اگه پلمپ داشته باشه و پلمپ سالم باشه، مطمئنی. تو نرم‌افزار هم همینطوره — باید بتونی چک کنی کد یا داده دستکاری نشده .

انواع شکست‌های یکپارچگی:

۱. آپدیت‌های بدون امضا: برنامه‌ت آپدیت رو از سرور می‌گیره بدون اینکه چک کنه واقعاً از طرف تو اومده. هکر سرور رو هک می‌کنه، آپدیت مخرب می‌فرسته، همه کاربرای تو آلوده می‌شن!

۲. CI/CD Pipeline ناامن: سیستمی که کد رو Deploy می‌کنه امن نیست. هکر واردش می‌شه، کد مخرب تزریق می‌کنه، کد مخرب Deploy می‌شه روی تولید!

۳. Dependencyهای تأیید نشده: کتابخانه‌ها رو بدون چک کردن Hash یا امضا نصب می‌کنی. هکر کتابخانه رو آلوده کرده، تو نصب می‌کنی!

۴. Deserialization ناامن: داده‌های Serialized رو بدون تأیید اعتبار Deserialize می‌کنی. هکر داده مخرب می‌فرسته، کد اجرا می‌شه!

۵. Trust Boundary اشتباه: به داده‌های خارجی (مثل CDN، APIهای سوم) اعتماد می‌کنی بدون تأیید.

مثال واقعی:

SolarWinds (2020): هکرها وارد سیستم Build SolarWinds شدن، کد مخرب به آپدیت‌ها اضافه کردن. هزاران شرکت آپدیت رو نصب کردن و آلوده شدن! چون آپدیت‌ها امضا داشتن و شرکت‌ها فکر می‌کردن امنه .

چرا برای امنیت مهمه؟

چون شماره ۸ OWASP Top 10 2021 هست! اگه یکپارچگی کد تأیید نشه، هکر می‌تونه کد مخرب رو به میلیون‌ها کاربر برسونیه. این نوع حملات خیلی خطرناکن چون از طرف منبع معتبر می‌ان و کسی شک نمی‌کنه.


منابع و مراجع

  • owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures
  • cwe.mitre.org/data/definitions/345.html