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

دسته‌بندی

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

WAFL - فازینگ - WebAssembly - فازینگ صرفا باینری WebAssembly - اسنپ‌شات‌های سریع - Fuzzing - WAVM

WAFL: فازینگ صرفا باینری WebAssembly با اسنپ‌شات‌های سریع

چکیده – WebAssembly، یک استاندارد باز برای کدهای باینری می‌باشد که به ‌سرعت در وب و فراتر از آن در حال گسترش و پذیرش است. از آنجا که باینری‌ها اغلب با زبان‌های سطح پایینی مانند C و ++C نوشته می‌شوند، می‌توانند مملو از همان باگ‌هایی باشند که در نمونه‌های سنتیِ متناظر آن‌ها نیز وجود دارد. با این حال، ابزارهای محدودی برای کشف این باگ‌ها در باینری‌های WebAssembly وجود دارد. ما

مطالعه مقاله
RiverIoT - فازینگ برنامه‌های کاربردی اینترنت اشیا - Fuzzing- Fuzzing IoT Applications

RiverIoT – ارائه یک چارچوب پیشنهادی برای فازینگ برنامه‌های کاربردی اینترنت اشیا

چکیده – این مقاله یک چارچوب آزمون یکپارچه (Integrated Testing Framework) برای سامانه‌های اینترنت اشیا (Internet of Things – IoT) ارائه می‌دهد که بر پایه بستر متن‌باز RIVER توسعه یافته است. هدف ما بهره‌گیری از روش‌های موجود فازینگ هدایت‌شده (Guided Fuzzing) مبتنی بر تکنیک‌های هوش مصنوعی (Artificial Intelligence – AI) برای آزمون برنامه‌های کاربردی اینترنت اشیا است که به‌صورت سرتاسری (End-to-End) مستقر شده‌اند. ابتدا معماری چارچوب، همراه با رابط آن

مطالعه مقاله
فازینگ فایل‌های باینری - فازینگ - QASan - Memory Safety Errors

فازینگ فایل‌های باینری برای شناسایی خطاهای ایمنی حافظه با استفاده از QASan

چکیده – تکنیک‌های آزمون فازی (Fuzz Testing) یا همان فازینگ به دلیل توانایی روزافزون خود در تولید موارد آزمون (Test Cases) منجر به ایجاد کرش (Crash) در برنامه‌ها، به‌طور گسترده‌ای مورد استفاده قرار گرفته‌اند. بااین‌حال، نقض‌های ایمنی حافظه (Memory Safety Violations) می‌توانند به خرابی‌های خاموش (Silent Corruptions) و خطاها منجر شوند و یک فازر (Fuzzer) ممکن است تنها در صورت وجود سازوکارهای ابزارگذاری تشخیصی یا همان سنی‌تایز (Sanitization Machinery) قادر

مطالعه مقاله
فازینگ - Fuzzing - بازنویسی باینری - Binary Rewriting - والنرلب - E9AFL

فازینگ مقیاس‌پذیر فایل‌های باینری برنامه‌ها با استفاده از E9AFL

چکیده – فازینگ جعبه خاکستری (Greybox Fuzzing) روشی مؤثر برای آزمون نرم‌افزار محسوب می‌شود. فازرهای جعبه خاکستری مانند AFL، از ابزارگذاری (Instrumentation) استفاده می‌کنند که اطلاعات مربوط به پوشش مسیر (Path Coverage) را جمع‌آوری کرده و از این اطلاعات برای هدایت فرایند فازینگ بهره می‌گیرند. این ابزارگذاری معمولاً توسط یک زنجیره ابزار کامپایلر اصلاح ‌شده (Modified Compiler Toolchain) در برنامه قرار داده می‌شود؛ بنابراین، برنامه برای سازگاری با فازینگ جعبه

مطالعه مقاله
Fuzzing - فازینگ - Software Bugs - باگ‌های نرم‌افزاری - آسیب‌پذیری‌ - Vulnerabilities - تحلیل آلودگی - Taint Analysis

مروری بر وضعیت کنونی دانش و روش‌های پیشرفته فازینگ

چکیده – فازینگ (Fuzzing) به ‌عنوان یکی از پرکاربردترین تکنیک‌های آزمون نرم‌افزار، با تولید تعداد زیادی ورودی آزمون (Test Input) می‌تواند طیف متنوعی از نقاط ضعف موجود در یک برنامه، از جمله باگ‌های نرم‌افزاری (Software Bugs) و آسیب‌پذیری‌ها (Vulnerabilities) را شناسایی کند. به دلیل اثربخشی این روش، فازینگ به ‌عنوان روشی ارزشمند برای کشف و شکار باگ (Bug Hunting) شناخته می‌شود. در این مقاله، ضمن ارائه مروری بر فازینگ که

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

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

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

مطالعه مقاله
والنرلب - Vulnerlab - فازینگ جعبه‌خاکستری هدایت ‌شده مبتنی بر پوشش - Coverage-Guided Greybox Fuzzing

حساس و همکارانه عمل کنید: تحلیلی از تأثیر معیارهای پوشش در فازینگ جعبه‌خاکستری

چکیده – فازینگ جعبه‌خاکستری هدایت ‌شده مبتنی بر پوشش (Coverage-Guided Greybox Fuzzing) به یکی از رایج‌ترین تکنیک‌های کشف باگ‌های (Bug) نرم‌افزاری تبدیل شده است. معیار پوشش (Coverage Metric) که نحوه انتخاب بذرهای (Seed) جدید توسط فازر را تعیین می‌کند، پارامتر اساسی فازینگ است و می‌تواند به ‌طور قابل‌توجهی بر نتایج تأثیر بگذارد. هرچند پژوهش‌های متعددی درباره اثربخشی معیارهای پوشش مختلف بر آزمون نرم‌افزار انجام شده، اما اطلاعات اندکی درباره تأثیر

مطالعه مقاله
آسیب‌ پذیری‌ - IoT - میان‌افزار - امنیت میان‌افزار - اینترنت اشیاء - امنیت اینترنت اشیاء - میان‌افزار اینترنت اشیاء - تحلیل میان‌افزار - مهندسی معکوس میان‌افزار - Firmware Reverse Engineering - Firmware Security

رده‌بندی امنیت میان‌افزار اینترنت اشیاء و مهم‌ترین تکنیک‌های تحلیل میان‌افزار

چکیده – اینترنت اشیاء (Internet of Things – IoT) از زمان پیدایش خود یک مسیر طولانی‌ را پیموده است. بااین‌حال، فرایند استانداردسازی سامانه‌های اینترنت اشیاء برای دستیابی به راهکارهای امن اینترنت اشیاء همچنان در مراحل ابتدایی خود قرار دارد. پژوهشگران تاکنون مقالات مروری ارزشمند متعددی درباره چارچوب‌ها (Frameworks)، معماری‌ها (Architectures) و همچنین تهدیدهای موجود در لایه‌های مختلف اینترنت اشیاء ارائه کرده‌اند. بااین‌وجود، بخش عمده‌ای از پژوهش‌های موجود، جنبه‌های امنیتی میان‌افزار

مطالعه مقاله
فازینگ - پهپاد - DroneID - DJI والنرلب - fuzzing - vulnerlab

امنیت پهپادها و پرونده اسرارآمیز DroneID شرکت DJI

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

مطالعه مقاله
Vulnerlab - والنرلب - فازینگ - فازر - Fuzzing - Fuzzer

نوآوری یافت نشد: بررسی سایه‌سازی ورودی در فازینگ از طریق راه‌اندازی مجدد فازر تطبیقی

چکیده – فازینگ جعبه‌ خاکستری (greybox fuzzing) از طریق اثربخشی بی‌سابقه در شناسایی خودکار خطاها، به بهبود امنیت نرم‌افزار کمک می‌کند. موفقیت این رویکرد ناشی از بازخورد پوشش (coverage feedback) استخراج‌ شده از سیستم تحت آزمون (Program Under Test – PUT) است که فازر را برای کاوش بخش‌های مختلف برنامه هدایت می‌کند. رایج‌ترین شیوه استفاده از این بازخورد، جستجوی نوآوری‌محور (novelty search)  است؛ در این روش، فازر تنها ورودی‌هایی را

مطالعه مقاله
WAFL - فازینگ - WebAssembly - فازینگ صرفا باینری WebAssembly - اسنپ‌شات‌های سریع - Fuzzing - WAVM

WAFL: فازینگ صرفا باینری WebAssembly با اسنپ‌شات‌های سریع

چکیده – WebAssembly، یک استاندارد باز برای کدهای باینری می‌باشد که به ‌سرعت در وب و فراتر از آن در حال گسترش و پذیرش است. از آنجا که باینری‌ها اغلب با زبان‌های سطح پایینی مانند C و ++C نوشته می‌شوند، می‌توانند مملو از همان باگ‌هایی باشند که در نمونه‌های سنتیِ متناظر آن‌ها نیز وجود دارد. با این حال، ابزارهای محدودی برای کشف این باگ‌ها در باینری‌های WebAssembly وجود دارد. ما

مطالعه مقاله
RiverIoT - فازینگ برنامه‌های کاربردی اینترنت اشیا - Fuzzing- Fuzzing IoT Applications

RiverIoT – ارائه یک چارچوب پیشنهادی برای فازینگ برنامه‌های کاربردی اینترنت اشیا

چکیده – این مقاله یک چارچوب آزمون یکپارچه (Integrated Testing Framework) برای سامانه‌های اینترنت اشیا (Internet of Things – IoT) ارائه می‌دهد که بر پایه بستر متن‌باز RIVER توسعه یافته است. هدف ما بهره‌گیری از روش‌های موجود فازینگ هدایت‌شده (Guided Fuzzing) مبتنی بر تکنیک‌های هوش مصنوعی (Artificial Intelligence – AI) برای آزمون برنامه‌های کاربردی اینترنت اشیا است که به‌صورت سرتاسری (End-to-End) مستقر شده‌اند. ابتدا معماری چارچوب، همراه با رابط آن

مطالعه مقاله
فازینگ فایل‌های باینری - فازینگ - QASan - Memory Safety Errors

فازینگ فایل‌های باینری برای شناسایی خطاهای ایمنی حافظه با استفاده از QASan

چکیده – تکنیک‌های آزمون فازی (Fuzz Testing) یا همان فازینگ به دلیل توانایی روزافزون خود در تولید موارد آزمون (Test Cases) منجر به ایجاد کرش (Crash) در برنامه‌ها، به‌طور گسترده‌ای مورد استفاده قرار گرفته‌اند. بااین‌حال، نقض‌های ایمنی حافظه (Memory Safety Violations) می‌توانند به خرابی‌های خاموش (Silent Corruptions) و خطاها منجر شوند و یک فازر (Fuzzer) ممکن است تنها در صورت وجود سازوکارهای ابزارگذاری تشخیصی یا همان سنی‌تایز (Sanitization Machinery) قادر

مطالعه مقاله
فازینگ - Fuzzing - بازنویسی باینری - Binary Rewriting - والنرلب - E9AFL

فازینگ مقیاس‌پذیر فایل‌های باینری برنامه‌ها با استفاده از E9AFL

چکیده – فازینگ جعبه خاکستری (Greybox Fuzzing) روشی مؤثر برای آزمون نرم‌افزار محسوب می‌شود. فازرهای جعبه خاکستری مانند AFL، از ابزارگذاری (Instrumentation) استفاده می‌کنند که اطلاعات مربوط به پوشش مسیر (Path Coverage) را جمع‌آوری کرده و از این اطلاعات برای هدایت فرایند فازینگ بهره می‌گیرند. این ابزارگذاری معمولاً توسط یک زنجیره ابزار کامپایلر اصلاح ‌شده (Modified Compiler Toolchain) در برنامه قرار داده می‌شود؛ بنابراین، برنامه برای سازگاری با فازینگ جعبه

مطالعه مقاله
Fuzzing - فازینگ - Software Bugs - باگ‌های نرم‌افزاری - آسیب‌پذیری‌ - Vulnerabilities - تحلیل آلودگی - Taint Analysis

مروری بر وضعیت کنونی دانش و روش‌های پیشرفته فازینگ

چکیده – فازینگ (Fuzzing) به ‌عنوان یکی از پرکاربردترین تکنیک‌های آزمون نرم‌افزار، با تولید تعداد زیادی ورودی آزمون (Test Input) می‌تواند طیف متنوعی از نقاط ضعف موجود در یک برنامه، از جمله باگ‌های نرم‌افزاری (Software Bugs) و آسیب‌پذیری‌ها (Vulnerabilities) را شناسایی کند. به دلیل اثربخشی این روش، فازینگ به ‌عنوان روشی ارزشمند برای کشف و شکار باگ (Bug Hunting) شناخته می‌شود. در این مقاله، ضمن ارائه مروری بر فازینگ که

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

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

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

مطالعه مقاله
والنرلب - Vulnerlab - فازینگ جعبه‌خاکستری هدایت ‌شده مبتنی بر پوشش - Coverage-Guided Greybox Fuzzing

حساس و همکارانه عمل کنید: تحلیلی از تأثیر معیارهای پوشش در فازینگ جعبه‌خاکستری

چکیده – فازینگ جعبه‌خاکستری هدایت ‌شده مبتنی بر پوشش (Coverage-Guided Greybox Fuzzing) به یکی از رایج‌ترین تکنیک‌های کشف باگ‌های (Bug) نرم‌افزاری تبدیل شده است. معیار پوشش (Coverage Metric) که نحوه انتخاب بذرهای (Seed) جدید توسط فازر را تعیین می‌کند، پارامتر اساسی فازینگ است و می‌تواند به ‌طور قابل‌توجهی بر نتایج تأثیر بگذارد. هرچند پژوهش‌های متعددی درباره اثربخشی معیارهای پوشش مختلف بر آزمون نرم‌افزار انجام شده، اما اطلاعات اندکی درباره تأثیر

مطالعه مقاله
آسیب‌ پذیری‌ - IoT - میان‌افزار - امنیت میان‌افزار - اینترنت اشیاء - امنیت اینترنت اشیاء - میان‌افزار اینترنت اشیاء - تحلیل میان‌افزار - مهندسی معکوس میان‌افزار - Firmware Reverse Engineering - Firmware Security

رده‌بندی امنیت میان‌افزار اینترنت اشیاء و مهم‌ترین تکنیک‌های تحلیل میان‌افزار

چکیده – اینترنت اشیاء (Internet of Things – IoT) از زمان پیدایش خود یک مسیر طولانی‌ را پیموده است. بااین‌حال، فرایند استانداردسازی سامانه‌های اینترنت اشیاء برای دستیابی به راهکارهای امن اینترنت اشیاء همچنان در مراحل ابتدایی خود قرار دارد. پژوهشگران تاکنون مقالات مروری ارزشمند متعددی درباره چارچوب‌ها (Frameworks)، معماری‌ها (Architectures) و همچنین تهدیدهای موجود در لایه‌های مختلف اینترنت اشیاء ارائه کرده‌اند. بااین‌وجود، بخش عمده‌ای از پژوهش‌های موجود، جنبه‌های امنیتی میان‌افزار

مطالعه مقاله
فازینگ - پهپاد - DroneID - DJI والنرلب - fuzzing - vulnerlab

امنیت پهپادها و پرونده اسرارآمیز DroneID شرکت DJI

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

مطالعه مقاله
Vulnerlab - والنرلب - فازینگ - فازر - Fuzzing - Fuzzer

نوآوری یافت نشد: بررسی سایه‌سازی ورودی در فازینگ از طریق راه‌اندازی مجدد فازر تطبیقی

چکیده – فازینگ جعبه‌ خاکستری (greybox fuzzing) از طریق اثربخشی بی‌سابقه در شناسایی خودکار خطاها، به بهبود امنیت نرم‌افزار کمک می‌کند. موفقیت این رویکرد ناشی از بازخورد پوشش (coverage feedback) استخراج‌ شده از سیستم تحت آزمون (Program Under Test – PUT) است که فازر را برای کاوش بخش‌های مختلف برنامه هدایت می‌کند. رایج‌ترین شیوه استفاده از این بازخورد، جستجوی نوآوری‌محور (novelty search)  است؛ در این روش، فازر تنها ورودی‌هایی را

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