এটি হল কমান্ড হার্ডনিং-চেক যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।
কার্যক্রম:
NAME এর
হার্ডনিং-চেক - নিরাপত্তা শক্ত করার বৈশিষ্ট্যের জন্য বাইনারি পরীক্ষা করুন
সাইনোপিসিস
হার্ডনিং-চেক [বিকল্প] [ELF...]
ELF বাইনারিগুলির একটি প্রদত্ত সেট পরীক্ষা করুন এবং বেশ কয়েকটি সুরক্ষা শক্ত করার বৈশিষ্ট্যগুলি পরীক্ষা করুন,
ব্যর্থ যদি তারা সব পাওয়া না হয়.
বর্ণনাঃ
এই ইউটিলিটি বেশ কয়েকটি নিরাপত্তা শক্ত করার বৈশিষ্ট্যগুলির জন্য ELF বাইনারিগুলির একটি প্রদত্ত তালিকা পরীক্ষা করে
যে একটি এক্সিকিউটেবল মধ্যে কম্পাইল করা যেতে পারে. এই বৈশিষ্ট্যগুলি হল:
অবস্থান স্বাধীন সম্পাদনযোগ্য
এটি নির্দেশ করে যে এক্সিকিউটেবলটি এমনভাবে তৈরি করা হয়েছিল (PIE) যাতে "টেক্সট"
প্রোগ্রামের বিভাগটি মেমরিতে স্থানান্তর করা যেতে পারে। এর পূর্ণ সুবিধা নিতে
বৈশিষ্ট্য, এক্সিকিউটিং কার্নেল অবশ্যই টেক্সট অ্যাড্রেস স্পেস লেআউট র্যান্ডমাইজেশন সমর্থন করবে
(এএসএলআর)।
গাদা রক্ষিত
এটি ইঙ্গিত করে যে প্রমাণ রয়েছে যে ELF এর সাথে সংকলিত হয়েছিল জিসিসি(1)
পছন্দ -ফস্ট্যাক-রক্ষক (যেমন ব্যবহার করে __stack_chk_fail) কর্মসূচি হবে
তার স্ট্যাক overflowed থাকার প্রতিরোধী.
যখন একটি এক্সিকিউটেবল কোনো ক্যারেক্টার অ্যারে বরাদ্দ না করেই তৈরি করা হয়েছিল
স্ট্যাক, এই চেকটি মিথ্যা অ্যালার্মের দিকে পরিচালিত করবে (যেহেতু কোন ব্যবহার নেই
__stack_chk_fail), যদিও এটি সঠিক বিকল্পগুলির সাথে সংকলিত হয়েছিল।
বলাধান করা উৎস ক্রিয়াকলাপ
এটি নির্দেশ করে যে এক্সিকিউটেবলের সাথে কম্পাইল করা হয়েছিল -D_fortify_source = 2 এবং -ও1
অথবা উচ্চতর. এটি তাদের নিরাপদের সাথে কিছু অনিরাপদ glibc ফাংশন ঘটায়
প্রতিপক্ষ (যেমন strncpy পরিবর্তে strcpy), অথবা কলগুলিকে প্রতিস্থাপন করে
রানটাইম-চেক সংস্করণের সাথে রানটাইমে যাচাইযোগ্য (যেমন __memcpy_chk পরিবর্তে
of স্মৃতিচারণ).
যখন একটি এক্সিকিউটেবল এমনভাবে তৈরি করা হয়েছিল যে glibc এর সুরক্ষিত সংস্করণ
ফাংশন দরকারী নয় (যেমন ব্যবহার কম্পাইলের সময় নিরাপদ হিসাবে যাচাই করা হয়, বা ব্যবহার করা হয়
রানটাইমে যাচাই করা যাবে না), এই চেকটি মিথ্যা অ্যালার্মের দিকে নিয়ে যাবে। একটি মধ্যে
এটি প্রশমিত করার প্রচেষ্টা, চেকটি পাস হবে যদি কোনও শক্তিশালী ফাংশন পাওয়া যায়,
এবং শুধুমাত্র unfortified ফাংশন পাওয়া গেলে ব্যর্থ হবে. চেক করা যায় না এমন অবস্থাও
পাস (যেমন কোন ফাংশন যাকে সুরক্ষিত করা যেতে পারে এমন কোন ফাংশন পাওয়া যায় নি, বা এর সাথে লিঙ্ক করা হয়নি
glibc)।
শুধুমাত্র পাঠযোগ্য স্থানান্তর
এটি নির্দেশ করে যে এক্সিকিউটেবলটি দিয়ে তৈরি করা হয়েছিল -Wl,-z, relro ELF আছে
মার্কিং (RELRO) যা রানটাইম লিঙ্কারকে স্থানান্তরের যেকোনো অঞ্চল চিহ্নিত করতে বলে
সারণি "কেবল-পঠন" হিসাবে যদি সেগুলি কার্যকর করা শুরু হওয়ার আগে সমাধান করা হয়। এটি হ্রাস করে
একটি প্রোগ্রামে মেমরির সম্ভাব্য ক্ষেত্র যা আক্রমণকারী দ্বারা ব্যবহার করা যেতে পারে
একটি সফল মেমরি দুর্নীতি শোষণ সঞ্চালন.
আশু বাঁধাই
এটি নির্দেশ করে যে এক্সিকিউটেবলটি দিয়ে নির্মিত হয়েছিল -Wl,-z,এখন ELF চিহ্ন আছে
(BIND_NOW) যা রানটাইম লিঙ্কারকে শুরু করার আগে সমস্ত স্থানান্তর সমাধান করতে বলে
প্রোগ্রাম নির্বাহ। উপরের RELRO এর সাথে মিলিত হলে, এটি আরও কমিয়ে দেয়
মেমরি দুর্নীতি আক্রমণের জন্য উপলব্ধ মেমরি অঞ্চল.
বিকল্প
--নোপি, -p
না এর প্রয়োজন নেই যে চেক করা বাইনারিগুলি PIE হিসাবে তৈরি করা হবে৷
--নোস্ট্যাক প্রটেক্টর, -s
না, স্ট্যাক প্রোটেক্টরের সাহায্যে চেক করা বাইনারি তৈরি করার প্রয়োজন নেই।
--নিশ্চিত করা, -f
না প্রয়োজন নেই যে চেক করা বাইনারিগুলি Fority সোর্স দিয়ে তৈরি করা হবে৷
--নরেলরো, -r
না এর প্রয়োজন নেই যে চেক করা বাইনারিগুলি RELRO দিয়ে তৈরি করা হবে৷
--nobindnow, -b
না এর প্রয়োজন নেই যে চেক করা বাইনারিগুলি BIND_NOW দিয়ে তৈরি করা হবে৷
-- শান্ত, -q
শুধুমাত্র ব্যর্থতা রিপোর্ট.
-- ভারবোস, -v
ব্যর্থতার বিষয়ে মৌখিকভাবে রিপোর্ট করুন।
--রিপোর্ট-ফাংশন, -R
রিপোর্টের পরে, ELF-এর প্রয়োজনীয় সমস্ত বাহ্যিক ফাংশন প্রদর্শন করুন।
--ফাইন্ড-লিবিসি-ফাংশন, -F
নিয়মিত রিপোর্টের পরিবর্তে, কমান্ডে প্রথম ELF-এর জন্য libc সনাক্ত করুন
লাইন এবং libc দ্বারা রপ্তানিকৃত সমস্ত পরিচিত "ফর্টিফাইড" ফাংশন রিপোর্ট করুন।
--রঙ, -c
রঙিন স্থিতি আউটপুট সক্রিয় করুন.
--লিন্টিয়ান, -l
লিন্টিয়ান-চেক-পার্সেবল আউটপুটে রিপোর্টিং স্যুইচ করুন।
--ডিবাগ প্রক্রিয়াকরণের সময় কিছু ডিবাগিং রিপোর্ট করুন।
--help, -h, -?
একটি সংক্ষিপ্ত সাহায্য বার্তা প্রিন্ট করুন এবং প্রস্থান করুন।
--মানুষ, -H
ম্যানুয়াল পৃষ্ঠা মুদ্রণ করুন এবং প্রস্থান করুন।
প্রত্যাবর্তন VALUE না
যখন সব চেক করা বাইনারি সব চেকযোগ্য কঠিন বৈশিষ্ট্য সনাক্ত করা হয়, এই প্রোগ্রাম
0 এর একটি এক্সিট কোড দিয়ে শেষ হবে। কোনো চেক ব্যর্থ হলে, প্রস্থান কোড 1 হবে।
কমান্ড লাইন বিকল্পের মাধ্যমে পৃথক চেক নিষ্ক্রিয় করা যেতে পারে।
onworks.net পরিষেবা ব্যবহার করে অনলাইনে হার্ডনিং-চেক ব্যবহার করুন