Custom mugs and tat outfit Moonpig has a signficant flaw that exposes personal records and partial credit card details for some three million customers, almost 18 months after it was reported.
The failure, discovered and privately reported by developer Paul Price, meant every account and the names, birth dates, and email and street addresses could be accessed by changing the customer identification number sent in an API request.
Orders could be placed under any account. Credit card expiry dates and last four digits could be plucked out using a handy insecure API.
Script-busting rate limiters were nowhere to be seen making it a cash cow for black hats, vandals, and their bots.
It was at the time of writing trending on Twitter across the UK with scores calling for customers to scramble their personal details on the site since account closure appeared possible only over the phone.
Price pulled fewer punches in an advisory published online.
"I've seen some half-arsed security measures in my time but this just takes the biscuit. Whoever architect this system needs to be waterboarded," Price said.
"Every API request is like this: there's no authentication at all and you can pass in any customer ID to impersonate them.
"An attacker could easily place orders on other customers accounts, add or retrieve card information, view saved addresses, view orders and much more."
MoonPig was notified of the flaw in August 2013 and promised in September last year, after a follow-up by Price, to fix it by Christmas. It remained open immediately prior to publication.
The company did not immediately respond to a request for comment, but it appeared that the exposed APIs have been shuttered.
It did not appear to have responded to customers complaints on social media.
"Initially I was going to wait until they fixed their live endpoints but given the timeframes I've decided to publish this post to force Moonpig to fix the issue and protect the privacy of their customers," Price said.
"[About] 17 months is more than enough time to fix an issue like this. It appears customer privacy is not a priority to Moonpig." ®