Fedex Kinko’s Smart Cards Hacked

Abstract:
———
The ExpressPay stored-value card system used by FedEx Kinko’s is vulnerable to attack. An attacker who gains the ability to alter the data stored on the card can use FedEx Kinko’s services fraudulently and anonymously, and can even obtain cash from the store.

Description:
————
The FedEx Kinko’s ExpressPay system, developed by enTrac Technologies of Toronto, Ontario, is based on a Siemens / Infineon SLE4442 memory chip card. The data stored on this card is freely rewritable once a three-byte security code has been presented to the card’s security logic. Neither this security code nor the data stored on the card is encrypted; anyone able to obtain the security code is free to rewrite the data stored on the card using an inexpensive commercially available smart card reader/writer.

The first thirty-two bytes of the memory chip card are writable and subsequently permanently write-protectable (in this application, these bytes are write-protected), and contain a header which identifies the card as an ExpressPay stored-value card. Bytes 0×20 through 0×27 contain the value stored on the card, represented in IEEE 754 double-precision floating point format. Bytes 0×60 through 0×6A contain the card’s eleven-digit serial number stored as unsigned zoned-decimal ASCII; digits 0×60 through 0×63 are the store number the card was initially issued at, and the remaining seven digits are assigned sequentially at the moment of first issue. A timestamp indicating date and time of issue are located from 0×30 through 0×37, and is repeated from 0xC7 through 0xCE.

In order to write to the card, a three-byte security code must be presented in a specific sequence of commands as outlined by the SLE4442’s white paper. By soldering wires to the contact points of the card and then connecting those wires to an inexpensive logic analyzer, an attacker can sniff the three-byte code as the kiosk or a card terminal prepares to write data to the card. This security code appears to be the same across all FedEx Kinko’s ExpressPay cards currently in circulation.

Once the three-byte code is known to the attacker, the card’s stored value and serial number can be changed to any value. The ExpressPay system appears to implicitly trust the value stored on the card, regardless of what that value actually is. The system will also accept cards with obviously fake serial numbers (e.g. a non-existent store number followed by all nines). Using these altered cards, xeroxes can be made from any machine with a card reader, and computers can be rented anonymously and indefinitely. Most disturbing, however, is that since stored-value cards can be cashed out by an employee at the register at any time, an attacker could cash out altered cards obtained at little or no monetary cost. If a card is cashed out, its serial number does not appear to be invalidated in the system. If an attacker were to clone a known good card and cash it out, the clone would still be usable.

Tested Vendors:
—————
- FedEx Kinko’s

Suspected Vendors:
——————
- Any client of enTrac Technologies who uses the ExpressPay stored-value card system.
- Any company which uses a stored-value card system based on the SLE4442

Vendor and Patch Information:
—————————–
Proof-of-concept of the initial security vulnerability was achieved on 8 February 2006, with research into the ramifications continuing through 12 February. Copies of this report were sent to both FedEx Kinko’s and enTrac Technologies on 15 February; a read receipt was returned from enTrac on 19 February, while no receipt has yet been received from FedEx Kinko’s.

Solution:
———
- Encrypt data before storing it on the SLE4442 card, or migrate to a system which uses cards which have built-in encryption functionality.
- Verify that the stored value on the card does not significantly differ from a reference value stored in a database.
- Do not allow the use of cards with invalid serial numbers.
- Invalidate serial numbers of cards that are cashed out.

Credits:
——–
Strom Carlson, Secure Science Corporation: Hardware Security Division
stromc@securescience.net

8 Responses to “Fedex Kinko’s Smart Cards Hacked”

  1. evan Says:

    this is good stuff. great work!

  2. JinSun Says:

    Nicely done!

    http://www.wirah.com

  3. Schneier on Security Says:

    FedEx Kinko’s Payment Card Hacked…

    This site goes into detail about how the FedEx Kinko’s ExpressPay stored value card has been hacked. There’s nothing particulary amazing about the hack; the most remarkable thing is how badly the system was designed in the first place. The……

  4. The.RSS.Reporter Says:

    =?utf-8?B?RW5nYWRnZXQ=?=…

    Today in Engadget: March 3, 2006
    http://www.engadget.com/2006/0…oday-in-engadget-march-3-2006/Date: 3/3/2006 5:59 PM Author: Evan Blass
    Filed under: Misc. Gadgets
    Almost two years ago to the day, a young man
    sat…

  5. the 60 billion $$ man Says:

    FedEx Kinko’s ExpressPay Card (and others?) Hacked…

  6. Zero Day Security Says:

    FedEx Kinko’s ExpressPay smartcards vulnerable…

    Several stories have posted over the past few days about a vulnerability in the ExpressPay smartcard implementation recently exposed by Secure Science Corporation. The attacker who successfully exploits this vulnerability can, anonymously, add value to…

  7. Clint's Security Blog Says:

    Security Blogs I Read, Part I…

        I’ll admit it, I’m a blog addict. I read about 50 security blogs and have another……

  8. PICCOLA GADGETS Says:

    FedEx Kinko’s ExpressPay card (and others?) hacked…

    Earlier this week, information security company Secure Science released a video
    of a hack that would defeat FedEx Kinko’s ExpressPay card’s limited security. As with all traumatic events, FedEx
    first issued a denial, but have recently come to acc…

Leave a Reply

You must be logged in to post a comment.