আমি একটি এসপ নেট অ্যাপ্লিকেশনটিতে কাজ করেছি যা একটি শীর্ষস্থানীয় সুরক্ষা সংস্থার সুরক্ষা নিরীক্ষণের মধ্য দিয়ে গিয়েছিল এবং আমি কম পরিচিত তবে গুরুত্বপূর্ণ সুরক্ষার দুর্বলতা রোধ করতে এই সহজ কৌশলটি শিখেছি।
নীচের ব্যাখ্যাটি হ'ল:
http://www.guidancehare.com/wiki/ASP.NET_2.0_Security_Guidlines_-_Parameter_Manipulation#Conider_Using_Page.ViewStateUserKey_to_Couter_One-Cl_Attacks
এক-ক্লিক আক্রমণ মোকাবেলার জন্য পৃষ্ঠা.ভিউস্টেট ইউজারকি ব্যবহার করার বিষয়টি বিবেচনা করুন। আপনি যদি নিজের কলারদের প্রমাণীকরণ করেন এবং ভিউস্টেট ব্যবহার করেন তবে এক-ক্লিকের আক্রমণগুলি প্রতিরোধ করতে পৃষ্ঠা_ইনিট ইভেন্ট হ্যান্ডলারে পৃষ্ঠা.ভিউস্টেট ইউজারকি কী সম্পত্তি সেট করুন।
void Page_Init (object sender, EventArgs e) {
ViewStateUserKey = Session.SessionID;
}
সম্পত্তিটি এমন কোনও মান হিসাবে সেট করুন যা আপনি জানেন প্রতিটি ব্যবহারকারীর কাছে অনন্য, যেমন একটি সেশন আইডি, ব্যবহারকারীর নাম, বা ব্যবহারকারী শনাক্তকারী।
একজন আক্রমণকারী আক্রমণ ঘটে যখন আক্রমণকারী একটি ওয়েব পৃষ্ঠা তৈরি করে (.htm বা .aspx) যার মধ্যে __VIEWSTATE নামে একটি লুকানো ফর্ম ফিল্ড থাকে যা ইতিমধ্যে ভিউস্টেটের ডেটাতে পূর্ণ। আক্রমণকারীর আগে তৈরি করা পৃষ্ঠা থেকে ভিউস্টেট তৈরি করা যেতে পারে যেমন 100 আইটেম সহ শপিং কার্ট পৃষ্ঠা। আক্রমণকারী কোনও পৃষ্ঠাটিতে ব্রাউজিংয়ের ক্ষেত্রে একটি সন্দেহহীন ব্যবহারকারীর প্রলুব্ধ করে এবং তারপরে আক্রমণকারী পৃষ্ঠাটি সার্ভারে প্রেরণের জন্য তোলে যেখানে ভিউস্টেটটি বৈধ। সার্ভারের জানার কোনও উপায় নেই যে ভিউস্টেটটি আক্রমণকারীর কাছ থেকে এসেছে। ভিউস্টেট বৈধতা এবং এইচএমএসিগুলি এই আক্রমণটির বিরোধিতা করে না কারণ ভিউস্টেটটি বৈধ এবং পৃষ্ঠাটি ব্যবহারকারীর সুরক্ষা প্রসঙ্গে কার্যকর করা হয়েছে।
ভিউস্টেট ইউজারকি কী সম্পত্তি সেট করে, যখন আক্রমণকারী ভিউস্টেট তৈরি করতে কোনও পৃষ্ঠাতে ব্রাউজ করে, সম্পত্তিটি তার বা তার নামে শুরু করা হয়। বৈধ ব্যবহারকারী যখন পৃষ্ঠাটি সার্ভারে জমা দেয় তখন আক্রমণকারীর নাম দিয়ে এটি আরম্ভ করা হয়। ফলস্বরূপ, ভিউস্টেট এইচএমএসি চেক ব্যর্থ হয় এবং একটি ব্যতিক্রম উত্পন্ন হয়।