Az - Blob Storage
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
From the docs: Azure Blob storage는 Microsoft의 클라우드를 위한 객체 저장 솔루션입니다. Blob 저장소는 대량의 비정형 데이터를 저장하는 데 최적화되어 있습니다. 비정형 데이터는 텍스트나 이진 데이터와 같이 특정 데이터 모델이나 정의를 따르지 않는 데이터입니다.
Blob 저장소는 세 가지 유형의 리소스를 제공합니다:
저장소 계정 (고유 이름)
저장소 계정의 컨테이너 (폴더)
컨테이너의 블롭
Blob storage |
|
Azure Data Lake Storage Gen2 |
|
Azure Files |
|
Queue storage |
|
Table storage |
|
Azure AD 주체를 RBAC 역할을 통해 사용합니다.
액세스 키: 저장소 계정의 액세스 키를 사용합니다. 이는 저장소 계정에 대한 전체 액세스를 제공합니다.
공유 액세스 서명 (SAS): 시간 제한 및 특정 권한.
액세스 키로 SAS URL을 생성할 수 있습니다 (탐지하기 더 복잡함).
SAS는 액세스 키에서 생성되므로, 액세스 키가 갱신되면 SAS는 작동을 멈춥니다.
"Blob 공개 액세스 허용"이 활성화되어 있으면 (기본적으로 비활성화됨), 다음을 수행할 수 있습니다:
블롭을 읽기 위한 공개 액세스를 제공합니다 (이름을 알아야 함).
컨테이너 블롭 목록을 보고 읽을 수 있습니다.
연결할 수 있는 저장소를 찾으면 Microsoft Azure Storage Explorer 도구를 사용하여 연결할 수 있습니다.
From the docs: 공유 액세스 서명 (SAS)은 저장소 계정의 리소스에 대한 안전한 위임 액세스를 제공합니다. SAS를 사용하면 클라이언트가 데이터에 액세스하는 방법에 대한 세부적인 제어가 가능합니다. 예를 들어:
클라이언트가 액세스할 수 있는 리소스.
해당 리소스에 대한 권한.
SAS의 유효 기간.
SAS URL은 다음과 같습니다: https://<container_name>.blob.core.windows.net/newcontainer?sp=r&st=2021-09-26T18:15:21Z&se=2021-10-27T02:14:21Z&spr=https&sv=2021-07-08&sr=c&sig=7S%2BZySOgy4aA3Dk0V1cJyTSIf1cW%2Fu3WFkhHV32%2B4PE%3D
Storage Explorer를 사용하여 데이터에 액세스하거나 파이썬을 사용할 수 있습니다:
컨테이너, 디렉터리 또는 블롭에 대한 액세스를 위해 공유 액세스 서명(SAS) 토큰을 Azure Active Directory (Azure AD) 자격 증명 또는 계정 키를 사용하여 보안할 수 있습니다. 사용자 위임 SAS를 생성하려면 먼저 사용자 위임 키를 요청해야 하며, 이를 사용하여 SAS에 서명합니다.
Azure Blob Storage와 Azure Data Lake Storage Gen2 모두에서 **사용자 위임 공유 액세스 서명(SAS)**에 대한 지원이 제공됩니다. 그러나 저장된 액세스 정책은 사용자 위임 SAS와 호환되지 않는다는 점에 유의해야 합니다.
사용자 위임 SAS는 저장소 계정 키 대신 Azure AD 자격 증명으로 보안됩니다. 이는 클라이언트/응용 프로그램이 SAS를 생성하기 위해 저장소 키를 저장하거나 검색하는 것을 방지합니다.
서비스 SAS는 저장소 계정 키로 보안됩니다. 서비스 SAS는 Azure Storage 서비스 중 하나에 대한 리소스에 대한 액세스를 위임합니다: Blob 저장소, 큐 저장소, 테이블 저장소 또는 Azure Files. 서비스 수준 SAS의 URI는 SAS가 액세스를 위임할 리소스의 URI로 구성되며, 그 뒤에 SAS 토큰이 옵니다.
컨테이너 또는 블롭에 대한 SAS를 보안하기 위해 Azure Active Directory (Azure AD) 자격 증명을 사용하려면 사용자 위임 SAS를 사용하십시오.
계정 SAS는 저장소 계정 키 중 하나로 보안됩니다(2개가 있음). 계정 SAS는 하나 이상의 저장소 서비스의 리소스에 대한 액세스를 위임합니다. 서비스 또는 사용자 위임 SAS를 통해 사용할 수 있는 모든 작업은 계정 SAS를 통해서도 사용할 수 있습니다.
[문서에서:] (https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas) 계정 SAS를 생성하면 다음을 수행할 수 있습니다:
Get/Set Service Properties
및 Get Service Stats
작업과 같이 현재 서비스 특정 SAS로는 사용할 수 없는 서비스 수준 작업에 대한 액세스를 위임합니다.
한 번에 저장소 계정의 여러 서비스에 대한 액세스를 위임합니다. 예를 들어, 계정 SAS를 사용하여 Azure Blob Storage와 Azure Files 모두의 리소스에 대한 액세스를 위임할 수 있습니다.
객체 특정 SAS로는 사용할 수 없는 컨테이너, 큐, 테이블 및 파일 공유에 대한 쓰기 및 삭제 작업에 대한 액세스를 위임합니다.
요청을 수락할 IP 주소 또는 IP 주소 범위를 지정합니다.
요청을 수락할 HTTP 프로토콜을 지정합니다(HTTPS 또는 HTTP/HTTPS).
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE) GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)