Translated ['src/pentesting-cloud/aws-security/aws-privilege-escalation/

This commit is contained in:
Translator
2025-01-04 17:56:30 +00:00
parent 640f6e9f3f
commit bb8957025f
2 changed files with 43 additions and 7 deletions

View File

@@ -1,4 +1,5 @@
import json
import os
import sys
import re
import logging
@@ -26,7 +27,7 @@ def findtitle(search ,obj, key, path=(),):
def ref(matchobj):
logger.debug(f'Match: {matchobj.groups(0)[0].strip()}')
logger.debug(f'Ref match: {matchobj.groups(0)[0].strip()}')
href = matchobj.groups(0)[0].strip()
title = href
if href.startswith("http://") or href.startswith("https://"):
@@ -69,8 +70,39 @@ def ref(matchobj):
return result
def files(matchobj):
logger.debug(f'Files match: {matchobj.groups(0)[0].strip()}')
href = matchobj.groups(0)[0].strip()
title = ""
try:
for root, dirs, files in os.walk(os.getcwd()+'/src/files'):
logger.debug(root)
logger.debug(files)
if href in files:
title = href
logger.debug(f'File search result: {os.path.join(root, href)}')
except Exception as e:
logger.debug(e)
logger.debug(f'Error searching file: {href}')
print(f'Error searching file: {href}')
sys.exit(1)
if title=="":
logger.debug(f'Error searching file: {href}')
print(f'Error searching file: {href}')
sys.exit(1)
template = f"""<a class="content_ref" href="/files/{href}"><span class="content_ref_label">{title}</span></a>"""
result = template
return result
def add_read_time(content):
regex = r'(# .*(?=\n))'
regex = r'(<\/style>\n# .*(?=\n))'
new_content = re.sub(regex, lambda x: x.group(0) + "\n\nReading time: {{ #reading_time }}", content)
return new_content
@@ -104,6 +136,8 @@ if __name__ == '__main__':
current_chapter = chapter
regex = r'{{[\s]*#ref[\s]*}}(?:\n)?([^\\\n]*)(?:\n)?{{[\s]*#endref[\s]*}}'
new_content = re.sub(regex, ref, chapter['content'])
regex = r'{{[\s]*#file[\s]*}}(?:\n)?([^\\\n]*)(?:\n)?{{[\s]*#endfile[\s]*}}'
new_content = re.sub(regex, files, chapter['content'])
new_content = add_read_time(new_content)
chapter['content'] = new_content

View File

@@ -2,9 +2,9 @@
{{#include ../../../../banners/hacktricks-training.md}}
Bu izinlerle, **arbitrary actions** gerçekleştirmek için **codestar IAM Rolü** istismar edebilirsiniz **cloudformation template** aracılığıyla.
Bu izinlerle, **arbitrary actions** gerçekleştirmek için **codestar IAM Rolü** kötüye kullanılabilir.
Bunu istismar etmek için, saldırılan hesaptan **erişilebilir bir S3 bucket** oluşturmanız gerekir. `toolchain.json` adında bir dosya yükleyin. Bu dosya, kontrolünüz altındaki bir kullanıcıya yönetilen bir politika atamak ve **admin permissions** vermek için kullanılabilecek **cloudformation template exploit** içermelidir:
Bunu istismar etmek için, saldırılan hesaptan **erişilebilir bir S3 bucket** oluşturmanız gerekir. `toolchain.json` adında bir dosya yükleyin. Bu dosya, **cloudformation template exploit** içermelidir. Aşağıdaki şablon, kontrolünüz altındaki bir kullanıcıya yönetilen bir politika atamak ve **admin permissions** vermek için kullanılabilir:
```json:toolchain.json
{
"Resources": {
@@ -30,11 +30,13 @@ Bunu istismar etmek için, saldırılan hesaptan **erişilebilir bir S3 bucket**
```
Ayrıca bu `empty zip` dosyasını **bucket**'a **yükleyin**:
{% file src="../../../../images/empty.zip" %}
{{#file}}
empty.zip
{{#endfile}}
Unutmayın ki **her iki dosyanın bulunduğu bucket, mağdur hesabı tarafından erişilebilir olmalıdır**.
Her iki şey yüklendikten sonra, bir **codestar** projesi oluşturarak **istismar** işlemine geçebilirsiniz:
Her iki şeyi yükledikten sonra, bir **codestar** projesi oluşturarak **istismar** işlemine geçebilirsiniz:
```bash
PROJECT_NAME="supercodestar"
@@ -79,6 +81,6 @@ aws codestar create-project \
--source-code file://$SOURCE_CODE_PATH \
--toolchain file://$TOOLCHAIN_PATH
```
Bu istismar, bu yetkilerin **Pacu istismarına** dayanmaktadır: [https://github.com/RhinoSecurityLabs/pacu/blob/2a0ce01f075541f7ccd9c44fcfc967cad994f9c9/pacu/modules/iam\_\_privesc_scan/main.py#L1997](https://github.com/RhinoSecurityLabs/pacu/blob/2a0ce01f075541f7ccd9c44fcfc967cad994f9c9/pacu/modules/iam__privesc_scan/main.py#L1997) Üzerinde, bir kullanıcı yerine bir rol için yönetilen bir admin politikası oluşturma varyasyonunu bulabilirsiniz.
Bu istismar, **bu ayrıcalıkların Pacu istismarına** dayanmaktadır: [https://github.com/RhinoSecurityLabs/pacu/blob/2a0ce01f075541f7ccd9c44fcfc967cad994f9c9/pacu/modules/iam\_\_privesc_scan/main.py#L1997](https://github.com/RhinoSecurityLabs/pacu/blob/2a0ce01f075541f7ccd9c44fcfc967cad994f9c9/pacu/modules/iam__privesc_scan/main.py#L1997) Burada, bir kullanıcı yerine bir rol için yönetilen bir admin politikası oluşturma varyasyonunu bulabilirsiniz.
{{#include ../../../../banners/hacktricks-training.md}}