বাগ বাউন্টি হান্টারদের জন্য সাবডোমেন এনিউমারেশন ও অ্যাসেট রিকন পদ্ধতি

এক নজরে টেকনিক্যাল সারসংক্ষেপ (Quick Technical Summary): মূল ধারণা: প্যাসিভ রিকন (Subfinder, Amass, CT Logs) এবং অ্যাক্টিভ ব্রুটফোর্সিং (Puredns, Massdns) এর সমন্বয়ে লুকানো ও পরিত্যক্ত সাবডোমেন খুঁজে বের করার।

বাগ বাউন্টি হান্টারদের জন্য সাবডোমেন এনিউমারেশন ও অ্যাসেট রিকন পদ্ধতি

[!TIP] এক নজরে টেকনিক্যাল সারসংক্ষেপ (Quick Technical Summary):

  • মূল ধারণা: প্যাসিভ রিকন (Subfinder, Amass, CT Logs) এবং অ্যাক্টিভ ব্রুটফোর্সিং (Puredns, Massdns) এর সমন্বয়ে লুকানো ও পরিত্যক্ত সাবডোমেন খুঁজে বের করার প্রফেশনাল গাইড।
  • প্রতিরোধের উপায়: কঠোর ইনপুট ভ্যালিডেশন নিশ্চিত করা, অপ্রয়োজনীয় শেল/ইভাল বন্ধ রাখা এবং সর্বনিম্ন অধিকার নীতি মেনে চলা।
  • ভেরিফিকেশন: অ্যাপ্লিকেশন লগ নিয়মিত মনিটর করা এবং স্বয়ংক্রিয় রিগ্রেশন টেস্ট রান করা।

আধুনিক সফটওয়্যার ইঞ্জিনিয়ারিংয়ে সিকিউরিটি নিশ্চিত করতে কোড এবং আর্কিটেকচার উভয় স্তরেই সতর্ক থাকা অত্যন্ত জরুরি।

ক্যারিয়ারের অগ্রগতির পাশাপাশি ডেভেলপারদের আন্তর্জাতিক ক্যারিয়ার গাইডলাইন জানতে পড়ে দেখতে পারেন বাংলাদেশি ডেভেলপারদের জন্য হাই-পেয়িং রিমোট জব গাইড।

টেকনিক্যাল বিশ্লেষণ এবং মূল কারণ

যখন ব্যবহারকারীর কাছ থেকে পাওয়া ইনপুট যাচাই ছাড়া সরাসরি সার্ভারের ইন্টারনাল রিসোর্স বা অপারেটিং সিস্টেমে যায়, তখন এই সিকিউরিটি ঝুঁকি তৈরি হয়:

Client Input ===> Web Handler ===> [Unvalidated Parameter] ===> Internal Resource / OS / Network

নিরাপদ আর্কিটেকচার নিশ্চিত করতে নিচের টেস্টেড রেফারেন্স কোডটি অনুসরণ করুন:

# Modern 3-step automated recon pipeline
subfinder -d target.com -all -silent | anew subdomains.txt
cat subdomains.txt | puredns resolve --resolvers resolvers.txt -q | anew resolved.txt
cat resolved.txt | httpx -title -status-code -tech-detect -silent -o live_assets.txt

ডিফেন্সিভ কোডিং চেকলিস্ট

১. ইনপুট নরমালাইজেশন: পাথ বা ইউআরএল যাচাই করার পূর্বে ইনপুটকে অবশ্যই নরমালাইজ করে নিন। ২. হোয়াইটলিস্ট চেকিং: ব্লকলিস্টের ওপর নির্ভর না করে শুধু অনুমোদিত ক্যারেক্টার বা ডোমেনের হোয়াইটলিস্ট ব্যবহার করুন। ৩. শেল এক্সিকিউশন পরিহার: শেলের মাধ্যমে কমান্ড না চালিয়ে সরাসরি বাইনারি এক্সিকিউট করুন। ৪. লিস্ট প্রিভিলেজ (Least Privilege): কন্টেইনার এবং সার্ভিসগুলোকে নন-রুট ইউজার হিসেবে রান করুন।

সাধারণ ভুল ধারণা যা এড়িয়ে চলা উচিত

  • শুধুমাত্র ডাব্লুএএফ (WAF)-এর ওপর নির্ভর করা এবং সোর্স কোডের বাগ ঠিক না করা।
  • ডাবল-এনকোডিং বা ইউনিকোড টেকনিকের মাধ্যমে সহজ রেজেক্স ফিল্টার বাইপাস করা সম্ভব তা ভুলে যাওয়া।

লগ মনিটরিং ও অ্যালার্টিং

ওয়েব সার্ভার ও অ্যাক্সেস লগে কোনো সন্দেহজনক এনকোডেড প্যারামিটার বা অস্বাভাবিক এরর কোড (যেমন ঘনঘন 403 Forbidden) এলে তাৎক্ষণিক অ্যালার্ট সেট করুন।

উপসংহার

নেটওয়ার্ক, রানটাইম এবং অ্যাপ্লিকেশন কোড—প্রতিটি স্তরেই ডিফেন্স-ইন-ডেপথ নিশ্চিত করুন।

আরও পড়ুন

দুটি অ্যাকাউন্ট দিয়ে API-র authorization bug পরীক্ষা

বেশিরভাগ গুরুতর API bug কে কী করতে পারে তা নিয়ে। সহজ matrix ও দুটি অ্যাকাউন্ট দিয়ে সাবধানে পরীক্ষা করুন এবং পরিষ্কারভাবে প্রমাণ করুন।

বাগ বাউন্টি•২ মিনিটে পড়া

Web archive ও public উৎস: ভুলে যাওয়া পেজ সঠিকভাবে খোঁজা

সাইট বদলায়, কিন্তু অতীত archive-এ থাকে। Public archive ও খোলা উৎস target বুঝতে কীভাবে সাহায্য করে এবং সীমারেখা কোথায়, জানুন।

বাগ বাউন্টি•২ মিনিটে পড়া

Burp Suite-এর গোড়া: proxy, repeater ও নিরাপদ পরীক্ষার ধারা

Burp Suite আপনার browser-এর পাঠানো request দেখতে ও বদলাতে দেয়। মূল টুল এবং আপনাকে scope-এ রাখে এমন শান্ত কাজের ধারা শিখুন।

বাগ বাউন্টি•২ মিনিটে পড়া