যে ৭টি ভুলে হ্যাক হয় ব্যবসার ওয়েবসাইট — আর কীভাবে বাঁচবেন
TrustByte Team
১৩ অক্টোবর, ২০২৬

শুরুতেই একটা অপ্রিয় সত্য বলে রাখি। আমাদের কাছে যত ওয়েবসাইট বা অ্যাপ দেখার জন্য আসে, তার বেশিরভাগেই অন্তত একটা বড় নিরাপত্তা ফাঁক থাকে। মালিকেরা গাফিলতি করেছেন, ব্যাপারটা তা নয়। সাধারণত যা হয়: সাইট বানানো হলো, চালু হলো, তারপর আর কেউ খোঁজ নিল না। ওদিকে ইন্টারনেটের দুনিয়া প্রতিদিন বদলাচ্ছে।
হ্যাকাররা ব্যাপারটা ভালোই জানে। আপনার দোকানের জন্য আলাদা করে মাথা খাটিয়ে কোড লেখার দরকার তাদের পড়ে না। স্বয়ংক্রিয় স্ক্যানার চালিয়ে তারা একসঙ্গে লাখ লাখ সাইটে হাতে গোনা কয়েকটা চেনা ভুল খোঁজে। আপনার সাইটে এর একটাও থাকলে ধরা পড়বেই — প্রশ্ন শুধু কবে।
এটা আর দূরের কোনো দেশের খবর নয়
একসময় "ডেটা ফাঁস" শুনলে মনে হতো, এসব আমেরিকা-ইউরোপের বড় কোম্পানির সমস্যা। সেই দিন আর নেই।
২০২৬ সালের মার্চে সুপারশপ চেইন স্বপ্ন নিশ্চিত করে, হ্যাকাররা তাদের গ্রাহক ডেটাবেসে ঢুকে পড়েছে। সেখানে ছিল প্রায় ৪০ লাখ নিবন্ধিত গ্রাহকের নাম, মোবাইল নম্বর আর কেনাকাটার হিসাব। হ্যাকাররা মুক্তিপণ হিসেবে ১৫ লাখ ডলার দাবি করে। স্বপ্ন টাকা দেয়নি; বরং দেশি-বিদেশি ফরেনসিক বিশেষজ্ঞ আর পুলিশের কাউন্টার টেরোরিজম অ্যান্ড ট্রান্সন্যাশনাল ক্রাইম (সিটিটিসি) ইউনিটের সহায়তা নেয় (দ্য ডেইলি স্টার, টিবিএস নিউজ)। প্রতিষ্ঠানটির ব্যবস্থাপনা পরিচালক সাংবাদিকদের জানান, ফাঁস হওয়া তথ্যে স্ত্রীর মোবাইল নম্বর দিয়ে খুঁজতেই তাঁর তথ্য বেরিয়ে আসে।
আগস্টে "madarax" নামে একটি হ্যাকার গ্রুপ ডার্ক ওয়েবের এক ফোরামে দাবি করে, বিডিজবস-এর ৬০ লাখ চাকরিপ্রার্থীর সিভি তাদের হাতে এবং সেগুলো তারা বিক্রি করছে। একটা সিভিতে ঠিকানা, পড়াশোনা, চাকরির অভিজ্ঞতা — সবই থাকে। বিডিজবস এসব খবরকে বিভ্রান্তিকর ও মিথ্যা বলেছে, আর দাবিটি এখনো স্বাধীনভাবে যাচাই হয়নি (দ্য ডেইলি স্টার)। সেপ্টেম্বরে আরেক বিক্রেতা দাবি করে, ই-কমার্স প্ল্যাটফর্ম ঘরের বাজার-এর ৪২ লাখ রেকর্ড তার কাছে আছে। ঘরের বাজার বলছে, গ্রাহকদের তথ্য সম্পূর্ণ নিরাপদ, আর তথ্য ফাঁসের কোনো প্রমাণ তারা পায়নি (ডেইলি টাইমস অব বাংলাদেশ)।
এসব প্রতিষ্ঠানের ভেতরে ঠিক কী ঘটেছে, আমরা জানি না। তিনটির মধ্যে দুটি এখনো কেবলই দাবি। কাউকে কাঠগড়ায় তোলা আমাদের উদ্দেশ্য নয়। বলার কথা একটাই: ছোট-বড় যেকোনো দেশি ব্যবসাই এখন হ্যাকারদের নিশানায়। গ্রাহক ভরসা করে যে তথ্য আপনাকে দেন — মোবাইল নম্বর, ঠিকানা, কী কিনলেন তার হিসাব — অন্য কারো কাছে সেটাই বিক্রি করার মতো পণ্য।
সাইবার হুমকির বড় চিত্রটা আমরা আগের একটি লেখায় তুলে ধরেছি। এবারের লেখাটা একেবারে কাজের কথা: যে ফাঁকফোকরগুলো আমরা বারবার পাই, সেগুলো সহজ ভাষায়, আর ক্লায়েন্টদের সাইটে আমরা কীভাবে সেগুলো বন্ধ করি।
১. বছরের পর বছর আপডেট না হওয়া সফটওয়্যার
সবচেয়ে বেশি পাই এটাই। ওয়ার্ডপ্রেসের কোনো প্লাগইন, যেটা শেষবার আপডেট হয়েছে ২০২১ সালে। কিংবা লারাভেল বা নোড.জেএসের এমন প্রজেক্ট, যার প্যাকেজগুলোর দুর্বলতার কথা অনেক আগেই প্রকাশ্যে এসেছে। কোনো দুর্বলতা জানাজানি হলে কয়েক দিনের মধ্যেই সেটা কাজে লাগানোর তৈরি স্ক্রিপ্ট চলে আসে, আর বটগুলো সামনে যে সাইট পায়, তাতেই চালিয়ে দেখে।
আমরা যা করি: সাইটটা কোন কোন কম্পোনেন্টের ওপর চলে, প্রথমে তার পুরো তালিকা করি। প্রতিটা মিলিয়ে দেখি পাবলিক ভালনারেবিলিটি ডেটাবেসের সঙ্গে, তারপর ঝুঁকিপূর্ণগুলো আপডেট করি বা বদলে ফেলি। প্রতিটা ধাপে টেস্ট চলে, যাতে আপডেট করতে গিয়ে আপনার চেকআউট পেজটাই বন্ধ না হয়ে যায়। সবশেষে অ্যালার্ট সেট করে দিই, যাতে পরের সমস্যাটা আবার তিন বছর কারো নজরের বাইরে পড়ে না থাকে।
২. যে ফাইলগুলো কখনোই বাইরে থাকার কথা নয়
ডেটাবেসের পাসওয়ার্ডসহ .env ফাইল। .git ফোল্ডার, যেটা দিয়ে যে কেউ আপনার পুরো সোর্স কোড নামিয়ে নিতে পারে। দুই বছর আগে "এক মিনিটের জন্য" রেখে ভুলে যাওয়া backup.zip। আমরা শুরুতেই এগুলো খুঁজি, কারণ অপরিচিত কারো পক্ষে সাইটের দখল নেওয়ার সবচেয়ে সহজ পথ এটাই। হ্যাকিং জানারও দরকার নেই — একটা ব্রাউজারই যথেষ্ট।
আমরা যা করি: ফাইলগুলো সরিয়ে ফেলি, সার্ভারে ওই পাথগুলোতে ঢোকা বন্ধ করি, আর যেসব পাসওয়ার্ড বা কি ফাঁস হয়ে থাকতে পারে, সবগুলো বদলে দিই। ভেতরের গোপন তথ্য একবার বাইরে চলে গেলে শুধু ফাইল মুছে দিলে কোনো লাভ নেই।
৩. কোডের ভেতরেই লেখা পাসওয়ার্ড আর API কি
পেমেন্ট গেটওয়ের কি, এসএমএস সার্ভিসের API টোকেন, ইমেইলের পাসওয়ার্ড — সরাসরি সোর্স কোডে লেখা। আরও বিপদ হয় যখন এগুলো থাকে জাভাস্ক্রিপ্টে, যেটা প্রত্যেক ভিজিটরের ব্রাউজারে লোড হয়। ব্রাউজারের ডেভেলপার টুলস খুললেই যে কেউ পড়ে ফেলতে পারেন।
আমরা যা করি: গোপন তথ্যগুলো সার্ভারের কনফিগারেশনে সরিয়ে নিই, যেখানে ভিজিটরের নাগাল নেই। প্রজেক্টের গিট হিস্টোরিও স্ক্যান করি, কারণ পরে "মুছে ফেলা" কি-ও হিস্টোরিতে রয়ে যায় — রিপোজিটরি যার হাতে, সে-ই দেখতে পায়। আমাদের নিজেদের প্রজেক্টে প্রতিটা কমিটে একটা সিক্রেট স্ক্যানার চলে; ভুল করে কোনো কি ঢুকে গেলে কমিটটাই আটকে যায়।
৪. যে ফর্ম চোখ বুজে সবকিছু মেনে নেয়
সার্চ বক্স, লগইন ফর্ম, যোগাযোগের ফর্ম। ভিজিটর যা লেখেন, কোড যদি তা যাচাই না করেই সরাসরি ডেটাবেস কোয়েরিতে বা পেজে বসিয়ে দেয়, তখনই ঘটে SQL ইনজেকশন বা ক্রস-সাইট স্ক্রিপ্টিং (XSS)। এই বাগগুলো কয়েক দশকের পুরোনো, তবু এখনো চোখে পড়ে — বিশেষ করে পুরোনো কাস্টম PHP কোডে।
আমরা যা করি: সব জায়গায় প্যারামিটারাইজড কোয়েরি বা ভালো একটা ORM, পেজে যা দেখানো হয় তা ঠিকমতো এস্কেপ করা, আর শুধু ব্রাউজারে নয়, সার্ভারেও ইনপুট যাচাই। লগইন ও যোগাযোগের ফর্মে থাকে রেট লিমিট, যাতে বট সারা রাত ধরে একের পর এক চেষ্টা চালাতে না পারে।
৫. অরক্ষিত প্রবেশপথ: অ্যাডমিন প্যানেল, ডিফল্ট লগইন, টু-ফ্যাক্টর নেই
ইউজারনেম "admin" দিয়েই /wp-admin-এ ঢোকা যায়। হোস্টিং কন্ট্রোল প্যানেলের পাসওয়ার্ড আর মালিকের ফেসবুকের পাসওয়ার্ড একই। ডোমেইন অ্যাকাউন্টে টু-ফ্যাক্টর অথেনটিকেশন চালু নেই। শেষেরটা বেহাত হলে কেউ আপনার পুরো ডোমেইনটাই নিয়ে নিতে পারে — ওয়েবসাইট তো বটেই, ইমেইলও।
আমরা যা করি: প্রতিটা অ্যাকাউন্টের জন্য আলাদা ও শক্ত পাসওয়ার্ড; হোস্টিং, ডোমেইন, অ্যাডমিন প্যানেল, ইমেইল — যেখানে সুযোগ আছে, সবখানে টু-ফ্যাক্টর লগইন। সঙ্গে ছোট্ট একটা তালিকা: আসলে কার কার অ্যাক্সেস দরকার। চাকরি ছেড়ে যাওয়া কর্মী বা তিন বছর আগের এজেন্সির অ্যাক্সেস বাদ।
৬. সিকিউরিটি হেডার নেই, HTTPS-ও আধাআধি
অ্যাড্রেস বারে তালার চিহ্ন থাকলেই কাজ শেষ নয়। Content-Security-Policy, HSTS বা X-Frame-Options-এর মতো হেডার না থাকলে বাইরের স্ক্রিপ্ট ঢুকিয়ে সাইট হাইজ্যাক করা কিংবা নকল কোনো পেজের ভেতরে আপনার সাইট বসিয়ে দেওয়া সহজ হয়ে যায়। কুকিতে ঠিকঠাক ফ্ল্যাগ না থাকলে লগইন সেশনও ফাঁস হতে পারে।
আমরা যা করি: হেডারগুলো ঠিকঠাক কনফিগার করি, HTTPS পুরোপুরি বাধ্যতামূলক করি, কুকির সেটিং কড়া করি — আর খেয়াল রাখি, এসব করতে গিয়ে সাইটের কোনো অংশ যেন অচল না হয়ে পড়ে।
৭. ব্যাকআপ নেই, অথবা আছে কিন্তু কখনো পরীক্ষা হয়নি
কড়া অর্থে এটা দুর্বলতা নয়। কিন্তু হামলা হলে আপনার এক বিকেল নষ্ট হবে, নাকি পুরো ব্যবসাই ঝুঁকিতে পড়বে — সেটা ঠিক করে দেয় এই ব্যাকআপ। অনেক মালিকই নিশ্চিত থাকেন যে ব্যাকআপ আছে; ভুলটা ভাঙে ঠিক যেদিন দরকার পড়ে।
আমরা যা করি: আলাদা জায়গায় নিয়মিত স্বয়ংক্রিয় ব্যাকআপ, আর সত্যি সত্যি রিস্টোর করে দেখা। যাতে "ব্যাকআপ তো আছে" কথাটা শুধু ভরসা না থেকে প্রমাণিত সত্য হয়।
নিরাপত্তা নিয়ে ক্লায়েন্টদের সঙ্গে আমরা যেভাবে কাজ করি
নিরাপত্তা একবার কিনে ফেলে ভুলে যাওয়ার জিনিস নয়। আমাদের কাছে এটা সফটওয়্যার তৈরি আর রক্ষণাবেক্ষণেরই অংশ:
- প্রথমে নিরাপদ অডিট। শুরু করি এমন সব চেক দিয়ে, যেগুলো শুধু দেখে, কিছু বদলায় না: বাইরে পড়ে থাকা ফাইল, পুরোনো কম্পোনেন্ট, হেডার, HTTPS, ফাঁস হওয়া গোপন তথ্য। লাইভ সাইটে সমস্যা হতে পারে, এমন কিছু করা হয় না। এর চেয়ে কড়া টেস্ট হয় স্টেজিং কপিতে, প্রোডাকশনে কখনোই নয়।
- গুরুত্ব বুঝে সমাধান। আপনার হাতে আসবে সহজ বাংলায় লেখা একটা রিপোর্ট, জরুরি অনুযায়ী সাজানো: কোনটা আজই ঠিক করতে হবে, কোনটা এ সপ্তাহে, কোনটা এ মাসে। টেকনিক্যাল শব্দে ঠাসা ৮০ পাতার PDF নয়।
- নিরাপত্তা শুরু থেকেই। আমাদের বানানো প্রজেক্টে প্রতিটা পরিবর্তন আরেকজন ডেভেলপার রিভিউ করেন, ডেটাবেসে যাওয়া হয় নিরাপদ কোয়েরি বিল্ডার দিয়ে, আর কোডের ভেতরে কোনো গোপন তথ্য রাখা হয় না।
- নিয়মিত নজরদারি। নতুন দুর্বলতার অ্যালার্ট, সাইট চালু আছে কিনা তার নিয়মিত চেক, আর কিছুদিন পরপর নতুন করে অডিট — কারণ প্রতি সপ্তাহেই নতুন নতুন দুর্বলতা প্রকাশ পায়।
আপনার ব্যবসার জন্য এর মানে কী
ঠিকঠাক করা হলে নিরাপত্তার কাজ বাইরে থেকে দেখতে বেশ নিস্তরঙ্গ — আর আসল সাফল্য সেটাই। অনলাইন দোকানে অর্ডার আসতেই থাকে। গ্রাহকের তথ্য যেখানে থাকার, সেখানেই থাকে। ক্লিনিকের অ্যাপয়েন্টমেন্ট সিস্টেম হঠাৎ রোগীদের কোনো জুয়ার সাইটে পাঠিয়ে দেয় না। মাসের পর মাস খেটে গুগলে যে অবস্থান তৈরি করেছেন, তার পাশে "এই সাইটটি হ্যাক হয়ে থাকতে পারে" লেখা ওঠে না।
আলোচনার টেবিলেও পার্থক্যটা টের পাবেন। বড় কোনো ক্লায়েন্ট বা বিদেশি পার্টনার যখন জানতে চাইবেন তাঁদের তথ্য আপনি কীভাবে সুরক্ষিত রাখেন, তখন আপনার কাছে জোর দিয়ে বলার মতো উত্তর থাকবে। আর এ বছরের খবরগুলোর পর এই প্রশ্ন এখন অনেকেই করছেন।
আজই করে ফেলুন, মাত্র পাঁচ মিনিটের কাজ
- হোস্টিং, ডোমেইন আর অ্যাডমিন অ্যাকাউন্টে ঢুকে যেখানে সুযোগ আছে, টু-ফ্যাক্টর অথেনটিকেশন চালু করে দিন।
- খোঁজ নিন, সাইটের প্লাগইন, থিম বা ফ্রেমওয়ার্ক শেষবার কবে আপডেট হয়েছে।
- যিনি সাইট দেখাশোনা করেন, তাঁকে জিজ্ঞেস করুন: "শেষ কবে আমরা সত্যিই ব্যাকআপ থেকে সাইট রিস্টোর করে দেখেছি?"
- যাঁরা এখন আর আপনার সঙ্গে কাজ করেন না, তাঁদের অ্যাকাউন্ট সরিয়ে দিন।
এর কোনো উত্তরে খটকা লাগলে আমাদের সঙ্গে যোগাযোগ করুন। আমরা সৈয়দপুরের প্রতিষ্ঠান; রংপুর বিভাগসহ সারা দেশে, এমনকি দেশের বাইরেও বিভিন্ন ব্যবসার সঙ্গে কাজ করি। প্রথম পরামর্শ সম্পূর্ণ ফ্রি, আর উত্তরটা পাবেন খোলাখুলি — সেটা যদি হয় "আপনার সাইট ভালো অবস্থায় আছে", তবুও।



