AWS - Lambda Persistence
Last updated
Last updated
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
अधिक जानकारी के लिए देखें:
AWS - Lambda Enumयह संभव है कि कोई लेयर पेश करें/बैकडोर करें ताकि जब लैम्ब्डा निष्पादित हो, तो मनमाना कोड चल सके:
AWS - Lambda Layers PersistenceLambda Layers का दुरुपयोग करते हुए, यह भी संभव है कि एक्सटेंशन का दुरुपयोग किया जाए और लैम्ब्डा में स्थायी रूप से बने रहें, बल्कि अनुरोधों को चुराएं और संशोधित करें।
AWS - Abusing Lambda Extensionsयह बाहरी खातों को विभिन्न लैम्ब्डा क्रियाओं (जैसे इनवोक या कोड अपडेट) तक पहुंच प्रदान करना संभव है:
एक Lambda में विभिन्न संस्करण हो सकते हैं (प्रत्येक संस्करण के साथ अलग कोड)। फिर, आप लैम्ब्डा के विभिन्न संस्करणों के साथ विभिन्न उपनाम बना सकते हैं और प्रत्येक को अलग वजन सेट कर सकते हैं। इस तरह, एक हमलावर बैकडोर्ड संस्करण 1 और केवल वैध कोड के साथ संस्करण 2 बना सकता है और केवल 1% अनुरोधों में संस्करण 1 को निष्पादित कर सकता है ताकि वह छिपा रह सके।
Lambda का मूल कोड कॉपी करें
मूल कोड को बैकडोर करते हुए एक नया संस्करण बनाएं (या केवल दुर्भावनापूर्ण कोड के साथ)। उस संस्करण को प्रकाशित करें और $LATEST पर तैनात करें
कोड निष्पादित करने के लिए लैम्ब्डा से संबंधित API गेटवे को कॉल करें
मूल कोड के साथ एक नया संस्करण बनाएं, उस संस्करण को प्रकाशित करें और $LATEST पर तैनात करें।
यह पिछले संस्करण में बैकडोर्ड कोड को छिपा देगा
API गेटवे पर जाएं और एक नया POST विधि बनाएं (या कोई अन्य विधि चुनें) जो लैम्ब्डा के बैकडोर्ड संस्करण को निष्पादित करेगा: arn:aws:lambda:us-east-1:<acc_id>:function:<func_name>:1
अंतिम :1 को नोट करें जो कार्य के संस्करण को इंगित करता है (इस परिदृश्य में संस्करण 1 बैकडोर्ड होगा)।
बनाए गए POST विधि का चयन करें और क्रियाओं में API तैनात करें
चुनें
अब, जब आप POST के माध्यम से कार्य को कॉल करते हैं, तो आपका बैकडोर सक्रिय होगा
यह तथ्य कि आप लैम्ब्डा कार्यों को तब चला सकते हैं जब कुछ होता है या जब कुछ समय बीतता है लैम्ब्डा को स्थायीता प्राप्त करने और पहचान से बचने का एक अच्छा और सामान्य तरीका बनाता है। यहाँ आपके AWS में उपस्थिति को अधिक छिपाने के लिए लैम्ब्डा बनाने के कुछ विचार हैं।
हर बार जब एक नया उपयोगकर्ता बनाया जाता है, तो लैम्ब्डा एक नया उपयोगकर्ता कुंजी उत्पन्न करता है और इसे हमलावर को भेजता है।
हर बार जब एक नई भूमिका बनाई जाती है, तो लैम्ब्डा समझौता किए गए उपयोगकर्ताओं को भूमिका मानने की अनुमति देता है।
हर बार जब नए क्लाउडट्रेल लॉग उत्पन्न होते हैं, तो उन्हें हटा दें/संशोधित करें
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)