انجمن انفورماتیک ایران انجمن انفورماتیک ایران انجمن انفورماتیک ایران
گزارش کامپیوتر شماره 234, ویژه مرداد و شهریور ماه 96 منتشر شد. چهارشنبه  ٠١/٠٩/١٣٩٦ ساعت ٢٠:١٧
 

بد افزارها در سیستم‌های RFID و بررسی چالش‌های امنیتی پیش رو
سید حسین رجاء
کارشناس ارشد فناوری اطلاعات، موسسه تحقیقاتی داده سنجی پیشرفته، تهران
پست الکترونیکی: hosseinraja@dspri.com


 

چكیده
اگر به پیشینه مقوله رخنه‌گری نگاهی بیندازید، خواهید دید با آمدن هر فناوری جدید، رخنه‌گران به دنبال رخنه‌های امنیتی آن گشته  و با سوء استفاده  از حفره های موجود در آن، فناوری را به چالش می‌كشند. رخنه‌گران با دسترسی و كنترل سیستم می‌توانند دست به اقدامات خرابكارانه زنند و باعث شوند هزینه ای هنگفت از حیث مادی و معنوی و همچنین خسارت‌های جبران ناپذیری به فرد و سیستم تحمیل شود.
بدافزارها ، نرم‌افزارهای مخربی هستند که هدف اصلی‌شان تخریب سیستم‌های کامپیوتری می‌باشد. همان‌طور كه انتظار آن می‌رفت، بدافزارها به سیستم‌های مبتنی بر RFID نیز راه یافته و آن‌ها را به چالش كشیدند. اهمیت این مقوله  و این‌که فناوری RFID از بدافزارها در امان نیست، ما را بر آن داشت که در این مقاله به بررسی تاثیر بدافزارها و چالش‌های امنیتی ایجاد  شده توسط آن‌ها بپردازیم. با بررسی صورت گرفته سه نوع اصلی بدافزار در  سیستم های مبتنی بر RFID شناسایی شده است. این سه نوع  استثمارگرها، كرم‌ها و ویروس‌ها می‌باشند. بدافزارها منشاء خارجی داشته و بر اساس برچسب های RFID به وجود می‌آیند. در نهایت، تاثیر بدافزارها و چالش‌های امنیتی ایجاد شده توسط آن‌ها را ارائه داده‌ایم.

كلمات كلیدی
RFID ، امنیت، چالش‌ها، بدافزارها، امنیت RFID .

مقدمه

RFID امروزه در بسیاری از صنایع دنیا استفاده می شود. به عنوان مثال، در فروشگاه‌ها از RFID   به جای سیستم قدیمی بارکد (رمزینه) استفاده می شود. نمونه دیگر در صنعت مسافربری، گذرنامه های مسافران می‌باشد. همان‌طور که می‌دانید  گذرنامه ها حاوی اطلاعات ارزشمند شخصی هستند و اگر یک رخنه‌گر بتواند رخنه ای در سیستم RFID   گذرنامه بیابد، سوء استفاده‌های  فراوانی از آن شخص و به نام او می‌تواند انجام دهد.
با این‌که  داده‌های موجود در گذرنامه ها رمزنگاری می‌شوند ولی باز هم سوء استفاده هایی در این زمینه دیده شده است[ 1 ].
رخنه‌گری و سرقت اطلاعات از همان روزی شروع شد که هیچ رایانه ای وجود نداشت. با پا به عرصه گذاشتن رایانه و  شبکه، رخنهگری و سرقت اطلاعات شیوه علمی به خود گرفت و روز به روز متکامل‌تر شد. 
کلا چهار نوع حمله می توانیم داشته باشیم[ 2 ]:
- حمله از نوع وقفه : بدین معنا که حمله کننده باعث شود شبکه مختل شده و مبادله اطلاعات امکان پذیر نباشد.
- حمله از نوع استراق سمع : بدین معنا که حمله کننده به نحوی توانسته است اطلاعات در حال تبادل روی شبکه را گوش داده و بهره برداری نماید
- حمله از نوع دستکاری داده ها : یعنی حمله کننده توانسته است به نحوی اطلاعاتی که روی شبکه مبادله می شوند را تغییر دهد. بدین صورت كه داده های دریافتی در مقصد، متفاوت با آن چیزی باشد که از مبدا، ارسال شده است.
- حمله از نوع افزودن اطلاعات: یعنی حمله کننده اطلاعاتی را که در حال تبادل روی شبکه است، تغییر نمی دهد بلکه اطلاعات دیگری را که می تواند مخرب یا بنیان‌گذار حملات بعدی باشد، به اطلاعات اضافه می‌کند.
بر اساس این چهار نوع حمله ای که معرفی شد، حملات زیادی با نام‌های گوناگون به وجود آمده است.
تحقیقات فراوانی در مورد RFID و امنیت آن صورت گرفته است كه هر یك وارد بحث تفصیلی در این مقوله شده است.
فلدهوفر و همكارانش[ 3 ] به بررسی الگوریتم‌ رمزنگاری AES در حوزه RFID پرداخته اند. گروس‌شادل و تیلیچ[ 4 RFID بر مبنای كلید عمومی و خصوصی را بررسی كرده اند.
جولز و همكارانش[ 5 ]، بحثی در مورد برچسب‌های RFID   دارند و راهكارهای افزایش امنیتشان را بررسی كرده اند. كارجوت و مسكوویتز[ 6 ]، برچسبی را پیشنهاد داده اند كه امنیت بالاتری نسبت به نسل قبلی خود دارد.    
لینگل[ 7 ]، روش جدیدی برای پویش كردن حوزه‌های RFID ارائه داده است. بورك[ 8 ]، به مساله تراشه های RFID  و امنیت آن‌ها می‌پردازد.
هدف ما در این مقاله این است که در ابتدا، بدافزارهای موجود در سیستم‌های مبتنی بر RFID را معرفی كرده و در نهایت چالش‌های امنیتی ایجاد شده توسط آن‌ها را ارائه دهیم.

دسته بندی بدافزارهای RFID [9]

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

استثمارگر RFID

استثمارگرRFID ، یک داده برچسب RFID می‌باشد که قسمتی از سیستم RFID را که با آن مواجه است، مورد بهره برداری قرار می‌دهد.
وقتی قرائت‌گر RFID ، یک برچسب را پویش  می‌کند، انتظار دارد که اطلاعات را در قالب معینی دریافت کند. رخنه‌گر می‌تواند داده‌هایی تولید کند که قالب و محتویات آن با قالب مورد انتظار دستگاه قرائت‌گر یکسان نباشد و این باعث می‌شود که نرم افزارRFID   قرائت‌گر و حتی پایگاه داده آن را تخریب کند و یک حمله از نوع وقفه را شکل دهد.

كرم‌های RFID

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

ویروس‌های RFID

یک ویروس RFID ، به‌صورت خودكار، کدش را در برچسب‌های RFID ، بدون نیاز به اتصالات شبکه تکثیر می‌کند. ویروس‌های RFID   خواه ناخواه یک بار مفید دارند که عملکرد سیستم پشتیبان RFID   را تغییر می‌دهند یا تخریب می‌کنند.
از آنجایی که برچسب‌های جدید آلوده شده RFID در مسیر خودشان ادامه حرکت می‌دهند، آن‌ها می‌توانند سیستم‌های دیگر RFID را آلوده کنند.

چالش‌های امنیتی ایجاد شده توسط بدافزارها[9]

در قسمت قبل بدافزارهای موجود در سیستم‌های مبتنی بر RFID را معرفی اجمالی كردیم. در این قسمت به شرح چالش‌های امنیتی ایجاد شده توسط آن‌ها می‌پردازیم.

چالش‌های امنیتی ایجاد شده توسط كرم‌ها

كرم‌ها معمولا دارای بار مفید هستند که فعالیت‌ها را از حذف فایل‌ها  تا ارسال اطلاعات، از طریق پست الكترونیكی و نصب نرم افزارها، انجام می‌دهند. یکی از متداول‌ترین بار مفیدها برای یک کرم، عبارتست از نصب درب پشتی در رایانه آسیب دیده که برگشت آسان رخنه‌گر را به سیستم آن رایانه، در آینده امکان پذیر می‌سازد.
یک کرم RFID ، از طریق پیدا کردن نقص‌های امنیتی در خدمات RFID اینترنتی، انتشار پیدا می‌کند. کرم‌های RFID ، لزوما نیازی به فعالیت کاربران، برای انتشار ندارند و آن‌ها به راحتی می‌توانند از طریق برچسب‌های RFID منتشر شوند.
برچسب‌های RFID   معمولا برای در بر گرفتن کل کرم، بسیار کوچک می‌باشند. بنابراین برچسب تنها، تعداد کافی از کرم ها را در بر خواهد گرفت که می‌تواند بقیه آن‌ها را از رایانه متصل به اینترنت بارگیری کند .
برچسب RFID ممکن است شامل کدهای درختی برای بارگذاری باشند. اجرای کرم ها و یا  دستور برنامه واسط، معمولا به فضای کمتری از کدهای درختی نیاز دارند و همچنین از قابلیت حمل بیشتری برخوردار هستند.
با این وجود، ممکن است برخی نقص‌ها تنها امکان اجرای کدهای درختی را فراهم کنند.
کرم‌ها ممکن است هر بخش از میان افزار RFID را برای انتشار مورد هدف قرار دهند. برخی سیستم‌های پایگاه داده، دستورات SQL را ارائه می‌دهند که دستورات برنامه واسط را روی کارساز پایگاه داده اجرا خواهد کرد. این دستورها ممکن است برای بارگیری و اجرای کرم‌ها، مورد سوء استفاده قرار گیرند.
هر بخش میان افزار که به زبان C++  و یا C   نوشته شده باشد، ممکن است در معرض سرریز میانگیر قرار گیرد که می‌تواند برای وارد کردن کد درختی که انتشار را انجام می دهد، به کار گرفته شود.
ما با استفاده از سرریز میانگیر، هیچ کرمی را توسعه ندادیم، اما نمونه سرریز میانگیر که دستور برنامه واسط را اجرا می‌کند، ممکن است برای ایجاد یک کرم استفاده شود. این کار از طریق اجرای یکی از دستورات برنامه واسط قبلی، انجام می‌پذیرد.

چالش‌های امنیتی ایجاد شده توسط ویروس‌ها

یک ویروس دو کار اصلی انجام می‌دهد: خودش را تکثیر می‌کند و به طور گزینشی بار مفید اجرا می‌کند.
ویروس RFID برای تکثیر خودش، از پایگاه داده استفاده می‌کند. جزئیات تکثیر، به پایگاه داده استفاده شده بستگی دارد؛ اما دو گروه از ویروس ها قابل تشخیص می‌باشند. گروهی که از پرسش‌های خود ارجاعی استفاده می‌کنند و گروه دیگری که از قابلیت خودتكثیری  استفاده می‌کنند.
بارمفیدی که ویروس می تواند اجرا کند به مکانیسم خود تکثیر و پایگاه داده مورد هدف بستگی دارد.

تکثیر با استفاده از پرسش های خود ارجاعی

سیسنم های پایگاه داده معمولا شیوه ای برای به دست آوردن پرسش های در حال اجرا برای هدف نظارت سیستم ارائه می‌دهند. با این وجود، این عملکردها، پرسشی را به صورت یک ردیف طبیعی بر می‌گرداند که امکان ذخیره آن ها در پایگاه داده را فراهم می‌کند .
ما دو نوع ویروس را گسترش داده‌ایم:
نوعی که در یک پرسش واحد وجود دارد و نوعی که به پرسش های چند گانه نیاز دارد.
ویروس به کار گیرنده پرسش واحد به مشخصات کمتری از پایگاه داده نیاز دارد ، اما نمی‌تواند کد SQL   را به عنوان یک بار مفید  حمل کند.
ویروس استفاده کننده از پرسش چندگانه نیازمند پایگاه داده می‌باشد که از آن پشتیبانی کند، اما این ویروس از امکان حمل کد SQL برخوردار می باشد .

تکثیر با استفاده از قابلیت خودتكثیری

خودتكثیر، برنامه‌ای است که کد منبعش را چاپ می‌کند . ویروس با کپی کردن کد منبعش در پایگاه داده، می‌تواند خودش را تکثیر کند.
خودتكثیر نیازمند پرسش‌های چندگانه می‌باشد و  به این معناست که آن‌ها در تمامی پایگاه‌های داده، پشتیبانی نمی‌شوند.
با این وجود، آن‌ها امکان اجرای کد SQL را به صورت یک بارِ مفید  فراهم می‌کنند.

بارمفید

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

نتیجه

همان‌طور که انتظار می‌رفت، بحث رخنه‌گری به سیستم‌های مبتنی بر RFID هم، راه یافت و رخنه‌گران این سیستم‌ها  را مورد سوء استفاده قرار دادند.
در این مقاله، ابتدا بدافزارهای موجود در سیستم‌های RFID مورد بررسی قرار گرفتند. بدافزارها مشتمل بر استثمارگرها، كرم‌ها و ویروس‌های RFID بودند و بر اساس برچسب‌های RFID عمل می‌كردند.
در نهایت، چالش‌های امنیتی ایجاد شده توسط بدافزارها و اثرشان بر روی سیستم‌های مبتنی بر RFID بررسی گردید.
مراجع

[1] Convery, S., "Network Security Architectures" , Cisco Press ,2004
[2] Finkenzeller, K, "RFID Handbook: Fundamentals and applications in contactless smart cards and identification", John Wiley & Sons, 2003.
[3] Feldhofer, M.; Dominikus, S.; Wolkerstorfer, J., "Strong authentication for RFID systems using the AES algorithm", Workshop on Cryptographic Hardware and Embedded Systems, LNCS, vol. 3156, Aug 2004, pp. 357–370.
[4] Großsch¨adle, J.; Tillich, S., "Design of instruction set extensions and functional units for energy-efficient public-key cryptography", Workshop on RFID and Lightweight Crypto, Jul 2005.
[5] Juels, A.; Rivest, R.; Szydlo, M., "The blocker tag: Selective blocking of RFID tags for consumer privacy", Proceedings of the 10th ACM Conference on Computer and Communications Security, ACM Press, 2003.
[6] Karjoth, G.; Moskowitz, P., "Disabling RFID tags with visible confirmation: Clipped tags are silenced", Workshop on Privacy in the Electronic Society, Nov 2005.
[7] Lingle, R., "MIT’s economical RFID field probe", Packaging World (2005).
[8] BOURQUE, D., "Technology update, chip status and development", October 2004. Slide presentation. Referenced at http://www.ris.averydennison.com/ris/ris2site.nsf/ (Image)/Texas Instruments (Eng.)/ $File/Texas%20Instruments%20(Eng.).pdf.
[9] Rieback, M.; Simpson, P.; Crispo, B.; Tanenbaum, A.,"RFID Viruses and Wormes", Department of Computer Science
Vrije Universiteit Amsterdam, IEEE PerCom 2006 paper, http://www.rfidvirus.org/index.html