Mobile Basics: মোবাইল অপারেটিং সিস্টেমের আর্কিটেকচার এবং প্রাথমিক নিরাপত্তা ধারণা!
Android ও iOS-এর architecture, sandboxing এবং প্রাথমিক mobile security ধারণা সম্পর্কে শিক্ষানবিসদের জন্য সম্পূর্ণ গাইড।
স্মার্টফোন এখন আমাদের জীবনের অবিচ্ছেদ্য অংশ। সকালে ঘুম ভাঙার অ্যালার্ম থেকে শুরু করে ব্যাংকিং, যোগাযোগ, বিনোদন, এমনকি স্বাস্থ্য পর্যবেক্ষণ পর্যন্ত প্রতিটি কাজে আমরা মোবাইল ডিভাইসের ওপর নির্ভরশীল। কিন্তু এই ছোট্ট যন্ত্রটির ভেতরে যে কতটা জটিল প্রযুক্তি কাজ করছে এবং সেখানে কতগুলো নিরাপত্তা স্তর রয়েছে, সে সম্পর্কে অধিকাংশ ব্যবহারকারীর ধারণা সীমিত। Mobile Security-র জগতে প্রবেশ করতে হলে প্রথমেই বুঝতে হবে মোবাইল অপারেটিং সিস্টেমের আর্কিটেকচার এবং এর প্রাথমিক নিরাপত্তা ধারণা।
এই আর্টিকেলে আমরা Android এবং iOS-র অভ্যন্তরীণ কাঠামো, application sandboxing, permission model এবং প্রাথমিক attack surface সম্পর্কে বিস্তারিত আলোচনা করব। যারা mobile security ক্ষেত্রে ক্যারিয়ার গড়তে চান বা শুধু নিজের ফোনকে সুরক্ষিত রাখতে চান, তাদের জন্য এই foundational knowledge অপরিহার্য।
মোবাইল অপারেটিং সিস্টেমের মূল ধারণা
বিশ্বে দুটি প্রধান মোবাইল অপারেটিং সিস্টেম রাজত্ব করছে, Android এবং iOS। Android, যা Google দ্বারা পরিচালিত, একটি Linux kernel-ভিত্তিক open source অপারেটিং সিস্টেম। অন্যদিকে iOS হলো Apple-এর proprietary সিস্টেম যা XNU kernel-এর ওপর তৈরি, যা মূলত macOS-র সাথে কাঠামোগতভাবে সম্পর্কিত।
Android-এর architecture কয়েকটি স্তরে বিভক্ত। সবচেয়ে নিচে আছে Linux Kernel, যা hardware abstraction, memory management এবং process scheduling-র দায়িত্ব পালন করে। এর ওপরে আছে Hardware Abstraction Layer (HAL), যা hardware এবং software-র মধ্যে সেতুবন্ধন তৈরি করে। তারপর Android Runtime (ART) যা Java bytecode-কে native code-এ রূপান্তর করে। সবচেয়ে ওপরে থাকে Application Framework এবং User Applications।
iOS-র architecture-ও প্রায় একইভাবে স্তরবদ্ধ। Core OS layer-এ থাকে kernel এবং নিম্নস্তরের সেবা। Core Services layer তথ্য পরিচালনার জন্য APIs সরবরাহ করে। Media layer audio, video এবং graphics সেবা প্রদান করে। সবার ওপরে আছে Cocoa Touch layer যা UI এবং অন্যান্য উচ্চস্তরের সেবা পরিচালনা করে।
দুই সিস্টেমের মধ্যে মৌলিক পার্থক্য হলো openness-এ। Android-এ ব্যবহারকারী চাইলে third-party stores থেকে app install করতে পারেন, যা সুবিধাজনক হলেও নিরাপত্তা ঝুঁকি বাড়ায়। অন্যদিকে iOS-এ Apple-এর App Store-র বাইরে app install করা সাধারণত সম্ভব নয়, যা আরও কঠোর নিরাপত্তা নিশ্চিত করে কিন্তু ব্যবহারকারীর স্বাধীনতা সীমিত করে।
Application Sandboxing-এর ভূমিকা
Mobile security-র একটি মৌলিক ধারণা হলো sandboxing। প্রতিটি app একটি isolated environment-এ চলে, যেখানে অন্য app-এর data বা system resources-এ সরাসরি অ্যাক্সেস সীমিত থাকে। এটি একটি দুর্গের মতো কাজ করে, যেখানে একটি app যদি আক্রমণকারীর হাতে পড়েও যায়, সে অন্যান্য app-এর তথ্য চুরি করতে পারে না।
Android-এ প্রতিটি app-কে একটি unique User ID (UID) দেওয়া হয় এবং সেই app একটি আলাদা process-এ চলে। Linux-এর traditional permission system এই isolation নিশ্চিত করে। প্রতিটি app-এর জন্য আলাদা data directory থাকে এবং অন্য app সেখানে প্রবেশ করতে পারে না (root access ছাড়া)।
iOS-এ sandboxing আরও কঠোর। প্রতিটি app একটি container-এ চলে যা শুধু সেই app-এর জন্য নির্ধারিত। এমনকি system file বা অন্য app-এর data কখনোই access করা সম্ভব নয়। Apple এই system-কে এতটাই সুরক্ষিত করেছে যে iOS jailbreaking ছাড়া এই সীমানা ভাঙা প্রায় অসম্ভব।
Sandboxing-এর সাথে আরেকটি গুরুত্বপূর্ণ ধারণা যুক্ত, সেটি হলো Mandatory Access Control (MAC)। Android-এ SELinux (Security-Enhanced Linux) এবং iOS-এ Apple Mobile File System (APFS) এই ধরনের কঠোর নিয়ন্ত্রণ প্রয়োগ করে। ফলে কোনো process তার নির্ধারিত সীমানা অতিক্রম করতে পারে না।
Permission Model এবং User Consent
মোবাইল অপারেটিং সিস্টেমের আরেকটি গুরুত্বপূর্ণ নিরাপত্তা স্তর হলো permission model। যখন একটি app camera, microphone, location বা contacts-এর মতো sensitive resources ব্যবহার করতে চায়, তখন তাকে ব্যবহারকারীর অনুমতি নিতে হয়।
Android-এ permission দুই ধরনের, normal এবং dangerous। Normal permissions যেমন internet access স্বয়ংক্রিয়ভাবে দেওয়া হয়। কিন্তু dangerous permissions যেমন camera, location ব্যবহারের সময় ব্যবহারকারীর সম্মতি প্রয়োজন। Android 6.0 (Marshmallow) থেকে runtime permission চালু হয়েছে, অর্থাৎ app ব্যবহারের সময় permission চাওয়া হয়, install করার সময় নয়।
iOS-এ permission system আরও granular। ব্যবহারকারী চাইলে location-এর জন্য "Allow Once", "Allow While Using App", বা "Don't Allow" নির্বাচন করতে পারেন। সাম্প্রতিক সংস্করণগুলোতে App Tracking Transparency নামক একটি feature যুক্ত হয়েছে যা app-গুলোকে অন্য app-এর কার্যকলাপ track করতে হলে আলাদাভাবে অনুমতি নিতে বাধ্য করে।
ব্যবহারকারীর সচেতনতা এই permission model-এর কার্যকারিতার মূল চাবিকাঠি। অনেক ব্যবহারকারী না বুঝেই সব permission allow করে দেন, যা privacy এবং security উভয়ের জন্যই ঝুঁকিপূর্ণ। তাই কোন app কী permission চাইছে এবং সেটি প্রয়োজনীয় কিনা, তা যাচাই করা গুরুত্বপূর্ণ।
বাস্তব উদাহরণ ও সাধারণ আক্রমণ
মোবাইল নিরাপত্তার দুর্বলতা বিভিন্ন বাস্তব ঘটনায় প্রকাশ পেয়েছে। ২০১৭ সালে Pegasus নামক একটি spyware আবিষ্কৃত হয় যা iOS এবং Android উভয় platform-এই zero-click attack করতে সক্ষম ছিল। শুধু একটি malicious link পাঠানোর মাধ্যমে এটি ফোনের সম্পূর্ণ নিয়ন্ত্রণ নিতে পারত।
Android-এর Stagefright vulnerability (২০১৫) আরেকটি উল্লেখযোগ্য উদাহরণ। শুধু একটি MMS পাঠিয়েই ফোনের নিয়ন্ত্রণ নেওয়া সম্ভব ছিল, ব্যবহারকারীকে message-টি খুলতেও হতো না। প্রায় ৯৫% Android ডিভাইস তখন এই দুর্বলতার শিকার হয়েছিল।
Phishing apps আরেকটি সাধারণ আক্রমণের ধরন। আক্রমণকারীরা জনপ্রিয় banking app-এর হুবহু নকল তৈরি করে third-party store-এ আপলোড করে। ব্যবহারকারী না বুঝে সেটি install করলে তার login credentials চুরি হয়ে যায়। বাংলাদেশেও বিভিন্ন mobile financial service (MFS) app-এর নকল সংস্করণ পাওয়া গেছে যা প্রতারণার জন্য তৈরি করা হয়েছিল।
Public Wi-Fi-র মাধ্যমে Man-in-the-Middle (MitM) আক্রমণও মোবাইল ব্যবহারকারীদের জন্য একটি বড় ঝুঁকি। আক্রমণকারী একই network-এ থেকে data intercept করতে পারে, বিশেষ করে যদি app properly SSL/TLS implement না করে থাকে।
প্রাথমিক নিরাপত্তা চর্চা
মোবাইল ডিভাইস সুরক্ষিত রাখতে কিছু মৌলিক চর্চা অনুসরণ করা প্রয়োজন। প্রথমত, সর্বদা official app store (Google Play, Apple App Store) থেকে app install করুন। যদিও Google Play-তেও মাঝে মাঝে malicious app পাওয়া যায়, তবুও এটি third-party store-এর তুলনায় অনেক নিরাপদ।
দ্বিতীয়ত, অপারেটিং সিস্টেম এবং app-গুলো নিয়মিত update রাখুন। প্রতিটি update-এ security patch থাকে যা পুরোনো vulnerabilities বন্ধ করে। অনেক ব্যবহারকারী update-কে অপ্রয়োজনীয় মনে করেন, কিন্তু এটি নিরাপত্তার জন্য অত্যন্ত গুরুত্বপূর্ণ।
তৃতীয়ত, strong screen lock ব্যবহার করুন। শুধু pattern lock নয়, complex PIN, password বা biometric authentication (fingerprint, face recognition) ব্যবহার করুন। Biometric authentication ফোন হারিয়ে গেলে বা চুরি হলে data রক্ষায় কার্যকর।
চতুর্থত, full device encryption নিশ্চিত করুন। আধুনিক Android এবং iOS ডিভাইসে এটি default-এ enabled থাকে, কিন্তু পুরোনো ডিভাইসে manually চালু করতে হতে পারে। Encryption নিশ্চিত করে যে ফোন হারালেও data পড়া সম্ভব নয়।
পঞ্চমত, app permission নিয়মিত পর্যালোচনা করুন। কোনো app যদি তার কাজের জন্য অপ্রয়োজনীয় permission চায়, সেটি সন্দেহজনক। যেমন একটি torch app যদি contacts বা location access চায়, সেটি ব্যবহার করা উচিত নয়।
Mobile Security-র ক্যারিয়ার সম্ভাবনা
বাংলাদেশসহ বিশ্বব্যাপী mobile security professional-দের চাহিদা ক্রমবর্ধমান। প্রতিটি বড় কোম্পানি তাদের mobile app-এর নিরাপত্তা যাচাইয়ের জন্য specialist hire করে। Mobile Application Penetration Tester, Mobile Security Researcher, এবং Reverse Engineer-এর মতো পদে কাজের সুযোগ রয়েছে।
এই ক্ষেত্রে প্রবেশের জন্য Android-এ Java/Kotlin এবং iOS-এ Swift/Objective-C-এর জ্ঞান প্রয়োজন। সেই সাথে static এবং dynamic analysis tools যেমন MobSF, Frida, Burp Suite-এর ব্যবহার জানতে হবে। OWASP Mobile Top 10 এবং OWASP MASVS (Mobile Application Security Verification Standard) এই ক্ষেত্রে গুরুত্বপূর্ণ reference।
মোবাইল ডিভাইসের নিরাপত্তা শুধু একটি প্রযুক্তিগত বিষয় নয়, এটি আমাদের ব্যক্তিগত জীবন, আর্থিক নিরাপত্তা এবং পেশাগত গোপনীয়তার সাথে সরাসরি সম্পর্কিত। Android এবং iOS-র জটিল architecture, sandboxing model, এবং permission system বোঝা একজন security প্রফেশনালের জন্য অপরিহার্য। যত বেশি আমরা স্মার্টফোনের ভেতরের কাঠামো বুঝতে পারব, তত ভালোভাবে আক্রমণ চিহ্নিত করতে এবং প্রতিরোধ করতে পারব। এই ফাউন্ডেশনাল জ্ঞান নিয়ে এগিয়ে যান এবং পরবর্তী পর্যায়ে mobile penetration testing এবং reverse engineering-এর গভীরে প্রবেশ করুন।
আপনার জ্ঞান যাচাই করতে প্রস্তুত? আজই HackCert-এ Mobile Basics MCQ Quiz-টি দিন!
Related articles
Asset Management: Accounting and Security Monitoring of All Devices in a Corporate Network
8 min
Biometric Security: How Cyber-Proof are Fingerprint and Face Unlock Systems?
10 min
Blue Teaming: The Role of the Defensive Security Team in Thwarting Cyber Attacks
10 min
Cloud Basics: Understanding Cloud Computing and Essential Security Risks
8 min

