Small bug often turns out to be bigger software problem

Why your TU/e card also opens the garbage can

It turns out that the underground containers of waste management organization Cure aren’t properly secured. They can be accessed with – in addition to the standard waste disposal card – a bunch of other cards, including the TU/e campus card, Fontys card, OV-chipkaart, Dutch Railways Passagepas, Holland Casino card, and Gamestate card. This is just one example of a bug in software that wasn’t thought through well enough in advance. Professor of Formal Systems Analysis Jan Friso Groote stresses this isn’t an isolated incident. “Higher demands must be placed on software and programmers to ensure we remain in control of our software.”

There are underground waste containers in several places on the TU/e ​​campus for the residents of the residential towers. They open with a card that you receive from the municipality: the waste disposal card. But you can also open them with other cards, including your TU/e ​​card and Fontys card. These cards – and the ones mentioned earlier –  have one thing in common: they all contain an RFID chip. A Cure container verifies this in granting access, but doesn’t require any further data and will therefore open regardless of whether it concerns a different card with an RFID chip. And that’s not how it should be, says Professor Groote, who’ll explain how this is a symptom of a larger problem a bit later on.

In responding to the error, Cure said the following: “The card readers in the containers picked up all signals from RFID chips. Cure and the municipality have invested in new card readers that can be finetuned to the specific RFID chips of the Cure waste disposal card.” The waste management organization says that it has been aware of the leak for some time and that it responded to the Eindhovens Dagblad (ED) earlier this year after that newspaper had asked questions.

Incidentally, those comments reveal that Cure isn’t too bothered by the garbage cans opening to all kinds of cards. “We prefer the garbage landing in the container rather than next to it,” Dennis Hendriks of Cure is quoted as saying by ED. The ‘scanning problem’ affecting the waste containers in Eindhoven has existed for over ten years.

Cure indicates that the problem of the card readers in the containers has been solved in the meantime, but that a phased plan is now being drawn up to roll out the new technology. Due to the issues with the cards, people could possibly get around the system where you pay a fee per garbage bag, but Eindhoven isn’t one of the municipalities where this system applies. Here, you pay a rate per household and not per bag. Cursor doesn’t now whether the same trick also works in municipalities that have the pay-per-bag system.

Greater care needed

The error at Cure was the reason to delve deeper into access control using cards. What happens when you try to gain access and do errors like this occur more often? Professor of Formal Systems Analysis Jan Friso Groote says they do. “Yes, errors in software occur much more often than you think, also with access cards. We need to be much more careful with software and the rules that govern it.” According to Groote, it’s not just with AI that we don’t know exactly what happens at the backend; even with ‘normal’ software the engineers sometimes have no idea why an error occurs. “You should actually see software as a recipe or protocol to deal with all possible situations. And if that recipe is not fully thought out, things can go wrong.”

A simplified (and humorous) illustration of what happens when you’re not specific enough when writing software.

Exact Instructions Challenge - THIS is why my kids hate me. | Josh Darnit

A simplified (and humorous) illustration of what happens when you’re not specific enough when writing software.

Risks

Groote has spent a lot of his career working together with his research group to test the accuracy of software at large external organizations using mathematical models. From banks to transport and industrial construction companies. “And believe me, we always found errors. Then we would talk to the expert of the organization and they usually didn’t know what caused the issue either.” He cannot mention names for privacy reasons, but just how big the impact of software errors can be was recently demonstrated during an update for Windows computers: half the world was affected. The culprit turned out to be a tiny piece of software called Falcon sensor, designed by security company CrowdStrike. Professional systems at banks, hospitals, media companies, and airports experienced problems or stopped working completely. Some hospitals had to postpone surgeries, people could no longer pay in shops, and airlines had to cancel flights. Of course, not every software error has that much impact, but the point is that we need to be much more critical and careful in taking software as a point of departure, Groote believes. This is also known as secure by design.

How do we stay in control of our software? This is an important question in the matter. “We really must demand that software never does anything that we humans find undesirable. Software shouldn’t crash our PC, data that shouldn’t be thrown away should never be thrown away, secret data should never be disclosed, and a garbage container shouldn’t opened with a card that’s not authorized to do so.”

“I think the average person isn’t sufficiently aware of how much damage defective software can cause. We really need to take software extremely seriously and set very high standards for people who make it,” Groote believes. “Now it’s ‘just’ about waste containers, but it’s the idea that counts. If you buy a product in the EU, you can see from the CE marking that it has been tested and is safe. I could see something like that for software as well. Because there’s very little in the way of regulation for that right now.”

What happens when you present a card?

“A card contains a chip and an antenna,” says Groote. “When you present a card to a card reader, rapid communication occurs. ‘What type of card are you? Are you a match? Give me your number.’ After this check of whether a card is who it says it is, a conclusion is reached: the container or door opens or remains closed. And all of this in – usually – less than 1 or 2 seconds.”

 

Share this article