AWS - Lambda Persistence

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

Lambda

अधिक जानकारी के लिए देखें:

Lambda Layer Persistence

यह संभव है कि कोई लेयर पेश करें/बैकडोर करें ताकि जब लैम्ब्डा निष्पादित हो, तो मनमाना कोड चल सके:

Lambda Extension Persistence

Lambda Layers का दुरुपयोग करते हुए, यह एक्सटेंशन का भी दुरुपयोग करना संभव है और लैम्ब्डा में बने रहना, लेकिन अनुरोधों को चुराना और संशोधित करना भी संभव है।

Via resource policies

यह बाहरी खातों को विभिन्न लैम्ब्डा क्रियाओं (जैसे कि इनवोक या कोड अपडेट) तक पहुंच प्रदान करना संभव है:

Versions, Aliases & Weights

एक Lambda में विभिन्न संस्करण हो सकते हैं (प्रत्येक संस्करण में अलग कोड)। फिर, आप लैम्ब्डा के विभिन्न संस्करणों के साथ विभिन्न उपनाम बना सकते हैं और प्रत्येक को अलग वजन सेट कर सकते हैं। इस तरह एक हमलावर बैकडोर्ड संस्करण 1 और केवल वैध कोड के साथ संस्करण 2 बना सकता है और केवल 1% अनुरोधों में संस्करण 1 को निष्पादित कर सकता है ताकि वह छिपा रह सके।

Version Backdoor + API Gateway

  1. Lambda का मूल कोड कॉपी करें

  2. मूल कोड (या केवल दुर्भावनापूर्ण कोड) को बैकडोर करते हुए एक नया संस्करण बनाएं। उस संस्करण को प्रकाशित करें और $LATEST पर तैनात करें

  3. कोड निष्पादित करने के लिए लैम्ब्डा से संबंधित API गेटवे को कॉल करें

  4. मूल कोड के साथ एक नया संस्करण बनाएं, उस संस्करण को प्रकाशित करें और $LATEST पर तैनात करें

  5. यह पिछले संस्करण में बैकडोर्ड कोड को छिपा देगा

  6. API गेटवे पर जाएं और एक नया POST विधि बनाएं (या कोई अन्य विधि चुनें) जो लैम्ब्डा के बैकडोर्ड संस्करण को निष्पादित करेगा: arn:aws:lambda:us-east-1:<acc_id>:function:<func_name>:1

  7. अंतिम :1 को ध्यान में रखें जो कार्य के संस्करण को इंगित करता है (इस परिदृश्य में संस्करण 1 बैकडोर्ड होगा)।

  8. बनाए गए POST विधि का चयन करें और क्रियाओं में Deploy API चुनें

  9. अब, जब आप POST के माध्यम से कार्य को कॉल करते हैं, तो आपका बैकडोर सक्रिय होगा

Cron/Event actuator

यह तथ्य कि आप लैम्ब्डा कार्यों को तब चला सकते हैं जब कुछ होता है या जब कुछ समय बीतता है लैम्ब्डा को स्थायीता प्राप्त करने और पहचान से बचने का एक अच्छा और सामान्य तरीका बनाता है। यहाँ आपके AWS में उपस्थिति को अधिक छिपाने के लिए लैम्ब्डा बनाने के कुछ विचार हैं

  • हर बार जब एक नया उपयोगकर्ता बनाया जाता है, तो लैम्ब्डा एक नया उपयोगकर्ता कुंजी उत्पन्न करता है और इसे हमलावर को भेजता है।

  • हर बार जब एक नई भूमिका बनाई जाती है, तो लैम्ब्डा समझौता किए गए उपयोगकर्ताओं को भूमिका मानने की अनुमति देता है।

  • हर बार जब नए क्लाउडट्रेल लॉग उत्पन्न होते हैं, तो उन्हें हटा दें/संशोधित करें

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

Last updated