GCP - KMS Enum

Support HackTricks

KMS

क्लाउड की प्रबंधन सेवा क्रिप्टोग्राफिक कुंजियों के लिए एक सुरक्षित भंडारण के रूप में कार्य करती है, जो संवेदनशील डेटा को एन्क्रिप्ट और डिक्रिप्ट करने के लिए आवश्यक हैं। ये कुंजियाँ की रिंगों के भीतर व्यवस्थित होती हैं, जिससे संरचित प्रबंधन संभव होता है। इसके अलावा, एक्सेस नियंत्रण को सावधानीपूर्वक कॉन्फ़िगर किया जा सकता है, या तो व्यक्तिगत कुंजी स्तर पर या पूरे की रिंग के लिए, यह सुनिश्चित करते हुए कि अनुमतियाँ सुरक्षा आवश्यकताओं के साथ सटीक रूप से संरेखित हैं।

KMS की रिंगें डिफ़ॉल्ट रूप से वैश्विक के रूप में बनाई जाती हैं, जिसका अर्थ है कि उस की रिंग के अंदर की कुंजियाँ किसी भी क्षेत्र से सुलभ होती हैं। हालाँकि, विशिष्ट क्षेत्रों में विशिष्ट की रिंगें बनाना संभव है।

कुंजी सुरक्षा स्तर

  • सॉफ़्टवेयर कुंजियाँ: सॉफ़्टवेयर कुंजियाँ KMS द्वारा पूरी तरह से सॉफ़्टवेयर में बनाई और प्रबंधित की जाती हैं। ये कुंजियाँ किसी भी हार्डवेयर सुरक्षा मॉड्यूल (HSM) द्वारा सुरक्षित नहीं होती हैं और परीक्षण और विकास उद्देश्यों के लिए उपयोग की जा सकती हैं। सॉफ़्टवेयर कुंजियाँ उत्पादन उपयोग के लिए अनुशंसित नहीं हैं क्योंकि ये कम सुरक्षा प्रदान करती हैं और हमलों के प्रति संवेदनशील होती हैं।

  • क्लाउड-होस्टेड कुंजियाँ: क्लाउड-होस्टेड कुंजियाँ KMS द्वारा क्लाउड में एक अत्यधिक उपलब्ध और विश्वसनीय बुनियादी ढाँचे का उपयोग करके बनाई और प्रबंधित की जाती हैं। ये कुंजियाँ HSMs द्वारा सुरक्षित होती हैं, लेकिन HSMs किसी विशेष ग्राहक के लिए समर्पित नहीं होते। क्लाउड-होस्टेड कुंजियाँ अधिकांश उत्पादन उपयोग मामलों के लिए उपयुक्त होती हैं।

  • बाहरी कुंजियाँ: बाहरी कुंजियाँ KMS के बाहर बनाई और प्रबंधित की जाती हैं, और क्रिप्टोग्राफिक संचालन में उपयोग के लिए KMS में आयात की जाती हैं। बाहरी कुंजियाँ ग्राहक की पसंद के अनुसार हार्डवेयर सुरक्षा मॉड्यूल (HSM) या सॉफ़्टवेयर पुस्तकालय में संग्रहीत की जा सकती हैं

कुंजी के उद्देश्य

  • संपूर्ण एन्क्रिप्शन/डिक्रिप्शन: एकल कुंजी का उपयोग करके डेटा को एन्क्रिप्ट और डिक्रिप्ट करने के लिए उपयोग किया जाता है। संपूर्ण कुंजियाँ बड़े डेटा के वॉल्यूम को एन्क्रिप्ट और डिक्रिप्ट करने के लिए तेज और कुशल होती हैं।

  • समर्थित: cryptoKeys.encrypt, cryptoKeys.decrypt

  • असंपूर्ण हस्ताक्षर: दो पक्षों के बीच सुरक्षित संचार के लिए कुंजी साझा किए बिना उपयोग किया जाता है। असंपूर्ण कुंजियाँ एक जोड़ी में आती हैं, जिसमें एक सार्वजनिक कुंजी और एक निजी कुंजी होती है। सार्वजनिक कुंजी दूसरों के साथ साझा की जाती है, जबकि निजी कुंजी को गुप्त रखा जाता है।

  • असंपूर्ण डिक्रिप्शन: संदेश या डेटा की प्रामाणिकता को सत्यापित करने के लिए उपयोग किया जाता है। एक डिजिटल हस्ताक्षर एक निजी कुंजी का उपयोग करके बनाया जाता है और संबंधित सार्वजनिक कुंजी का उपयोग करके सत्यापित किया जा सकता है।

  • MAC हस्ताक्षर: एक गुप्त कुंजी का उपयोग करके संदेश प्रमाणीकरण कोड (MAC) बनाकर डेटा की अखंडता और प्रामाणिकता सुनिश्चित करने के लिए उपयोग किया जाता है। HMAC सामान्यतः नेटवर्क प्रोटोकॉल और सॉफ़्टवेयर अनुप्रयोगों में संदेश प्रमाणीकरण के लिए उपयोग किया जाता है।

रोटेशन अवधि और विनाश के लिए कार्यक्रमित अवधि

डिफ़ॉल्ट रूप से, प्रत्येक 90 दिन में, लेकिन इसे आसान और पूर्ण रूप से अनुकूलित किया जा सकता है।

"विनाश के लिए कार्यक्रमित" अवधि वह समय है जब उपयोगकर्ता कुंजी को हटाने के लिए कहता है और जब तक कुंजी हटाई नहीं जाती। इसे कुंजी बनाने के बाद बदला नहीं जा सकता (डिफ़ॉल्ट 1 दिन)।

प्राथमिक संस्करण

प्रत्येक KMS कुंजी के कई संस्करण हो सकते हैं, उनमें से एक को डिफ़ॉल्ट होना चाहिए, यह वही होगा जिसका उपयोग तब किया जाएगा जब KMS कुंजी के साथ बातचीत करते समय कोई संस्करण निर्दिष्ट नहीं किया गया हो

एनुमरेशन

कुंजियों को सूचीबद्ध करने के लिए अनुमतियाँ होने पर आप उन्हें इस प्रकार एक्सेस कर सकते हैं:

# List the global keyrings available
gcloud kms keyrings list --location global
gcloud kms keyrings get-iam-policy <KEYRING>

# List the keys inside a keyring
gcloud kms keys list --keyring <KEYRING> --location <global/other_locations>
gcloud kms keys get-iam-policy <KEY>

# Encrypt a file using one of your keys
gcloud kms encrypt --ciphertext-file=[INFILE] \
--plaintext-file=[OUTFILE] \
--key [KEY] \
--keyring [KEYRING] \
--location global

# Decrypt a file using one of your keys
gcloud kms decrypt --ciphertext-file=[INFILE] \
--plaintext-file=[OUTFILE] \
--key [KEY] \
--keyring [KEYRING] \
--location global

विशेषाधिकार वृद्धि

GCP - KMS Privesc

पोस्ट शोषण

GCP - KMS Post Exploitation

संदर्भ

HackTricks का समर्थन करें

Last updated