Live data from Hacker News

How I hacked modern vending machines

hackernoon.com

21–30 of 90 posts

Re: How I hacked modern vending machines

#21
post #16

So in the end he informed the company, and they fixed it? I wasn't clear on the ending with 'hogus bogus', maybe I missed something. Pretty neat project to undertake. Kudos :D

I took the stock photo of coins to suggest that they disabled the App, leaving the only means to pay as the old fashioned method.

This is why I so love the millenials' habit of communicating via hieroglyphs when we have perfectly good words.

Re: How I hacked modern vending machines

#23
post #6
post #3

Much simpler hardware hacking: slightly bend the control panel and/or the door with a small lever (a coin might be sufficient). On some models, opening the door starts the "admin mode" where you can control each spire, do tests, change prices etc. The sensor for door opening can be fooled by the slight bend, hence allowing you to take whatever you want.

Sure, also lockpicking the door open would work, and if you had the possibility to bring the vending machine at home and disassemble/study it you would probably also find another three different ways, what gives? Still, you would need to perform some "unusual" physical action on the physical machine and you might be noticed by people passing by or by a surveillance cam, this app hack is instead "clean". And it makes…

Yeah, I pictured the victim too. A friend of mine owned vending machines. He paid rent for each location, and any loss of product came from his own pocket. Similarly, I remember reading a letter to my local newspaper by a woman whose husband managed the newspaper vending machines. She pleaded for people to stop taking extra copies, because her husband had to pay for them. I always thought the newspaper ran those machines, but they're serviced by independent contractors here.

Re: How I hacked modern vending machines

#24

I guess plenty of people are going to come in here to wave their e-peen and comment on how trivial and obvious this "hack" is, but that's kind of the point. Us developers could learn a lot from this - mainly how not to design any kind of payment app.

"Never trust the client" is a lesson every developer learns at some point. Incredible how an entire company missed that, but I'd put this down to "bosses want this out by DATE? Alrighty..."

If they want it out by $DATE I'd argue it'd be simpler to add support for Apple Pay / Google Wallet.

Re: How I hacked modern vending machines

#25

Would a simple backup/copy of the "charged" database have sufficed? e.g: backup the db with a 5$ charge, use the credits, restore the database...

Likely, it's just a password-protected database, not signed or such. I think that's what his/her app "Time machine" button does.

Re: How I hacked modern vending machines

#27
post #16

So in the end he informed the company, and they fixed it? I wasn't clear on the ending with 'hogus bogus', maybe I missed something. Pretty neat project to undertake. Kudos :D

I took the stock photo of coins to suggest that they disabled the App, leaving the only means to pay as the old fashioned method.

The coins are arranged in the "glider" hacker logo, so there's probably no more meaning to it than that.

Re: How I hacked modern vending machines

#28

Would a simple backup/copy of the "charged" database have sufficed? e.g: backup the db with a 5$ charge, use the credits, restore the database...

Absolutely. I've seen these vending machines before, naive me assumed they had a server-side database. I was completely wrong..

Re: How I hacked modern vending machines

#29
post #21
post #16

Earlier quoted context omitted.

I took the stock photo of coins to suggest that they disabled the App, leaving the only means to pay as the old fashioned method.

This is why I so love the millenials' habit of communicating via hieroglyphs when we have perfectly good words.

What do millenials have to do with it? You think baby boomers don't use emoji too?

Relax and have some fun. ;)

Re: How I hacked modern vending machines

#30
post #18

Earlier quoted context omitted.

"Never trust the client" is a lesson every developer learns at some point. Incredible how an entire company missed that, but I'd put this down to "bosses want this out by DATE? Alrighty..."

Although modern credit card now have a kind of local storage that's used to pay for small amounts of money without querying the server (at least in europe). That may have deceived the developer of that app into thinking it was doing approximately the same.

You've always been able to accept a credit card without online authorization. If you've used credit cards for long enough, you've seen the carbon copy charge slips. Magstripes (or keying in the card number) works offline too, and chip cards have an offline mode. The merchant fees are higher when you run cards offline, and the risk of having a charge declined is higher too.

I'm guessing the reason they're doing a stored value system is because the per transaction part of the merchant fees is too high for vending machine coffee, getting a larger deposit as one transaction helps a lot with that (although, apparently not enough to hire people who know not to trust clients)

Post reply on HN