আমি কীভাবে কোনও ব্যবহারকারীকে তাদের ব্রাউজারে আমার কোড সম্পাদনা করা থেকে আটকাতে পারি?


11

বিবরণ

আমি একটি নোড.জেএস অ্যাপ্লিকেশন ডিজাইন করছি (আরও একটি সম্পূর্ণ ওয়েবসাইটের মতো)। অ্যাপ্লিকেশনটি পাঁচটি জাভাস্ক্রিপ্ট ফাইল প্রেরণ করবে এবং <script>সেগুলির সাথে লিঙ্কযুক্ত ট্যাগ থাকবে have

প্রশ্ন

আমি কীভাবে ব্যবহারকারীদের এবং আক্রমণকারীদের আমার কোডটি পিয়ারিং এবং সম্পাদনা করা আটকাতে পারি ?

  • একটি উদাহরণ হবে:

    • Ctrl+ Shift+I

    • ইন DevTools , এতে যান সোর্স , সম্পাদনা (অর্থাত করার জন্য একটি ফাইল নির্বাচন index.html) এবং সম্পাদনাগুলি লেখ

    • টিপলে Ctrl+ + Sকারণ হবে লাইভ সম্পাদনা ঘটতে

আমি উপরের উদাহরণটি ঘটতে বাধা দিতে চাই ... এটা কি সম্ভব?


আমি যা ভেবেছিলাম তা এখানে:

আমি অন্য ক্লায়েন্টের পাশ দিয়ে জাভাস্ক্রিপ্ট ফাইল তৈরি করব, প্রতিরোধ_কিজ.জেএস

এটা তোলে জন্য শুনবে Ctrl+ + Shift+ + I

যদি এটি ফিরে আসে true(অর্থাত্ কীগুলি টিপানো হয়েছিল), এটি logকীগুলি করবে ।

তবে এটি ব্যবহারকারীকে সরাসরি দেবতুলগুলি ব্যবহার করা থেকে বিরত রাখবে না।


16
আপনি ব্রাউজারে চলমান আপনার জাভাস্ক্রিপ্ট দেখতে বা পরিবর্তন করতে কাউকে বাধা দিতে পারবেন না। করতে পারবে না।
jفر00

7
কেবলমাত্র একটি প্রশ্নের উত্তর "আপনি পারবেন না।" এর অর্থ এই নয় যে এটি হ্রাস করা উচিত।
রাবারডাক

1
খুব ঘনিষ্ঠভাবে সম্পর্কিত প্রশ্ন: জাভাস্ক্রিপ্ট কেবলমাত্র এজেএক্স ফর্ম জমা দেওয়ার বৈধতা । বিশেষত কোনও পোষ্ট কলটি কীভাবে পাঠাতে হবে তার তুচ্ছ উদাহরণ সহ স্বীকৃত উত্তরটি দেখুন , আপনার সার্ভারে, কোনও ওয়েব ব্রাউজার থেকে না আসা সত্ত্বেও, আপনার ক্লায়েন্টের কাছ থেকে এসেছে তার অনুরূপ looks
বিট্রি

উত্তর:


35

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

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

একটি কংক্রিট উদাহরণ হিসাবে, ক্লায়েন্টের পাসওয়ার্ড চেক করবেন না। ক্লায়েন্টটি সর্বদা সার্ভারকে "পাসওয়ার্ডটি সঠিক ছিল" বলার জন্য পরিবর্তন করা যেতে পারে। পরিবর্তে, প্রমাণীকরণ আপনার বিশ্বস্ত সার্ভারে অবশ্যই ঘটবে।


4
"সার্ভারকে সর্বদা" পাসওয়ার্ডটি সঠিক ছিল "বলতে ক্লায়েন্টকে পরিবর্তন করা যেতে পারে" " কাশি libssh কাশি
ফিলিপ কেন্ডাল

অনেক ধন্যবাদ! আমি লগইন, লগআউট এবং সাইন আপের জন্য হ্যান্ডলার পাঠাচ্ছিলাম। আমি এটি সার্ভারের রুটে পরিবর্তন করেছি।
এডউইন প্র্যাট

23

আপনি পারবেন না। কম্পিউটিংয়ের অন্যতম মৌলিক নিয়ম: আপনি ক্লায়েন্টকে বিশ্বাস করতে পারবেন না । আপনি যে চতুর স্কিমটি ভাবেন না কেন, আমি যদি ক্লায়েন্টের নিয়ন্ত্রণে থাকি তবে আমি এটি পেতে পারি।


2
আমি সার্ভারের অন্তর্ভুক্তিতে সমস্ত বৈধতা, আপলোডিং, ডাউনলোডিং, ব্যবহারকারীআকআউটস () হ্যান্ডলারগুলিকে সরিয়ে নিয়েছি।
এডউইন প্রট 19

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

2

আপনি কোডটি সংশোধন করতে চান না কেন?

সিকিউরিটি? বিশ্বাস? বানিজ্য গোপনতা?

তারপরে কোডটি প্রেরণ করবেন না, ক্লায়েন্টকে একটি অনুরোধ প্রেরণ করুন এবং ফলাফলটি ফেরত দিন। হতে পারে একটি ব্যক্তিগত বা সুবিধাজনক ফলাফল নয়, কেবলমাত্র একটি কাজ অনেকগুলি ইউআইয়ের পক্ষে যথেষ্ট।

কারণ আপনার নিজের কোডের সামান্য পরিবর্তিত সংস্করণগুলি আপনার নীচের লাইনে ব্যথা করছে?

একটি কোড অস্পষ্টকারী, নাম ম্যাঙ্গেলার এবং তুচ্ছ কোড বিভাগগুলি ব্যবহার করুন।

এই কৌশলগুলি প্রকৃত দক্ষতার স্তরে বার বাড়ায় এবং আপনার ওয়েবসাইটের কিছুটা বৈকল্পিক তৈরি করার জন্য সরঞ্জামাদি প্রয়োজনীয়। কেবল সচেতন থাকুন যে এই কৌশলগুলি আপনার কোডটিকে ধীর করে তুলতে পারে, আকর্ষণীয় এবং অর্থহীন বাগ এবং ত্রুটি বার্তাগুলি প্রবর্তন করতে পারে এবং এখনও সঠিক সরঞ্জাম এবং / বা দক্ষতার সাহায্যে কেউ পরাস্ত করতে পারে। সুতরাং এটি মূল্যবান যদি সত্যিই বিবেচনা করুন। দিনের শেষে যে কেউ আসলে একই কোডটি লিখতে পারে।

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