মাঝখানে মানুষ থেকে সুরক্ষা। ম্যান ইন দ্য মিডল (MitM) আক্রমণ সম্পর্কে সব

10/18/2016 | ভ্লাদিমির খাজভ

রাশিয়ানদের চিঠিপত্রের বাধা এবং ডিক্রিপশন সম্পর্কিত ইয়ারোভায়া আইনের বিধানগুলি বাস্তবায়নের জন্য এফএসবি, টেলিকম এবং গণযোগাযোগ মন্ত্রক এবং শিল্প ও বাণিজ্য মন্ত্রকের পরিকল্পনাগুলি আর কেবলমাত্র পরিকল্পনা নয়, ইতিমধ্যেই এটি করা শুরু হয়েছে। এমআইটিএম আক্রমণ ব্যবহার করে হোয়াটসঅ্যাপ, ভাইবার, ফেসবুক মেসেঞ্জার, টেলিগ্রাম, স্কাইপ বার্তাগুলিকে বাধা দেওয়ার সম্ভাবনা এবং এই জাতীয় সরঞ্জামের একটি প্রোটোটাইপ প্রদর্শনের সম্ভাবনার বিষয়ে একটি বিশেষজ্ঞ মতামত তৈরির জন্য একটি আদেশের মাধ্যমে কাজ করা।

আমরা পূর্ববর্তী নিবন্ধে একটি "বৈধ" MITM আক্রমণ সংগঠিত করার পরিকল্পনা সম্পর্কে লিখেছি। আজ আমরা এই জাতীয় আক্রমণের নীতি এবং এর বাস্তবায়নের পদ্ধতিগুলি সম্পর্কে আরও বিশদে আলোচনা করব।

একটি MITM আক্রমণ কি

ম্যান ইন দ্য মিডল (এমআইটিএম) অনুবাদ করে "মাঝখানের মানুষ।" এই শব্দটি এমন একটি নেটওয়ার্ক আক্রমণকে বোঝায় যেখানে একজন আক্রমণকারী ইন্টারনেট ব্যবহারকারী এবং সে যে অ্যাপ্লিকেশনটি অ্যাক্সেস করছে তার মধ্যে থাকে। শারীরিকভাবে নয়, অবশ্যই, তবে বিশেষ সফ্টওয়্যারের সাহায্যে। এটি ব্যবহারকারীর কাছে অনুরোধ করা অ্যাপ্লিকেশন হিসাবে নিজেকে উপস্থাপন করে (এটি একটি ওয়েবসাইট বা একটি ইন্টারনেট পরিষেবা হতে পারে), এটির সাথে কাজ করার অনুকরণ করে এবং এটি এমনভাবে করে যাতে স্বাভাবিক ক্রিয়াকলাপ এবং তথ্য বিনিময়ের ছাপ দেওয়া যায়।

আক্রমণের লক্ষ্য ব্যবহারকারীর ব্যক্তিগত তথ্য, যেমন লগইন শংসাপত্র বিভিন্ন সিস্টেম, ব্যাঙ্কের বিবরণ এবং কার্ড নম্বর, ব্যক্তিগত চিঠিপত্র এবং অন্যান্য গোপনীয় তথ্য। বেশিরভাগ ক্ষেত্রে, আর্থিক অ্যাপ্লিকেশন (ব্যাংক ক্লায়েন্ট, অনলাইন ব্যাংক, অর্থ প্রদান এবং অর্থ স্থানান্তর পরিষেবা), কোম্পানি SaaS পরিষেবা, ওয়েবসাইটগুলি আক্রমণ করা হয় ইকমার্স(অনলাইন স্টোর) এবং অন্যান্য সাইট যেখানে লগ ইন করার জন্য অনুমোদন প্রয়োজন।

একজন আক্রমণকারী যে তথ্য প্রাপ্ত করে তা বিভিন্ন উদ্দেশ্যে ব্যবহার করা যেতে পারে, যার মধ্যে রয়েছে অবৈধ অর্থ স্থানান্তর, অ্যাকাউন্ট পরিবর্তন, ব্যক্তিগত চিঠিপত্রে বাধা দেওয়া, অন্যের খরচে কেনাকাটা করা, আপস করা এবং ব্ল্যাকমেইল করা।

এছাড়াও, শংসাপত্র চুরি এবং সিস্টেম হ্যাক করার পরে, অপরাধীরা কর্পোরেট নেটওয়ার্কে ক্ষতিকারক সফ্টওয়্যার ইনস্টল করতে পারে। সফটওয়্যারবৌদ্ধিক সম্পত্তির (পেটেন্ট, প্রকল্প, ডাটাবেস) চুরি সংগঠিত করা এবং গুরুত্বপূর্ণ তথ্য মুছে অর্থনৈতিক ক্ষতি ঘটানো।

একটি MITM আক্রমণকে একজন পোস্টম্যানের সাথে তুলনা করা যেতে পারে, যিনি আপনার চিঠিপত্র সরবরাহ করার সময়, একটি চিঠি খোলেন, ব্যক্তিগত ব্যবহারের জন্য এর বিষয়বস্তু পুনঃলিখন করেন, এমনকি হাতের লেখাকে মিথ্যা করেন, নিজের কিছু যোগ করেন এবং তারপর খামটি সিল করে ঠিকানার কাছে পৌঁছে দেন। যেন কিছুই হয়নি.. তদুপরি, আপনি যদি চিঠির পাঠ্যটি এনক্রিপ্ট করে থাকেন এবং ঠিকানার কাছে ব্যক্তিগতভাবে ডিক্রিপশন কোডটি যোগাযোগ করতে চান তবে পোস্টম্যান নিজেকে ঠিকানা হিসাবে এমনভাবে পরিচয় করিয়ে দেবে যে আপনি প্রতিস্থাপনটিও লক্ষ্য করবেন না।

কিভাবে একটি MITM আক্রমণ করা হয়

একটি MITM আক্রমণ চালানোর দুটি ধাপ থাকে: ইন্টারসেপশন এবং ডিক্রিপশন।

  • আটক

আক্রমণের প্রথম পর্যায় হল ব্যবহারকারীর কাছ থেকে উদ্দিষ্ট লক্ষ্যে ট্র্যাফিককে বাধা দেওয়া এবং আক্রমণকারীর নেটওয়ার্কে এটিকে নির্দেশ করা।

বাধা দেওয়ার সবচেয়ে সাধারণ এবং সহজ উপায় হল একটি প্যাসিভ আক্রমণ, যখন একজন আক্রমণকারী বিনামূল্যে অ্যাক্সেস সহ (কোন পাসওয়ার্ড বা অনুমোদন ছাড়া) Wi-Fi পয়েন্ট তৈরি করে। যে মুহুর্তে একজন ব্যবহারকারী এমন একটি বিন্দুতে সংযোগ করে, আক্রমণকারী এটির মধ্য দিয়ে যাওয়া সমস্ত ট্র্যাফিকের অ্যাক্সেস লাভ করে এবং বাধা দেওয়ার জন্য এটি থেকে যে কোনও ডেটা বের করতে পারে।

দ্বিতীয় পদ্ধতিটি সক্রিয় বাধা, যা নিম্নলিখিত উপায়গুলির মধ্যে একটিতে করা যেতে পারে:

আইপি স্পুফিং- প্যাকেট হেডারে লক্ষ্যের আইপি ঠিকানা আক্রমণকারীর ঠিকানার সাথে প্রতিস্থাপন করা। ফলস্বরূপ, ব্যবহারকারীরা, অনুরোধ করা URL দেখার পরিবর্তে, আক্রমণকারীর ওয়েবসাইটে শেষ হয়৷

এআরপি স্পুফিং- শিকারের ARP টেবিলে আক্রমণকারীর ঠিকানার জন্য হোস্টের আসল MAC ঠিকানার প্রতিস্থাপন। ফলস্বরূপ, ব্যবহারকারীর দ্বারা প্রয়োজনীয় নোডের আইপি ঠিকানায় পাঠানো ডেটা আক্রমণকারীর ঠিকানায় শেষ হয়।

DNS স্পুফিং DNS ক্যাশে সংক্রমণ, অনুপ্রবেশ DNS সার্ভারএবং একটি ওয়েবসাইট ঠিকানা ম্যাচ রেকর্ড প্রতিস্থাপন. ফলস্বরূপ, ব্যবহারকারী অনুরোধ করা সাইটটি অ্যাক্সেস করার চেষ্টা করে, কিন্তু DNS সার্ভার থেকে আক্রমণকারীর সাইটের ঠিকানা পায়।

  • ডিক্রিপশন

একবার বাধা দেওয়া হলে, দ্বি-মুখী SSL ট্র্যাফিককে এমনভাবে ডিক্রিপ্ট করতে হবে যাতে ব্যবহারকারী এবং তিনি যে সংস্থানটির অনুরোধ করছেন তা হস্তক্ষেপ লক্ষ্য না করে।

এর জন্য বেশ কয়েকটি পদ্ধতি রয়েছে:

HTTPS স্পুফিং- HTTPS প্রোটোকলের মাধ্যমে সাইটের সাথে সংযোগ স্থাপন করা হলে শিকারের ব্রাউজারে একটি জাল শংসাপত্র পাঠানো হয়। এই শংসাপত্রে আপস করা অ্যাপ্লিকেশনটির একটি ডিজিটাল স্বাক্ষর রয়েছে, যার কারণে ব্রাউজার আক্রমণকারীর সাথে সংযোগটিকে নির্ভরযোগ্য হিসাবে গ্রহণ করে৷ একবার এই ধরনের সংযোগ স্থাপন করা হলে, আক্রমণকারী অ্যাপ্লিকেশনে স্থানান্তরিত হওয়ার আগে শিকারের দ্বারা প্রবেশ করা যেকোনো ডেটাতে অ্যাক্সেস লাভ করে।

SSL BEAST(SSL/TLS এর বিরুদ্ধে ব্রাউজার শোষণ) – আক্রমণটি TLS সংস্করণ 1.0 এবং 1.2-এ SSL দুর্বলতাকে কাজে লাগায়। শিকারের কম্পিউটার ক্ষতিকারক জাভাস্ক্রিপ্ট দ্বারা সংক্রামিত, যা ওয়েব অ্যাপ্লিকেশনে পাঠানো এনক্রিপ্ট করা কুকিজকে বাধা দেয়। এটি "সাইফারটেক্সট ব্লক চেইনিং" এনক্রিপশন মোডকে আপস করে যাতে আক্রমণকারী ডিক্রিপ্ট করা কুকি এবং প্রমাণীকরণ কীগুলি পায়।

SSL হাইজ্যাকিং- একটি TCP সেশনের শুরুতে ব্যবহারকারী এবং অ্যাপ্লিকেশনের কাছে জাল প্রমাণীকরণ কী স্থানান্তর। এটি একটি সুরক্ষিত সংযোগের চেহারা তৈরি করে যখন প্রকৃতপক্ষে সেশনটি "মাঝের একজন লোক" দ্বারা নিয়ন্ত্রিত হয়।

SSL স্ট্রিপিং- ব্যবহারকারীর কাছে অ্যাপ্লিকেশন দ্বারা প্রেরিত TLS প্রমাণীকরণকে বাধা দিয়ে সুরক্ষিত HTTPS থেকে প্লেইন HTTP-তে সংযোগ ডাউনগ্রেড করে। আক্রমণকারী ব্যবহারকারীকে সাইটটিতে এনক্রিপ্ট না করা অ্যাক্সেস প্রদান করে, যখন সে অ্যাপ্লিকেশনটির সাথে একটি নিরাপদ সেশন বজায় রাখে, শিকারের প্রেরিত ডেটা দেখার ক্ষমতা অর্জন করে।

এমআইটিএম আক্রমণের বিরুদ্ধে সুরক্ষা

MITM আক্রমণের বিরুদ্ধে নির্ভরযোগ্য সুরক্ষা সম্ভব যদি ব্যবহারকারী বেশ কয়েকটি প্রতিরোধমূলক পদক্ষেপ নেয় এবং ওয়েব অ্যাপ্লিকেশন বিকাশকারীদের দ্বারা এনক্রিপশন এবং প্রমাণীকরণ পদ্ধতির সংমিশ্রণ ব্যবহার করে।

ব্যবহারকারীর ক্রিয়াকলাপ:

  • পাসওয়ার্ড সুরক্ষা নেই এমন Wi-Fi পয়েন্টগুলির সাথে সংযোগ করা এড়িয়ে চলুন৷ পরিচিত অ্যাক্সেস পয়েন্টগুলির সাথে স্বয়ংক্রিয়ভাবে সংযোগ করার ফাংশন অক্ষম করুন - একজন আক্রমণকারী তার ওয়াই-ফাইকে বৈধ হিসাবে ছদ্মবেশ ধারণ করতে পারে৷
  • একটি অনিরাপদ সাইটে যাওয়ার বিষয়ে ব্রাউজার বিজ্ঞপ্তিতে মনোযোগ দিন। এই ধরনের একটি বার্তা আক্রমণকারীর একটি জাল ওয়েবসাইটের রূপান্তর বা একটি বৈধ ওয়েবসাইটের সুরক্ষার সমস্যা নির্দেশ করতে পারে।
  • এটি ব্যবহার না হলে অ্যাপ্লিকেশন (লগআউট) দিয়ে সেশনটি শেষ করুন৷
  • গোপনীয় লেনদেন পরিচালনা করতে পাবলিক নেটওয়ার্ক (ক্যাফে, পার্ক, হোটেল ইত্যাদি) ব্যবহার করবেন না ( আমার স্নাতকের, আর্থিক লেনদেন, অনলাইন স্টোরে কেনাকাটা ইত্যাদি)।
  • আপনার কম্পিউটার বা ল্যাপটপে আপ-টু-ডেট ডেটাবেস সহ একটি অ্যান্টিভাইরাস ব্যবহার করুন; এটি দূষিত সফ্টওয়্যার ব্যবহার করে আক্রমণ থেকে রক্ষা করতে সহায়তা করবে।

ওয়েব অ্যাপ্লিকেশন এবং ওয়েবসাইটগুলির বিকাশকারীদের অবশ্যই সুরক্ষিত ব্যবহার করতে হবে TLS প্রোটোকলএবং HTTPS, যা প্রেরিত ডেটা এনক্রিপ্ট করে স্পুফিং আক্রমণকে ব্যাপকভাবে জটিল করে তোলে। অনুমোদনের পরামিতি এবং অ্যাক্সেস কীগুলি পাওয়ার জন্য তাদের ব্যবহার ট্রাফিক বাধাকেও বাধা দেয়।

এটি শুধুমাত্র অনুমোদন পৃষ্ঠাগুলির জন্য নয়, সাইটের অন্যান্য সমস্ত বিভাগের জন্যও TLS এবং HTTPS সুরক্ষিত করার জন্য একটি ভাল অনুশীলন বলে মনে করা হয়৷ এটি অনুমোদনের পরে অরক্ষিত পৃষ্ঠাগুলির মাধ্যমে নেভিগেট করার মুহুর্তে আক্রমণকারীর কুকিজ চুরি করার সম্ভাবনা হ্রাস করে৷

MITM আক্রমণের বিরুদ্ধে সুরক্ষা ব্যবহারকারী এবং টেলিকম অপারেটরের দায়িত্ব৷ ব্যবহারকারীর জন্য সবচেয়ে গুরুত্বপূর্ণ বিষয় হল সতর্কতা হারাবেন না, ইন্টারনেট অ্যাক্সেস করার জন্য শুধুমাত্র প্রমাণিত পদ্ধতি ব্যবহার করুন এবং ব্যক্তিগত ডেটা স্থানান্তর করার সময় HTTPS এনক্রিপশন সহ সাইটগুলি বেছে নিন। টেলিকম অপারেটরদের ডেটা নেটওয়ার্কে অসামঞ্জস্যতা সনাক্ত করতে এবং স্পুফিং আক্রমণ প্রতিরোধ করতে ডিপ প্যাকেট পরিদর্শন (ডিপিআই) সিস্টেম ব্যবহার করার সুপারিশ করা যেতে পারে।

সরকারী সংস্থাগুলি MITM আক্রমণকে নাগরিকদের সুরক্ষার জন্য ব্যবহার করার পরিকল্পনা করে, আক্রমণকারীদের বিপরীতে ক্ষতি না করার জন্য৷ ব্যক্তিগত বার্তা এবং অন্যান্য ব্যবহারকারীর ট্র্যাফিকের বাধা বর্তমান আইনের কাঠামোর মধ্যে পরিচালিত হয়, সন্ত্রাসবাদ, মাদক পাচার এবং অন্যান্য নিষিদ্ধ কার্যকলাপের বিরুদ্ধে লড়াই করার জন্য বিচার বিভাগীয় কর্তৃপক্ষের সিদ্ধান্ত দ্বারা পরিচালিত হয়। নিয়মিত ব্যবহারকারীরা"বৈধ" MITM আক্রমণ বিপজ্জনক নয়।

অর্জন কাঙ্ক্ষিত ফলাফলপ্রায় সবসময় বিভিন্ন উপায় আছে. এটি তথ্য নিরাপত্তা ক্ষেত্রেও প্রযোজ্য। কখনও কখনও, একটি লক্ষ্য অর্জনের জন্য, আপনি নৃশংস শক্তি ব্যবহার করতে পারেন, গর্তগুলি সন্ধান করতে পারেন এবং নিজের শোষণগুলি বিকাশ করতে পারেন বা নেটওয়ার্কের মাধ্যমে যা প্রেরণ করা হয় তা শুনতে পারেন। তদুপরি, শেষ বিকল্পটি প্রায়শই সর্বোত্তম। এই কারণেই আজ আমরা এমন সরঞ্জামগুলির বিষয়ে কথা বলব যা আমাদের মূল্যবান তথ্য ধরতে সহায়তা করবে নেটওয়ার্ক ট্রাফিক, এই জন্য MITM আক্রমণ আকৃষ্ট করা.

MITMf

সবচেয়ে আকর্ষণীয় প্রার্থীদের এক দিয়ে শুরু করা যাক। এটি সার্জিও-প্রক্সির ভিত্তিতে ম্যান-ইন-দ্য-মিডল আক্রমণ পরিচালনার জন্য একটি সম্পূর্ণ কাঠামো। সম্প্রতি অন্তর্ভুক্ত কালি লিনাক্স. এটি নিজে ইনস্টল করতে, কেবল সংগ্রহস্থলটি ক্লোন করুন এবং কয়েকটি কমান্ড চালান:

# setup.sh # pip install -r requirements.txt

# pip install -r requirements.txt

এটির একটি আর্কিটেকচার রয়েছে যা প্লাগইনগুলির মাধ্যমে এক্সটেনসিবল। প্রধানগুলির মধ্যে নিম্নলিখিতগুলি হল:

  • স্পুফ - আপনাকে ARP/DHCP স্পুফিং, ICMP পুনঃনির্দেশ এবং DNS অনুরোধগুলি পরিবর্তন করে ট্রাফিক পুনঃনির্দেশ করতে দেয়;
  • স্নিফার - এই প্লাগইনটি বিভিন্ন প্রোটোকলের জন্য লগইন প্রচেষ্টা ট্র্যাক করে;
  • BeEFAutorun - আপনাকে OS এবং ক্লায়েন্ট ব্রাউজারের প্রকারের উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে BeEF মডিউল চালু করতে দেয়;
  • AppCachePoison - একটি ক্যাশে বিষক্রিয়া আক্রমণ বহন করে;
  • সেশন হাইজ্যাকিং - সেশন হাইজ্যাক করে এবং ফলস্বরূপ কুকিগুলি Firefly প্রোফাইলে সংরক্ষণ করে;
  • BrowserProfiler - ব্রাউজার দ্বারা ব্যবহৃত প্লাগইনগুলির একটি তালিকা পেতে চেষ্টা করে;
  • FilePwn - আপনাকে এর মাধ্যমে পাঠানো বার্তা প্রতিস্থাপন করতে দেয় HTTP ফাইলব্যাকডোর ফ্যাক্টরি এবং বিডিএফপ্রক্সি ব্যবহার করে;
  • ইনজেক্ট - একটি HTML পৃষ্ঠায় নির্বিচারে বিষয়বস্তু ইনজেক্ট করে;
  • jskeylogger - ক্লায়েন্ট পৃষ্ঠাগুলিতে একটি জাভাস্ক্রিপ্ট কীলগার এম্বেড করে।

যদি এই কার্যকারিতাটি আপনার কাছে অপর্যাপ্ত বলে মনে হয়, তাহলে আপনি সর্বদা উপযুক্ত এক্সটেনশন প্রয়োগ করে আপনার নিজস্ব যোগ করতে পারেন।

পুটিরাইডার

আরেকটি ইউটিলিটি মনোযোগের যোগ্য। সত্য, আজ বিবেচনা করা অন্যান্য সমস্ত সরঞ্জামের বিপরীতে, এটি খুব সংকীর্ণভাবে বিশেষায়িত। যেমন প্রকল্পের লেখক নিজেই বলেছেন, তিনি এমন একটি উপযোগীতা তৈরি করতে অনুপ্রাণিত হয়েছিলেন যে অনুপ্রবেশ পরীক্ষার সময়, সবচেয়ে গুরুত্বপূর্ণ ডেটা লিনাক্স/ইউনিক্স সার্ভারে অবস্থিত ছিল, যার সাথে প্রশাসকরা SSH/Telnet/rlogin এর মাধ্যমে সংযুক্ত ছিলেন। অধিকন্তু, বেশিরভাগ ক্ষেত্রে, লক্ষ্য সার্ভারের চেয়ে প্রশাসকদের মেশিনে অ্যাক্সেস পাওয়া অনেক সহজ ছিল। সিস্টেম অ্যাডমিনিস্ট্রেটরের মেশিনে প্রবেশ করার পরে, যা বাকি থাকে তা হল নিশ্চিত করা যে পুটিটি চলছে এবং এই টুলটি ব্যবহার করে আক্রমণকারীর পিছনে একটি সেতু তৈরি করুন।

ইউটিলিটি আপনাকে শুধুমাত্র অ্যাডমিন এবং রিমোট সার্ভারের (পাসওয়ার্ড সহ) মধ্যে "যোগাযোগ" ক্যাপচার করতে দেয় না, তবে একটি প্রদত্ত সেশনের মধ্যে নির্বিচারে শেল কমান্ডগুলি চালানোরও অনুমতি দেয়। তদুপরি, এই সমস্ত ব্যবহারকারীর (প্রশাসক) জন্য একেবারে স্বচ্ছভাবে ঘটবে। আপনি যদি প্রযুক্তিগত বিবরণে আগ্রহী হন, উদাহরণস্বরূপ, কীভাবে পুটিটি প্রক্রিয়াতে প্রয়োগ করা হয়, আমি আপনাকে লেখকের উপস্থাপনা পড়ার পরামর্শ দিচ্ছি।

বেশ পুরানো ইউটিলিটি, আট বছরেরও বেশি আগে জন্মেছিল। কুকিজ চুরি করে সেশন ক্লোন করার উদ্দেশ্যে। সেশন হাইজ্যাকিংয়ের জন্য, এটিতে মৌলিক হোস্ট সনাক্তকরণ দক্ষতা রয়েছে (একটি খোলার সাথে সংযোগের ক্ষেত্রে তারবিহীন যোগাযোগবা হাব) এবং এআরপি বিষক্রিয়া পরিচালনা করে। একমাত্র সমস্যা হল আজ, আট বছর আগের মতন, প্রায় সব বড় কোম্পানি যেমন ইয়াহু বা ফেসবুক SSL এনক্রিপশন ব্যবহার করে, যা এই টুলটিকে সম্পূর্ণ অকেজো করে তোলে। এটি সত্ত্বেও, ইন্টারনেটে এখনও যথেষ্ট সংস্থান রয়েছে যা SSL ব্যবহার করে না, তাই ইউটিলিটি বন্ধ করা খুব তাড়াতাড়ি। এর সুবিধার মধ্যে রয়েছে যে এটি স্বয়ংক্রিয়ভাবে ফায়ারফক্সে একত্রিত হয় এবং প্রতিটি বাধা সেশনের জন্য একটি পৃথক প্রোফাইল তৈরি করে। উৎসসংগ্রহস্থলে উপলব্ধ, এবং আপনি কমান্ডের নিম্নলিখিত ক্রম ব্যবহার করে এটি নিজেই তৈরি করতে পারেন:

# apt-get install build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev # g++ $(wx-config --cppflags --libs) -lpcap -o sessionthief *.cpp # setcap cap_net_raw,cap_net_admin=e সেশনথিফ

# apt-get install build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev

# g++ $(wx-config --cppflags --libs) -lpcap -o sessionthief *.cpp

# setcap cap_net_raw,cap_net_admin=eip সেশনথিফ

ProxyFuzz

MITM আক্রমণ পরিচালনার সাথে ProzyFuzz-এর সরাসরি কোনো সম্পর্ক নেই। আপনি নাম থেকে অনুমান করতে পারেন, টুলটি ফাজ করার জন্য ডিজাইন করা হয়েছে। এটি একটি ছোট নন-ডিটারমিনিস্টিক নেটওয়ার্ক ফুজার, যা পাইথনে প্রয়োগ করা হয়েছে, যা এলোমেলোভাবে নেটওয়ার্ক ট্র্যাফিক প্যাকেটের বিষয়বস্তু পরিবর্তন করে। TCP এবং UDP প্রোটোকল সমর্থন করে। আপনি এটিকে শুধুমাত্র এক দিকে অস্পষ্ট করতে কনফিগার করতে পারেন। আপনি দ্রুত কিছু পরীক্ষা করার প্রয়োজন হলে দরকারী নেটওয়ার্ক অ্যাপ্লিকেশন(বা প্রোটোকল) এবং একটি PoC বিকাশ করুন। ব্যবহারের উদাহরণ:

Python proxyfuzz -l -আর -পি

python proxyfuzz -l -আর -পি

বিকল্পগুলির তালিকায় রয়েছে:

  • w - ফাজিং শুরু হওয়ার আগে পাঠানো অনুরোধের সংখ্যা নির্দিষ্ট করে;
  • c - শুধুমাত্র ক্লায়েন্টকে ফাজ করুন (অন্যথায় উভয় পক্ষই);
  • s - শুধুমাত্র সার্ভার ফাজ করুন (অন্যথায় উভয় পক্ষই);
  • u - UDP প্রোটোকল (অন্যথায় TCP ব্যবহার করা হয়)।

মিডলার

DEF CON সম্মেলনে উপস্থাপিত বিভিন্ন প্রোটোকলের উপর MITM আক্রমণ পরিচালনার জন্য একটি ইউটিলিটি। আলফা সংস্করণটি HTTP প্রোটোকল সমর্থন করে এবং এর অস্ত্রাগারে তিনটি দুর্দান্ত প্লাগইন ছিল:

  • plugin-beef.py - স্থানীয় নেটওয়ার্ক থেকে আসা যেকোনো HTTP অনুরোধে ব্রাউজার এক্সপ্লোইটেশন ফ্রেমওয়ার্ক (BeEF) ইনজেক্ট করে;
  • plugin-metasploit.py - আনএনক্রিপ্টেড (HTTP) অনুরোধে একটি IFRAME এম্বেড করে, যা Metasploit থেকে ব্রাউজার শোষণ লোড করে;
  • plugin-keylogger.py - HTTPS-এ জমা দেওয়া সমস্ত টেক্সট ফিল্ডের জন্য একটি JavaScript onKeyPress ইভেন্ট হ্যান্ডলার এম্বেড করে, যার ফলে ব্রাউজারটি সম্পূর্ণ ফর্ম জমা দেওয়ার আগে আক্রমণকারীর সার্ভারে ব্যবহারকারীর-প্রবেশ করা পাসওয়ার্ড অক্ষর-অক্ষর পাঠাতে পারে।

মিডলার কেবলমাত্র স্বয়ংক্রিয়ভাবে নেটওয়ার্ক ট্র্যাফিক বিশ্লেষণ করে না এবং এতে কুকিজ খুঁজে পায়, তবে ক্লায়েন্টের কাছ থেকে স্বাধীনভাবে তাদের অনুরোধও করে, অর্থাৎ, প্রক্রিয়াটি সর্বাধিক স্বয়ংক্রিয় হয়। প্রোগ্রামটি একটি কম্পিউটার নেটওয়ার্কে (বা সর্বজনীন হটস্পট) সমস্ত অরক্ষিত অ্যাকাউন্ট সংগ্রহের গ্যারান্টি দেয় যার ট্র্যাফিক অ্যাক্সেস রয়েছে৷ প্রোগ্রামটি সঠিকভাবে কাজ করার জন্য, নিম্নলিখিত প্যাকেজগুলি সিস্টেমে ইনস্টল করা আবশ্যক: Scapy, libpcap, readline, libdnet, python-netfilter। দুর্ভাগ্যবশত, সংগ্রহস্থলটি দীর্ঘ সময়ের জন্য আপডেট করা হয়নি, তাই আপনাকে নতুন কার্যকারিতা যোগ করতে হবে।

একটি কনসোল ইউটিলিটি যা আপনাকে ইন্টারেক্টিভভাবে HTTP ট্র্যাফিক পরীক্ষা এবং সংশোধন করতে দেয়। এই ধরনের দক্ষতার জন্য ধন্যবাদ, ইউটিলিটি শুধুমাত্র পেন্টেস্টার/হ্যাকারদের দ্বারাই নয়, সাধারণ ডেভেলপারদের দ্বারাও ব্যবহার করা হয় যারা এটি ব্যবহার করে, উদাহরণস্বরূপ, ওয়েব অ্যাপ্লিকেশন ডিবাগ করতে। এর সাহায্যে, আপনি অ্যাপ্লিকেশনটি কী অনুরোধ করে এবং এটি কী প্রতিক্রিয়া পায় সে সম্পর্কে বিস্তারিত তথ্য পেতে পারেন। এছাড়াও, mitmproxy কিছু REST API-এর কার্যকারিতার বিশেষত্ব অধ্যয়ন করতে সাহায্য করতে পারে, বিশেষ করে যেগুলি খারাপভাবে নথিভুক্ত।

ইনস্টলেশন অত্যন্ত সহজ:

$ sudo aptitude mitmproxy ইনস্টল করুন

এটি লক্ষণীয় যে mitmproxy আপনাকে ক্লায়েন্টকে একটি স্ব-স্বাক্ষরিত শংসাপত্র ইস্যু করে HTTPS ট্র্যাফিককে বাধা দেওয়ার অনুমতি দেয়। ভালো উদাহরণআপনি কীভাবে ট্র্যাফিকের বাধা এবং পরিবর্তন কনফিগার করবেন তা শিখতে পারেন।

ডিস্নিফ

ঠিক আছে, এই ইউটিলিটি সাধারণত প্রথম জিনিসগুলির মধ্যে একটি যা আপনি শোনার সাথে সাথে মনে আসা উচিত
"MITM আক্রমণ"। টুলটি বেশ পুরানো, কিন্তু সক্রিয়ভাবে আপডেট করা অব্যাহত, যা ভাল খবর। এর ক্ষমতা সম্পর্কে বিস্তারিত কথা বলার কোন মানে নেই; এর অস্তিত্বের চৌদ্দ বছরেরও বেশি সময় ধরে এটি ইন্টারনেটে একাধিকবার কভার করা হয়েছে। উদাহরণস্বরূপ, এই মত একটি গাইডে:

অথবা আমাদের ওয়েবসাইট থেকে নির্দেশাবলী:

সবশেষে..

যথারীতি, আমরা সমস্ত ইউটিলিটিগুলির দিকে তাকাইনি, তবে শুধুমাত্র সবচেয়ে জনপ্রিয়গুলি; এছাড়াও অনেকগুলি স্বল্প-পরিচিত প্রকল্প রয়েছে যেগুলির বিষয়ে আমরা কোনও দিন কথা বলতে পারি৷ আপনি দেখতে পাচ্ছেন, এমআইটিএম আক্রমণ চালানোর জন্য সরঞ্জামগুলির কোনও অভাব নেই, এবং যা প্রায়শই ঘটে না, উইন্ডোজের জন্য একটি দুর্দান্ত সরঞ্জাম প্রয়োগ করা হয়। নিক্স সিস্টেম সম্পর্কে বলার কিছু নেই - একটি সম্পূর্ণ বৈচিত্র্য। তাই আমি মনে করি আপনি সবসময় চুরির জন্য সঠিক টুল খুঁজে পেতে পারেন
অন্যান্য মানুষের শংসাপত্র। উফ, যে, পরীক্ষার জন্য।

ম্যান ইন দ্য মিডল অ্যাটাক (এমআইটিএম অ্যাটাক) হল ক্রিপ্টোগ্রাফির একটি শব্দ যা এমন একটি পরিস্থিতিকে বোঝায় যেখানে একজন আক্রমণকারী সংবাদদাতাদের মধ্যে আদানপ্রদান করা বার্তাগুলি পড়তে এবং পরিবর্তন করতে সক্ষম হয় এবং পরবর্তী কেউ তার পরিচয় অনুমান করতে পারে না। চ্যানেলে উপস্থিতি .

একটি যোগাযোগের চ্যানেলের সাথে আপস করার একটি পদ্ধতি, যেখানে একজন আক্রমণকারী, প্রতিপক্ষের মধ্যে একটি চ্যানেলের সাথে সংযোগ স্থাপন করে, সক্রিয়ভাবে ট্রান্সমিশন প্রোটোকলের সাথে হস্তক্ষেপ করে, তথ্য মুছে ফেলা, বিকৃত করা বা মিথ্যা তথ্য আরোপ করে।

আক্রমণের নীতি:

ধরুন বস্তু "A" অবজেক্ট "B" এ কিছু তথ্য প্রেরণ করার পরিকল্পনা করছে। অবজেক্ট "সি" এর কাছে ব্যবহৃত ডেটা ট্রান্সমিশন পদ্ধতির গঠন এবং বৈশিষ্ট্য সম্পর্কে জ্ঞান রয়েছে, সেইসাথে প্রকৃত তথ্যের পরিকল্পিত ট্রান্সমিশনের ঘটনা যা "সি" বাধা দেওয়ার পরিকল্পনা করে।

আক্রমণ করার জন্য, "C" "A" কে "B" হিসাবে অবজেক্ট করে এবং "B" কে "A" হিসাবে অবজেক্ট করে। অবজেক্ট "A", ভুলভাবে বিশ্বাস করে যে এটি "B" তে তথ্য পাঠাচ্ছে, এটি "C" অবজেক্টে পাঠায়।

অবজেক্ট "সি", তথ্য পেয়ে এবং এটির সাথে কিছু ক্রিয়া সম্পাদন করে (উদাহরণস্বরূপ, এটির নিজস্ব উদ্দেশ্যে এটি অনুলিপি করা বা সংশোধন করা), প্রাপকের কাছে ডেটা পাঠায় - "বি"; বস্তু "B", ঘুরে, বিশ্বাস করে যে তথ্যটি সরাসরি "A" থেকে প্রাপ্ত হয়েছিল।

একটি MitM আক্রমণের উদাহরণ:

ধরা যাক অ্যালিসের আর্থিক সমস্যা রয়েছে এবং একটি তাত্ক্ষণিক বার্তাপ্রেরণ প্রোগ্রাম ব্যবহার করে, বার্তাটি পাঠিয়ে জনকে কিছু অর্থের জন্য জিজ্ঞাসা করার সিদ্ধান্ত নেয়:
এলিস: জন, হাই!
এলিস: দয়া করে আমাকে এনক্রিপশন কী পাঠান, আমার একটি ছোট অনুরোধ আছে!
জন: হ্যালো! এক সেকেন্ড অপেক্ষা কর!

কিন্তু, এই সময়ে, মিস্টার এক্স, যিনি একটি স্নিফার ব্যবহার করে ট্র্যাফিক বিশ্লেষণ করার সময় এই বার্তাটি লক্ষ্য করেছিলেন এবং "এনক্রিপশন কী" শব্দটি কৌতূহল জাগিয়েছিল৷ এই কারণেই তিনি নিম্নলিখিত বার্তাগুলিকে আটকানোর এবং তার প্রয়োজনীয় ডেটা দিয়ে প্রতিস্থাপন করার সিদ্ধান্ত নেন এবং যখন তিনি নিম্নলিখিত বার্তাটি পান:
জন: এখানে আমার কী: 1111_D

তিনি জনের চাবি নিজের কাছে পরিবর্তন করলেন এবং অ্যালিসকে একটি বার্তা পাঠালেন:
জন: এখানে আমার কী: 6666_M

এলিস, অজান্তে এবং ভাবছে এটি জন এর চাবি, ব্যক্তিগত কী ব্যবহার করে 6666_M, জন কে এনক্রিপ্ট করা বার্তা পাঠায়:
এলিস: জন, আমার সমস্যা আছে এবং আমার জরুরিভাবে টাকার প্রয়োজন, অনুগ্রহ করে আমার অ্যাকাউন্টে $300 স্থানান্তর করুন: Z12345। ধন্যবাদ. পুনশ্চ. আমার কী: 2222_A

বার্তাটি পাওয়ার পর, মিস্টার এক্স তার কী ব্যবহার করে এটিকে ডিক্রিপ্ট করেন, এটি পড়েন এবং, আনন্দিত হয়ে, অ্যালিসের অ্যাকাউন্ট নম্বর এবং এনক্রিপশন কী তার নিজের মতো পরিবর্তন করেন, কী দিয়ে বার্তাটি এনক্রিপ্ট করেন 1111_ডি, এবং জনকে একটি বার্তা পাঠায়:
এলিস: জন, আমার সমস্যা আছে এবং আমার জরুরীভাবে টাকার প্রয়োজন, অনুগ্রহ করে আমার অ্যাকাউন্টে $300 স্থানান্তর করুন: Z67890। ধন্যবাদ. পুনশ্চ. আমার কী: 6666_A

বার্তাটি পাওয়ার পরে, জন কী ব্যবহার করে এটি ডিক্রিপ্ট করে 1111_ডি, এবং এমনকি বিনা দ্বিধায়, অ্যাকাউন্টে অর্থ স্থানান্তর করবে Z67890...

এবং এইভাবে, মিস্টার এক্স, ম্যান-ইন-দ্য-মিডল অ্যাটাক ব্যবহার করে, $300 উপার্জন করেছেন, কিন্তু অ্যালিসকে এখন ব্যাখ্যা করতে হবে যে সে টাকা পায়নি... এবং জন? জনকে অ্যালিসের কাছে প্রমাণ করতে হবে যে তিনি তাদের পাঠিয়েছেন...

বাস্তবায়ন:

এই ধরনের আক্রমণ কিছু সফ্টওয়্যার পণ্যে নেটওয়ার্ক ইভড্রপিংয়ের জন্য ব্যবহৃত হয়, উদাহরণস্বরূপ:
NetStumbler- একটি প্রোগ্রাম যার সাহায্যে আপনি একটি ওয়্যারলেস নেটওয়ার্ক সম্পর্কে প্রচুর দরকারী ডেটা সংগ্রহ করতে পারেন এবং এর অপারেশন সম্পর্কিত কিছু সমস্যার সমাধান করতে পারেন। NetStumbler আপনাকে আপনার নেটওয়ার্কের পরিসর নির্ধারণ করতে দেয় এবং আপনাকে দূর-দূরত্বের যোগাযোগের জন্য আপনার অ্যান্টেনাকে সঠিকভাবে নির্দেশ করতে সহায়তা করে। পাওয়া প্রতিটি অ্যাক্সেস পয়েন্টের জন্য, আপনি MAC ঠিকানা, সংকেত-থেকে-শব্দ অনুপাত, পরিষেবার নাম এবং এর নিরাপত্তার মাত্রা খুঁজে পেতে পারেন। যদি ট্র্যাফিক এনক্রিপ্ট করা না হয়, তাহলে অননুমোদিত সংযোগগুলি সনাক্ত করার প্রোগ্রামের ক্ষমতা কার্যকর হবে।

dsniff- নেটওয়ার্ক অডিটিং এবং অনুপ্রবেশ পরীক্ষার জন্য প্রোগ্রামগুলির একটি সেট, আগ্রহের ডেটা (পাসওয়ার্ড, ঠিকানা) অনুসন্ধানের জন্য প্যাসিভ নেটওয়ার্ক পর্যবেক্ষণ প্রদান করে ইমেইল, ফাইল, ইত্যাদি), নেটওয়ার্ক ট্র্যাফিকের বাধা যা সাধারণত বিশ্লেষণের জন্য অপ্রাপ্য হবে (উদাহরণস্বরূপ, একটি সুইচড নেটওয়ার্কে), পাশাপাশি PKI ত্রুটিগুলিকে কাজে লাগিয়ে SSH এবং HTTPS সেশনগুলিকে বাধা দেওয়ার জন্য MITM আক্রমণগুলি সংগঠিত করার ক্ষমতা।

কেইন এবং আবেল - বিনামূল্যে প্রোগ্রাম, যা আপনাকে হারিয়ে যাওয়া পাসওয়ার্ড পুনরুদ্ধার করতে দেয় অপারেটিং সিস্টেম উইন্ডোজ পরিবার. বেশ কিছু পুনরুদ্ধার মোড সমর্থিত: ব্রুট ফোর্স হ্যাকিং, অভিধান নির্বাচন, তারকাচিহ্ন দ্বারা লুকানো পাসওয়ার্ড দেখা ইত্যাদি। তথ্য প্যাকেট এবং তাদের পরবর্তী বিশ্লেষণ, রেকর্ডিং নেটওয়ার্ক কথোপকথন, ক্যাশে বিশ্লেষণ, এবং অন্যান্য দ্বারা একটি পাসওয়ার্ড সনাক্ত করার বিকল্প রয়েছে।

ইটারক্যাপ- স্থানীয় ইথারনেট নেটওয়ার্কগুলির জন্য একটি স্নিফার, প্যাকেট ইন্টারসেপ্টর এবং রেকর্ডার, যা একাধিক প্রোটোকলের সক্রিয় এবং নিষ্ক্রিয় বিশ্লেষণকে সমর্থন করে এবং এটি আপনার নিজস্ব ডেটা একটি বিদ্যমান সংযোগে "নিক্ষেপ" করা এবং সংযোগ ব্যাহত না করে "ফ্লাইতে" ফিল্টার করাও সম্ভব। সিঙ্ক্রোনাইজেশন প্রোগ্রামটি আপনাকে SSH1, HTTPS এবং অন্যান্য সুরক্ষিত প্রোটোকলগুলিকে আটকাতে দেয় এবং নিম্নলিখিত প্রোটোকলগুলির জন্য পাসওয়ার্ডগুলি ডিক্রিপ্ট করার ক্ষমতা প্রদান করে: TELNET, ftp, POP, RLOGIN, SSH1, icq, SMB, Mysql, HTTP, NNTP, X11, NAPSTER, IRC , RIP, BGP, SOCKS 5, IMAP 4, VNC, LDAP, NFS, SNMP, হাফ লাইফ, QUAKE 3, MSN, YMSG।

কর্ম– ওয়্যারলেস ক্লায়েন্টদের নিরাপত্তা মূল্যায়নের জন্য ইউটিলিটিগুলির একটি সেট, একটি বেতার স্নিফার যা 802.11 প্রোব রিকোয়েস্ট ফ্রেমগুলিকে নিষ্ক্রিয়ভাবে শোনার মাধ্যমে, আপনাকে ক্লায়েন্ট এবং তাদের পছন্দের/বিশ্বস্ত নেটওয়ার্কগুলি সনাক্ত করতে দেয়৷ অনুরোধ করা নেটওয়ার্কগুলির একটির জন্য একটি জাল অ্যাক্সেস পয়েন্ট তৈরি করা যেতে পারে, যার সাথে এটি স্বয়ংক্রিয়ভাবে সংযুক্ত হতে পারে। উচ্চ-স্তরের জাল পরিষেবাগুলি ব্যক্তিগত ডেটা চুরি করতে বা হোস্টে ক্লায়েন্টের দুর্বলতা শোষণ করতে ব্যবহার করা যেতে পারে।

এয়ারজ্যাক- প্রোগ্রামগুলির একটি সেট যা, ওয়াইফাই হ্যাকিংয়ের ক্ষেত্রের বিশেষজ্ঞদের মতে, বিভিন্ন 802.11 ফ্রেম তৈরির জন্য সেরা হাতিয়ার। AirJack লুকানো ESSID সনাক্ত করতে, একটি জাল MAC দিয়ে সেশন টার্মিনেশন ফ্রেম পাঠাতে, MitM আক্রমণ পরিচালনা করতে এবং এটি সংশোধন করার জন্য ডিজাইন করা বেশ কয়েকটি ইউটিলিটি অন্তর্ভুক্ত করে।

প্রতিক্রিয়া:

এই ধরনের আক্রমণ এড়াতে, গ্রাহক "A" এবং "B" শুধুমাত্র একটি নির্ভরযোগ্য চ্যানেল ব্যবহার করে একে অপরের কাছে পাবলিক এনক্রিপশন কীগুলির ডিজিটাল স্বাক্ষর স্থানান্তর করতে হবে। তারপর, এনক্রিপশন সেশনে কী স্বাক্ষরগুলির তুলনা করার সময়, ডেটা এনক্রিপ্ট করতে কোন কী ব্যবহার করা হয়েছিল এবং কীগুলি প্রতিস্থাপন করা হয়েছে তা নির্ধারণ করা সম্ভব হবে।

এই নিবন্ধে, আমরা ম্যান-ইন-দ্য-মিডল আক্রমণের তত্ত্ব এবং কিছু ব্যবহারিক বিষয় বোঝার চেষ্টা করব যা এই ধরনের আক্রমণ প্রতিরোধে সাহায্য করবে। এটি আমাদের গোপনীয়তার জন্য এই ধরনের অনুপ্রবেশের ঝুঁকি বুঝতে সাহায্য করবে, যেহেতু MitM আক্রমণ আমাদের যোগাযোগে অনুপ্রবেশ করতে দেয় এবং আমাদের কথোপকথনগুলি গোপন করতে দেয়।

ইন্টারনেট কিভাবে কাজ করে তা বোঝা

একটি ম্যান-ইন-দ্য-মিডল আক্রমণের নীতিটি বোঝার জন্য, ইন্টারনেট নিজেই কীভাবে কাজ করে তা প্রথমে বোঝা উচিত। ইন্টারঅ্যাকশনের প্রধান পয়েন্ট: ক্লায়েন্ট, রাউটার, সার্ভার। ক্লায়েন্ট এবং সার্ভারের মধ্যে সবচেয়ে সাধারণ যোগাযোগ প্রোটোকল হল হাইপারটেক্সট ট্রান্সফার প্রোটোকল (HTTP)। একটি ব্রাউজার, ইমেল, তাত্ক্ষণিক বার্তাপ্রেরণ ব্যবহার করে ইন্টারনেট সার্ফিং - এই সব HTTP এর মাধ্যমে করা হয়।

আপনি যখন আপনার ব্রাউজারের ঠিকানা বারে টাইপ করেন, ক্লায়েন্ট (আপনি) সার্ভারে একটি ওয়েব পৃষ্ঠা প্রদর্শনের জন্য একটি অনুরোধ পাঠায়। প্যাকেট (HTTP GET অনুরোধ) বিভিন্ন রাউটারের মাধ্যমে সার্ভারে প্রেরণ করা হয়। সার্ভার তারপর একটি ওয়েব পৃষ্ঠার সাথে প্রতিক্রিয়া জানায়, যা ক্লায়েন্টকে পাঠানো হয় এবং তার মনিটরে প্রদর্শিত হয়। HTTP বার্তা পাঠাতে হবে নিরাপদ ভাবেগোপনীয়তা এবং বেনামী নিশ্চিত করতে।

চিত্র 1. ক্লায়েন্ট-সার্ভার ইন্টারঅ্যাকশন

কমিউনিকেশন প্রোটোকল সুরক্ষিত করা

একটি নিরাপদ যোগাযোগ প্রোটোকলের নিম্নলিখিত বৈশিষ্ট্যগুলির প্রত্যেকটি থাকতে হবে:

  1. গোপনীয়তা- শুধুমাত্র উদ্দেশ্য প্রাপক বার্তা পড়তে পারেন.
  2. সত্যতা- মিথস্ক্রিয়াকারী দলগুলির পরিচয় প্রমাণিত হয়েছে।
  3. অখণ্ডতা- নিশ্চিতকরণ যে বার্তাটি ট্রানজিটে পরিবর্তন করা হয়নি।

যদি এই নিয়মগুলির মধ্যে কোনটি অনুসরণ না করা হয়, তাহলে পুরো প্রোটোকলটি আপস করা হয়।

HTTP প্রোটোকলের মাধ্যমে ম্যান-ইন-দ্য-মিডল আক্রমণ

একজন আক্রমণকারী সহজেই এআরপি স্পুফিং নামক একটি কৌশল ব্যবহার করে ম্যান-ইন-দ্য-মিডল আক্রমণ চালাতে পারে। আপনার মধ্যে যে কেউ ওয়াই-ফাই নেটওয়ার্কআপনাকে একটি জালিয়াতি করা ARP প্যাকেট পাঠাতে পারে, যার ফলে আপনি আপনার রাউটারের পরিবর্তে আক্রমণকারীর মাধ্যমে আপনার সমস্ত ট্র্যাফিক পাঠাতে পারেন।

এর পরে, আক্রমণকারীর ট্র্যাফিকের উপর সম্পূর্ণ নিয়ন্ত্রণ থাকে এবং উভয় দিকে প্রেরিত অনুরোধগুলি নিরীক্ষণ করতে পারে।

চিত্র 2. ম্যান-ইন-দ্য-মিডল অ্যাটাক প্যাটার্ন


এই ধরনের আক্রমণ প্রতিরোধ করার জন্য, HTTP প্রোটোকলের একটি সুরক্ষিত সংস্করণ তৈরি করা হয়েছিল। ট্রান্সপোর্ট লেয়ার সিকিউরিটি (TLS) এবং এর পূর্বসূরি, সিকিউর সকেট লেয়ার (SSL), হল ক্রিপ্টোগ্রাফিক প্রোটোকল যা একটি নেটওয়ার্কের মাধ্যমে ডেটা ট্রান্সমিশনের জন্য নিরাপত্তা প্রদান করে। অতএব, সুরক্ষিত প্রোটোকলটিকে HTTPS বলা হবে। আপনি আপনার ব্রাউজারের ঠিকানা বারে টাইপ করে সুরক্ষিত প্রোটোকল কীভাবে কাজ করে তা দেখতে পারেন (https-এ S দ্রষ্টব্য)।

খারাপভাবে বাস্তবায়িত SSL-এ ম্যান-ইন-দ্য-মিডল অ্যাটাক

আধুনিক SSL একটি ভাল এনক্রিপশন অ্যালগরিদম ব্যবহার করে, কিন্তু এটি সঠিকভাবে বাস্তবায়িত না হলে তা কোন ব্যাপার না। যদি কোনো হ্যাকার অনুরোধটি আটকাতে পারে, তাহলে তারা অনুরোধ করা URL থেকে "S" সরিয়ে SSL বাইপাস করে এটি সংশোধন করতে পারে।

অনুরোধের এই ধরনের বাধা এবং পরিবর্তন লক্ষ্য করা যেতে পারে। উদাহরণস্বরূপ, আপনি যদি https://login.yahoo.com/ অনুরোধ করেন এবং প্রতিক্রিয়াটি হয় http://login.yahoo.com/ , তাহলে এটি সন্দেহ বাড়াবে৷ লেখার সময়, এই আক্রমণটি আসলে ইয়াহু ইমেল পরিষেবাতে কাজ করে।

চিত্র 3. বাধা এবং পরিবর্তনের অনুরোধ করুন


এই ধরনের আক্রমণ প্রতিরোধ করার জন্য, সার্ভারগুলি HTTP স্ট্রিক্ট ট্রান্সপোর্ট সিকিউরিটি (HSTS) প্রয়োগ করতে পারে, একটি প্রক্রিয়া যা HTTPS প্রোটোকলের মাধ্যমে একটি জোরপূর্বক সুরক্ষিত সংযোগ সক্ষম করে। এই ক্ষেত্রে, যদি কোনও আক্রমণকারী URL থেকে "S" সরিয়ে অনুরোধটি সংশোধন করে, সার্ভার এখনও ব্যবহারকারীকে একটি সুরক্ষিত প্রোটোকল সহ একটি পৃষ্ঠায় 302 পুনঃনির্দেশ সহ পুনঃনির্দেশ করবে৷

চিত্র 4. HSTS অপারেশন ডায়াগ্রাম


SSL বাস্তবায়নের এই পদ্ধতিটি অন্য ধরনের আক্রমণের জন্য ঝুঁকিপূর্ণ - আক্রমণকারী সার্ভারে একটি SSL সংযোগ তৈরি করে, কিন্তু ব্যবহারকারীকে HTTP ব্যবহার করতে বাধ্য করার জন্য বিভিন্ন কৌশল ব্যবহার করে।

চিত্র 5. HSTS আক্রমণ প্যাটার্ন


এই ধরনের আক্রমণ প্রতিরোধ করতে, ক্রোম, ফায়ারফক্স এবং টরের মতো আধুনিক ব্রাউজারগুলি এইচএসটিএস ব্যবহার করে সাইটগুলি মনিটর করে এবং SSL এর মাধ্যমে তাদের সাথে একটি ক্লায়েন্ট-সাইড সংযোগ জোর করে। এই ক্ষেত্রে, একজন ম্যান-ইন-দ্য-মিডল আক্রমণ পরিচালনাকারী আক্রমণকারীকে শিকারের সাথে একটি SSL সংযোগ তৈরি করতে হবে।

চিত্র 6. আক্রমণের প্যাটার্ন যেখানে আক্রমণকারী শিকারের সাথে একটি SSL সংযোগ স্থাপন করে


একটি ব্যবহারকারীকে একটি SLL সংযোগ প্রদান করার জন্য, একজন আক্রমণকারীকে অবশ্যই সার্ভার হিসাবে কাজ করতে হবে তা জানতে হবে। আসুন SSL এর প্রযুক্তিগত দিকগুলো বুঝুন।

SSL বোঝা

হ্যাকারের দৃষ্টিকোণ থেকে, যেকোনো যোগাযোগ প্রোটোকলের সাথে আপস করা উপরে তালিকাভুক্ত উপাদানগুলির মধ্যে দুর্বল লিঙ্ক খুঁজে পাওয়া যায় (গোপনীয়তা, সত্যতা এবং অখণ্ডতা)।

SSL একটি অপ্রতিসম এনক্রিপশন অ্যালগরিদম ব্যবহার করে। সিমেট্রিক এনক্রিপশনের সমস্যা হল যে একই কী ডেটা এনক্রিপ্ট এবং ডিক্রিপ্ট করতে ব্যবহৃত হয়, এই পদ্ধতিটি ইন্টারনেট প্রোটোকলের জন্য বৈধ নয় কারণ আক্রমণকারী এই কীটি ট্রেস করতে পারে।

অসমমিতিক এনক্রিপশন প্রতিটি পাশের জন্য 2টি কী অন্তর্ভুক্ত করে: সর্বজনীন কী, এনক্রিপশনের জন্য ব্যবহৃত হয়, এবং একটি ব্যক্তিগত কী, ডেটা ডিক্রিপ্ট করতে ব্যবহৃত হয়।

চিত্র 7. পাবলিক এবং প্রাইভেট কী কাজ করে

কিভাবে SSL নিরাপদ যোগাযোগের জন্য প্রয়োজনীয় তিনটি বৈশিষ্ট্য প্রদান করে?

  1. যেহেতু অসমমিত ক্রিপ্টোগ্রাফি ডেটা এনক্রিপ্ট করতে ব্যবহৃত হয়, SSL একটি ব্যক্তিগত সংযোগ প্রদান করে। এই এনক্রিপশনটি ভাঙা এবং অনাবিষ্কৃত থাকা এত সহজ নয়।
  2. সার্ভারটি ক্লায়েন্টকে একটি শংসাপত্র কর্তৃপক্ষ - একটি বিশ্বস্ত তৃতীয় পক্ষ দ্বারা জারি করা একটি SSL শংসাপত্র পাঠিয়ে তার বৈধতা নিশ্চিত করে৷

যদি কোনও আক্রমণকারী কোনওভাবে শংসাপত্রটি পেতে পরিচালনা করে, তবে তারা মধ্যম আক্রমণের দরজা খুলতে পারে। এইভাবে, এটি 2টি সংযোগ তৈরি করবে - সার্ভারের সাথে এবং শিকারের সাথে। এই ক্ষেত্রে সার্ভার মনে করে যে আক্রমণকারী একজন সাধারণ ক্লায়েন্ট, এবং শিকারের আক্রমণকারীকে শনাক্ত করার কোনো উপায় নেই, যেহেতু সে সার্ভার প্রমাণ করে একটি শংসাপত্র প্রদান করেছে।

আপনার বার্তাগুলি এনক্রিপ্ট করা আকারে আসে এবং আসে, কিন্তু তারা সাইবার অপরাধীর কম্পিউটারের মাধ্যমে একটি চেইন অনুসরণ করে, যেখানে তার সম্পূর্ণ নিয়ন্ত্রণ থাকে।

চিত্র 8. আক্রমণকারীর একটি শংসাপত্র থাকলে আক্রমণের প্যাটার্ন


আক্রমণকারীর যদি শিকারের ব্রাউজারে আপস করার ক্ষমতা থাকে তবে শংসাপত্রটি জাল করার দরকার নেই৷ এই ক্ষেত্রে, তিনি একটি স্ব-স্বাক্ষরিত শংসাপত্র সন্নিবেশ করতে পারেন, যা ডিফল্টরূপে বিশ্বস্ত হবে। এভাবেই বেশিরভাগ ম্যান-ইন-দ্য-মিডল আক্রমণ করা হয়। আরও জটিল ক্ষেত্রে, হ্যাকারকে অবশ্যই একটি ভিন্ন রুট নিতে হবে - শংসাপত্র জাল করুন।

শংসাপত্র কর্তৃপক্ষের সমস্যা

সার্ভার দ্বারা প্রেরিত শংসাপত্রটি একটি শংসাপত্র কর্তৃপক্ষ দ্বারা জারি এবং স্বাক্ষরিত হয়েছিল। প্রতিটি ব্রাউজারে বিশ্বস্ত শংসাপত্র কর্তৃপক্ষের একটি তালিকা রয়েছে এবং আপনি সেগুলি যোগ করতে বা সরাতে পারেন৷ এখানে সমস্যা হল যে আপনি যদি বড় কর্তৃপক্ষকে অপসারণ করার সিদ্ধান্ত নেন, আপনি সেই কর্তৃপক্ষের স্বাক্ষরিত শংসাপত্র ব্যবহার করে এমন সাইটগুলি দেখতে পারবেন না।

শংসাপত্র এবং শংসাপত্র কর্তৃপক্ষ সবসময় একটি HTTPS সংযোগের সবচেয়ে দুর্বল লিঙ্ক হয়েছে। এমনকি যদি সবকিছু সঠিকভাবে বাস্তবায়িত হয় এবং প্রতিটি শংসাপত্র কর্তৃপক্ষের একটি দৃঢ় কর্তৃত্ব থাকে, তবুও আপনাকে অনেক তৃতীয় পক্ষকে বিশ্বাস করতে হবে এই সত্যের সাথে মানিয়ে নেওয়া কঠিন।

আজ 650 টিরও বেশি প্রতিষ্ঠান সার্টিফিকেট প্রদান করতে সক্ষম। যদি একজন আক্রমণকারী তাদের কাউকে হ্যাক করে তবে সে যা চাইবে তাই পাবে।

এমনকি যখন শুধুমাত্র একটি সার্টিফিকেট অথরিটি ছিল, ভেরিসাইন, সেখানে একটি সমস্যা ছিল - যারা ম্যান-ইন-দ্য-মিডল আক্রমণ প্রতিরোধ করার কথা ছিল তারা ইন্টারসেপশন পরিষেবা বিক্রি করছিল।

এছাড়াও সার্টিফিকেট কর্তৃপক্ষের হ্যাকিংয়ের কারণে অনেক সার্টিফিকেট তৈরি হয়েছে। প্রতারণামূলক শংসাপত্রের উপর আস্থা রাখার জন্য লক্ষ্যযুক্ত ব্যবহারকারীকে প্রতারণা করার জন্য বিভিন্ন কৌশল এবং কৌশল ব্যবহার করা হয়েছে।

ফরেনসিক

কারণ আক্রমণকারী স্পুফড এআরপি প্যাকেট পাঠায়, আক্রমণকারীর আইপি ঠিকানা দেখা যায় না। পরিবর্তে, আপনাকে MAC ঠিকানায় মনোযোগ দিতে হবে, যা নেটওয়ার্কের প্রতিটি ডিভাইসের জন্য নির্দিষ্ট। আপনি যদি আপনার রাউটারের MAC ঠিকানা জানেন তবে আপনি এটিকে ডিফল্ট গেটওয়ের MAC ঠিকানার সাথে তুলনা করতে পারেন যে এটি সত্যিই আপনার রাউটার বা আক্রমণকারী কিনা।

উদাহরণস্বরূপ, উইন্ডোজ ওএস-এ আপনি ipconfig কমান্ডটি ব্যবহার করতে পারেন কমান্ড লাইন(সিএমডি) আপনার ডিফল্ট গেটওয়ে আইপি ঠিকানা দেখতে (শেষ লাইন):

চিত্র 9. ipconfig কমান্ড ব্যবহার করে


তারপর এই গেটওয়ের MAC ঠিকানা খুঁজে বের করতে arp –a কমান্ডটি ব্যবহার করুন:

চিত্র 10. arp –a কমান্ড ব্যবহার করে


তবে আক্রমণটি লক্ষ্য করার আরেকটি উপায় রয়েছে - আপনি যদি নেটওয়ার্কের কার্যকলাপটি শুরু হওয়ার সময় পর্যবেক্ষণ করছিলেন এবং ARP প্যাকেটগুলি দেখছিলেন। উদাহরণস্বরূপ, আপনি এই উদ্দেশ্যে Wireshark ব্যবহার করতে পারেন, ডিফল্ট গেটওয়ের MAC ঠিকানা পরিবর্তিত হলে এই প্রোগ্রামটি আপনাকে অবহিত করবে।

দ্রষ্টব্য: যদি আক্রমণকারী সঠিকভাবে MAC ঠিকানাগুলি ফাঁকি দেয়, তাহলে তাকে ট্র্যাক করা একটি বড় সমস্যা হয়ে দাঁড়াবে৷

উপসংহার

SSL হল একটি প্রোটোকল যা আক্রমণকারীকে আক্রমণ চালাতে অনেক কাজ করতে বাধ্য করে। কিন্তু এটি আপনাকে রাষ্ট্র-স্পন্সর করা আক্রমণ বা দক্ষ হ্যাকিং সংস্থার হাত থেকে রক্ষা করবে না।

ব্যবহারকারীর কাজ হল একটি জাল সার্টিফিকেট ঢোকানো থেকে প্রতিরোধ করার জন্য তাদের ব্রাউজার এবং কম্পিউটার রক্ষা করা (একটি খুব সাধারণ কৌশল)। বিশ্বস্ত শংসাপত্রগুলির তালিকার দিকে মনোযোগ দেওয়া এবং আপনি যেগুলিকে বিশ্বাস করেন না সেগুলি সরিয়ে দেওয়াও মূল্যবান।

বিষয়ে প্রকাশনা