The State of Internet Electronic Commerce Today

Data Pipes

End Points

Applications

Cryptosystems

Algorithms

When the Web exploded into acceptance as a new medium for marketing and commerce, it was initially used primarily as a forum for electronic marketing, with early adopters beginning to accept credit cards as payment. Many of the early adopters ignored security concerns about credit card information being intercepted, and gained useful experience and market leadership over their competitors. A number of highly publicized security incidents raised public awareness of the potential for credit card fraud, and many vendors began examining options for providing security. Netscape Communications, Inc.'s SSL (Secure Socket Layer) is the most widely deployed Internet transaction protection technology. SSL is supported by Netscape's browser, which has hastened its market penetration. A competing protocol is Enterprise Integration Technologies, Inc.'s SHTTP (Secure HTTP) protocol. The SSL protocol recently received bad press relative to a security flaws that have been widely published. One flaw was a basic mistake in how public keys were generated for session encryption. This flaw has been fixed in subsequent releases, but many security experts have been concerned that such an elementary error was made in such an important part of the system. Another flaw in SSL that received a great deal of attention was the cracking of an encrypted transaction by a French student who used a number of high performance workstations to crack a key for the encryption algorithm used to protect transactions.
SSL and SHTTP both provide basic encryption of session contents, to prevent an eavesdropper from being able to intercept credit card or other personal information. SSL and SHTTP use a digital signature scheme to authenticate both parties.

    Security Relationships and Communications Channels


When considering electronic commerce applications, it's important to identify what parts of the transaction need to be protected, and how they are protected. Undue attention paid to one part of the complete system will not result in improved overall security, but rather a false sense of security. Consider as an example the manner in which large amounts of cash are transferred: every step of the process of moving money between vault, street-curb, armored car, street-curb at destination, and vault at destination has appropriate security. The security practices employed in transferring large amounts of cash are a direct result of years of refinement spurred by innovative criminal action. When we look at electronic commerce systems we must assume that a similar process of refinement will take place. During the early 18th century, explosives lacked the shattering power and compact size required permitting small safes to be blown open without destroying the contents. As a result, great emphasis was placed on multiple complex locks with carefully guarded keys. Not surprisingly, criminal activity centered on theft of keys.

Criminal activity will usually be directed against the most effort/cost effective target. One implication is that "insider jobs" will continue to be a significant threat to electronic commerce. Eventually, the most cost-effective form of attack will be getting a job with the victim. We need to maintain our perspective and build computer security into electronic commerce processes systematically, not simply into the obvious and attractive points of
attack.

Data Pipes

For Internet-based electronic commerce, the data pipe-the TCP/IP connection between the client's computer and the commercial server-is currently the main focus of our attention. A variety of encryption and authentication schemes are being used to protect the data in transit from being altered or monitored. This is important, yet it is only a small part of the complete security spectrum we need to address in order to build robust electronic commerce systems. For all intents and purposes, a data stream that is protected with reasonably high-quality encryption (56 bits of key size or better) is safe against attack. There is a potential for cryptographic attacks on the data stream but an attacker who is not a cryptographer will be effectively barred from playing. If the financial benefit to attacking the cryptography used is sufficient, it may justify mounting an attack. European pay-perview satellite systems have had their cryptography compromised several times, at a cost
of millions of dollars in lost revenues. The attackers who compromised the cryptography have more than recouped their investment in effort by selling falsified access cards.
Internet-based electronic commerce systems presently are placing a great deal of emphasis on cryptographic protections that are being applied to the data pipes. This emphasis is a direct result of the attack cost-effectiveness of TCP/IP sniffing. TCP/IP sniffing, in which an attacker passively monitors traffic on a network, is a known problem, and a relatively easy attack to defeat. We need to be concerned that in our rush to protect against sniffing that we don't ignore the other points of attack and potentially more serious threats.
 

End Points


When a commerce application uses an encrypted data pipe to communicate with the server on the other end, what do we know about the security of the end point systems?
In this case, there are two end point systems: one is the server at the merchant's electronic place of business, the other is on the user's desktop. Both end points are vulnerable to attack if not secured adequately. In some cases the merchant's server is behind a firewall or some form of network protection. In others it is sitting directly on the
Internet on a (hopefully) "hardened" UNIX system. What happens to the data once it gets across the secure pipe to the server? Often it is simply stored in a file or database, which may contain customer credit card information, telephone numbers, home addresses, etc.
Usually, the data gathered is stored unencrypted, "in the clear" and is a very attractive target for an attacker. We have already seen many cases where Web servers have been attacked and broken into. Usually, this has been a harmless nuisance, but eventually a Web server with customer credit card information will be compromised. Most likely, this has already happened several times but nobody has noticed or notified their customers.
The second end point in electronic commerce is the user's desktop system. Users on multi-user systems have a particularly serious problem since it is not difficult to exploit security holes in most commercial operating systems, to access other users' data. This may include information such as users' keystrokes as they type them, passwords, credit card information, etc. If an attacker can read the data out of a user's running program before it is placed into an encrypted data pipe, there is no need to attack the encryption at all. Which is easier: breaking DES and RSA encryption, or breaking into UNIX? PCs or other computers are no more secure than UNIX systems; Trojan horses or attack programs are potentially capable of accessing users' information from their hard disks without anyone being the wiser. As Web browser meta-language technologies such as Java, and Visual Basic grow more powerful and prevalent, the likelihood of someone developing a credit-card number stealing browser applet increases.
To protect the end points of electronic commerce we will need tools that protect not only the data pipes but the data at the ends of the pipes. This means that security will have to be taken into account at every step of the design process, rather than added as an afterthought once the application is in beta-test. Applications will have to be "smarter" about their default operations, and will need to be designed to prompt users when dangerous operations are attempted. Smart card technologies, which are capable of protecting data even from untrustworthy applications, will become more important, as they allow users to "unplug" private information from the system and carry it away with them.

Applications

Electronic commerce promises to herald the dawn of desktop banking. What will happen when everyone's PC is a personal automatic teller machine? Clearly, some kind of authorization needs to be applied so that the PC software "knows" that the correct person is using it. The danger is that early versions of desktop banking might rely only on a password (or worse: no password at all) to authorize access to an individual's account.
Presumably, the situation will improve once a few highly publicized incidents serve to illustrate the risks. Imagine what would happen if an annoyed spouse or child decided to sell someone's stock portfolio short, or to stop payment on a mortgage check. To build electronic commerce systems, we will need to walk a fine line between making the system easy to use and making the system easy to fool. Accomplishing this goal will require careful and consistent thinking about security and privacy issues.

Cryptosystems

One of the principal protections available for electronic commerce is encryption.
Presently, a great deal of attention is being paid to various algorithms, key exchange mechanisms, and certification technologies. Cryptography is an important tool but is not, by itself, a solution. Simply adding encryption is not sufficient to make an application "secure". The use of encryption in commercial systems has to be correct and relevant to what needs protection.

Algorithms
Encryption algorithms are hard to design; the history of cryptography is filled with "unbreakable" systems that turned out to have fatal flaws. For electronic commerce, most systems rely on the U.S. Data Encryption Standard (DES), International Data Encryption Algorithm (IDEA), or RSA Data Security Inc.'s RC4 algorithm.
DES typically uses 56 bits of key space, IDEA 128 bits, and RC4 40 bits. The number of bits used for keys is important since it indicates the level of effort required performing a brute-force search for the correct key. Recently, a college student with a large number of workstations cracked a 40-bit key used by Netscape to encrypt data with RC4. Within two years, it is safe to assume that about $10,000 worth of hardware will provide adequate
processing power to crack 40 bits worth of keys. Keys with a length of 56 bits will, for some time to come, be outside of the reach of all but national government agencies and is, for practical purposes, immune to brute-force search. The time required to brute-force search a cryptosystem does not necessarily mean that the cryptosystem is unbreakable: security flaws in cryptosystems might permit an attacker to reverse-engineer a key in significantly
less time than a brute-force search. Most of the cryptanalysts skilled enough to crack codes are currently employed by national government agencies and probably do not represent a threat to electronic commerce applications. Because of the risk of flaws in cryptography, most commercial applications use one of the well-known cryptosystems, rather than "home brew" systems.