2012-07-30 23 views
9

का उपयोग कैसे करती है, मैं पूरी तरह से कर्ल करने के लिए नया हूं और यह पता लगाने की कोशिश कर रहा हूं कि वेबसाइट सख्त-परिवहन-सुरक्षा का उपयोग करती है या नहीं।यह पता लगाने के लिए कि कोई वेबसाइट HSTS

मैं सलाह बंद कर रहा हूं। मैं Chrome's preloaded list के खिलाफ जांच करने के लिए और

curl -D - https://www.example.com | head -n 20 

सख्त-परिवहन-सुरक्षा हेडर के लिए जाँच करने के लिए चलाने के लिए कहा गया है।

लेकिन 'हेड' कमांड ने एक त्रुटि उत्पन्न की और अज्ञात था।

कोई विचार?

एटीएम मैं विन XP चला रहा हूं, कुछ दिनों में लिनक्स डिस्ट्रो होगा।

धन्यवाद।

उत्तर

15

यह विधि ठीक है।

$ curl -s -D- https://paypal.com/ | grep Strict 
Strict-Transport-Security: max-age=14400 

आपने ध्यान दिया होगा, कुछ वेबसर्वर को सिर्फ HEAD अनुरोधों का सम्मान करने इंकार कर दिया। curl-v के साथ एक GET अनुरोध के लिए हेडर प्रिंट होगा:

$ curl -s -vv https://paypal.com/ 2>&1 | grep Strict 
< Strict-Transport-Security: max-age=14400 

< का मतलब हैडर कोई भी आप पर सर्वर द्वारा लौटाए है।

वास्तविक example.com, अपने उदाहरण के रूप में, के रूप में यह https:// पर बिल्कुल भी नहीं सुनता काम नहीं करेगा:

$ curl -D- https://www.example.com 
curl: (7) couldn't connect to host 

रूप Strict-Transport-Security हैडर केवल सम्मानित किया है अगर यह https:// से अधिक वितरित किया जाता है, यह बहुत है यह मानने के लिए सुरक्षित है कि https:// पर प्रतिक्रिया देने वाली कोई भी साइट एसटीएस का उपयोग नहीं कर रही है, विशेष रूप से इसके पास ऐसा करने का कोई कारण नहीं है।

1

क्रोम एक HSTS जाँच सुविधा chrome://net-internals#hsts

लेकिन ध्यान रखें कि क्रोम यह भी कहा प्रविष्टियों जब भी आप https पर एक साइट का अनुरोध करने के लिए पसंद करती है हो गया है।

बस क्रोम ने मुझे एक आंतरिक साइट के लिए https पर रीडायरेक्ट किया था जिसमें https प्रमाणपत्र नहीं मिला है। 443 पर भी नहीं सुन रहा है। अनजाने में कर्ल ने एक सख्त हेडर नहीं लौटाया। मैंने पाया कि क्रोम की आंतरिक एचएसटीएस सूची है। ग्लोबल Google रखरखाव सूची को छोड़कर क्रोम: // net-internals # hsts से साफ़ किया जा सकता है।

संबंधित मुद्दे