nccgroup/ScoutSuite

Improve error handling across all resources

Open

#873 建立於 2020年9月23日

在 GitHub 查看
 (2 留言) (0 反應) (1 負責人)Python (978 fork)batch import
component-provider-alibabacomponent-provider-awscomponent-provider-azurecomponent-provider-gcpcomponent-provider-ocienhancementgood first issue

倉庫指標

Star
 (5,904 star)
PR 合併指標
 (30 天內沒有已合併 PR)

描述

Currently, facades implement good exception handling, but resource parsing does not. That means that for a given resource type, if parsing fails for any given resource, the fetch_all method fails and stops, hence not parsing any additional resources.

All resources should be reviewed and updated, to ensure they handle parsing errors.

e.g., for AWS IAM roles (https://github.com/nccgroup/ScoutSuite/blob/master/ScoutSuite/providers/aws/resources/iam/roles.py#L8) the method should be updated as so:

for raw_role in raw_roles:
    try:
        name, resource = self._parse_role(raw_role)
        self[name] = resource
    except Exception as e:
        print_exception('Failed to parse {} resource: {}'.format(self.__class__.__name__, e))

貢獻者指南