
Avaliação whitebox das permissões efetivas de objetos S3, para identificar arquivos publicamente acessíveis.
Avaliação whitebox das permissões efetivas de objetos S3, a fim de identificar objetos publicamente acessíveis.
Permite identificar objetos publicamente acessíveis, bem como objetos acessíveis para AuthenticatedUsers (usando um perfil secundário).
Existem várias ferramentas que verificam permissões em buckets, mas devido à complexidade das políticas de recursos do IAM e das combinações de ACL, as permissões efetivas em objetos específicos são frequentemente difíceis de avaliar.
A ferramenta é rápida, pois usa asyncio e aiobotocore.
A ferramenta utiliza dois perfis nomeados:
WHITEBOX_PROFILE - este perfil deve ter acesso de leitura ao serviço S3. Ele será usado para listar buckets e objetos, que a ferramenta tentará acessar por meio de solicitações não autenticadas. Não é usado para acessar os objetos, apenas para listá-los.BLACKBOX_PROFILE - além das solicitações não autenticadas, a ferramenta usará este perfil para identificar objetos acessíveis ao "grupo de Usuários Autenticados" (AuthenticatedUsers). Este perfil não deve ter acesso aos buckets/objetos S3, caso contrário, gerará falsos positivos.Crie um ambiente virtual e instale as dependências:
$ virtualenv -p python3 venv
$ source venv/bin/activate
$ pip -r requirements.txt
Opções:
$ python s3-objects-check.py -h
usage: s3-objects-check.py [-h] -p WHITEBOX_PROFILE -e BLACKBOX_PROFILE [-d]
Whitebox evaluation of effective S3 object permissions, to identify publicly
accessible files.
optional arguments:
-h, --help show this help message and exit
-p WHITEBOX_PROFILE, --profile WHITEBOX_PROFILE
The profile with access to the desired AWS account and
buckets
-e BLACKBOX_PROFILE, --profile-external BLACKBOX_PROFILE
An "external" profile to test for 'AuthenticatedUsers'
permissions. This principal should not have
permissions to read bucket objects.
-d, --debug Verbose output. Will also create a log file
Execute a ferramenta:
$ python s3-objects-check.py -p whitebox-profile -e blackbox-profile
2020-11-24 11:19:56 host object-check[371] INFO Starting
2020-11-24 11:20:08 host object-check[371] WARNING Found https://<bucket>.s3.us-east-1.amazonaws.com/<object> allowing "AllUsers"
2020-11-24 11:20:09 host object-check[371] WARNING Found https://<bucket>.s3.eu-west-2.amazonaws.com/<object> allowing "AuthenticatedUsers"
2020-11-24 11:21:34 host object-check[371] INFO Done