ডাবল এস্কেপ সিকোয়েন্সগুলি এমন পরিস্থিতিতে উল্লেখ করে যেখানে নির্দিষ্ট অক্ষরগুলি একটি স্ট্রিং এস্কেপ করার সময় একাধিকবার এস্কেপ হয়। ইউআরএল এনকোডিং-এ, বিশেষ অক্ষরগুলি প্রায়শই এস্কেপ করা হয় যাতে সেগুলি সঠিকভাবে পাস করা হয় এবং সার্ভার দ্বারা পার্স করা হয়। উদাহরণস্বরূপ, স্পেসগুলি "%20" হিসাবে এস্কেপ করা হয় এবং প্লাস চিহ্ন (+) সাধারণত এস্কেপ করা হয় না কারণ এটি URL-এ একটি স্পেস উপস্থাপন করে। যাইহোক, যদি সার্ভার ভুলবশত এমন অক্ষরগুলিকে এড়িয়ে যায় যা ইতিমধ্যেই আবার পালানো হয়েছে, একটি ডবল এস্কেপ সিকোয়েন্স তৈরি হবে।
সার্ভার রিপোর্ট করে যে রিকোয়েস্ট ফিল্টারিং মডিউলটি ডবল এস্কেপ সিকোয়েন্স ধারণ করে রিকোয়েস্ট প্রত্যাখ্যান করার জন্য কনফিগার করা হয়েছে। তারপর আবার পালিয়ে যায় সংজ্ঞাটি %252B, যা ভুল বলে বিবেচিত হয়। সার্ভার এই ধরনের অনুরোধ প্রত্যাখ্যান করতে পারে কারণ এটি পার্সিং ত্রুটি বা নিরাপত্তা সমস্যা হতে পারে।
সংশোধন করুন
applicationHost.config
ফাইল কনফিগারেশন, অনুগ্রহ করে ফাইলটি পরিবর্তন করার আগে ব্যাক আপ করুন।
%SystemDrive%\Windows\System32\inetsrv\config
সাধারণত ফোল্ডারের অধীনে সংশ্লিষ্ট সাইট কনফিগারেশন ফাইল খুঁজুন \applicationHost.config
, এবং তারপর এটি একটি পাঠ্য সম্পাদক (যেমন নোটপ্যাড) দিয়ে খুলুন।<requestFiltering>
অংশ IIS 7-এ, URLScan মডিউল ডিফল্টরূপে একটি প্লাস চিহ্ন ধারণকারী URL অনুরোধগুলিকে ব্লক করতে পারে।<requestFiltering>
বিভাগ, আপনি একটি যোগ করতে পারেন <allowDoubleEscaping>
উপাদান, তার মান সেট করে true
, URL-এ প্লাস সাইন করার অনুমতি দিতে। উদাহরণ:<security> <requestFiltering allowDoubleEscaping="true"></requestFiltering> </security>