A critical authentication bypass (CVE-2026-8457) has been disclosed in the WooCommerce Social Login plugin, allowing attackers to hijack any WordPress account – administrators included. The vulnerability carries a CVSS score of 9.8, the highest tier for severity, and can be exploited without a password, two-factor code, or any user interaction.
WooCommerce Social Login প্লাগইনে একটি মারাত্মক অথেন্টিকেশন বাইপাস (CVE-2026-8457) প্রকাশ করা হয়েছে, যা আক্রমণকারীদের যেকোনো WordPress অ্যাকাউন্ট হাইজ্যাক করার সুযোগ দেয় – এমনকি অ্যাডমিনিস্ট্রেটরদেরও। এই দুর্বলতার CVSS স্কোর ৯.৮, যা ভয়াবহতার সর্বোচ্চ স্তর, এবং এটি কোনো পাসওয়ার্ড, টু-ফ্যাক্টর কোড বা ব্যবহারকারীর কোনো হস্তক্ষেপ ছাড়াই কাজে লাগানো যেতে পারে।
কেন এই ত্রুটি WordPress ডেভেলপারদের জন্য গুরুত্বপূর্ণ
WPWeb Elite দ্বারা প্রকাশিত WooCommerce Social Login ই-কমার্স সাইটগুলোকে গ্রাহকদের Apple দিয়ে সাইন-ইন করার সুবিধা দেয়। যেহেতু এই প্লাগইনটি সরাসরি WordPress ইউজার সিস্টেমের সাথে যুক্ত, তাই এর অথেন্টিকেশন ফ্লো-তে কোনো ত্রুটি পুরো সাইটকে ঝুঁকির মুখে ফেলতে পারে। একজন আক্রমণকারী যদি একটি ভুয়া Apple id_token তৈরি করতে পারে, তবে তারা বিদ্যমান কোনো অ্যাকাউন্ট দখল করে নিতে পারে, যা তাদের সাইটের কন্টেন্ট, অর্ডার এবং গ্রাহকের তথ্যের ওপর পূর্ণ নিয়ন্ত্রণ প্রদান করবে।
এই সমস্যাটি কেবল একটি বিচ্ছিন্ন টাইপো নয়; গত দুই বছরের মধ্যে এই প্লাগইন ফ্যামিলিতে এটি তৃতীয় বড় অথেন্টিকেশন ত্রুটি। থার্ড-পার্টি টোকেন যাচাই করতে বারবার ব্যর্থ হওয়া নির্দেশ করে যে, কোডটি কীভাবে এক্সটার্নাল ক্রেডেনশিয়াল (external credentials) হ্যান্ডেল করে তাতে একটি পদ্ধতিগত সমস্যা রয়েছে।
বাইপাসটি যেভাবে কাজ করে
- Apple টোকেন হ্যান্ডলিং – যখন কোনো ভিজিটর “Sign in with Apple” ক্লিক করেন, প্লাগইনটি একটি
id_tokenগ্রহণ করে, যা একটি JSON Web Token (JWT) এবং এতে ব্যবহারকারীর ইমেল ও অন্যান্য তথ্য থাকে। - সিগনেচার ভেরিফিকেশন না থাকা – প্লাগইনটি JWT ডিকোড করে কিন্তু ক্রিপ্টোগ্রাফিক সিগনেচারটি কখনোই পরীক্ষা করে না, যা প্রমাণ করে যে টোকেনটি Apple থেকে ইস্যু করা হয়েছে।
- ইস্যুয়ার, অডিয়েন্স বা এক্সপায়ারেশন চেক না থাকা – এটি টোকেনের ইস্যুয়ার (কে এটি তৈরি করেছে), অডিয়েন্স (এটি কার জন্য তৈরি করা হয়েছে) এবং এক্সপায়ারেশন টাইম (মেয়াদ শেষ হওয়ার সময়) যাচাই করাও বাদ দেয়।
এই ত্রুটিগুলোর কারণে, একজন আক্রমণকারী একটি ভুয়া JWT তৈরি করতে পারে যেখানে তারা তাদের পছন্দমতো যেকোনো ইমেল অ্যাড্রেস ব্যবহার করতে পারে। প্লাগইনটি ডিকোড করা ইমেলটিকে আসল হিসেবে বিশ্বাস করে এবং কোনো প্রমাণ ছাড়াই সংশ্লিষ্ট WordPress ইউজার তৈরি করে বা লগ-ইন করে দেয়।
একটি দ্বিতীয় সমস্যা এই ঝুঁকিকে আরও বাড়িয়ে দেয়: প্লাগইনটি একটি সিকিউরিটি নন্স (security nonce) – যা রিপ্লে অ্যাটাক প্রতিরোধ করতে ব্যবহৃত একটি ওয়ান-টাইম ভ্যালু – আনঅথেন্টিকেটেড ভিজিটরদের কাছে প্রকাশ করে দেয়। এর ফলে একজন আক্রমণকারীর জন্য কোনো বৈধ লগইন ফ্লো ট্রিগার না করেই পুরো প্রক্রিয়াটি স্ক্রিপ্ট করা অত্যন্ত সহজ হয়ে যায়।
কারা ঝুঁকির মুখে আছেন
- WooCommerce ব্যবহারকারী সাইট মালিকরা – যে সকল সাইটে এই প্লাগইনটি ইনস্টল করা আছে এবং Apple লগইনের জন্য সক্রিয় করা আছে, তারা সবাই ঝুঁকির মুখে।
- ডেভেলপার এবং এজেন্সিগুলো – যারা অনেক ক্লায়েন্ট সাইট পরিচালনা করেন, তাদের অনেকগুলো ইনস্টলেশন ঝুঁকির মুখে থাকতে পারে।
- গ্রাহকরা – যদি কোনো আক্রমণকারী অ্যাডমিন অ্যাক্সেস পায়, তবে তারা অর্ডারের তথ্য পড়তে, পরিবর্তন করতে বা মুছে ফেলতে পারে, যা সম্ভাব্যভাবে ব্যক্তিগত এবং পেমেন্ট তথ্য ফাঁস করে দিতে পারে।
আপনার সাইট সুরক্ষিত করার জন্য তাৎক্ষণিক পদক্ষেপ
- ভার্সন 2.8.8-এ আপডেট করুন – সমাধানটি সর্বশেষ রিলিজের অন্তর্ভুক্ত, যা CodeCanyon থেকে পাওয়া যাবে। প্রিমিয়াম প্লাগইনগুলো WordPress.org রিপোজিটরি থেকে স্বয়ংক্রিয়ভাবে আপডেট পায় না, তাই আপনাকে ম্যানুয়ালি নতুন প্যাকেজটি ডাউনলোড এবং ইনস্টল করতে হবে।
- ইউজার অ্যাকাউন্ট অডিট করুন – WordPress ইউজার টেবিলে ১ আগস্ট, ২০২৬-এর পরে তৈরি করা অ্যাকাউন্টগুলো খুঁজুন, বিশেষ করে যেগুলোর অ্যাডমিনিস্ট্রেটর প্রিভিলেজ রয়েছে।
- সার্ভার লগ পর্যালোচনা করুন – প্লাগইনের social-login এন্ডপয়েন্টগুলোতে অস্বাভাবিক রিকোয়েস্ট খুঁজুন, যেমন একই IP অ্যাড্রেস থেকে বারবার হিট বা ত্রুটিপূর্ণ (malformed) JWT সম্বলিত কল।
- সাময়িক প্রশমন – আপনি যদি এখনই আপডেট করতে না পারেন, তবে প্লাগইনের সেটিংসে গিয়ে Apple লগইনটি ডিজেবল করে দিন। এটি আপগ্রেড করার পরিকল্পনা করার সময় সবচেয়ে বেশি ব্যবহারযোগ্য ভেক্টরটি সরিয়ে ফেলবে।
ডেভেলপাররা যা শিখতে পারেন
- সবসময় JWT সিগনেচার যাচাই করুন – কোনো দাবি (claim) বিশ্বাস করার আগে প্রোভাইডারের JSON Web Key Set (JWKS) সংগ্রহ করুন এবং টোকেনের ক্রিপ্টোগ্রাফিক প্রমাণ যাচাই করুন।
- ইস্যুয়ার, অডিয়েন্স এবং এক্সপায়ারেশন চেক করুন – এই ফিল্ডগুলো নিশ্চিত করে যে টোকেনটি আপনার সাইটের জন্য এবং এটি এখনও বৈধ।
- অথেন্টিকেশন নন্স কখনোই জনসমক্ষে প্রকাশ করবেন না – নন্স সার্ভার-সাইড থেকে তৈরি করা উচিত এবং শুধুমাত্র অথেন্টিকেটেড সেশনের কাছে পাঠানো উচিত।
- রোল অ্যাসাইনমেন্ট সীমিত করুন – সোশ্যাল-লগইন ফ্লো-তে অতিরিক্ত ভেরিফিকেশন ধাপ ছাড়া কখনোই উচ্চ-ক্ষমতাসম্পন্ন রোল (যেমন অ্যাডমিনিস্ট্রেটর) প্রদান করা উচিত নয়।
ভেন্ডরের প্রতিক্রিয়া
WPWeb Elite প্যাচ করা ভার্সনটি রিলিজ করেছে।
পরবর্তী করণীয়
মূল কথা: একটি মাত্র সিগনেচার চেক না থাকায় একটি সুবিধাজনক “Sign in with Apple” বাটন পুরো সাইট দখল করার ব্যাকডোর হয়ে দাঁড়িয়েছে। সমাধানটি ব্যাপকভাবে ছড়িয়ে পড়ার আগ পর্যন্ত প্লাগইনটি আপডেট করা, ঝুঁকিপূর্ণ লগইন পদ্ধতিটি ডিজেবল করা এবং টোকেন ভেরিফিকেশন আরও কঠোর করা হলো একমাত্র নির্ভরযোগ্য প্রতিরক্ষা।
