
عند تسلسل الجينوم ، يمكن ضرب جزيئات الحمض النووي. يمكن للجزيئات أن تصطدم بالكمبيوتر عن طريق إصابة برنامج يحاول قراءتها. هذه هي فكرة الباحثين في جامعة واشنطن الذين قاموا
بتشفير برمجية إكسبلويت في رقعة DNA . لأول مرة في العالم ، أثبتوا أنه يمكنك إصابة جهاز كمبيوتر عن بعد من خلال DNA.
في الصورة على اليسار يوجد أنبوب اختبار يحتوي على مئات المليارات من نسخ برمجية إكسبلويت مشفرة في جزيئات DNA الاصطناعية التي يمكن أن تصيب نظام الكمبيوتر بعد التسلسل والمعالجة.
في السنوات الخمس الماضية ، انخفضت تكلفة تسلسل الجينوم من 100000 دولار إلى أقل من 1000 دولار ، مما حفز البحث العلمي في مجال علم الجينوم ومجموعة من الخدمات التجارية التي تقدم تحليل الجينوم الخاص بك لأغراض مختلفة: بناء شجرة وراثية ، والبحث عن الأسلاف ، وتحليل القدرات البدنية ، والاستعدادات لـ الرياضة المختلفة والنشاط البدني ، دراسة الكائنات الحية الدقيقة المتوافقة في الأمعاء وأكثر من ذلك بكثير. مؤلفو العمل العلمي على يقين من أنه عند تسلسل الجينوم ، لا يتم إيلاء اهتمام كاف للأمن: في هذا المجال ، لم يواجهوا بعد برامج ضارة تهاجم مباشرة من خلال الجينوم. الآن يجب أخذ ناقلات الهجوم هذه في الاعتبار.
بدأ استخدام تسلسل الجينوم في التخصصات التطبيقية مثل علوم الطب الشرعي وتخزين البيانات الأرشيفية ، لذلك يجب استكشاف مشكلات الأمان قبل تطبيق التسلسل على نطاق واسع.
كتب الباحثون برمجية إكسبلويت ، ثم قاموا بتوليف تسلسل DNA الذي ، بعد التسلسل والمعالجة ، يولد ملف برمجية إكسبلويت. عند تحميله في برنامج ضعيف ، يفتح هذا الملف مقبس للتحكم عن بعد في النظام.
الدراسة ليست ذات فائدة عملية ، لأن المؤلفين لم يقتحموا برنامج تسلسل معين يستخدمه علماء الأحياء. بدلاً من ذلك ، قاموا بتعديل البرنامج
fqzcomp الإصدار 4.6 (أداة ضغط تسلسل الحمض النووي) بأنفسهم ، بإضافة ثغرة معروفة إلى شفرة المصدر الخاصة به. ومع ذلك ، هذا لا يتعارض مع حقيقة أن هذه البرامج لديها أيضًا نقاط ضعف. الأهم من ذلك ، تمكن العلماء من إثبات أن إصابة الكمبيوتر ممكنة حقًا من خلال عينة من المواد البيولوجية.
لتغيير شفرة مصدر
fqzcomp
كان عليك إضافة 54 سطرًا في C ++ وحذف 127 سطرًا. قامت نسخة معدلة من البرنامج بمعالجة الحمض النووي باستخدام مخطط بسيط من جزأين: تم ترميز أربعة نيوكليوتيدات على شكل بتتين: A مثل 00 و C كـ 01 و G كـ 10 و T كـ 11.
بالإضافة إلى إدخال الاستغلال في البرنامج ونقله إلى معالجة ثنائية البت ، قام الباحثون أيضًا بتعطيل ميزات الأمان المعروفة في نظام التشغيل ، بما في ذلك نظام التوزيع العشوائي لذاكرة ASLR ، بالإضافة إلى الحماية من تجاوزات المكدس.
كان حجم الاستغلال نفسه (كما هو موضح في الرسم التوضيحي في النافذة اليسرى) 94 بايت ، وتم تشفيره بواسطة 376 نيوكليوتيدات. تم تحميل هذا التسلسل إلى خدمة تركيب الجزيئات البيولوجية IDT gBlocks. كانت المحاولة الأولى لتجميع الحمض النووي باستخدام برمجية إكسبلويت غير ناجحة.

كانت هناك عدة مشاكل. كان هناك الكثير من التسلسلات المتكررة في الجزيء ، وهو ما لا يوصى به للتوليف. في مكان واحد كان هناك 13 نيوكليوتيدات T متتالية ، والتي يصعب تركيبها. بالإضافة إلى ذلك ، لم يكن هناك ما يكفي من أزواج GC على طول الطول لتقوية الجزيء. في النهاية ، كانت برمجية إكسبلويت طويلة للغاية بالنسبة للتسلسل.
لكن الباحثين تمكنوا من التغلب على جميع الصعوبات ، وخفضوا طول الاستغلال إلى 43 بايت وحصلوا على عدد مقبول من تسلسلات CG ، لأن نص الاستغلال يتكون بشكل رئيسي من أحرف صغيرة (01 في ASCII يتوافق مع النيوكليوتيد C). لهذا السبب ، تم تغيير رقم المنفذ في برمجية إكسبلويت من 3) ATAT (إلى 9) ATGC (. تم تحميل التسلسل الناتج إلى خدمة تركيب IDT gBlocks ، والتي تأخذ 89 دولارًا لتوليف ما يصل إلى 500 زوج أساسي.

بعد إثبات الإمكانية النظرية للهجوم ، درس الباحثون سلامة البرامج التي يتم استخدامها لتسلسل الحمض النووي وتحليلها. في المجموع ، تمت دراسة 13 برنامجًا بيولوجيًا مفتوح المصدر معروفًا مكتوبًا في C / C ++. تمت مقارنة أمانهم بالبرامج القياسية ، والتي عادة ما يهاجمها المستخدمون الضارون ، مثل خوادم الويب والأصداف البعيدة. اتضح أن البرامج البيولوجية لها استدعاءات وظيفية أكثر خطورة (مثل
strcpy
).

تمكنا من العثور على تجاوزات عازلة في ثلاثة برامج (fastx-toolkit و samtools و SOAPdenovo2). من خلال هذه الأخطاء ، يمكنك التسبب في تعطل البرنامج. مع العلم أن مثل هذه الإخفاقات غالبًا ما يتم تحويلها إلى مآثر تشغيلية ، استقر المؤلفون على ذلك.
سيتم تقديم عرض
العمل العلمي (pdf) في 17 أغسطس 2017 في
الندوة الأمنية الـ 26 لـ
USENIX .