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यह संभव है कि कोई लेयर पेश करें/backdoor करें ताकि जब lambda को stealthy तरीके से चलाया जाए तो मनमाना कोड निष्पादित हो सके:
AWS - Lambda Layers PersistenceLambda Layers का दुरुपयोग करते हुए, यह भी संभव है कि एक्सटेंशन का दुरुपयोग किया जाए और lambda में स्थायी रूप से बने रहें, बल्कि अनुरोधों को चुराएं और संशोधित करें।
AWS - Abusing Lambda Extensionsयह संभव है कि बाहरी खातों को विभिन्न lambda क्रियाओं (जैसे invoke या update code) तक पहुंच प्रदान की जाए:
एक Lambda में विभिन्न संस्करण हो सकते हैं (प्रत्येक संस्करण के साथ अलग कोड)। फिर, आप lambda के विभिन्न संस्करणों के साथ विभिन्न उपनाम बना सकते हैं और प्रत्येक को अलग वजन सेट कर सकते हैं। इस तरह एक हमलावर backdoored version 1 और version 2 केवल वैध कोड के साथ बना सकता है और केवल 1% अनुरोधों में संस्करण 1 को निष्पादित कर सकता है ताकि stealth बना रहे।
Lambda का मूल कोड कॉपी करें
मूल कोड को backdooring करते हुए एक नया संस्करण बनाएं (या केवल दुर्भावनापूर्ण कोड के साथ)। उस संस्करण को प्रकाशित करें और $LATEST पर तैनात करें
कोड निष्पादित करने के लिए lambda से संबंधित API गेटवे को कॉल करें
मूल कोड के साथ एक नया संस्करण बनाएं, उस संस्करण को प्रकाशित करें और $LATEST पर तैनात करें।
यह पिछले संस्करण में backdoored कोड को छिपा देगा
API गेटवे पर जाएं और एक नया POST विधि बनाएं (या कोई अन्य विधि चुनें) जो lambda के backdoored संस्करण को निष्पादित करेगा: arn:aws:lambda:us-east-1:<acc_id>:function:<func_name>:1
अंतिम :1 को ध्यान में रखें जो फ़ंक्शन के संस्करण को इंगित करता है (इस परिदृश्य में संस्करण 1 backdoored होगा)।
बनाए गए POST विधि का चयन करें और क्रियाओं में Deploy API
चुनें
अब, जब आप POST के माध्यम से फ़ंक्शन को कॉल करते हैं तो आपका Backdoor सक्रिय होगा
यह तथ्य कि आप lambda कार्यों को तब चला सकते हैं जब कुछ होता है या जब कुछ समय बीतता है lambda को स्थायीता प्राप्त करने और पहचान से बचने का एक अच्छा और सामान्य तरीका बनाता है। यहाँ आपके AWS में उपस्थिति को stealth बनाने के लिए lambdas बनाने के कुछ विचार हैं।
हर बार जब एक नया उपयोगकर्ता बनाया जाता है, lambda एक नया उपयोगकर्ता कुंजी उत्पन्न करता है और इसे हमलावर को भेजता है।
हर बार जब एक नई भूमिका बनाई जाती है, lambda समझौता किए गए उपयोगकर्ताओं को assume role अनुमतियाँ देता है।
हर बार जब नए cloudtrail लॉग उत्पन्न होते हैं, उन्हें हटा दें/संशोधित करें
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)