Typosquatting আক্রমণ
এটা মনে হচ্ছে যে মধ্যে সব নিরাপত্তা ব্যবস্থা যারা পাইথন প্যাকেজ সংগ্রহস্থলে কাজ করছেন PyPI (পাইথন প্যাকেজ ইনডেক্স), তারা খুব একটা কাজে আসেনি, যদিও তারা ব্যবহারকারীদেরকে দ্বি-ফ্যাক্টর প্রমাণীকরণ ব্যবহার করতে এবং যতটা সম্ভব ক্ষতিকারক প্যাকেজগুলির প্রবর্তন এড়াতে নিরাপত্তা ব্যবস্থা প্রয়োগ করতে বাধ্য করে, তবুও তারা এটির সাথে একটি বড় সংখ্যক সমস্যা চালিয়ে যাচ্ছে।
এবং এনপিএম-এর একটি বড় সমস্যা হল দূষিত প্যাকেজগুলির নির্লজ্জ লোডিং, যা সাম্প্রতিক বছরগুলিতে এটি একটি সমস্যা যা এটি নির্মূল করতে সক্ষম হয়নি এবং এটি উল্লেখ করার কারণ হল যে এই পরিস্থিতি একই যে PyPi অভিজ্ঞতা হচ্ছে, যদিও কিছুটা হলেও, যেহেতু বিভিন্ন নিরাপত্তা ফিল্টার প্রয়োগ করার চেষ্টা করা হয়েছে, এবং আমি চেষ্টা করার কথা উল্লেখ করছি কারণ দূষিত প্যাকেজগুলি প্রদর্শিত হতে থাকে।
এ কথা উল্লেখ করার কারণ হলো নতুন ব্যবহারকারীদের নিবন্ধন এবং নতুন প্রকল্প তৈরির উপর সম্প্রতি একটি অস্থায়ী নিষেধাজ্ঞা আরোপ করা হয়েছিল পাইথন PyPI প্যাকেজ সংগ্রহস্থলে ক্রমাগত স্বয়ংক্রিয় আক্রমণের কারণে যা দূষিত প্যাকেজগুলির ব্যাপক ডাউনলোডের দিকে পরিচালিত করেছে৷ দূষিত কোড সহ 566 প্যাকেজ আপলোড করার পরে এই ব্যবস্থা নেওয়া হয়েছিল, যা তারা 16টি জনপ্রিয় পাইথন লাইব্রেরির শৈলী অনুকরণ করেছে, 26 এবং 27 মার্চের সময় ভান্ডারে।
এই দূষিত প্যাকেজ নাম এগুলি টাইপোসক্যাটিং কৌশল ব্যবহার করে গঠিত হয়, যার মধ্যে একই রকম নাম বরাদ্দ করা থাকে কিন্তু স্বতন্ত্র অক্ষরের মধ্যে ন্যূনতম পার্থক্য থাকে। উদাহরণস্বরূপ, "টেন্সরফ্লো" এর মতো নামগুলি "টেনসরফ্লো" এর পরিবর্তে ব্যবহার করা হয়, "অনুরোধের পরিবর্তে "অনুরোধ", "অ্যাসিনসিও" এর পরিবর্তে "অ্যাসিনিসিও" অন্যান্যগুলির মধ্যে ব্যবহার করা হয়। এই আক্রমণগুলি বিভ্রান্ত ব্যবহারকারীদের সুবিধা নেয়, যারা ফোরাম এবং চ্যাটে লিঙ্কগুলি অনুসন্ধান করার সময় বা অনুসরণ করার সময় টাইপো করতে পারে যেখানে আক্রমণকারীরা বিভ্রান্তিকর নির্দেশাবলী ছেড়ে দেয়।
দূষিত প্যাকেজ এগুলি বৈধ লাইব্রেরিগুলির কোডের উপর ভিত্তি করে এবং সিস্টেমে ম্যালওয়্যার ইনস্টল করে এমন পরিবর্তনগুলি অন্তর্ভুক্ত করে৷ এই ম্যালওয়্যারটি পাসওয়ার্ড, পাসকি, ক্রিপ্টো ওয়ালেট, টোকেন এবং সেশন কুকির মতো সংবেদনশীল ডেটা এবং ফাইলগুলি অনুসন্ধান করে এবং পাঠায়৷ দূষিত কোডটি setup.py ফাইলে এম্বেড করা হয়, যা প্যাকেজ ইনস্টলেশনের সময় কার্যকর করা হয় এবং সক্রিয় করা হলে, একটি বহিরাগত সার্ভার থেকে ক্ষতিকারক উপাদান ডাউনলোড করে।
এই স্বয়ংক্রিয় টাইপোসক্যাট আক্রমণটি কয়েক ঘন্টার মধ্যে কয়েকটি দ্রুত বিস্ফোরণে চালানো হয়েছিল, 500 টিরও বেশি প্যাকেজ প্রকাশ করা হয়েছিল এবং 16টি জনপ্রিয় PyPI প্যাকেজকে লক্ষ্য করে। যদিও PyPI এর দ্রুত এবং জোরদার প্রতিক্রিয়া অবশ্যই এই আক্রমণের পরিণতিগুলিকে প্রশমিত করতে সাহায্য করেছে, এটি লক্ষণীয় যে সমস্ত বাস্তুতন্ত্র এই ধরনের আক্রমণের সাথে মোকাবিলা করার জন্য দ্রুত এবং কার্যকর নয়।
PyPI সংগ্রহস্থলে আক্রমণটি বেশ ব্যাপক হয়েছে এবং বেশ কয়েকটি জনপ্রিয় পাইথন লাইব্রেরি প্রভাবিত করেছে. আক্রমণকারীরা TensorFlow, BeautifulSoup, PyGame, SimpleJson, Matplotlib, PyTorch, CustomTKInter, Selenium, Dramaturgo, Asincio এবং Request এর মত প্যাকেজের ক্ষতিকারক ভেরিয়েন্ট ডাউনলোড করতে পেরেছিল। এছাড়াও, পাই-কর্ড, কলোরামা, ক্যাপমনস্টারক্লাউডক্লায়েন্ট, বালিশ এবং বিপ-ইউটিলের মতো লাইব্রেরির জালিয়াতির বিচ্ছিন্ন ঘটনাগুলি চিহ্নিত করা হয়েছিল।
Top.gg সম্প্রদায়ের উপর আক্রমণের বিষয়ে, আক্রমণকারী একজন ডেভেলপারের GitHub অ্যাকাউন্টের সাথে আপস করেছে, তাকে ব্রাউজার কুকি চুরি করতে এবং দূষিত পরিবর্তন করার অনুমতি দিয়েছে।
PyPI সংগ্রহস্থলে তিনটি দূষিত প্যাকেজ যোগ করা হয়েছিল এবং দূষিত প্যাকেজের উপর নির্ভরতা বিতরণের জন্য নকল ডোমেন নিবন্ধিত হয়েছিল। একটি হ্যাক করা অ্যাকাউন্টের মাধ্যমে, Top.gg প্রকল্পের GitHub সংগ্রহস্থলে একটি পরিবর্তন করা হয়েছিল, যেখানে একটি নকল ডোমেনে হোস্ট করা "colorama" প্যাকেজের ক্ষতিকারক ক্লোনের একটি লিঙ্ক সহ একটি requirements.txt ফাইল যোগ করা হয়েছিল৷ লক্ষ্য ছিল প্যাকেজটির দূষিত সংস্করণ ডাউনলোড করার জন্য ডেভেলপারদের প্রতারণা করা, কারণ জাল ডোমেনটি PyPI থেকে প্যাকেজগুলি ডাউনলোড করতে ব্যবহৃত বৈধ ডোমেনের অনুরূপ।
এই আক্রমণগুলি প্যাকেজ সংগ্রহস্থলগুলিতে সুরক্ষার গুরুত্ব এবং সুরক্ষার সাথে আপস করার এবং ম্যালওয়্যার ডাউনলোড করার সম্ভাব্য প্রচেষ্টা সম্পর্কে ব্যবহারকারী এবং বিকাশকারীদের সতর্ক হওয়ার প্রয়োজনীয়তা তুলে ধরে।
আপনি যদি আমিএটি সম্পর্কে আরও জানতে আগ্রহী, আপনি বিশদে পরীক্ষা করতে পারেন নিম্নলিখিত লিঙ্ক.