Marketing firm exposes 340M records via misconfigured cloud storage