ফ্ল্যাটপ্যাকের একটি দুর্বলতা স্যান্ডবক্সের বাইরে কোড চালানোর অনুমতি দিয়েছে 

দুর্বলতার

যদি শোষিত হয়, এই ত্রুটিগুলি আক্রমণকারীদের সংবেদনশীল তথ্যে অননুমোদিত অ্যাক্সেস পেতে বা সাধারণত সমস্যা সৃষ্টি করতে পারে

কয়েকদিন আগে ফ্ল্যাটপ্যাকে (লিনাক্সে ডেস্কটপ অ্যাপ্লিকেশনের জন্য বিচ্ছিন্ন পরিবেশ তৈরি, বিতরণ এবং চালানোর সিস্টেম) একটি দুর্বলতা আবিষ্কৃত হওয়ার খবর প্রকাশিত হয়। CWE-88 শ্রেণিবিন্যাসের সাথে CVE-2024-32462 হিসাবে তালিকাভুক্ত এই আবিষ্কৃত দুর্বলতাটি আক্রমণকারীদের RequestBackground-এর মাধ্যমে স্যান্ডবক্স থেকে বেরিয়ে আসার সুযোগ করে দিয়েছিল।

এই দুর্বলতাটি ফ্ল্যাটপ্যাক-এর নির্দিষ্ট কিছু সংস্করণকে প্রভাবিত করে এবং এর প্রভাব গুরুতর হতে পারে, কারণ বিশেষভাবে ডিজাইন করা একটি অ্যাপ্লিকেশন স্যান্ডবক্সের বাইরে যথেচ্ছ কোড চালাতে পারে, যা ব্যবহারকারীর তথ্যকে ঝুঁকিতে ফেলতে পারে।

দুর্বলতা সম্পর্কে CVE-2024-32462

উল্লেখ করা হয়েছে যে, এই দুর্বলতার কারণে Flatpak প্যাকেজ ফরম্যাটের মাধ্যমে বিতরণ করা কোনো ক্ষতিকারক বা আপোসকৃত অ্যাপ্লিকেশন স্যান্ডবক্স আইসোলেশন এড়িয়ে হোস্ট সিস্টেমের ফাইল অ্যাক্সেস করতে পারে। এই সমস্যাটি শুধুমাত্র সেইসব প্যাকেজেই দেখা যায় যেগুলো Freedesktop পোর্টাল (xdg-desktop-portal) ব্যবহার করে; এই পোর্টালগুলো আইসোলেটেড অ্যাপ্লিকেশন থেকে ব্যবহারকারীর পরিবেশের রিসোর্সগুলোতে সহজে অ্যাক্সেস দেওয়ার জন্য নিযুক্ত থাকে।

একটি Flatpak অ্যাপ্লিকেশন থেকে org.freedesktop.portal.Background.RequestBackground পোর্টাল ইন্টারফেসে একটি নির্বিচারে কমান্ডলাইন ইন্টারফেস পাস করা সম্ভব। সাধারণত এটি নিরাপদ, কারণ আপনি শুধুমাত্র স্যান্ডবক্স পরিবেশের মধ্যে বিদ্যমান একটি কমান্ড নির্দিষ্ট করতে পারেন; কিন্তু যখন একটি তৈরি করা কমান্ডলাইন অবজেক্টকে –commandarguments-এ রূপান্তরিত করা হয় এবং, অ্যাপ্লিকেশনটি আর্গুমেন্টগুলি সরাসরি bwrapy-এ পাস করার একই প্রভাব অর্জন করতে পারে, এইভাবে একটি স্যান্ডবক্স এস্কেপ অর্জন করে।

সমাধান হল Flatpak-এর জন্য -to bwrap আর্গুমেন্ট ব্যবহার করা, যার ফলে আক্রমণকারীর দ্বারা নির্দিষ্ট কমান্ড যোগ করার আগে এটি প্রক্রিয়াকরণ বিকল্পগুলি বন্ধ করে দেয়। -আর্গুমেন্টটি বুদ্বুদ র‍্যাপ 0.3.0 থেকে সমর্থিত হয়েছে এবং ফ্ল্যাটপ্যাকের সমস্ত সমর্থিত সংস্করণের জন্য ইতিমধ্যেই বাবল র‍্যাপের অন্তত সেই সংস্করণটি প্রয়োজন৷

এই দুর্বলতার সুযোগ নিয়ে একটি বিচ্ছিন্ন পরিবেশে থাকা কোনো অ্যাপ্লিকেশন xdg-desktop-portal ইন্টারফেস ব্যবহার করে একটি ".desktop" ফাইল তৈরি করতে পারে। এর জন্য এমন একটি কমান্ড ব্যবহার করা হয় যা Flatpak থেকে অ্যাপ্লিকেশনটি চালু করে, যার ফলে মূল সিস্টেমের ফাইলগুলোতে প্রবেশাধিকার পাওয়া যায়।

যে দুর্বলতার কারণে স্যান্ডবক্সড পরিবেশ বাইপাস করা যায়, তা `flatpak run`- এর `--command` আর্গুমেন্টের মধ্যে নিহিত । এই আর্গুমেন্টটি নির্দিষ্ট Flatpak অ্যাপ্লিকেশনে চালানোর জন্য একটি কমান্ড এবং কিছু ঐচ্ছিক আর্গুমেন্ট গ্রহণ করার কথা ছিল। প্রোগ্রামের নাম পাস করার জন্য ব্যবহৃত ` --command` প্যারামিটারটি পরিবর্তন করে `--bind`- এর মতো একটি অপশনের নাম পাস করা সম্ভব ছিল , যাকে পরবর্তীতে প্যাকেজের মধ্যে একটি স্যান্ডবক্সড পরিবেশে নির্দিষ্ট প্রোগ্রামটি চালানোর জন্য একটি `bwrap` অপশন হিসেবে ভুল ব্যাখ্যা করা হতো।

এর একটি বাস্তব উদাহরণ হলো একটি বিচ্ছিন্ন প্যাকেজ পরিবেশে ls ইউটিলিটি চালানো; এক্ষেত্রে অনেকটা এইরকম কিছু ব্যবহার করা হয়:

"flatpak run --command=ls org.gnome.gedit"

যা কার্যকর করবে:

"bwrap ...lots of stuff... --bind / /host ls -l /host".

এই ক্ষেত্রে, "–bind" নামটি চালানোর জন্য অ্যাপ্লিকেশনটির নাম হিসাবে বিবেচিত হবে না, বরং একটি bwrap বিকল্প হিসাবে বিবেচিত হবে৷

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

এই আর্গুমেন্টটি bubblewrap 0.3.0 থেকে সমর্থিত, এবং Flatpak-এর সমস্ত সমর্থিত সংস্করণের জন্য ইতিমধ্যেই bubblewrap-এর অন্তত সেই সংস্করণটি প্রয়োজন। উল্লেখ করা হয়েছে যে এর একটি সমাধান হলো, xdg-desktop-portal-এর 1.18.4 সংস্করণটি আর Flatpak অ্যাপ্লিকেশনগুলোকে - দিয়ে শুরু হওয়া কমান্ডের জন্য নতুন .desktop ফাইল তৈরি করার অনুমতি দেয় না ।

পরিশেষে, এটি উল্লেখ করার মতো যে ফ্ল্যাটপ্যাক 1.15.8, 1.14.6, 1.12.9 এবং 1.10.9 এর প্যাচ করা সংস্করণগুলিতে দুর্বলতা সংশোধন করা হয়েছে। উপরন্তু, xdg-ডেস্কটপ-পোর্টাল সংস্করণ 1.16.1 এবং 1.18.4-এ একটি নিরাপত্তা সংশোধনের প্রস্তাব করা হয়েছে।

আপনি নিম্নলিখিত কমান্ডটি চালিয়ে আপনার কাছে থাকা ফ্ল্যাটপ্যাকের সংস্করণটি পরীক্ষা করতে পারেন:

flatpak --version

যদি আপনি একটি দুর্বল সংস্করণে থাকেন বা আপনি যদি আপনার Flatpak সংস্করণ আপডেট করতে চান তবে নিম্নলিখিত কমান্ডগুলির মধ্যে একটি চালান:

উবুন্টু/ডেবিয়ান এবং ডেরিভেটিভস:

sudo apt upgrade flatpak

RHEL/ফেডোরা এবং ডেরিভেটিভস:

sudo dnf upgrade flatpak

আর্চ লিনাক্স এবং ডেরিভেটিভস:

sudo pacman -Syu flatpak

আপনি যদি আরও জানতে আগ্রহী হন, তাহলে নিচের লিঙ্কে বিস্তারিত তথ্য পেতে পারেন ।


Google-এ পছন্দের উৎস হিসেবে যোগ করুন