DO - Functions
Reading time: 4 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।
Basic Information
DigitalOcean Functions, जिसे "DO Functions" के नाम से भी जाना जाता है, एक सर्वरलेस कंप्यूटिंग प्लेटफॉर्म है जो आपको बुनियादी ढांचे की चिंता किए बिना कोड चलाने की अनुमति देता है। DO Functions के साथ, आप अपने कोड को "फंक्शंस" के रूप में लिख और तैनात कर सकते हैं जिन्हें API, HTTP अनुरोधों (यदि सक्षम हो) या क्रॉन के माध्यम से प्रेरित किया जा सकता है। ये फंक्शंस एक पूरी तरह से प्रबंधित वातावरण में निष्पादित होते हैं, इसलिए आपको स्केलिंग, सुरक्षा, या रखरखाव की चिंता करने की आवश्यकता नहीं है।
DO में, एक फंक्शन बनाने के लिए सबसे पहले आपको एक नामस्थान बनाना होगा जो फंक्शंस को समूहित करेगा।
नामस्थान के अंदर आप फिर एक फंक्शन बना सकते हैं।
Triggers
REST API के माध्यम से एक फंक्शन को प्रेरित करने का तरीका (हमेशा सक्षम, यह वह विधि है जिसका उपयोग cli करता है) एक प्रमाणन टोकन के साथ अनुरोध को प्रेरित करना है जैसे:
curl -X POST "https://faas-lon1-129376a7.doserverless.co/api/v1/namespaces/fn-c100c012-65bf-4040-1230-2183764b7c23/actions/functionname?blocking=true&result=true" \
-H "Content-Type: application/json" \
-H "Authorization: Basic MGU0NTczZGQtNjNiYS00MjZlLWI2YjctODk0N2MyYTA2NGQ4OkhwVEllQ2t4djNZN2x6YjJiRmFGc1FERXBySVlWa1lEbUxtRE1aRTludXA1UUNlU2VpV0ZGNjNqWnVhYVdrTFg="
doctl
CLI टूल इस टोकन को कैसे प्राप्त कर रहा है (ताकि आप इसे दोहरा सकें), निम्नलिखित कमांड पूरा नेटवर्क ट्रेस दिखाता है:
doctl serverless connect --trace
जब HTTP ट्रिगर सक्षम होता है, एक वेब फ़ंक्शन को इन HTTP विधियों GET, POST, PUT, PATCH, DELETE, HEAD और OPTIONS के माध्यम से बुलाया जा सकता है।
caution
DO फ़ंक्शंस में, पर्यावरण चर को एन्क्रिप्ट नहीं किया जा सकता (इस लेखन के समय)।
मुझे CLI से उन्हें पढ़ने का कोई तरीका नहीं मिला लेकिन कंसोल से यह सीधा है।
फ़ंक्शंस URLs इस तरह दिखते हैं: https://<random>.doserverless.co/api/v1/web/<namespace-id>/default/<function-name>
Enumeration
# Namespace
doctl serverless namespaces list
# Functions (need to connect to a namespace)
doctl serverless connect
doctl serverless functions list
doctl serverless functions invoke <func-name>
doctl serverless functions get <func-name>
# Logs of executions
doctl serverless activations list
doctl serverless activations get <activation-id> # Get all the info about execution
doctl serverless activations logs <activation-id> # get only the logs of execution
doctl serverless activations result <activation-id> # get only the response result of execution
# I couldn't find any way to get the env variables form the CLI
caution
वहाँ मेटाडेटा एंडपॉइंट नहीं है Functions सैंडबॉक्स से।
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।