کلیه حقوق مطالب متعلق به Vulnerlab است. بازنشر با ذکر منبع مجاز است.

دسته‌بندی

مجموعه مقالات و مطالب تخصصی در خصوص بررسی کد منبع برای شناسایی آسیب‌پذیری‌ها و ضعف‌های امنیتی.

افزودن خودکار آسیب‌پذیری در مقیاس بزرگ - LAVA - آسیب‌پذیری‌ - Vulnerability - فازینگ - Fuzzing

LAVA: افزودن خودکار آسیب‌پذیری در مقیاس بزرگ

چکیده – پژوهش‌های مرتبط با خودکارسازی کشف آسیب‌پذیری‌ها (Vulnerability)، از دیرباز به دلیل کمبود مجموعه‌داده‌های مرجع معتبر (Ground Truth – منظور اطلاعاتی است که درستی آن از قبل مشخص و قابل اعتماد است و نتایج یک ابزار را با آن مقایسه می‌کنیم) برای ارزیابی ابزارها و روش‌ها با محدودیت مواجه بوده‌اند. فقدان چنین داده‌هایی موجب می‌شود که نه توسعه‌دهندگان ابزارها و نه کاربران آن‌ها نتوانند معیارهای بنیادینی همچون نرخ عدم

مطالعه مقاله
vulnerlab - والنرلب- مقایسه ابزارهای SAST - ابزار تحلیل ایستا کد - بهترین ابزار SAST - تحلیل امنیت کد C و C++ - بررسی ابزارهای امنیت - سورس کد

تحلیل و مقایسه برخی ابزارهای تحلیل ایستای امنیت کد (SAST) برای زبان های C++/C و ارائه چارچوبی برای رتبه‌بندی آن‌ها

چکیده – تحلیل ایستای امنیتی کد منبع (Static Application Security Testing – SAST) یکی از رویکردهای بنیادی برای تضمین امنیت نرم‌افزار در مراحل اولیه چرخه حیات توسعه محسوب می‌شود. با افزایش اندازه و پیچیدگی سامانه‌های نرم‌افزاری، به‌ویژه در معماری‌های توزیع‌شده و مبتنی بر میکروسرویس‌ها، سطح حمله گسترش یافته و شناسایی آسیب‌پذیری‌ها در سطح کد با دشواری بیشتری همراه شده است. این پژوهش به بررسی تطبیقی یازده ابزار تحلیل ایستای امنیت

مطالعه مقاله
Code Optimization - کامپایل - LLVM - Clang - بهینه‌ سازی کد - Compiler

فراتر از کامپایل: بررسی کامل LLVM ،Clang و بهینه‌سازی کد

چکیده – کامپایلرها (Compiler) به عنوان یکی از بنیادی‌ترین اجزای سیستم‌های نرم‌افزاری، نقش کلیدی در تبدیل زبان‌های برنامه‌نویسی سطح بالا به کد قابل اجرا برای ماشین ایفا می‌کنند. با افزایش پیچیدگی نرم‌افزارها، تنوع معماری‌های سخت‌افزاری و نیاز به بهینه‌سازی‌های پیشرفته، طراحی و پیاده‌سازی کامپایلرها نیز از یک فرآیند ساده ترجمه فراتر رفته و به یک حوزه تخصصی در مهندسی نرم‌افزار و علوم کامپیوتر تبدیل شده است. در رویکردهای مدرن، کامپایلرها به

مطالعه مقاله
معماری کامپایلر - Compiler architecture

معماری کامپایلرها به زبان ساده

کامپایلر (Compiler) یکی از بنیادی‌ترین مؤلفه‌های زیرساخت نرم‌افزارهای مدرن است و نقشی محوری در تبدیل ایده‌های انتزاعی برنامه‌نویسان به دستورالعمل‌های قابل اجرای سخت‌افزار ایفا می‌کند. هر برنامه‌ی کامپیوتری، صرف‌نظر از میزان پیچیدگی یا سادگی آن، پیش از اجرا باید از مرحله‌ای عبور کند که در آن توصیف سطح‌ بالای رفتار برنامه به شکلی قابل فهم برای ماشین تبدیل شود. این وظیفه بر عهده‌ی کامپایلر است؛ ابزاری که به‌ عنوان واسطی

مطالعه مقاله
افزودن خودکار آسیب‌پذیری در مقیاس بزرگ - LAVA - آسیب‌پذیری‌ - Vulnerability - فازینگ - Fuzzing

LAVA: افزودن خودکار آسیب‌پذیری در مقیاس بزرگ

چکیده – پژوهش‌های مرتبط با خودکارسازی کشف آسیب‌پذیری‌ها (Vulnerability)، از دیرباز به دلیل کمبود مجموعه‌داده‌های مرجع معتبر (Ground Truth – منظور اطلاعاتی است که درستی آن از قبل مشخص و قابل اعتماد است و نتایج یک ابزار را با آن مقایسه می‌کنیم) برای ارزیابی ابزارها و روش‌ها با محدودیت مواجه بوده‌اند. فقدان چنین داده‌هایی موجب می‌شود که نه توسعه‌دهندگان ابزارها و نه کاربران آن‌ها نتوانند معیارهای بنیادینی همچون نرخ عدم

مطالعه مقاله
vulnerlab - والنرلب- مقایسه ابزارهای SAST - ابزار تحلیل ایستا کد - بهترین ابزار SAST - تحلیل امنیت کد C و C++ - بررسی ابزارهای امنیت - سورس کد

تحلیل و مقایسه برخی ابزارهای تحلیل ایستای امنیت کد (SAST) برای زبان های C++/C و ارائه چارچوبی برای رتبه‌بندی آن‌ها

چکیده – تحلیل ایستای امنیتی کد منبع (Static Application Security Testing – SAST) یکی از رویکردهای بنیادی برای تضمین امنیت نرم‌افزار در مراحل اولیه چرخه حیات توسعه محسوب می‌شود. با افزایش اندازه و پیچیدگی سامانه‌های نرم‌افزاری، به‌ویژه در معماری‌های توزیع‌شده و مبتنی بر میکروسرویس‌ها، سطح حمله گسترش یافته و شناسایی آسیب‌پذیری‌ها در سطح کد با دشواری بیشتری همراه شده است. این پژوهش به بررسی تطبیقی یازده ابزار تحلیل ایستای امنیت

مطالعه مقاله
Code Optimization - کامپایل - LLVM - Clang - بهینه‌ سازی کد - Compiler

فراتر از کامپایل: بررسی کامل LLVM ،Clang و بهینه‌سازی کد

چکیده – کامپایلرها (Compiler) به عنوان یکی از بنیادی‌ترین اجزای سیستم‌های نرم‌افزاری، نقش کلیدی در تبدیل زبان‌های برنامه‌نویسی سطح بالا به کد قابل اجرا برای ماشین ایفا می‌کنند. با افزایش پیچیدگی نرم‌افزارها، تنوع معماری‌های سخت‌افزاری و نیاز به بهینه‌سازی‌های پیشرفته، طراحی و پیاده‌سازی کامپایلرها نیز از یک فرآیند ساده ترجمه فراتر رفته و به یک حوزه تخصصی در مهندسی نرم‌افزار و علوم کامپیوتر تبدیل شده است. در رویکردهای مدرن، کامپایلرها به

مطالعه مقاله
معماری کامپایلر - Compiler architecture

معماری کامپایلرها به زبان ساده

کامپایلر (Compiler) یکی از بنیادی‌ترین مؤلفه‌های زیرساخت نرم‌افزارهای مدرن است و نقشی محوری در تبدیل ایده‌های انتزاعی برنامه‌نویسان به دستورالعمل‌های قابل اجرای سخت‌افزار ایفا می‌کند. هر برنامه‌ی کامپیوتری، صرف‌نظر از میزان پیچیدگی یا سادگی آن، پیش از اجرا باید از مرحله‌ای عبور کند که در آن توصیف سطح‌ بالای رفتار برنامه به شکلی قابل فهم برای ماشین تبدیل شود. این وظیفه بر عهده‌ی کامپایلر است؛ ابزاری که به‌ عنوان واسطی

مطالعه مقاله
wpChatIcon
wpChatIcon