বাফার ওভারফ্লোয়ের জন্য উবুন্টু টার্মিনালে ASCII HEX 88 অক্ষরটি কীভাবে টাইপ করবেন?


2

আমি একটি ইন্টারেক্টিভ সি প্রোগ্রামে একটি বাফার ওভারফ্লো সম্পাদন করার চেষ্টা করছি। আমাকে একটি ঠিকানা দিয়ে EIP পুনর্লিখন করতে হবে যার বাইট হিসাবে হেক্সের মান 88 রয়েছে। তার জন্য আমাকে অনুরোধ করা হলে সংশ্লিষ্ট ASCII টাইপ করতে হবে।

আমি CTRL + SHIFT + u চেষ্টা করেছি এবং চরিত্রটি পেতে হেক্স মান [ u88 ] প্রবেশ করলাম , তবে এটি কার্যকর হয়নি। পরিবর্তে এটি রেজিস্টার C288 প্রেরণ ।

আমি কিছু গবেষণা করেছি এবং বুঝতে পেরেছিলাম যে এটি ক্যারেক্টার ট্যাবুলেশন সেট [এইচটিএস] তবে উবুন্টুতে কাজ করবে এমন একটি পলায়ন এনকোডিং আমি খুঁজে পাইনি।

  • পিএস: পার্ল বা পাইথনটি \ x88 পাসকরতে এখানে কোনও বিকল্প নয় কারণ প্রোগ্রামটি আর্গুমেন্টের মাধ্যমে ব্যবহারকারীদের ইনপুট নেয় না।

এটি স্টিডিন থেকে পড়লে আপনি প্রোগ্রামটিতে এটি পাইপ করতে পারেন echo -e "\x88" | ./a.outঅন্যথায় যদি এটি পাঠ্য ভিত্তিক হয় তবে আপনি এটি দিয়ে মুড়িয়ে ফেলতে পারেনexpect
তারেরঘল

@ ওয়াইরঘৌল আমি প্রশ্নটিতে ইতিমধ্যে উল্লেখ করেছি বলে আমি এটি একটি যুক্তি হিসাবে পাস করতে পারি না। আমি একটি এনকোডিং পদ্ধতি খুঁজছি। নাল চরিত্রের জন্য Ctrl + @ পছন্দ করুন।

তর্ক হিসাবে এটি পাস করা হয়নি; echoএটি প্রোগ্রামের STDIN এ দেয়।
কেউ কোথাও কোথাও

1
এটি কেবলমাত্র একটি টার্মিনালে একটি নির্দিষ্ট অক্ষর টাইপ করছে এবং এইভাবে এখানে অফ-টপিক। আপনার যদি বাফার ওভারফ্লোর জন্য চরিত্রের প্রয়োজন হয় তবে কিছু যায় আসে না।
স্টিফেন অলারিখ

1
@ ইগমন্ট আপনাকে ধন্যবাদ! তুমি একজন জীবন রক্ষাকারী. আমি পূর্ব (ISO-8859-1- করার এনকোডিং পরিবর্তন এটা কাজ করে।
hax

উত্তর:


0

আমি টার্মিনালের অক্ষর এনকোডিং পরিবর্তন করেছি এবং তারপরে আমি CTRL + SHIFT + U লিখে 88 লিখতে সক্ষম হয়েছি ।

টার্মিনাল> অক্ষর এনকোডিং সেট করুন

ওয়েস্টার্ন নির্বাচন করুন (আইএসও -8859-1)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.