HTML सुरक्षा
In this page:
HTML Client-Side कमज़ोरियाँ
चूंकि HTML सीधे यूज़र के ब्राउज़र के अंदर प्रोसेस होता है, इसलिए यह client-side अटैक्स का निशाना बन सकता है। अपने फॉर्म्स, लिंक्स, और एम्बेडेड फ्रेम्स को सुरक्षित रखना अपनी साइट और अपने यूज़र्स की सुरक्षा के लिए ज़रूरी है।
उदाहरण: HTML Client-Side Vulnerabilities
<form action="/submit" method="post">
<input type="text" name="comment">
</form>
Cross-Site Scripting (XSS) रोकथाम
Cross-Site Scripting (XSS) तब होता है जब हैकर्स आपकी टेक्स्ट फील्ड्स में मैलिशियस स्क्रिप्ट्स इंजेक्ट करते हैं, जो फिर दूसरे यूज़र्स के ब्राउज़र्स के अंदर चलती हैं। सभी यूज़र इनपुट्स को escape और sanitize करना XSS अटैक्स को रोकने के लिए ज़रूरी है।
उदाहरण: Cross-Site Scripting (XSS) Prevention
<p>User comment: <script>alert('hacked')</script></p>
Content Security Policies (CSP)
एक Content Security Policy (CSP) एक सुरक्षित HTTP हेडर या meta टैग है जो यह परिभाषित करता है कि ब्राउज़र किन डोमेन्स से स्क्रिप्ट्स, स्टाइल्स, और एसेट्स लोड कर सकता है, जिससे अनऑथराइज़्ड स्क्रिप्ट्स को चलने से असरदार तरीके से रोका जा सकता है।
उदाहरण: Content Security Policies (CSP)
<meta http-equiv="Content-Security-Policy" content="default-src 'self'">
noopener से Hyperlinks को सुरक्षित करना
जब आप target="_blank" का उपयोग करके किसी बाहरी वेबसाइट को लिंक करते हैं, तो नया खुला टैब window.opener प्रॉपर्टी का उपयोग करके आपके मूल वेबपेज को एक्सेस और मैनिपुलेट कर सकता है, जिससे आपके यूज़र्स को किसी मैलिशियस साइट पर रीडायरेक्ट किया जा सकता है।
इस कमज़ोरी को tab-nabbing कहा जाता है।
उदाहरण: Securing Hyperlinks with noopener
<a href="https://example.com" target="_blank" rel="noopener noreferrer">External link</a>
HTTPS और सुरक्षित कनेक्शन लागू करना
असुरक्षित HTTP कनेक्शन्स का उपयोग करने से हैकर्स को इंटरनेट पर ट्रांसमिट होते समय यूज़र डेटा को इंटरसेप्ट और चुराने का मौका मिलता है। HTTPS (जो कनेक्शन को एन्क्रिप्ट करता है) लागू करना अपनी साइट और अपने यूज़र्स की सुरक्षा के लिए ज़रूरी है।
उदाहरण: Enforcing HTTPS and Secure Connections
<link rel="stylesheet" href="https://example.com/styles.css">
CSRF की बुनियादी बातें
Cross-Site Request Forgery, यानी CSRF, किसी लॉग्ड-इन यूज़र के ब्राउज़र को धोखा देकर, बिना यूज़र की जानकारी के, उस साइट पर एक अनचाही रिक्वेस्ट सबमिट करवाता है जिस पर वह ऑथेंटिकेटेड है, जैसे पैसे ट्रांसफर करना।
यह इसलिए काम करता है क्योंकि ब्राउज़र अपने-आप रिक्वेस्ट्स के साथ कुकीज़ जोड़ देते हैं, यहाँ तक कि किसी मैलिशियस थर्ड-पार्टी पेज से ट्रिगर हुई रिक्वेस्ट्स के साथ भी।
उदाहरण: CSRF Basics
<form action="/transfer" method="post">
<input type="hidden" name="csrf_token" value="abc123">
</form>
- page पर user inputs escape न करना, जिससे आपकी site Cross-Site Scripting (XSS) attacks के लिए vulnerable रहती है।
- नए tab में open होने वाले links पर rel="noopener noreferrer" attribute छोड़ देना, जो tab-nabbing vulnerabilities बनाता है।
- secure HTTPS website पर insecure HTTP connections से external scripts या assets load करना।
- Client-side security के लिए front-end और back-end दोनों पर सभी user inputs validate करना ज़रूरी है।
- Cross-Site Scripting (XSS) attacks रोकने के लिए हमेशा user inputs escape करें, और asset loading को Content Security Policies से restrict करें।
- नए tab में open होने वाले सभी links पर rel="noopener noreferrer" इस्तेमाल करें, और अपने visitors की privacy बचाने के लिए secure HTTPS connections enforce करें।
standard HTML client-side security attributes और secure connection protocols सभी modern web browsers द्वारा natively supported हैं।
Chapter Quiz — Complete all 11 topics to unlock
0/11 topics done
Complete these topics first: