def get_file_properties(indicator: dict) -> tuple:
    """
    Extract the file properties from the indicator attributes.
    Example:
    Indicator: {
            "attributes": [
                {
                    "createdAt": "2019-05-14T13:03:45Z",
                    "id": "xyz",
                    "name": "md5",
                    "value": "c8092abd8d581750c0530fa1fc8d8318" # guardrails-disable-line
                },
                {
                    "createdAt": "2019-05-14T13:03:45Z",
                    "id": "abc",
                    "name": "filetype",
                    "value": "application/zip"
                },
                {
                    "createdAt": "2019-05-14T13:03:45Z",
                    "id": "qwe",
                    "name": "name",
                    "value": "Baycc.zip"
                }
            ],
            "createdAt": "2019-05-14T13:03:45Z",
            "falsePositive": false,
            "id": "def",
            "type": "Attachment",
            "updatedAt": "0001-01-01T00:00:00Z",
            "value": "c8092abd8d581750c0530fa1fc8d8318" # guardrails-disable-line
        }
    Return values: c8092abd8d581750c0530fa1fc8d8318, Baycc.zip, application/zip
    :param indicator: The file indicator
    :return: File MD5, name and type
    """
    file_name_attribute: list = list(filter(lambda a: a.get('name') == 'name', indicator.get('attributes', [])))
    file_name: str = file_name_attribute[0].get('value') if file_name_attribute else ''
    file_type_attribute: list = list(filter(lambda a: a.get('name') == 'filetype', indicator.get('attributes', [])))
    file_type: str = file_type_attribute[0].get('value') if file_type_attribute else ''
    file_md5_attribute: list = list(filter(lambda a: a.get('name') == 'md5', indicator.get('attributes', [])))
    file_md5: str = file_md5_attribute[0].get('value') if file_md5_attribute else ''

    return file_md5, file_name, file_type