প্রকল্প সম্পর্কে
Capstone Engine হলো একটি উন্মুক্ত-সোর্স ডিসেম্বলিং ফ্রেমওয়ার্ক যা খাঁটি C ভাষায় লেখা, এবং এটি নিরাপত্তা কমিউনিটির জন্য বিটার্নারি বিশ্লেষণ ও রিভার্স ইঞ্জিনিয়ারিংয়ের উদ্দেশ্যে ডিজাইন করা হয়েছে। Nguyen Anh Quynh এর দ্বারা তৈরি এবং একটি ছোট ডেভেলপার কমিউনিটির দ্বারা রক্ষণাবেক্ষণ করা এই প্রজেক্টটি অনুমতিমূলক BSD লাইসেন্সের অধীনে বিতরণ করা হয়।
আর্কিটেকচার কভারেজ হলো Capstone-এর একটি সংজ্ঞায়িত বৈশিষ্ট্য। এটি বিভিন্ন হার্ডওয়্যার এবং ভার্চুয়াল আর্কিটেকচার জুড়ে মেশিন কোড হ্যান্ডেল করে: ARM, AArch64 (ARMv8), Alpha, ARC, BPF, Ethereum Virtual Machine, LoongArch, HPPA (PA-RISC), M68K, M680X, MIPS, MOS65XX, PowerPC, RISC-V (rv32G/rv64G), SH, SPARC, SystemZ, TMS320C64X, TriCore, WebAssembly, XCore, Xtensa, এবং 16-, 32- ও 64-বিট মোডে x86।
মেশিন কোডকে অ্যাসেম্বলি টেক্সটে রূপান্তর করার বাইরে, Capstone প্রতিটি ডিসেম্বল করা ইনস্ট্রাকশন সম্পর্কে বিস্তারিত তথ্য প্রকাশ করে — যা অন্য কিছু টুল 'ডিকম্পোজিশন' নামে ডাকে — যার মধ্যে ইনস্ট্রাকশন সেম্যান্টিক্সও রয়েছে, যেমন কোন ইমপ্লিসিট রেজিস্টার পড়া বা লেখা হয়। APIটি পরিষ্কার, হালকা এবং আর্কিটেকচার-নিরপেক্ষভাবে ডিজাইন করা, তাই সমস্ত সাপোর্টেড টার্গেট জুড়ে একই ইন্টারফেস কাজ করে।
Capstone ডিজাইনের দিক থেকে থ্রেড-সেফ এবং ফার্মওয়্যার বা অপারেটিং সিস্টেম কার্নেলে এমবেডিংয়ের জন্য বিশেষ সাপোর্ট অন্তর্ভুক্ত করে, যা এটিকে নিম্ন-স্তরের এবং সীমাবদ্ধ পরিবেশের জন্য উপযুক্ত করে তোলে। প্রজেক্টটি নিজেকে উচ্চ পারফরম্যান্স হিসেবে বর্ণনা করে এবং বিভিন্ন x86 ম্যালওয়্যার ট্রিক হ্যান্ডেল করার সক্ষম বলে দাবি করে, যা এটিকে ম্যালওয়্যার বিশ্লেষণ ব্যবহারের জন্য অবস্থিত করে।
কোরটি C-তে বাস্তবায়িত হলেও, একটি দীর্ঘ ভাষার তালিকার জন্য বাইন্ডিং উপলব্ধ রয়েছে — মূল কোডবেসে বা কমিউনিটির দ্বারা বাহ্যিকভাবে প্রদত্ত: Python, C++, C#, Java, Go, Rust, NodeJS, Ruby, Perl, PHP, Lua, Haskell, OCaml, Clojure, F#, Common Lisp, Swift, D, Visual Basic, PowerShell, Emacs Lisp, Delphi, Free Pascal এবং Vala। Python প্যাকেজটি PyPI-তে প্রকাশিত। Windows, macOS, iOS, Android, Linux, *BSD এবং Solaris-এ নেটিভ বিল্ড সাপোর্ট করা হয়।
প্রজেক্টটি Google-এর OSS-Fuzz কন্টিনিউয়াস ফাজিং প্রোগ্রামে অংশ নেয়, এবং এর ডকুমেন্টেশনে বিল্ডিং ও ইনস্টলেশন, সফটওয়্যার আর্কিটেকচার, টেস্টিং এবং একটি অটো-সিঙ্ক আপডেটার কম্পোনেন্টের বিষয়বস্তু রয়েছে। কমিউনিটি আলোচনা Telegram গ্রুপে হয় এবং রিপোজিটরিতে অবদান নির্দেশিকা অন্তর্ভুক্ত রয়েছে।
সাধারণ ব্যবহারকারীদের মধ্যে নিরাপত্তা গবেষক, ম্যালওয়্যার বিশ্লেষক এবং ডিবাগার, ট্রেসার বা মেশিন কোড প্রোগ্রাম্যাটিকভাবে ব্যাখ্যা করার প্রয়োজন এমন অন্যান্য টুল তৈরি করা ডেভেলপার রয়েছে। মনে রাখবেন যে Capstone একটি লাইব্রেরি এবং ফ্রেমওয়ার্ক, স্ট্যান্ডঅ্যালোন GUI অ্যাপ্লিকেশন নয়: ব্যবহারকারীরা এটি তার C API বা বহু ভাষিক বাইন্ডিংয়ের মাধ্যমে ইন্টিগ্রেট করেন।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.