Az - State Configuration RCE
전체 게시물은 여기에서 확인하세요: https://medium.com/cepheisecurity/abusing-azure-dsc-remote-code-execution-and-privilege-escalation-ab8c35dd04fe
원격 서버 (C2) 인프라 준비 및 단계 요약
개요
이 과정은 Windows Defender를 우회하는 목적으로 수정된 Nishang Invoke-PowerShellTcp.ps1
페이로드인 RevPS.ps1
을 호스팅하기 위해 원격 서버 인프라를 설정하는 것을 포함합니다. 페이로드는 IP 40.84.7.74
를 가진 Kali Linux 기계에서 간단한 Python HTTP 서버를 사용하여 제공됩니다. 이 작업은 다음과 같은 단계로 실행됩니다:
단계 1 — 파일 생성
필요한 파일: 두 개의 PowerShell 스크립트가 필요합니다:
reverse_shell_config.ps1
: 페이로드를 가져와 실행하는 Desired State Configuration (DSC) 파일입니다. GitHub에서 얻을 수 있습니다.push_reverse_shell_config.ps1
: 구성을 VM에 게시하는 스크립트로, GitHub에서 사용할 수 있습니다.
사용자 정의: 이러한 파일의 변수와 매개변수는 사용자의 특정 환경에 맞게 조정되어야 합니다. 이는 리소스 이름, 파일 경로 및 서버/페이로드 식별자를 포함합니다.
단계 2 — 구성 파일 압축
reverse_shell_config.ps1
을.zip
파일로 압축하여 Azure Storage Account로 전송할 준비를 합니다.
단계 3 — 스토리지 컨텍스트 설정 및 업로드
압축된 구성 파일은 Azure의 Set-AzStorageBlobContent cmdlet을 사용하여 미리 정의된 Azure Storage 컨테이너인 azure-pentest에 업로드됩니다.
단계 4 — Kali Box 준비
Kali 서버는 GitHub 저장소에서 RevPS.ps1 페이로드를 다운로드합니다.
스크립트는 대상 Windows VM과 역쉘을 위한 포트를 지정하기 위해 편집됩니다.
단계 5 — 구성 파일 게시
구성 파일이 실행되어 역쉘 스크립트가 Windows VM의 지정된 위치에 배포됩니다.
단계 6 — 페이로드 호스팅 및 수신 대기 설정
Python SimpleHTTPServer를 시작하여 페이로드를 호스팅하고, 수신 대기를 위해 Netcat 리스너를 설정합니다.
예약된 작업은 페이로드를 실행하여 SYSTEM 수준의 권한을 획득합니다.
결론
이 프로세스의 성공적인 실행은 자격 증명 덤프 또는 여러 가상 머신으로의 공격 확장과 같은 다양한 작업을 위한 많은 가능성을 엽니다. 이 가이드는 Azure Automation DSC 영역에서 계속된 학습과 창의성을 장려합니다.
最終更新