এই বছরের ব্ল্যাক হ্যাট ইউরোপ সিকিউরিটি কনফারেন্সে, চাইনিজ হংকং ইউনিভার্সিটির দুইজন গবেষক গবেষণা উপস্থাপন করেছেন যেটি এমন একটি শোষণ দেখিয়েছে যা Android অ্যাপগুলিকে প্রভাবিত করে যা সম্ভাব্য এক বিলিয়নেরও বেশি ইনস্টল করা অ্যাপ্লিকেশনগুলিকে আক্রমণের ঝুঁকিতে ফেলে দিতে পারে৷
শোষণটি OAuth 2.0 অনুমোদনের মানদণ্ডের মোবাইল বাস্তবায়নের একটি ম্যান-ইন-দ্য-মিডল আক্রমণের উপর নির্ভর করে। এটা খুব প্রযুক্তিগত শোনাচ্ছে, কিন্তু আসলে এর মানে কি, এবং আপনার ডেটা কি নিরাপদ?
OAuth কি?
OAuth হল একটি ওপেন স্ট্যান্ডার্ড যা অনেক ওয়েবসাইট এবং অ্যাপ দ্বারা ব্যবহৃত হয় যাতে আপনি অনেকগুলি OAuth প্রদানকারীর একটি থেকে একটি অ্যাকাউন্ট ব্যবহার করে একটি তৃতীয় পক্ষের অ্যাপ বা ওয়েবসাইটে লগ ইন করতে পারেন। সবচেয়ে সাধারণ এবং সুপরিচিত কিছু উদাহরণ হল গুগল, ফেসবুক এবং টুইটার।
সিঙ্গেল সাইন অন (এসএসও) বোতাম আপনাকে আপনার অ্যাকাউন্টের তথ্য অ্যাক্সেস করার অনুমতি দেয়। আপনি যখন Facebook বোতামে ক্লিক করেন, তখন তৃতীয় পক্ষের অ্যাপ বা ওয়েবসাইট একটি অ্যাক্সেস টোকেন খোঁজে, এটিকে আপনার Facebook তথ্যে অ্যাক্সেস দেয়৷
যদি এই টোকেনটি পাওয়া না যায় তবে আপনাকে আপনার Facebook অ্যাকাউন্টে তৃতীয় পক্ষের অ্যাক্সেসের অনুমতি দিতে বলা হবে। একবার আপনি এটি অনুমোদন করলে, Facebook একটি অ্যাক্সেস টোকেন চেয়ে তৃতীয় পক্ষের কাছ থেকে একটি বার্তা পায়৷
৷Facebook একটি টোকেন সহ প্রতিক্রিয়া জানায়, আপনার নির্দিষ্ট করা তথ্যে তৃতীয় পক্ষের অ্যাক্সেস মঞ্জুর করে। উদাহরণস্বরূপ, আপনি আপনার মৌলিক প্রোফাইল তথ্য, এবং বন্ধুদের তালিকায় অ্যাক্সেস মঞ্জুর করেন, কিন্তু আপনার ফটো নয়৷ তৃতীয় পক্ষ টোকেন গ্রহণ করে এবং আপনাকে আপনার Facebook শংসাপত্র দিয়ে লগইন করার অনুমতি দেয়। তারপর, যতক্ষণ না টোকেনের মেয়াদ শেষ না হয়, ততক্ষণ এটি আপনার অনুমোদিত তথ্যে অ্যাক্সেস পাবে।
এটি একটি মহান সিস্টেম মত মনে হচ্ছে. আপনাকে কম পাসওয়ার্ড মনে রাখতে হবে, এবং সহজেই লগইন করতে হবে এবং আপনার ইতিমধ্যেই থাকা একটি অ্যাকাউন্ট দিয়ে আপনার তথ্য যাচাই করতে হবে। SSO বোতামগুলি মোবাইলে আরও বেশি কার্যকর যেখানে নতুন পাসওয়ার্ড তৈরি করা হয়, যেখানে একটি নতুন অ্যাকাউন্ট অনুমোদন করা সময়সাপেক্ষ হতে পারে৷
সমস্যা কি?
সাম্প্রতিকতম OAuth ফ্রেমওয়ার্ক -- OAuth 2.0 -- অক্টোবর 2012-এ প্রকাশিত হয়েছিল এবং মোবাইল অ্যাপের জন্য ডিজাইন করা হয়নি৷ এর ফলে অনেক অ্যাপ ডেভেলপারকে নিরাপদে কীভাবে করা উচিত তার নির্দেশনা ছাড়াই OAuthকে তাদের নিজস্বভাবে প্রয়োগ করতে হয়েছে।
ওয়েবসাইটগুলিতে OAuth তৃতীয় পক্ষ এবং SSO প্রদানকারীর সার্ভারের মধ্যে সরাসরি যোগাযোগ ব্যবহার করে, মোবাইল অ্যাপগুলি এই সরাসরি যোগাযোগ পদ্ধতি ব্যবহার করে না৷ পরিবর্তে, মোবাইল অ্যাপ আপনার ডিভাইসের মাধ্যমে একে অপরের সাথে যোগাযোগ করে।
একটি ওয়েবসাইটে OAuth ব্যবহার করার সময়, Facebook সরাসরি তৃতীয় পক্ষের সার্ভারগুলিতে অ্যাক্সেস টোকেন এবং প্রমাণীকরণ তথ্য সরবরাহ করে। ব্যবহারকারীকে লগ ইন করার আগে বা কোনো ব্যক্তিগত ডেটা অ্যাক্সেস করার আগে এই তথ্যটি যাচাই করা যেতে পারে।
গবেষকরা দেখেছেন যে অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলির একটি বড় শতাংশ এই বৈধতা অনুপস্থিত ছিল। পরিবর্তে Facebook এর সার্ভারগুলি Facebook অ্যাপে অ্যাক্সেস টোকেন পাঠায়। অ্যাক্সেস টোকেন তারপর তৃতীয় পক্ষের অ্যাপে বিতরণ করা হবে। তৃতীয় পক্ষের অ্যাপ আপনাকে ফেসবুকের সার্ভারের মাধ্যমে যাচাই না করেই লগইন করার অনুমতি দেবে যে ব্যবহারকারীর তথ্য বৈধ ছিল।
আক্রমণকারী OAuth টোকেন অনুরোধকে ট্রিগার করে নিজেদের মতো করে লগইন করতে পারে। একবার ফেসবুক টোকেন অনুমোদন করলে, তারা ফেসবুকের সার্ভার এবং Facebook অ্যাপের মধ্যে নিজেদের সন্নিবেশ করতে পারে। আক্রমণকারী তখন টোকেনের ব্যবহারকারীর আইডি ভিকটিমদের কাছে পরিবর্তন করতে পারে। ব্যবহারকারীর নাম সাধারণত সর্বজনীনভাবে উপলব্ধ তথ্যও, তাই আক্রমণকারীর জন্য খুব কম বাধা রয়েছে। একবার ইউজার আইডি পরিবর্তন হয়ে গেলে -- কিন্তু অনুমোদন এখনও দেওয়া হয়েছে -- থার্ড-পার্টি অ্যাপ শিকারের অ্যাকাউন্টের অধীনে লগইন করবে।
এই ধরনের শোষণ একটি ম্যান-ইন-দ্য-মিডল (MitM) আক্রমণ হিসাবে পরিচিত। এখানেই আক্রমণকারী ডেটা আটকাতে এবং পরিবর্তন করতে সক্ষম হয়, যখন দুটি পক্ষ বিশ্বাস করে যে তারা একে অপরের সাথে সরাসরি যোগাযোগ করছে।
এটি আপনাকে কীভাবে প্রভাবিত করে?
যদি কোনও আক্রমণকারী কোনও অ্যাপকে বোকা বানিয়ে বিশ্বাস করে যে সে আপনিই, তাহলে হ্যাকার সেই পরিষেবাতে আপনার সঞ্চয় করা সমস্ত তথ্য অ্যাক্সেস করে। গবেষকরা নীচে দেখানো সারণীটি তৈরি করেছেন যেটিতে আপনি বিভিন্ন ধরণের অ্যাপে প্রকাশ করতে পারেন এমন কিছু তথ্য তালিকাভুক্ত করে৷
কিছু ধরনের তথ্য অন্যদের তুলনায় কম ক্ষতিকর। আপনার সমস্ত ভ্রমণ পরিকল্পনা, বা আপনার নামে ব্যক্তিগত বার্তা প্রেরণ এবং গ্রহণ করার ক্ষমতার চেয়ে আপনার সংবাদ পড়ার ইতিহাস প্রকাশ করার বিষয়ে আপনার চিন্তিত হওয়ার সম্ভাবনা কম। আমরা নিয়মিতভাবে তৃতীয় পক্ষের কাছে যে ধরনের তথ্য অর্পণ করি - এবং এর অপব্যবহারের ফলাফলের জন্য এটি একটি গভীর অনুস্মারক৷
আপনার কি চিন্তা করা উচিত?
গবেষকরা দেখেছেন যে গুগল প্লে স্টোরে এসএসও সমর্থন করে এমন 600টি সর্বাধিক জনপ্রিয় অ্যাপের মধ্যে 41.21% MitM আক্রমণের জন্য ঝুঁকিপূর্ণ। এটি সম্ভাব্যভাবে বিশ্বের কোটি কোটি ব্যবহারকারীকে এই ধরনের আক্রমণের সম্মুখীন হতে পারে। দলটি Android এর উপর তাদের গবেষণা চালিয়েছে কিন্তু তারা বিশ্বাস করে যে এটি iOS-এ প্রতিলিপি করা যেতে পারে। এটি সম্ভাব্যভাবে দুটি বৃহত্তম মোবাইল অপারেটিং সিস্টেমের লক্ষ লক্ষ অ্যাপ এই আক্রমণের জন্য ঝুঁকিপূর্ণ রেখে দেবে৷
লেখার সময়, ইন্টারনেট ইঞ্জিনিয়ারিং টাস্ক ফোর্স (IETF) যারা OAuth 2.0 স্পেসিফিকেশন তৈরি করেছে তাদের কাছ থেকে কোনো অফিসিয়াল বিবৃতি পাওয়া যায়নি। গবেষকরা প্রভাবিত অ্যাপগুলির নাম দিতে অস্বীকার করেছেন, তাই মোবাইল অ্যাপে SSO ব্যবহার করার সময় আপনার সতর্কতা অবলম্বন করা উচিত।
একটি রূপালী আস্তরণ আছে৷৷ গবেষকরা ইতিমধ্যেই গুগল এবং ফেসবুক এবং অন্যান্য এসএসও প্রদানকারীদের শোষণের বিষয়ে সতর্ক করেছেন। তার উপরে, তারা সমস্যা সমাধানের জন্য প্রভাবিত তৃতীয় পক্ষের বিকাশকারীদের সাথে কাজ করছে।
আপনি এখন কি করতে পারেন?
যদিও একটি সমাধান তার পথে হতে পারে, সেখানে অনেক কিছু আছে৷ ক্ষতিগ্রস্ত অ্যাপ আপডেট করা হবে। এতে কিছু সময় লাগতে পারে, তাই এই সময়ের জন্য SSO ব্যবহার না করা মূল্যবান হতে পারে। পরিবর্তে, আপনি যখন একটি নতুন অ্যাকাউন্টের জন্য নিবন্ধন করবেন, নিশ্চিত করুন যে আপনি একটি শক্তিশালী পাসওয়ার্ড তৈরি করেছেন যা আপনি ভুলে যাবেন না৷ হয় সেটা বা আপনার জন্য ভারী উত্তোলন করতে একটি পাসওয়ার্ড ম্যানেজার ব্যবহার করুন।
সময়ে সময়ে আপনার নিজের নিরাপত্তা চেকআপ পরিচালনা করা ভাল অভ্যাস। এমনকি Google তাদের চেকআপ করার জন্য আপনাকে ক্লাউড স্টোরেজে পুরস্কৃত করবে। আপনার SSO অ্যাকাউন্টগুলিতে আপনি কোন অ্যাপগুলির অনুমতি দিয়েছেন তা পরীক্ষা করার জন্য এটি একটি আদর্শ সময়। এটি Facebook-এর মতো একটি সাইটে বিশেষভাবে গুরুত্বপূর্ণ, যা প্রচুর পরিমাণে খুব ব্যক্তিগত তথ্য সঞ্চয় করে৷
৷আপনি কি মনে করেন এটি একক সাইন অন থেকে সরে যাওয়ার সময়? আপনি সেরা লগইন পদ্ধতি কি মনে করেন? আপনি কি এই শোষণ দ্বারা প্রভাবিত হয়েছে? নীচের মন্তব্যে আমাদের জানান!