কিভাবে কীচেন এক্সিকিউটেবল সনাক্ত করে?


1

আমি কীচেন অ্যাপ্লিকেশন সনাক্ত করে কিভাবে বিস্মিত। আমি এই কোড সাইনিং উপর ভিত্তি করে সন্দেহ, কিন্তু পরীক্ষা এই সঙ্গে সত্যিই সামঞ্জস্যপূর্ণ হয় না:

এটি এক্সিকিউটেবলগুলির জন্য কাজ করে যা সাইন ইন করে না:

codesign -dv  /Library/Frameworks/R.framework/Resources/bin/exec/R
# /Library/Frameworks/R.framework/Resources/bin/exec/R: code object is not signed at all

কিন্তু আর এই প্রক্রিয়াটি এই গোপনের ACL এ যোগ করা হয় এবং এটি আনন্দের সাথে এটি অনুসন্ধান করতে পারে ...

এক্সিকিউটেবল এর বর্ধিত গুণাবলী মধ্যে কিছুই নেই:

xattr -l  /usr/bin/security
# 

যদি আমি ফাইলটি নিজেই পরিবর্তন করি, এটি এখনও কাজ করে:

cp /usr/bin/security foobar
echo "\nharmless" >> foobar
./foobar find-generic-password -a 'gaborcsardi' -s foobar -g
# keychain: "/Users/gaborcsardi/Library/Keychains/login.keychain"
# class: "genp"
# attributes:
#     0x00000007 <blob>="foobar"
#     0x00000008 <blob>=<NULL>
#     "acct"<blob>="gaborcsardi"
# ...
# password: "secret"

কিন্তু তারপর কিভাবে কাজ করে? আরো বিশেষভাবে, কীচেনা কীভাবে জানায় যে পাসওয়ার্ড ক্যোয়ারী আসছে security অ্যাপ্লিকেশন, আমি বিশেষ করে এই এন্ট্রির অ্যাক্সেস অনুমতি দেয়?

উত্তর:


1

কীচেন অ্যাপ্লিকেশন সনাক্ত না, অ্যাপ্লিকেশন কল Keychain এপিআই

কীচেন পরিষেবা API এই সমস্যার সমাধান প্রদান করে। দ্বারা   এই API এ একটি একক কল করা, একটি অ্যাপ্লিকেশন ছোট বিট সংরক্ষণ করতে পারেন   একটি keychain গোপন তথ্য, যা থেকে অ্যাপ্লিকেশন পরে করতে পারেন   একক কল সহ তথ্য পুনরুদ্ধার। Keychain সুরক্ষিত   ফাইল সিস্টেমের মধ্যে সংরক্ষণ করার আগে এটি এনক্রিপ্ট করে তথ্য, মুক্তি   আপনি জটিল এনক্রিপশন অ্যালগরিদম বাস্তবায়ন প্রয়োজন। দ্য   সিস্টেম সাবধানে সংরক্ষিত আইটেম অ্যাক্সেস নিয়ন্ত্রণ। সমগ্র   keychain লক করা যেতে পারে, যার মানে কেউ তার সুরক্ষিত ডিক্রিপ্ট করতে পারেন   বিষয়বস্তু একটি মাস্টার পাসওয়ার্ড দিয়ে আনলক না হওয়া পর্যন্ত। এমনকি একটি সঙ্গে   আনলক করা কীচেন, সিস্টেমের কীচেন অ্যাক্সেস নীতি নিশ্চিত করে   শুধুমাত্র অনুমোদিত অ্যাপ্লিকেশন কীচেনের একটি নির্দিষ্ট আইটেম অ্যাক্সেস লাভ। মধ্যে   সবচেয়ে সহজ ক্ষেত্রে, যে অ্যাপটি একটি আইটেম তৈরি করেছে সেটিই একমাত্র   পরে এটি অ্যাক্সেস করতে পারেন। যাইহোক, কীচেন পরিষেবাগুলিও উপায় সরবরাহ করে   অ্যাপ্লিকেশন মধ্যে গোপন শেয়ার করুন।

enter image description here


ঠিক আছে, তাহলে কিচেন কীভাবে জানেন যে এটি নিশ্চিত করার জন্য জিজ্ঞাসা করতে হবে না /usr/bin/security একটি পাসওয়ার্ড জিজ্ঞাসা?
Gabor Csardi

কিছু একটা কারণ এই এখন যাচ্ছে অন্য প্রসঙ্গ : 1) এটি একটি ভিন্ন প্রশ্ন এবং 2) আপনি কি API ডকুমেন্টেশনটি পড়েছেন? আমি একটি চেহারা হচ্ছে সুপারিশ সফর
Allan

ঠিক আছে, ছোট সম্পাদনা দেখুন, সম্ভবত যে প্রশ্নটি স্পষ্ট করে। হ্যাঁ, আমি API ডকুমেন্টেশনটি পড়েছি, কিন্তু এটি যেকোনও বর্ণিত খুঁজে পাওয়া যায়নি। কিন্তু কীচেইনের API রেফারেন্স নিমজ্জিত হয়, তাই হয়তো আমি এটি মিস করেছি।
Gabor Csardi

আপনি বলছেন "কীচেন অ্যাপ্লিকেশন সনাক্ত করে না"। সুতরাং কিভাবে এটি জানেন যে এক্সিকিউটেবল 'x' এর প্রবেশ পাসওয়ার্ড অ্যাক্সেস এবং এক্সিকিউটেবল 'y' আছে না? অবশ্যই, এটি অবশ্যই কোনভাবে তাদের চিহ্নিত করতে হবে, এবং এটি (অবশ্যই) তাদের পথ দ্বারা এটি করা হয় না।
Gabor Csardi
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.