AWS - Lambda Persistence
Lambda
अधिक जानकारी के लिए देखें:
pageAWS - Lambda EnumLambda Layer Persistence
एक लेयर को परिचय/बैकडोर करना संभव है ताकि जब लैम्ब्डा चलाया जाए तो मनमाना कोड निष्पादित हो एक गुप्त तरीके से:
pageAWS - Lambda Layers PersistenceLambda Extension Persistence
Lambda Layers का दुरुपयोग करके एक्सटेंशन्स का भी दुरुपयोग करना संभव है और लैम्ब्डा में स्थायी रूप से रहने के साथ-साथ अनुरोधों को चुराना और संशोधित करना भी संभव है।
pageAWS - Abusing Lambda Extensionsरिसोर्स पॉलिसीज के माध्यम से
बाहरी खातों को विभिन्न लैम्ब्डा क्रियाओं (जैसे कि इन्वोक या अपडेट कोड) तक पहुंच प्रदान करना संभव है:
संस्करण, उपनाम और वजन
एक Lambda में विभिन्न संस्करण हो सकते हैं (प्रत्येक संस्करण में अलग कोड के साथ). फिर, आप लैम्ब्डा के विभिन्न संस्करणों के साथ विभिन्न उपनाम बना सकते हैं और प्रत्येक को विभिन्न वजन दे सकते हैं। इस तरह एक हमलावर बैकडोर्ड संस्करण 1 और केवल वैध कोड वाला संस्करण 2 बना सकता है और केवल 1% अनुरोधों में संस्करण 1 को निष्पादित करके गुप्त रह सकता है।
संस्करण बैकडोर + API Gateway
Lambda के मूल कोड की प्रतिलिपि बनाएं
मूल कोड को बैकडोरिंग करके एक नया संस्करण बनाएं (या केवल दुर्भावनापूर्ण कोड के साथ). प्रकाशित करें और उस संस्करण को $LATEST पर डिप्लॉय करें
लैम्ब्डा से संबंधित API गेटवे को कॉल करें ताकि कोड निष्पादित हो
मूल कोड के साथ एक नया संस्करण बनाएं, प्रकाशित करें और उस संस्करण को $LATEST पर डिप्लॉय करें।
इससे पिछले संस्करण में बैकडोर्ड कोड छिप जाएगा
API Gateway पर जाएं और एक नया POST मेथड बनाएं (या कोई अन्य मेथड चुनें) जो बैकडोर्ड संस्करण के लैम्ब्डा को निष्पादित करेगा:
arn:aws:lambda:us-east-1:<acc_id>:function:<func_name>:1
अंतिम :1 का ध्यान दें जो arn में संकेत करता है कि फंक्शन का संस्करण (इस परिदृश्य में संस्करण 1 बैकडोर्ड होगा)।
बनाए गए POST मेथड का चयन करें और Actions में
Deploy API
चुनेंअब, जब आप POST के माध्यम से फंक्शन को कॉल करेंगे तो आपका बैकडोर सक्रिय हो जाएगा
Cron/Event एक्चुएटर
यह तथ्य कि आप लैम्ब्डा फंक्शन्स को कुछ होने पर या कुछ समय बीतने पर चला सकते हैं लैम्ब्डा को पर्सिस्टेंस प्राप्त करने और पता लगाने से बचने का एक अच्छा और सामान्य तरीका बनाता है। यहां कुछ विचार हैं जिनसे आप AWS में अपनी उपस्थिति को अधिक गुप्त बना सकते हैं लैम्ब्डा बनाकर।
हर बार जब एक नया उपयोगकर्ता बनाया जाता है तो लैम्ब्डा एक नई उपयोगकर्ता कुंजी उत्पन्न करता है और उसे हमलावर को भेजता है।
हर बार जब एक नया रोल बनाया जाता है तो लैम्ब्डा समझौता किए गए उपयोगकर्ताओं को अस्यूम रोल अनुमतियां देता है।
हर बार जब नए cloudtrail लॉग उत्पन्न होते हैं, उन्हें हटाएं/बदलें
Last updated