কোয়ালকম বেসব্যান্ডগুলির পূর্ণ-সিস্টেম অনুকরণীয় ঝামেলা

কোয়ালকম বেসব্যান্ডগুলির পূর্ণ-সিস্টেম অনুকরণীয় ঝামেলা

কী টেকওয়েস

1। কোয়ালকমের মালিকানাধীন স্থাপত্যের কারণে, তাদের বেসব্যান্ডের চারপাশে সুরক্ষা সরঞ্জামের অভাব বিদ্যমান

2। আমাদের সরঞ্জামকরণ উল্লেখযোগ্যভাবে হ্রাস ইঞ্জিনিয়ারিং কাজের সাথে ষড়ভুজ বেসব্যান্ড নিয়ে গবেষণা সক্ষম করে

3। আমরা পূর্ণ-সিস্টেমের অনুকরণীয় ষড়ভুজ ফার্মওয়্যারগুলিতে ফ্যাজিংয়ের জন্য প্রথম ওপেন-সোর্স টুলচেইন প্রকাশ করি ট্রুপারস 25

ওভারভিউ

প্রতিটি ফোনে মোবাইল যোগাযোগ (5 জি, 4 জি, জিপিএস এবং আরও অনেক কিছু) পরিচালনা করার জন্য একটি সেলুলার বেসব্যান্ড প্রসেসর রয়েছে।

কোয়ালকম তার বেসব্যান্ডের জন্য হেক্সাগন নামে একটি নির্দিষ্ট আর্কিটেকচার তৈরি করেছে। এটি আইফোন 16E এবং সমস্ত স্ন্যাপড্রাগন-ভিত্তিক ডিভাইস ব্যতীত 12 প্রজন্মের থেকে প্রতিটি আইফোন সহ বেশিরভাগ শীর্ষস্থানীয় স্মার্টফোনে পাওয়া বেসব্যান্ড প্রসেসরগুলিকে শক্তি দেয়। এই আর্কিটেকচারটি ক্লাসিক বাহু, x86, বা আমরা সকলেই জানি এমন এমআইপিএস থেকে আলাদা, সুরক্ষা গবেষণার অভাবের দিকে পরিচালিত করে। উত্পাদিত বেশিরভাগ সরঞ্জামিং কেবল এটির জন্য প্রযোজ্য নয়!

আমরা কোনও ষড়ভুজ ফার্মওয়্যারের পূর্ণ-সিস্টেম অনুকরণীয় ঝামেলাগুলির জন্য প্রথম ওপেন-সোর্স টুলচেইন তৈরি করেছি। আমাদের কাজটি বিশ্লেষণের জন্য পূর্বে অ্যাক্সেসযোগ্য আক্রমণ পৃষ্ঠকে উপলভ্য করে বেসব্যান্ড সুরক্ষা গবেষণার একটি ব্যবধানকে সম্বোধন করে। আমাদের টুলচেইন সহ, মুক্ত-উত্সাহিত এখানেআমরা সম্প্রদায়কে এই কাজটি সহযোগিতা এবং গড়ে তোলার জন্য আমন্ত্রণ জানাই।

পূর্ববর্তী গবেষণা ল্যান্ডস্কেপ এবং ষড়ভুজ ব্যবধান

বেসব্যান্ড সুরক্ষা গবেষণা সম্প্রদায় সাম্প্রতিক বছরগুলিতে যথেষ্ট অগ্রগতি করেছে, তবুও কোয়ালকমের ষড়ভুজ স্থাপত্যের বিষয়ে একটি গুরুতর ব্যবধান অব্যাহত রয়েছে।

প্রাথমিক কাজ মত বেসেসাফে (2020, মাইয়ার এবং আল।) ফাজিং বেসব্যান্ডগুলির জন্য একটি উন্নত কাঠামো প্রবর্তন করে। এই উপর বিল্ডিং, ফার্মওয়ায়ার (2022, হার্নান্দেজ এট আল।) ঝামেলা করার জন্য বেসব্যান্ড এমুলেশন প্ল্যাটফর্ম সরবরাহ করে।

এই সরঞ্জামগুলি হ’ল ফ্যাজিং বেসব্যান্ডগুলির জন্য গো-টু সলিউশন যা আর্ম, x86, এমআইপিএস এবং অন্যান্য স্ট্যান্ডার্ড আর্কিটেকচার ব্যবহার করে। তবে, যেমন ফার্মওয়্যারের কাগজটি পর্যবেক্ষণ করে:

“অন্যান্য বেসব্যান্ড বাস্তবায়নের বিপরীতে, কোয়ালকম একটি সম্পূর্ণ কাস্টম আর্কিটেকচারকে হেক্সাগন (…) নামে পরিচিত হিসাবে পরিচিত করে তোলে, দুর্ভাগ্যক্রমে, এই আর্কিটেকচারের জন্য সরঞ্জামাদি বিরল, এবং বিশেষত পূর্ণ-সিস্টেম এমুলেটরগুলির অভাব রয়েছে।”

ষড়ভুজের আশেপাশের অন্যান্য গবেষণা প্রচেষ্টা নির্দিষ্ট দিকগুলির মধ্যে সীমাবদ্ধ যেমন ডায়াগ প্রোটোকল বিশ্লেষণ এবং বিপরীত প্রকৌশল (চিত্র 1 দেখুন)।

চিত্র 1। পূর্ববর্তী বেসব্যান্ড গবেষণা হেক্সাগন বেসব্যান্ড পূর্ণ সিস্টেম অনুকরণটি কভার করে না

চ্যালেঞ্জ

হেক্সাগন বেশ কয়েকটি বাধা উপস্থাপন করে যা ফার্মওয়্যার বিশ্লেষণকে চ্যালেঞ্জিং করে তোলে:

  • কাস্টম সিপিইউ আর্কিটেকচার: বেশিরভাগ সরঞ্জামদণ্ডের সমর্থন নেই, বিপরীত চ্যালেঞ্জিং তৈরি করা
  • কাস্টম ওএস এবং সফ্টওয়্যার স্ট্যাক: সাধারণ আক্রমণ কৌশলগুলি মানিয়ে নেওয়া প্রয়োজন
  • কাস্টম যোগাযোগ প্রোটোকল: কোনও নিখরচায় সরঞ্জাম বা ডকুমেন্টেশন বিদ্যমান নেই

হেক্সাগন বেসব্যান্ডকে বিপরীত করার প্রাথমিক চ্যালেঞ্জটি সরঞ্জামের সহায়তার অভাবের মধ্যে রয়েছে। গিড্রা, আইডিএ এবং অনুরূপ সরঞ্জামগুলি বাক্সের বাইরে আর্কিটেকচারকে সমর্থন করে না এবং কেমু হেক্সাগনের জন্য ব্যবহারকারী-স্থান অনুকরণ সরবরাহ করার সময়, সম্পূর্ণ সিস্টেমের অনুকরণ অনুপলব্ধ থাকে।

উদাহরণস্বরূপ, ফার্মওয়ায়ার অনুকরণ এবং অন্তঃসত্ত্বা জন্য QEMU এর উপর নির্ভর করে। যেহেতু হেক্সাগন এখনও কিউইএমইউতে যথাযথ পূর্ণ-সিস্টেম হেক্সাগন এমুলেশন নেই, তাই উপরের উদ্ধৃতিতে বর্ণিত হিসাবে এই ফার্মওয়্যারটি বিশ্লেষণের জন্য এটি ব্যবহার করা সম্ভব নয়।

সমাধান

এই চ্যালেঞ্জগুলি সমাধান করার জন্য, আমরা কোয়ালকম ইনোভেশন সেন্টার (কুইক) থেকে হেক্সাগন ফুল-সিস্টেম অনুকরণকে সমর্থন করে একটি কিউইএমইউ কাঁটাচামচ ব্যবহার করেছি। Libafl এর QeMU কাঁটাচামচ যোগ করার সাথে সাথে আমরা ষড়ভুজের জন্য তৈরি একটি কাস্টম ফাজিং এবং বিপরীত প্রকৌশল সরঞ্জাম তৈরি করেছি।

1। আমরা কীভাবে কুইক/কেমু লিবাএফএল এর কেমু দিয়ে একীভূত করেছি

কুইক থেকে কিউএমইউ কাঁটাচামচ একটি অন্তর্ভুক্ত ষড়ভুজ_সিসেমু শাখা এটি, সামান্য পরিবর্তন সহ, সফলভাবে আইফোন বেসব্যান্ড ফার্মওয়্যারটি বুট করতে পারে। আমরা এই কোডবেসকে সংহত করে ঝাপটানোর জন্য অভিযোজিত করেছি Libafl এর কেমু। যেহেতু দুটি প্রকল্প জিআইটিতে কোনও সাধারণ পূর্বপুরুষকে ভাগ করে নিচ্ছে, তাই তাদের মার্জ করার জন্য উল্লেখযোগ্য ম্যানুয়াল প্রচেষ্টা এবং কাস্টম ফিক্সগুলির প্রয়োজন।

আমরা আমাদের কেমু কাঁটাচামচ ভাগ করে নিই এই সংগ্রহস্থল, যা সরাসরি ব্যবহার করা যেতে পারে। কুইকের কাঁটাচামচের মতো, আপনি যদি কোয়ালকমের ষড়ভুজ এসডিকে থাকে তবে আপনি হেক্সাগন ফার্মওয়্যার অনুকরণ করতে এবং এলএলডিবি সংযোগ করতে পারেন। আপনি এটি একটি লাইব্রেরি হিসাবে সংকলন করতে পারেন এবং এর মার্জিত এপিআইয়ের মাধ্যমে সরাসরি মরিচা মধ্যে অন্তঃসত্ত্বা জন্য libafl সংযোগ করতে পারেন।

2। আমরা কীভাবে একটি সম্পূর্ণ কভারেজ-নির্দেশিত ফাজার তৈরি করেছি

এই পদ্ধতির ব্যবহার করে, আমরা ফার্মওয়্যারের অনুরূপ কিছু পুনরায় তৈরি করতে পারি এবং নিয়ন্ত্রণ প্রবাহ পরিবর্তনের জন্য মরিচা-ভিত্তিক হুক ব্যবহার করতে পারি। বেসব্যান্ড ফার্মওয়্যার বুট করার সময়, এই কোড প্রবাহের ম্যানিপুলেশনগুলি প্রয়োজনীয়। এমুলেটরটি ফার্মওয়্যারটির সাথে যোগাযোগ করে এমন হার্ডওয়্যার উপাদানগুলি সরবরাহ করবে না।

আমরা এমন একটি ফাজার তৈরি করেছি যা এই লিবাএফএল বাইন্ডিংগুলি ব্যবহার করে ব্যবহারকারী মোড পর্যন্ত নির্দিষ্ট আইফোন ফার্মওয়্যারের জন্য নিয়ন্ত্রণ প্রবাহের ম্যানিপুলেশন পরিচালনা করে। আমরা এটি একটি জেএসএন-ভিত্তিক পদ্ধতির সাথে সরবরাহ করি, যেখানে আপনি কনফিগারেশনে তাদের হ্যান্ডলারগুলির সাথে ব্রেকপয়েন্টগুলি সেট করতে পারেন। আপনি ফার্মওয়্যার এমুলেশন ইস্যুগুলি ডিবাগ করতে কিউইএমইউ কমান্ড লাইন আর্গুমেন্টগুলিও সংশোধন করতে পারেন।

চিত্র 2। হেক্সাগন ফুজের জন্য জসন-ভিত্তিক কনফিগারেশনের স্নিপেট
চিত্র 2। হেক্সাগন ফুজের জন্য জসন-ভিত্তিক কনফিগারেশনের স্নিপেট

এই সরঞ্জামটি সহ, একটি সম্পূর্ণ কভারেজ-নির্দেশিত ফাজার যে কোনও ষড়ভুজ-ভিত্তিক বেসব্যান্ড ফার্মওয়্যারে চলতে পারে। এইভাবে, আপনার ফোন থেকে সমস্ত 5 জি/4 জি/জিপিএস স্ট্যাকগুলি তাত্ত্বিকভাবে একটি মরিচা-ভিত্তিক এপিআইয়ের মাধ্যমে সুরক্ষার জন্য পরীক্ষা করা যেতে পারে এবং ব্যাপকভাবে ঝাপটায়।

দুর্বলতাগুলি খুঁজে পেতে আপনার দরকার:

  1. ফার্মওয়্যারটি প্রত্যাশিত অবস্থায় বুট করুন
  2. একটি জোতা সরবরাহ করুন যা বেসব্যান্ডের মধ্যে ফাজে লক্ষ্য ফাংশন (গুলি) নির্দিষ্ট করে

3। আমরা কীভাবে ভিজ্যুয়ালাইজড কভারেজের মাধ্যমে বিপরীত প্রকৌশল উন্নত করেছি

আমরা ফুজারের কভারেজটি কল্পনা করার জন্য একটি স্ক্রিপ্টও তৈরি করেছি। এটি কেমুর ডিবাগ লগগুলি পার্স করে, প্রোগ্রামের কাউন্টারটি মুদ্রণ করে এবং এটি প্রতি থ্রেডে বিভিন্ন রঙের সাথে ঘিদ্রায় রঙ করে। এটি ফুজার অগ্রগতির তাত্ক্ষণিক অন্তর্দৃষ্টি দিয়ে বিপরীত প্রকৌশল চলাকালীন কোড বোঝার উন্নতি করে। আমরা বুট পদ্ধতিটিকে এগিয়ে নিতে এটি ভারীভাবে ব্যবহার করেছি কারণ এটি কিউইএমইউতে এমুলেটেড কোড এবং ঘিদ্রায় বিচ্ছিন্নতার মধ্যে গতিশীল ডিবাগিংয়ের অনুমতি দেয়।

আমরা কিছু সরবরাহ করি ডকুমেন্টেশন কীভাবে এই বেসব্যান্ডগুলি ইঞ্জিনিয়ার করে এবং সরঞ্জামটি ব্যবহার করবেন সে সম্পর্কে।

আর্কিটেকচার ওভারভিউ

হেক্সাগন ফুজের আর্কিটেকচার ওভারভিউ
চিত্র 3। ষড়ভুজ ফাজের আর্কিটেকচার ওভারভিউ

টুলচেইন আপনাকে সক্ষম করে:

1। কোয়ালকম হেক্সাগন বেসব্যান্ড ফার্মওয়্যার অনুকরণ একটি নিয়ন্ত্রিত পরিবেশে

2। ব্রেকপয়েন্ট যুক্ত করুন এবং মরিচা হুকের মাধ্যমে রানটাইম আচরণ পরিবর্তন করুন

3। সূচনা ফাংশন এড়িয়ে যান বুট প্রক্রিয়া গতি বাড়াতে

4। উপকরণ সাধারণ ফাংশন ডিবাগিংয়ের জন্য প্রিন্টফের মতো

5। কভারেজ-গাইডেড ফাজিং সম্পাদন করুন বেসব্যান্ড উপাদানগুলিতে

6। দুর্বলতা আবিষ্কার করুন ষড়ভুজ বেসব্যান্ডগুলিতে

বর্তমান অবস্থা এবং পরবর্তী পদক্ষেপ

আমাদের বর্তমান বাস্তবায়ন সফলভাবে:

1। আইফোন বেসব্যান্ড ফার্মওয়্যার বুটবুট লগ আউটপুট 100+ লাইন সহ

2। যন্ত্রপাতি এবং নিয়ন্ত্রণ প্রবাহকে হেরফের করে ফার্মওয়্যার এর

3। বেসিক ফাজিং অবকাঠামো সরবরাহ করে হেক্সাগন বেসব্যান্ড ফার্মওয়্যার বিশ্লেষণ করতে

আমরা কীভাবে উন্নতি করার পরিকল্পনা করছি তা এখানে:

  • আরও ভাল লক্ষ্য ফাংশন সনাক্তকরণ বর্ধিত বিপরীত মাধ্যমে
  • ক্লেড/ক্লেড 2 ডিকম্প্রেশন সমর্থন
  • বর্ধিত ঝামেলা জোতা উপযুক্ত প্যারামিটার সূচনা সহ
  • গতিশীল পরীক্ষার সাথে সংহতকরণ ফোন/সিম ইন্টারফেস থেকে

এই কাজটি বেসব্যান্ড সুরক্ষা গবেষণায় একটি গুরুত্বপূর্ণ পদক্ষেপের প্রতিনিধিত্ব করে, ষড়ভুজ ভিত্তিক বেসব্যান্ড বিশ্লেষণে ব্যবধানটি কমিয়ে দেয় এবং এই ডিভাইসগুলির সুরক্ষা ভঙ্গিতে অত্যন্ত প্রয়োজনীয় স্বচ্ছতা নিয়ে আসে।

আমরা এই গবেষণাটি উপস্থাপন করেছি ট্রুপারস 25 সম্মেলন, (স্লাইড উপলব্ধ এখানে) যা কয়েক সপ্তাহের মধ্যে ইউটিউবে পাওয়া যাবে। আমাদের গিটহাব দেখুন সংগ্রহস্থল আমাদের ফাজার চেক করতে!

রেফারেন্স

(1) বার্ক 2018, ষড়ভুজ একটি যাত্রা
(2) ESAGE 2020, উন্নত ষড়ভুজ ডায়াগ
(3) গং এবং জাং 2021, কোয়ালকম হেক্সাগন প্রসেসরের জন্য গভীরতর বিশ্লেষণ এবং ঝাপসা
(4) মাইয়ার এট আল। 2020, বেসেসাফ: বেসব্যান্ড স্যানিটাইজড এমুলেশনের মাধ্যমে ঝামেলা
(5) হার্নান্দেজ এট আল। 2022, ফার্মওয়ায়ার: সেলুলার বেসব্যান্ড ফার্মওয়্যারের জন্য স্বচ্ছ গতিশীল বিশ্লেষণ​​

Source link