HTTP নিরাপত্তা শিরোনাম কি এবং আপনি কিভাবে তাদের ব্যবহার করবেন?

HTTP নিরাপত্তা শিরোনাম কি এবং আপনি কিভাবে তাদের ব্যবহার করবেন?
আপনার মত পাঠকরা MUO সমর্থন করতে সাহায্য করে। আপনি যখন আমাদের সাইটে লিঙ্ক ব্যবহার করে একটি ক্রয় করেন, আমরা একটি অনুমোদিত কমিশন উপার্জন করতে পারি।

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





দিনের মেকইউজের ভিডিও

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





এইচটিটিপি স্ট্রিক্ট-ট্রান্সপোর্ট-সিকিউরিটি (এইচএসটিএস) কী?

HTTP কঠোর পরিবহন নিরাপত্তা (HSTS) ব্যবহারকারীদের তাদের ব্রাউজারে করা প্রতিটি অনুরোধের জন্য HTTPS ব্যবহার করতে বাধ্য করে। ডাউনগ্রেডের মতো সাইবার আক্রমণের বিরুদ্ধে লড়াই করার এবং সমস্ত ট্রাফিকের নিরাপত্তা নিশ্চিত করার জন্য এটি একটি কঠিন উপায়।





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

এই নমুনা HTTP হেডার পতাকা সম্পর্কে এটি মনে রাখবেন:



Strict-Transport-Security: max-age=16070200; 

আপনি যখন এই ফ্ল্যাগটি HTTP প্রতিক্রিয়ার শিরোনাম তথ্যে যুক্ত করেন, তখন সমস্ত ব্যবহারকারী-উত্পন্ন অনুরোধগুলি HTTPS হয়ে যাবে৷ ব্যবহারকারী এখানে যাই লিখুক না কেন, ব্রাউজার স্বয়ংক্রিয়ভাবে প্রোটোকলটিকে HTTPS হিসাবে মূল্যায়ন করবে এবং একটি সুরক্ষিত সংযোগ স্থাপন করবে।

কিভাবে HSTS ব্যবহার করবেন

কোড লেয়ারে এই সমস্ত HTTP হেডার তথ্য যোগ করার পরিবর্তে, আপনি এটি Apache, IIS, Nginx, Tomcat এবং অন্যান্য ওয়েব সার্ভার অ্যাপ্লিকেশনগুলিতে করতে পারেন।





Apache এ HSTS সক্ষম করতে:

LoadModule headers_module modules/mod_headers.so 
<VirtualHost *:443>
Header always set Strict-Transport-Security "max-age=2592000; includeSubDomains"
</VirtualHost>

Nginx এ HSTS সক্ষম করতে:





add_header Strict-Transport-Security max-age=2592000; includeSubdomains 

IIS web.config এর সাথে HSTS সক্ষম করতে:

<system.webServer> 
<httpProtocol>
<customHeaders>
<add name="Strict-Transport-Security" value="max-age=63072000"/>
</customHeaders>
</httpProtocol>
</system.webServer>

Cloudflare ব্যবহারকারীদের জন্য

ক্লাউডফ্লেয়ার তার কীবিহীন SSL পরিষেবা সহ সকলের জন্য বিনামূল্যে HTTPS পরিষেবা প্রদান করে; HSTS প্রিলোডের জন্য আবেদন করার আগে, আপনার জানা উচিত যে আপনার শংসাপত্রটি আপনার অন্তর্গত নয়। অনেক সাইট SSL সার্টিফিকেট ব্যবহার করে কারণ তারা ডেটা সুরক্ষিত রাখার একটি সহজ উপায়।

যাইহোক, Cloudflare এখন HSTS বৈশিষ্ট্য সমর্থন করে . আপনি ওয়েব সার্ভারে কনফিগারেশনের সাথে লড়াই না করে ক্লাউডফ্লেয়ার ওয়েব ইন্টারফেসের মাধ্যমে প্রিলোড সহ সমস্ত HSTS বৈশিষ্ট্য সক্রিয় করতে পারেন।

এক্স-ফ্রেম-বিকল্প কি?

  HTTP হেডার দিয়ে ওয়েবসাইটের নিরাপত্তা বৃদ্ধি করা

X-Frame-Options হল একটি নিরাপত্তা শিরোনাম যা সমস্ত আধুনিক ব্রাউজার দ্বারা সমর্থিত। X-Frame-Options-এর লক্ষ্য ক্লিক চুরি যেমন ক্লিকজ্যাকিং থেকে রক্ষা করা। নাম অনুসারে, এটি একটি দুর্বল ইনলাইন ফ্রেমের কাজ সম্পর্কে, এটি একটি iframe নামেও পরিচিত৷ এগুলি এমন একটি সাইটের উপাদান যা 'অভিভাবক' সাইটের মধ্যে অন্য HTML পৃষ্ঠা এম্বেড করে, যাতে আপনি আপনার সাইটে অন্যান্য উত্স থেকে সামগ্রী ব্যবহার করতে পারেন৷ কিন্তু আক্রমণকারীরা তাদের নিজস্ব নিয়ন্ত্রণে আইফ্রেম ব্যবহার করে যাতে ব্যবহারকারীরা তারা চান না এমন কাজ করতে পারেন।

কমিক বই বিক্রির সেরা উপায়

এই কারণে, আপনাকে আক্রমণকারীদের সাইটে iframes খুঁজে পেতে সক্ষম হওয়া থেকে প্রতিরোধ করতে হবে।

কোথায় এবং কিভাবে এক্স-ফ্রেম-অপশন ব্যবহার করবেন?

X-Frame-Options যা করে, কিছু ডেভেলপার জাভাস্ক্রিপ্টের মত ভাষা দিয়ে করার চেষ্টা করে। এটা সম্পূর্ণ ভুল নয়। যাইহোক, এখনও একটি ঝুঁকি আছে কারণ অনেক দিক লেখা কোড যথেষ্ট নয়। সুতরাং আপনি যে ইন্টারনেট ব্রাউজার ব্যবহার করছেন তার উপর এই কাজটি ছেড়ে দেওয়াই বুদ্ধিমানের কাজ হবে।

যাইহোক, একজন বিকাশকারী হিসাবে, X-Frame-Options সম্পর্কে জানার জন্য তিনটি পরামিতি রয়েছে:

  • অস্বীকার করুন : কোনো আইফ্রেমে পৃষ্ঠাটিকে কল করা থেকে সম্পূর্ণরূপে প্রতিরোধ করুন।
  • সামোরিজিন : আপনার নিজের ব্যতীত অন্য কোনো ডোমেইনকে আইফ্রেমের মধ্যে কল করা থেকে বিরত রাখুন।
  • ইউরি থেকে অনুমতি দিন : প্যারামিটার হিসাবে দেওয়া URI-এর iframe কলগুলি গ্রহণ করুন। অন্যদের ব্লক করুন।

এখানে সামোরিজিন বৈশিষ্ট্য আরো স্ট্যান্ড আউট. কারণ আপনি যখন একে অপরের মধ্যে iframes সহ আপনার বিভিন্ন সাবডোমেনে অ্যাপ্লিকেশন কল করতে পারেন, তখন আপনি আক্রমণকারীর নিয়ন্ত্রণে ডোমেনে কল করা থেকে তাদের প্রতিরোধ করতে পারেন।

আপনি কীভাবে NGINX, Apache এবং IIS-এর সাথে SAMEORIGIN এবং X-Frame-Options ব্যবহার করতে পারেন তার উদাহরণ এখানে দেওয়া হল:

Nginx এর জন্য X-Frame-Options SAMEORIGIN ব্যবহার করা:

add_header X-Frame-Options SAMEORIGIN; 

Apache এর জন্য X-Frame-Options SAMEORIGIN ব্যবহার করা:

Header always append X-Frame-Options SAMEORIGIN 

IIS-এর জন্য X-Frame-Options SAMEORIGIN ব্যবহার করা:

<httpProtocol> 
<customHeaders>
<add name="X-Frame-Options" value="SAMEORIGIN" />
</customHeaders>
</httpProtocol>

শুধুমাত্র SAMEORIGIN শিরোনাম যোগ করা আপনার দর্শকদের জন্য অধিকতর নিরাপত্তা প্রদান করবে।

আপনি নিশ্চিত করতে চান যে আপনার সর্বদা সর্বশেষ প্যাচ ইনস্টল করা আছে

X-XSS-সুরক্ষা কি?

X-XSS-Protection হেডার তথ্য ব্যবহার করে XSS আক্রমণ থেকে ব্যবহারকারীদের রক্ষা করতে পারে। প্রথমত, আপনাকে নির্মূল করতে হবে XSS দুর্বলতা আবেদনের দিকে। কোড-ভিত্তিক নিরাপত্তা প্রদানের পর, ব্রাউজারে XSS দুর্বলতার বিরুদ্ধে আরও ব্যবস্থা, যেমন X-XSS-সুরক্ষা শিরোনাম প্রয়োজন।

কিভাবে এক্স-এক্সএসএস-প্রটেকশন ব্যবহার করবেন

আধুনিক ব্রাউজারগুলি অ্যাপ্লিকেশন-উত্পন্ন সামগ্রী ফিল্টার করে সম্ভাব্য XSS পেলোড সনাক্ত করতে পারে। এক্স-এক্সএসএস-প্রটেকশন হেডার তথ্য দিয়ে এই বৈশিষ্ট্যটি সক্রিয় করা সম্ভব।

Nginx এ X-XSS-সুরক্ষা হেডার সক্ষম করতে:

add_header X-Frame-X-XSS-Protection 1; 

Apache এ X-XSS-সুরক্ষা হেডার সক্ষম করতে:

Header always append X-XSS-Protection 1 

IIS-এ X-XSS-সুরক্ষা হেডার সক্ষম করতে:

<httpProtocol> 
<customHeaders>
<add name="X-XSS-Protection" value="1" />
</customHeaders>
</httpProtocol>

চলমান থেকে ডিফল্টরূপে XSS আক্রমণ সহ কোড ব্লক প্রতিরোধ করতে, আপনি এই মত কিছু ব্যবহার করতে পারেন:

X-XSS-Protection: 1; mode=block 

যদি একটি সম্ভাব্য বিপজ্জনক পরিস্থিতি থাকে এবং আপনি সমস্ত বিষয়বস্তুকে রেন্ডার হওয়া থেকে আটকাতে চান তবে এই ছোটখাট পরিবর্তনটি করা দরকার৷

কিভাবে ফেসবুক থেকে ডিলিট করা মেসেজ পাবেন

এক্স-কন্টেন্ট-টাইপ-বিকল্প কি?

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

একটি jpeg এক্সটেনশন সহ একটি ফাইল বিবেচনা করুন কিন্তু এতে প্রকৃতপক্ষে পাঠ্য/এইচটিএমএল সামগ্রী রয়েছে৷ আপলোড মডিউলে এক্সটেনশন এবং পাসিং সুরক্ষা ব্যবহার করার পরে, ফাইলটি সফলভাবে আপলোড করা হয়েছে। আপলোড করা ফাইলটিকে URL এর মাধ্যমে কল করা হয় এবং MIME প্রকার স্নিফিং এর ফলে পাঠ্য/HTML প্রদান করা হয়। এটি সামগ্রীকে HTML হিসাবে রেন্ডার করে। তখনই XSS দুর্বলতা দেখা দেয়।

তাই আপনাকে MIME টাইপ স্নিফিং এর মাধ্যমে বিষয়বস্তু সম্পর্কে সিদ্ধান্ত নেওয়া থেকে ব্রাউজারকে আটকাতে হবে। এটি করার জন্য, আপনি nosniff ব্যবহার করতে পারেন।

Nginx-এর জন্য এক্স-কন্টেন্ট-টাইপ-অপশন হেডার:

add_header X-Content-Type-Options nosniff; 

অ্যাপাচির জন্য এক্স-কন্টেন্ট-টাইপ-বিকল্প শিরোনাম:

Header always X-Content-Type-Options nosniff 

IIS-এর জন্য X-কন্টেন্ট-টাইপ-বিকল্প শিরোনাম:

<httpProtocol> 
<customHeaders>
<add name="X-Content-Type-Options" value="nosniff" />
</customHeaders>
</httpProtocol>

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

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

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

  সাইটে গোপনীয় তথ্য রক্ষা করতে HTTP শিরোনাম ব্যবহার

সেখানেই শুধুমাত্র Http আসে। কুকি অ্যাসাইনমেন্ট কেমন হওয়া উচিত তার একটি উদাহরণ নিচে দেওয়া হল:

Set-Cookie: user=t=cdabe8a1c2153d726; path=/; HttpOnly 

তে পাঠানো HttpOnly মানটি লক্ষ্য করুন সেট-কুকি অপারেশন. ব্রাউজার এটি দেখতে পাবে এবং HttpOnly পতাকার সাথে মানগুলি প্রক্রিয়া করবে না যখন কুকিটি document.cookie পরিবর্তনশীল সেট-কুকি প্রক্রিয়ায় ব্যবহৃত আরেকটি পতাকা হল সিকিউর পতাকা। এটি নির্দেশ করে যে কুকি মান শুধুমাত্র HTTPS অনুরোধের জন্য হেডারে যোগ করা হবে। ই-কমার্স সাইটগুলি সাধারণত এটি ব্যবহার করে কারণ তারা নেটওয়ার্ক ট্র্যাফিক কমাতে এবং কর্মক্ষমতা বাড়াতে চায়।

এই পদ্ধতি ব্যবহার করে, আপনি ব্যবহারকারীর গুরুত্বপূর্ণ তথ্য যেমন ব্যবহারকারীর নাম, পাসওয়ার্ড এবং ক্রেডিট কার্ডের তথ্য লুকাতে পারেন। কিন্তু একটি সমস্যা আছে. যে ব্যবহারকারীরা লগইন প্রক্রিয়া সম্পূর্ণ করে তাদের সিকিউর পতাকা ছাড়াই একটি কুকি মান বরাদ্দ করা হয়। ব্যবহারকারীর কাছে সেশন কী থাকতে পারে যখন তারা নন-HTTPS লিঙ্কগুলিতে HTTP অনুরোধ করে। নিরাপদ পতাকা যোগ করা সহজ:

Set-Cookie: user=t=cdabe8a1c2153d726; path=/; Secure 

কখন আপনি HttpOnly ব্যবহার করবেন না? আপনি যদি জাভাস্ক্রিপ্টের উপর নির্ভর করেন, তাহলে আপনার সতর্ক হওয়া উচিত কারণ এটি আপনার সাইটকে কম সুরক্ষিত করে তুলতে পারে।

বৃহত্তর ওয়েব নিরাপত্তার জন্য ছোট পদক্ষেপগুলি কাজ করে৷

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