mirror of
				https://github.com/HackTricks-wiki/hacktricks.git
				synced 2025-10-10 18:36:50 +00:00 
			
		
		
		
	Translated ['src/windows-hardening/lateral-movement/psexec-and-winexec.m
This commit is contained in:
		
							parent
							
								
									d42955e79a
								
							
						
					
					
						commit
						0e60ab4f59
					
				
							
								
								
									
										119
									
								
								.github/workflows/translate_af.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_af.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to AF (Afrikaans) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: af | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Afrikaans | ||||
|       BRANCH: af | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_de.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_de.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to DE (German) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: de | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: German | ||||
|       BRANCH: de | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_el.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_el.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to EL (Greek) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: el | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Greek | ||||
|       BRANCH: el | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_es.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_es.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to ES (Spanish) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: es | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Spanish | ||||
|       BRANCH: es | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_fr.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_fr.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to FR (French) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: fr | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: French | ||||
|       BRANCH: fr | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_it.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_it.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to IT (Italian) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: it | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Italian | ||||
|       BRANCH: it | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_ja.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_ja.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to JA (Japanese) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: ja | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Japanese | ||||
|       BRANCH: ja | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_ko.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_ko.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to KO (Korean) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: ko | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Korean | ||||
|       BRANCH: ko | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_pl.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_pl.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to PL (Polish) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: pl | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Polish | ||||
|       BRANCH: pl | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_pt.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_pt.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to PT (Portuguese) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: pt | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Portuguese | ||||
|       BRANCH: pt | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_sr.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_sr.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to SR (Serbian) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: sr | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Serbian | ||||
|       BRANCH: sr | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_sw.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_sw.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to SW (Swahili) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: sw | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Swahili | ||||
|       BRANCH: sw | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_tr.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_tr.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to TR (Turkish) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: tr | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Turkish | ||||
|       BRANCH: tr | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_uk.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_uk.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to UK (Ukranian) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: uk | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Ukranian | ||||
|       BRANCH: uk | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
							
								
								
									
										119
									
								
								.github/workflows/translate_zh.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										119
									
								
								.github/workflows/translate_zh.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,119 +0,0 @@ | ||||
| name: Translator to ZH (Chinese) | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - master | ||||
|     paths-ignore: | ||||
|       - 'scripts/**' | ||||
|       - '.gitignore' | ||||
|       - '.github/**' | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| concurrency: zh | ||||
| 
 | ||||
| permissions: | ||||
|   id-token: write | ||||
|   contents: write | ||||
| 
 | ||||
| jobs: | ||||
|   run-translation: | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: prod | ||||
|     env: | ||||
|       LANGUAGE: Chinese | ||||
|       BRANCH: zh | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout code | ||||
|         uses: actions/checkout@v2 | ||||
|         with: | ||||
|           fetch-depth: 0 #Needed to download everything to be able to access the master & language branches | ||||
| 
 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v2 | ||||
|         with: | ||||
|           python-version: 3.12 | ||||
| 
 | ||||
|       - name: Install python dependencies | ||||
|         run: | | ||||
|           python -m pip install --upgrade pip | ||||
|           pip3 install openai tqdm tiktoken | ||||
|        | ||||
|       # Install Rust and Cargo | ||||
|       - name: Install Rust and Cargo | ||||
|         uses: actions-rs/toolchain@v1 | ||||
|         with: | ||||
|           toolchain: stable | ||||
|           override: true | ||||
|        | ||||
|       # Install mdBook and Plugins | ||||
|       - name: Install mdBook and Plugins | ||||
|         run: | | ||||
|           cargo install mdbook | ||||
|           cargo install mdbook-alerts | ||||
|           cargo install mdbook-reading-time | ||||
|           cargo install mdbook-pagetoc | ||||
|           cargo install mdbook-tabs | ||||
|           cargo install mdbook-codename | ||||
| 
 | ||||
|        | ||||
|       - name: Update & install wget & translator.py | ||||
|         run: | | ||||
|           sudo apt-get update | ||||
|           sudo apt-get install wget -y | ||||
|           mkdir scripts | ||||
|           cd scripts | ||||
|           wget https://raw.githubusercontent.com/carlospolop/hacktricks-cloud/master/scripts/translator.py | ||||
|           cd .. | ||||
| 
 | ||||
|       - name: Download language branch #Make sure we have last version | ||||
|         run: | | ||||
|           git config --global user.name 'Translator' | ||||
|           git config --global user.email 'github-actions@github.com' | ||||
|           git checkout "$BRANCH" | ||||
|           git pull | ||||
|           git checkout master | ||||
|        | ||||
|       - name: Run translation script on changed files | ||||
|         run: | | ||||
|           echo "Starting translations" | ||||
|           echo "Commit: $GITHUB_SHA" | ||||
| 
 | ||||
|           # Export the OpenAI API key as an environment variable | ||||
|           export OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} | ||||
| 
 | ||||
|           # Run the translation script on each changed file | ||||
|           git diff --name-only HEAD~1 | grep -v "SUMMARY.md" | while read -r file; do | ||||
|             if echo "$file" | grep -qE '\.md$'; then | ||||
|               echo -n "$file , " >> /tmp/file_paths.txt | ||||
|             else | ||||
|               echo "Skipping $file" | ||||
|             fi | ||||
|           done | ||||
| 
 | ||||
|           echo "Translating $(cat /tmp/file_paths.txt)" | ||||
|           python scripts/translator.py --language "$LANGUAGE" --branch "$BRANCH" --api-key "$OPENAI_API_KEY" -f "$(cat /tmp/file_paths.txt)" -t 3 | ||||
| 
 | ||||
|       # Push changes to the repository | ||||
|       - name: Commit and push changes | ||||
|         run: | | ||||
|           git checkout "$BRANCH" | ||||
|           git add -A | ||||
|           git commit -m "Translated $BRANCH files" || true | ||||
|           git push --set-upstream origin "$BRANCH" | ||||
| 
 | ||||
|       # Build the mdBook | ||||
|       - name: Build mdBook | ||||
|         run: mdbook build | ||||
|        | ||||
|       # Login in AWs | ||||
|       - name: Configure AWS credentials using OIDC | ||||
|         uses: aws-actions/configure-aws-credentials@v3 | ||||
|         with: | ||||
|           role-to-assume: ${{ secrets.AWS_ROLE_ARN }} | ||||
|           aws-region: us-east-1 | ||||
|        | ||||
|       # Sync the build to S3 | ||||
|       - name: Sync to S3 | ||||
|         run: aws s3 sync ./book s3://hacktricks-wiki/$BRANCH --delete | ||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @ -73,7 +73,7 @@ Dies könnte in den folgenden Situationen auftreten: | ||||
| 
 | ||||
| In der Lage zu sein, eine **Datei zu erstellen**, die von **root verwendet wird**, ermöglicht es einem Benutzer, **von ihrem Inhalt zu profitieren** oder sogar **Symlinks/Hardlinks** zu erstellen, um sie an einen anderen Ort zu verweisen. | ||||
| 
 | ||||
| Für diese Art von Schwachstellen vergessen Sie nicht, **anfällige `.pkg`-Installer** zu überprüfen: | ||||
| Für diese Art von Schwachstellen vergessen Sie nicht, **anfällige `.pkg` Installer** zu überprüfen: | ||||
| 
 | ||||
| {{#ref}} | ||||
| macos-files-folders-and-binaries/macos-installers-abuse.md | ||||
| @ -93,4 +93,28 @@ In macOS **können Anwendungen und Binärdateien Berechtigungen** haben, um auf | ||||
| 
 | ||||
| Daher muss ein Angreifer, der eine macOS-Maschine erfolgreich kompromittieren möchte, seine **TCC-Berechtigungen eskalieren** (oder sogar **SIP umgehen**, je nach seinen Bedürfnissen). | ||||
| 
 | ||||
| Diese Berechtigungen werden normalerweise in Form von **Entitlements** vergeben, mit denen die Anwendung signiert ist, oder die Anwendung könnte einige Zugriffe angefordert haben, und nachdem der **Benutzer diese genehmigt hat**, können sie in den **TCC-Datenbanken** gefunden werden. Eine andere Möglichkeit, wie ein Prozess diese Berechtigungen erhalten kann, besteht darin, ein **Kind eines Prozesses** | ||||
| Diese Berechtigungen werden normalerweise in Form von **Entitlements** vergeben, mit denen die Anwendung signiert ist, oder die Anwendung könnte einige Zugriffe angefordert haben, und nachdem der **Benutzer diese genehmigt hat**, können sie in den **TCC-Datenbanken** gefunden werden. Eine andere Möglichkeit, wie ein Prozess diese Berechtigungen erhalten kann, besteht darin, ein **Kind eines Prozesses** mit diesen **Berechtigungen** zu sein, da sie normalerweise **vererbt** werden. | ||||
| 
 | ||||
| Folgen Sie diesen Links, um verschiedene Möglichkeiten zu finden, um [**Berechtigungen in TCC zu eskalieren**](macos-security-protections/macos-tcc/index.html#tcc-privesc-and-bypasses), um [**TCC zu umgehen**](macos-security-protections/macos-tcc/macos-tcc-bypasses/index.html) und wie in der Vergangenheit [**SIP umgangen wurde**](macos-security-protections/macos-sip.md#sip-bypasses). | ||||
| 
 | ||||
| ## macOS Traditionelle Privilegieneskalation | ||||
| 
 | ||||
| Natürlich sollten Sie aus der Perspektive eines Red Teams auch daran interessiert sein, zu root zu eskalieren. Überprüfen Sie den folgenden Beitrag für einige Hinweise: | ||||
| 
 | ||||
| {{#ref}} | ||||
| macos-privilege-escalation.md | ||||
| {{#endref}} | ||||
| 
 | ||||
| ## macOS Compliance | ||||
| 
 | ||||
| - [https://github.com/usnistgov/macos_security](https://github.com/usnistgov/macos_security) | ||||
| 
 | ||||
| ## Referenzen | ||||
| 
 | ||||
| - [**OS X Incident Response: Scripting and Analysis**](https://www.amazon.com/OS-Incident-Response-Scripting-Analysis-ebook/dp/B01FHOHHVS) | ||||
| - [**https://taomm.org/vol1/analysis.html**](https://taomm.org/vol1/analysis.html) | ||||
| - [**https://github.com/NicolasGrimonpont/Cheatsheet**](https://github.com/NicolasGrimonpont/Cheatsheet) | ||||
| - [**https://assets.sentinelone.com/c/sentinal-one-mac-os-?x=FvGtLJ**](https://assets.sentinelone.com/c/sentinal-one-mac-os-?x=FvGtLJ) | ||||
| - [**https://www.youtube.com/watch?v=vMGiplQtjTY**](https://www.youtube.com/watch?v=vMGiplQtjTY) | ||||
| 
 | ||||
| {{#include ../../banners/hacktricks-training.md}} | ||||
|  | ||||
| @ -1,8 +1,8 @@ | ||||
| # Side Channel Analysis Attacks | ||||
| # Seitenkanalanalyse-Angriffe | ||||
| 
 | ||||
| {{#include ../../banners/hacktricks-training.md}} | ||||
| 
 | ||||
| Side-Channel-Angriffe erholen Geheimnisse, indem sie physikalische oder mikroarchitektonische "Lecks" beobachten, die *korreliert* mit dem internen Zustand sind, aber *nicht* Teil der logischen Schnittstelle des Geräts sind. Beispiele reichen von der Messung des momentanen Stroms, der von einer Smartcard gezogen wird, bis hin zum Missbrauch von CPU-Leistungsmanagementeffekten über ein Netzwerk. | ||||
| Seitenkanalangriffe erholen Geheimnisse, indem sie physikalische oder mikroarchitektonische "Lecks" beobachten, die *korreliert* mit dem internen Zustand sind, aber *nicht* Teil der logischen Schnittstelle des Geräts sind. Beispiele reichen von der Messung des momentanen Stroms, der von einer Smartcard gezogen wird, bis hin zum Missbrauch von CPU-Leistungsmanagementeffekten über ein Netzwerk. | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| @ -35,7 +35,7 @@ trace = cw.capture.capture_trace() | ||||
| print(trace.wave)  # numpy array of power samples | ||||
| ``` | ||||
| ### Differential/Correlation Power Analysis (DPA/CPA) | ||||
| Erwerbe *N > 1 000* Spuren, hypothesiere den Schlüsselbyte `k`, berechne das HW/HD-Modell und korreliere mit dem Leak. | ||||
| Erwerben Sie *N > 1 000* Spuren, hypothesieren Sie das Schlüsselbyte `k`, berechnen Sie das HW/HD-Modell und korrelieren Sie mit dem Leak. | ||||
| ```python | ||||
| import numpy as np | ||||
| corr = np.corrcoef(leakage_model(k), traces[:,sample]) | ||||
| @ -45,7 +45,7 @@ CPA bleibt auf dem neuesten Stand, aber Varianten des maschinellen Lernens (MLA, | ||||
| --- | ||||
| 
 | ||||
| ## Elektromagnetische Analyse (EMA) | ||||
| Nahfeld-EM-Sonden (500 MHz–3 GHz) lecken identische Informationen wie die Leistungsanalyse *ohne* das Einfügen von Shunts. Forschungen aus 2024 zeigten die Schlüsselwiederherstellung in **>10 cm** Entfernung von einem STM32 unter Verwendung von Spektralkorrelation und kostengünstigen RTL-SDR-Frontends. | ||||
| Nahfeld-EM-Sonden (500 MHz–3 GHz) lecken identische Informationen wie die Leistungsanalyse *ohne* Shunts einzufügen. Forschungen aus 2024 zeigten die Schlüsselrückgewinnung in **>10 cm** von einem STM32 unter Verwendung von Spektralkorrelation und kostengünstigen RTL-SDR-Frontends. | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| @ -55,13 +55,9 @@ Moderne CPUs lecken Geheimnisse durch gemeinsame Ressourcen: | ||||
| * **Downfall / Gather Data Sampling (Intel, 2023)** – Transient-Execution zum Lesen von AVX-Gather-Daten über SMT-Threads. | ||||
| * **Zenbleed (AMD, 2023) & Inception (AMD, 2023)** – spekulative Vektorfehlvorhersage leckt Register über Domänen hinweg. | ||||
| 
 | ||||
| Für eine umfassende Behandlung von Spectre-Klassenproblemen siehe {{#ref}} | ||||
| ../../cpu-microarchitecture/microarchitectural-attacks.md | ||||
| {{#endref}} | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ## Akustische & Optische Angriffe | ||||
| ## Akustische & optische Angriffe | ||||
| * 2024 "iLeakKeys" zeigte eine Genauigkeit von 95 %, um Laptop-Tastatureingaben von einem **Smartphone-Mikrofon über Zoom** mit einem CNN-Klassifikator wiederherzustellen. | ||||
| * Hochgeschwindigkeits-Photodioden erfassen DDR4-Aktivitäts-LED und rekonstruieren AES-Rundenschlüssel innerhalb von <1 Minute (BlackHat 2023). | ||||
| 
 | ||||
| @ -74,12 +70,12 @@ Die Kombination von Fehlern mit Seitenkanalleckagen verkürzt die Schlüsselsuch | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ## Typischer Angriffsablauf | ||||
| ## Typischer Angriffsworkflow | ||||
| 1. Identifizieren Sie den Leckkanal & den Montagepunkt (VCC-Pin, Entkopplungskondensator, Nahfeldstelle). | ||||
| 2. Trigger einfügen (GPIO oder musterbasiert). | ||||
| 3. >1 k Traces mit ordnungsgemäßer Abtastung/Filtern sammeln. | ||||
| 4. Vorverarbeiten (Ausrichtung, Mittelwertentfernung, LP/HP-Filter, Wavelet, PCA). | ||||
| 5. Statistische oder ML-Schlüsselwiederherstellung (CPA, MIA, DL-SCA). | ||||
| 5. Statistische oder ML-Schlüsselrückgewinnung (CPA, MIA, DL-SCA). | ||||
| 6. Validieren und Iteration bei Ausreißern. | ||||
| 
 | ||||
| --- | ||||
| @ -103,8 +99,8 @@ Die Kombination von Fehlern mit Seitenkanalleckagen verkürzt die Schlüsselsuch | ||||
| 
 | ||||
| ## Referenzen | ||||
| 
 | ||||
| * [ChipWhisperer Dokumentation](https://chipwhisperer.readthedocs.io/en/latest/) | ||||
| * [Hertzbleed Angriffs-Papier](https://www.hertzbleed.com/) | ||||
| * [ChipWhisperer Documentation](https://chipwhisperer.readthedocs.io/en/latest/) | ||||
| * [Hertzbleed Attack Paper](https://www.hertzbleed.com/) | ||||
| 
 | ||||
| 
 | ||||
| {{#include ../../banners/hacktricks-training.md}} | ||||
|  | ||||
| @ -33,7 +33,7 @@ sc.exe \\TARGET create HTSvc binPath= "C:\\Windows\\Temp\\payload.exe" start= de | ||||
| sc.exe \\TARGET start HTSvc | ||||
| sc.exe \\TARGET delete HTSvc | ||||
| ``` | ||||
| Hinweise: | ||||
| Notizen: | ||||
| - Erwarten Sie einen Timeout-Fehler beim Starten einer nicht als Dienst ausgeführten EXE; die Ausführung erfolgt dennoch. | ||||
| - Um OPSEC-freundlicher zu bleiben, bevorzugen Sie dateilose Befehle (cmd /c, powershell -enc) oder löschen Sie abgelegte Artefakte. | ||||
| 
 | ||||
| @ -43,7 +43,7 @@ Finden Sie detailliertere Schritte in: https://blog.ropnop.com/using-credentials | ||||
| 
 | ||||
| ### Sysinternals PsExec.exe | ||||
| 
 | ||||
| - Klassisches Administrationswerkzeug, das SMB verwendet, um PSEXESVC.exe in ADMIN$ abzulegen, einen temporären Dienst installiert (Standardname PSEXESVC) und I/O über benannte Pipes weiterleitet. | ||||
| - Klassisches Administrationswerkzeug, das SMB verwendet, um PSEXESVC.exe in ADMIN$ abzulegen, einen temporären Dienst (Standardname PSEXESVC) zu installieren und I/O über benannte Pipes zu proxyen. | ||||
| - Beispielverwendungen: | ||||
| ```cmd | ||||
| :: Interactive SYSTEM shell on remote host | ||||
| @ -115,28 +115,30 @@ Typische Host-/Netzwerkartefakte bei der Verwendung von PsExec-ähnlichen Techni | ||||
| 
 | ||||
| Jagdmöglichkeiten | ||||
| - Alarm bei Dienstinstallationen, bei denen der ImagePath cmd.exe /c, powershell.exe oder TEMP-Standorte enthält. | ||||
| - Suchen Sie nach Prozesskreationen, bei denen ParentImage C:\Windows\PSEXESVC.exe oder Kinder von services.exe, die als LOCAL SYSTEM Shells ausführen, sind. | ||||
| - Benannte Pipes, die mit -stdin/-stdout/-stderr enden oder bekannte PsExec-Klon-Pipenamen haben, kennzeichnen. | ||||
| - Suchen nach Prozesskreationen, bei denen ParentImage C:\Windows\PSEXESVC.exe oder Kinder von services.exe, die als LOCAL SYSTEM Shells ausführen, sind. | ||||
| - Benannte Pipes kennzeichnen, die mit -stdin/-stdout/-stderr enden oder bekannte PsExec-Klon-Pipenamen haben. | ||||
| 
 | ||||
| ## Fehlersuche bei häufigen Fehlern | ||||
| - Zugriff verweigert (5) beim Erstellen von Diensten: nicht wirklich lokaler Administrator, UAC-Remote-Beschränkungen für lokale Konten oder EDR-Tampering-Schutz auf dem Dienstbinary-Pfad. | ||||
| - Der Netzwerkpfad wurde nicht gefunden (53) oder konnte nicht zu ADMIN$ verbinden: Firewall blockiert SMB/RPC oder Administrationsfreigaben sind deaktiviert. | ||||
| - Kerberos schlägt fehl, aber NTLM ist blockiert: Verbindung über Hostname/FQDN (nicht IP) herstellen, richtige SPNs sicherstellen oder -k/-no-pass mit Tickets bei der Verwendung von Impacket bereitstellen. | ||||
| - Kerberos schlägt fehl, aber NTLM ist blockiert: Verbindung über Hostname/FQDN (nicht IP) herstellen, sicherstellen, dass die richtigen SPNs vorhanden sind, oder -k/-no-pass mit Tickets bei der Verwendung von Impacket bereitstellen. | ||||
| - Dienststart läuft ab, aber Payload wurde ausgeführt: zu erwarten, wenn es sich nicht um ein echtes Dienstbinary handelt; Ausgabe in eine Datei erfassen oder smbexec für Live-I/O verwenden. | ||||
| 
 | ||||
| ## Härtungsnotizen (moderne Änderungen) | ||||
| ## Härtungsnotizen | ||||
| - Windows 11 24H2 und Windows Server 2025 erfordern standardmäßig SMB-Signierung für ausgehende (und Windows 11 eingehende) Verbindungen. Dies beeinträchtigt die legitime Verwendung von PsExec mit gültigen Anmeldeinformationen nicht, verhindert jedoch den Missbrauch von unsignierten SMB-Relay und kann Geräte beeinträchtigen, die keine Signierung unterstützen. | ||||
| - Neuer SMB-Client NTLM-Blockierung (Windows 11 24H2/Server 2025) kann NTLM-Fallback verhindern, wenn über IP oder zu Nicht-Kerberos-Servern verbunden wird. In gehärteten Umgebungen wird dies NTLM-basiertes PsExec/SMBExec brechen; verwenden Sie Kerberos (Hostname/FQDN) oder konfigurieren Sie Ausnahmen, wenn dies legitim erforderlich ist. | ||||
| - Prinzip der geringsten Privilegien: Minimieren Sie die lokale Administratormitgliedschaft, bevorzugen Sie Just-in-Time/Just-Enough Admin, erzwingen Sie LAPS und überwachen/benachrichtigen Sie über 7045-Dienstinstallationen. | ||||
| - Neue SMB-Client-NTLM-Blockierung (Windows 11 24H2/Server 2025) kann NTLM-Fallback verhindern, wenn über IP oder zu Nicht-Kerberos-Servern verbunden wird. In gehärteten Umgebungen wird dies NTLM-basiertes PsExec/SMBExec brechen; verwenden Sie Kerberos (Hostname/FQDN) oder konfigurieren Sie Ausnahmen, wenn dies legitim erforderlich ist. | ||||
| - Prinzip der geringsten Privilegien: Minimieren Sie die Mitgliedschaft im lokalen Administrator, bevorzugen Sie Just-in-Time/Just-Enough Admin, erzwingen Sie LAPS und überwachen/benachrichtigen Sie über 7045-Dienstinstallationen. | ||||
| 
 | ||||
| ## Siehe auch | ||||
| 
 | ||||
| - WMI-basierte Remote-Ausführung (oft mehr fileless): | ||||
| - WMI-basiertes Remote-Exec (oft mehr fileless): | ||||
| 
 | ||||
| {{#ref}} | ||||
| ./wmiexec.md | ||||
| {{#endref}} | ||||
| 
 | ||||
| - WinRM-basierte Remote-Ausführung: | ||||
| - WinRM-basiertes Remote-Exec: | ||||
| 
 | ||||
| {{#ref}} | ||||
| ./winrm.md | ||||
| {{#endref}} | ||||
| @ -146,5 +148,6 @@ Jagdmöglichkeiten | ||||
| ## Referenzen | ||||
| 
 | ||||
| - PsExec - Sysinternals | Microsoft Learn: https://learn.microsoft.com/sysinternals/downloads/psexec | ||||
| - SMB-Sicherheits-Härtung in Windows Server 2025 & Windows 11 (Standardmäßig Signierung, NTLM-Blockierung): https://techcommunity.microsoft.com/blog/filecab/smb-security-hardening-in-windows-server-2025--windows-11/4226591 | ||||
| - SMB-Sicherheits-Härtung in Windows Server 2025 & Windows 11 (Standardmäßig signieren, NTLM-Blockierung): https://techcommunity.microsoft.com/blog/filecab/smb-security-hardening-in-windows-server-2025--windows-11/4226591 | ||||
| 
 | ||||
| {{#include ../../banners/hacktricks-training.md}} | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user