"কার্ল-ইউ ব্যবহারকারীর নাম: পাসওয়ার্ড http://example.com" নিরাপদ?


30

কি curl -u username:password http://example.comনিরাপদ?

যদি তা না হয় তবে কীভাবে কেউ আপনার পাসওয়ার্ড পেতে পারে তার একটি সংক্ষিপ্ত ব্যাখ্যা দিতে পারেন?


6
যদি আপনি এটি টার্মিনালে ব্যবহার করছেন তবে আপনার মনে আছে যে উভয় শংসাপত্রগুলি বাশের ইতিহাসে সঞ্চিত আছে?
ফ্রান্সিসকো তপিয়া 26'15

15
এই জাতীয় কমান্ড নিরাপদ নয় কারণ অন্য ব্যবহারকারী ps -efকোন প্রসেসগুলি চলছে তা দেখতে ব্যবহার করতে পারে । আপনি যখন curl -u username:password http://example.comতালিকায় উপস্থিত হন, আপনার গন্তব্য, ব্যবহারকারীর নাম এবং পাসওয়ার্ড আপোস করা হয়।
ল্যামবার্ট

যদিও প্রশ্নটি এখানে বিষয়বস্তুতে রয়েছে, আপনি তথ্য সুরক্ষা স্ট্যাক এক্সচেঞ্জ
আইকিউআন্ড্রিয়াসে

উত্তর:


54

এটি অনিরাপদ, কারণ সিআরএল বেসিক প্রমাণীকরণের জন্য ডিফল্ট হয় যেখানে এইচটিটিপি প্রোটোকল আপনার পাসওয়ার্ডটি পরিষ্কার পাঠ্যে প্রেরণ করে। আপনি যখন username:passwordস্ট্রিংটি নির্দিষ্ট করেন , এটি HTTP শিরোনামে একটি BASE64 স্ট্রিংয়ে রূপান্তরিত হয় :

GET / HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0
Accept: text/html
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=

যে কেউ আপনার এইচটিটিপি ট্র্যাফিককে বাধা দিতে সক্ষম (আপনার সরবরাহকারী, আপনার মতো একই ওয়্যারলেস এপি অ্যাক্সেস করেন এমন কেউ) কেবল একটি অনলাইন বিএএসই 64৪ রূপান্তরকারী ব্যবহার করে পাসওয়ার্ডটি পুনরুদ্ধার করতে সক্ষম হবেন ।

এইচটিডিপিএস প্রোটোকল পাসওয়ার্ডটি প্রকাশ না হওয়া থেকে এই হেডারটি প্রেরণের আগে একটি এনক্রিপ্ট করা সংযোগ স্থাপনের মাধ্যমে জিনিসগুলি আরও ভাল করবে। তবে, এটি কেবল তখনই প্রযোজ্য যখন ব্যবহারকারী অজানা শংসাপত্রগুলি নিশ্চিত করতে, সুরক্ষা ব্যতিক্রমগুলি অনুমোদিত করার অনুরোধ জানাতে এবং মনোযোগ দেয় when

নোট করুন যে কমান্ড আর্গুমেন্টগুলি একই মেশিনের অন্যান্য ব্যবহারকারীর জন্য ps -efআপনার বাশার ইতিহাসে, এবং আপনার টার্মিনাল লগটিতে (যেমন ল্যামবার্টের মন্তব্যে মন্তব্য করার জন্য ধন্যবাদ) দেখার জন্য উপলব্ধ হতে পারে / কিছু প্ল্যাটফর্মের সিআরএল পাসওয়ার্ডটি আড়াল করার চেষ্টা করে যাতে উদাহরণস্বরূপ ps -efআপনার কাছে পাসওয়ার্ডের পরিবর্তে ফাঁকা জায়গা দেখতে পাওয়া যায়। যাইহোক, পরিবর্তে, একটি কমান্ড লাইন আর্গুমেন্ট হিসাবে পাসওয়ার্ড ক্ষণস্থায়ী কার্ল সরাসরি একটি পাসওয়ার্ড প্রম্পট থাকার ভাল, যেমন আলোচনা হয় কার্ল FAQ


4
এমনকি যদি আপনি এমন প্ল্যাটফর্মে থাকেন যেখানে কার্ল সাফল্যের সাথে ডেটা আড়াল করার জন্য তার নিজস্ব আরগভিটিকে ওভাররাইট করে ps, সেখানে একটি সময় শুরু হয় যখন সেই সামগ্রীটি দুর্বল যেখানে ওভাররাইট সম্পাদনের আগে এটি শুরু হয়।
চার্লস ডাফি

ডাইজেস্ট প্রমাণীকরণ সম্পর্কে কী? কার্ল কি ডিফল্টরূপে এটি ব্যবহার করে না?
rr-

2
@ আরআর ডাইজেস্ট প্রমাণীকরণ কেবলমাত্র প্রান্তিকরূপে ভাল, কারণ এটি মধ্য-মধ্যবর্তী আক্রমণগুলিকে রোধ করে না, তাই আপনি এইচটিটিপিএস ব্যবহারের চেয়ে আরও ভাল।
দিমিত্রি গ্রিগরিয়েভ

1
@rr আপনি কীভাবে দাবি করেন যে স্টার্ট এসএসএল বেশিরভাগ ব্রাউজার দ্বারা বিশ্বাসযোগ্য নয় ? আপনি কি অনেক উইন্ডোজ 95 বা ফায়ারফক্স 1.5 ব্যবহারকারীর প্রত্যাশা করছেন?
হেগেন ভন ইটজেন

1
@rr এই প্রোগ্রামটিতে আপনি সেখানে নিয়ে একটি সমস্যা হয়েছে শুধুমাত্র যদি অবিশ্বস্ত পেতে সার্ভারে অনুপস্থিত (অথবা ভুল) অন্তর্বর্তী শংশাপত্র
হ্যাগেন ভন Eitzen

24

এটি সুরক্ষিত নয়। কমান্ড লাইন প্যারামিটারগুলি সমস্ত ব্যবহারকারীর কাছে দৃশ্যমান।


4
@ দিমিত্রি গ্রিগরিয়েভ উত্তরটির সাথে মিলিত হওয়া এটি সবচেয়ে নির্ভুল হতে পারে।
ফ্রান্সিসকো তপিয়া 26'15

1
হ্যাঁ, আমি অবশ্যই স্বীকার করতে পারি যে সমস্যার বড় অংশটি আমি পুরোপুরি মিস করেছি missed
দিমিত্রি গ্রিগরিওয়েভ

কমান্ডটি কোনও স্ক্রিপ্টের অংশ হতে পারে কেবলমাত্র ব্যবহারকারী দ্বারা পঠনযোগ্য ...
পিট ২

2
@ নির্বাহী প্রোগ্রামগুলির পেট কমান্ড লাইনগুলি (কোনও স্ক্রিপ্ট থেকে শুরু করে বা টার্মিনালে শুরু করা হয়েছে) psকমান্ড এবং /procফাইল সিস্টেমের মাধ্যমে সাধারণত সমস্ত ব্যবহারকারীদের কাছে দৃশ্যমান । কমান্ডটি দ্রুত শেষ হলে, ঝুঁকি হ্রাস হয়, তবে এটি এখনও রয়েছে।
আরবার্টেইগ

2
@ পিট উত্তরগুলি একচেটিয়া হওয়ার কথা নয়, তারা একে অপরের পরিপূরক। সুতরাং প্রথম উত্তরটিতে ব্যাখ্যা করা হুমকি বাদ দেওয়া দ্বিতীয় উত্তরের জন্য ঠিক আছে, বরং এটির পুনরাবৃত্তি করা বাড়াবাড়ি হবে be এবং আমি বিবৃতিটিকে মিথ্যা বলব না কারণ এটি প্রতিটি ক্ষেত্রেই সত্য নয়।
দিমিত্রি গ্রিগরিওয়েভ

1

এটি --netrc-file পরামিতি ব্যবহার করে আরও নিরাপদ উপায়ে করা যেতে পারে।

  1. 600 অনুমতি নিয়ে একটি ফাইল তৈরি করুন

যেমন: vi / root / আমার-ফাইল-

যন্ত্র উদাহরণ.কম

USERNAME- এ লগইন করুন

পাসওয়ার্ড পাসওয়ার্ড

সংরক্ষণ করুন এবং ফাইলটি বন্ধ করুন

  1. ইউজারনেম এবং পাসওয়ার্ড সহ ইউআরএল অ্যাক্সেস করতে নীচে ব্যবহার করুন।

কার্ল --netrc-file / root / my-file http://example.com

  1. সম্পন্ন

0

এইচটিটিপি স্কিম ব্যবহার করার সময় এটি নিরাপত্তাহীন। এটিকে সুরক্ষিত করার জন্য আপনার HTTPS ব্যবহার করা উচিত।

কমান্ডের ইতিহাসে পাসওয়ার্ডটি গোপন করার জন্য কেবল ব্যবহারকারীর নাম সরবরাহ করুন। কমান্ড না দেওয়া থাকলে কার্ল পাসওয়ার্ডের জন্য অনুরোধ জানাবে।


এইচটিটিপিএস উপলব্ধ না থাকলে দরকারী উত্তর নয়। সিআরএল একটি "ক্লায়েন্ট"।
ম্যাকেনজম

0

সংক্ষিপ্ত উত্তর হ'ল না ... তবে ....

যদি কোনও সার্ভার সাইড অপশন না থাকে তবে আপনি সুরক্ষা কঠোর করতে পারেন।

  1. যদি এটি স্থানীয় ইন্ট্রানেট হয় তবে সম্প্রচার ডোমেনটি আলাদা করুন এবং ওয়াইফাই বা কোনও রেডিও ব্যবহার করবেন না।
  2. শামির যেমন বলেছে, একটি .netrc ফাইল ব্যবহার করুন, মানগুলি কোডের বাইরে রাখুন।
  3. যদি আপনি বিশ্বাস করেন যে মেমরিটি নিরাপদ, পরিবেশগত ভারগুলি ব্যবহার করুন। $ PSWD।
  4. এটি যদি অটোমেশন হয় তবে রুটের ক্রোনটব থেকে চালান।
  5. ... একটি পাত্রে
  6. ... একটি এনক্রিপ্টড ডিস্ক সহ একটি ভিএম থেকে।

এগুলির কোনওটি এইচটিটিপি ব্যবহার করে কোনও ব্রাউজারের চেয়ে কম সুরক্ষিত নয়।

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