- عنوان: OWASP/Mobile Security Testing Guide (MSTG)
- نویسنده: Bernhard Mueller
- حوزه: امنیت نرم افزار
- سال انتشار: 2019
- تعداد صفحه: 479
- زبان اصلی: انگلیسی
- نوع فایل: pdf
- حجم فایل: 14.7 مگابایت
راهنمای تست امنیت موبایل OWASP (MSTG) یک کتابچه راهنمای جامع برای آزمایش امنیت برنامه های تلفن همراه است. فرآیندها و تکنیکهایی را برای تأیید الزامات فهرستشده در استاندارد تأیید امنیت برنامههای تلفن همراه (MASVS) توصیف میکند، و پایهای برای آزمایشهای امنیتی کامل و سازگار ارائه میکند. OWASP از بسیاری از نویسندگان، بازبینان و ویراستاران برای تلاش سختشان در توسعه این راهنما تشکر می کند. اگر نظر یا پیشنهادی در مورد راهنمای تست امنیت موبایل دارید، لطفاً به بحث پیرامون MASVS و MSTG در کانال Slack پروژه امنیت موبایل OWASP بپیوندید. با استفاده از این دعوت می توانید خودتان در کانال Slack ثبت نام کنید. (لطفاً اگر دعوتنامه منقضی شده است، یک PR باز کنید.) فناوری جدید همیشه خطرات امنیتی جدیدی را به همراه دارد و محاسبات تلفن همراه نیز از این قاعده مستثنی نیست. نگرانیهای امنیتی برای برنامههای تلفن همراه از جنبههای مهمی با نرمافزار دسکتاپ سنتی متفاوت است. سیستمعاملهای مدرن تلفن همراه مسلماً از سیستمعاملهای دسکتاپ سنتی امنتر هستند، اما زمانی که امنیت را در طول توسعه اپلیکیشن موبایل به دقت در نظر نگیریم، ممکن است مشکلاتی ظاهر شوند. ذخیره سازی داده ها، ارتباطات بین برنامه ای، استفاده مناسب از APIهای رمزنگاری و ارتباطات شبکه ایمن تنها برخی از این ملاحظات هستند. بسیاری از ابزارهای تست نفوذ اپلیکیشن موبایل پیشینه ای در تست نفوذ برنامه های شبکه و وب دارند، کیفیتی که برای تست اپلیکیشن موبایل ارزشمند است. تقریباً هر برنامه تلفن همراه با یک سرویس بکاند صحبت میکند و این سرویسها مستعد همان نوع حملاتی هستند که ما در برنامههای وب روی ماشینهای دسکتاپ با آنها آشنا هستیم. برنامه های موبایل از این جهت متفاوت هستند که سطح حمله کوچکتری دارند و بنابراین امنیت بیشتری در برابر تزریق و حملات مشابه وجود دارد. در عوض، ما باید حفاظت از داده ها را در دستگاه و شبکه برای افزایش امنیت موبایل در اولویت قرار دهیم. بیایید در مورد زمینه های کلیدی در امنیت برنامه های تلفن همراه بحث کنیم. حفاظت از داده های حساس، مانند اعتبار کاربر و اطلاعات خصوصی، برای امنیت تلفن همراه بسیار مهم است. اگر برنامهای از APIهای سیستمعامل مانند ذخیرهسازی محلی یا ارتباطات بین فرآیندی (IPC) به درستی استفاده کند، ممکن است برنامه دادههای حساس را در معرض سایر برنامههای در حال اجرا در همان دستگاه قرار دهد. همچنین ممکن است ناخواسته دادهها را به فضای ذخیرهسازی ابری، پشتیبانگیری یا حافظه پنهان صفحهکلید نشت کند. علاوه بر این، دستگاه های تلفن همراه در مقایسه با انواع دیگر دستگاه ها راحت تر گم یا دزدیده می شوند، بنابراین احتمال بیشتری وجود دارد که یک فرد بتواند به دستگاه دسترسی فیزیکی داشته باشد و بازیابی داده ها را آسان تر کند. هنگام توسعه برنامه های تلفن همراه، هنگام ذخیره داده های کاربر باید دقت بیشتری داشته باشیم. برای مثال، میتوانیم از APIهای ذخیرهسازی کلید مناسب استفاده کنیم و در صورت وجود از ویژگیهای امنیتی سختافزاری استفاده کنیم. تکه تکه شدن مشکلی است که ما به خصوص در دستگاه های اندرویدی با آن دست و پنجه نرم می کنیم. همه دستگاههای اندرویدی فضای ذخیرهسازی امن سختافزاری ارائه نمیدهند و بسیاری از دستگاهها از نسخههای قدیمی Android استفاده میکنند. برای اینکه یک برنامه در این دستگاه های قدیمی پشتیبانی شود، باید با استفاده از نسخه قدیمی API Android که ممکن است فاقد ویژگی های امنیتی مهم باشد، ایجاد شود. برای حداکثر امنیت، بهترین انتخاب ایجاد برنامهها با نسخه API فعلی است، حتی اگر برخی از کاربران را حذف کند. دستگاه های تلفن همراه به طور مرتب به انواع شبکه ها، از جمله شبکه های WiFi عمومی مشترک با سایر مشتریان (بالقوه مخرب) متصل می شوند. این فرصتها را برای طیف گستردهای از حملات مبتنی بر شبکه از ساده تا پیچیده و قدیمی تا جدید ایجاد میکند. حفظ محرمانه بودن و یکپارچگی اطلاعات رد و بدل شده بین برنامه تلفن همراه و نقاط پایانی سرویس راه دور بسیار مهم است. به عنوان یک نیاز اساسی، برنامه های تلفن همراه باید یک کانال امن و رمزگذاری شده برای ارتباط شبکه با استفاده از پروتکل TLS با تنظیمات مناسب راه اندازی کنند.
The OWASP Mobile Security Testing Guide (MSTG) is a comprehensive manual for testing the security of mobile apps. It describes processes and techniques for verifying the requirements listed in the Mobile Application Security Verification Standard (MASVS), and provides a baseline for complete and consistent security tests. OWASP thanks the many authors, reviewers, and editors for their hard work in developing this guide. If you have any comments or suggestions on the Mobile Security Testing Guide, please join the discussion around MASVS and MSTG in the OWASP Mobile Security Project Slack Channel. You can sign up for the Slack channel yourself using this invite. (Please open a PR if the invite has expired.) New technology always introduces new security risks, and mobile computing is no exception. Security concerns for mobile apps differ from traditional desktop software in some important ways. Modern mobile operating systems are arguably more secure than traditional desktop operating systems, but problems can still appear when we don’t carefully consider security during mobile app development. Data storage, inter-app communication, proper usage of cryptographic APIs, and secure network communication are only some of these considerations. Many mobile app penetration testing tools have a background in network and web app penetration testing, a quality that is valuable for mobile app testing. Almost every mobile app talks to a back-end service, and those services are prone to the same types of attacks we are familiar with in web apps on desktop machines. Mobile apps differ in that there is a smaller attack surface and therefore more security against injection and similar attacks. Instead, we must prioritize data protection on the device and the network to increase mobile security. Let’s discuss the key areas in mobile app security. The protection of sensitive data, such as user credentials and private information, is crucial to mobile security. If an app uses operating system APIs such as local storage or inter-process communication (IPC) improperly, the app might expose sensitive data to other apps running on the same device. It may also unintentionally leak data to cloud storage, backups, or the keyboard cache. Additionally, mobile devices can be lost or stolen more easily compared to other types of devices, so it’s more likely an individual can gain physical access to the device, making it easier to retrieve the data. When developing mobile apps, we must take extra care when storing user data. For example, we can use appropriate key storage APIs and take advantage of hardware-backed security features when available. Fragmentation is a problem we deal with especially on Android devices. Not every Android device offers hardwarebacked secure storage, and many devices are running outdated versions of Android. For an app to be supported on these out-of-date devices, it would have to be created using an older version of Android’s API which may lack important security features. For maximum security, the best choice is to create apps with the current API version even though that excludes some users. Mobile devices regularly connect to a variety of networks, including public WiFi networks shared with other (potentially malicious) clients. This creates opportunities for a wide variety of network-based attacks ranging from simple to complicated and old to new. It’s crucial to maintain the confidentiality and integrity of information exchanged between the mobile app and remote service endpoints. As a basic requirement, mobile apps must set up a secure, encrypted channel for network communication using the TLS protocol with appropriate settings.
این کتاب را میتوانید بصورت رایگان از لینک زیر دانلود نمایید.
نظرات کاربران