WebApp Sec mailing list archives
RE: Smart card proposal
From: "Lyal Collins" <lyal.collins () key2it com au>
Date: Thu, 3 Feb 2005 10:46:55 +1100
Generally, smartcards themselves are relatively robust, if well chosen/specified, and secure apps placed on them. 'hotwiring' smartcards is simple - install a remote access backdoor and keyboard sniffer, then every time the smartcard is inserted and any 'hacked' machine, interrogate for it's serial number, and present the right password to perform whatever authentication you want. PIN-pad equipped readers to exist. They often need extra power, and need proprietary drivers - PC/SC doees't cater to PINpads, while for sTIP stuff may do. Consequently, they cost more to buy and support. Lyal
-----Original Message----- From: Glenn_Everhart () bankone com [mailto:Glenn_Everhart () bankone com] Sent: Thursday, 3 February 2005 4:13 AM To: webappsec () lists securityfocus com Subject: RE: Smart card proposal I wonder with these smartcards that have PIN pads so you authenticate to the card... Can they be "hotwired", i.e., have an emulator that grabs their data but pretends to have the PIN and just talks to whatever? (Obviously nobody would likely alter the actual smartcard, but if the data thereof could be dumped, what assures a back end that the real smartcard, and not an emulator with its data, is there? Thus what assures the card has been authenticated to? -----Original Message----- From: Miguel Ruiz Velasco Sobrino [mailto:miguelrvs () yahoo com mx] Sent: Monday, January 31, 2005 2:06 PM To: webappsec () lists securityfocus com Subject: Re: Smart card proposalForwarded MessageRichard M. Smith wrote:< ... > What I still do not understand is how a Website communicates > >with the USB key device.Token-aware browsers (Internet Explorer, Netscape,Mozilla, etc.) can be > >configured with PKI credentials (e.g., private key and corresponding ID > >certificate) that are stored either on the PC or on a smart card or USB >token. The client's private key is used during the optional(and servercontrolled) "SSL client authentication" protocol sequence.The tokenmust be "online" at SSL/TLS connect time. The user isprompted toenter his/her user PIN as needed to access the private key(which cannot > >be read from the token under any circumstance). Use of certificatesthat have been issued by an Enterprise CA, etc. can helpsimplify user > >interaction. For example, the secure website can inform the remoteclient/browser that it accepts client certificates issuedby a certain > >CA or list of CAs. In that case, other available client certificates, > >if any, will not be part of the site's user-authentication process.It's important to remember that, SSL connections can be"resumed" forsome (server-specified) period of time. The user canrevisit the secure > >site without additional token interaction. Normally, this resumecapability is invalidated immediately upon browser programclose (since > >the client's copy of previously negotiated session parameters isdeleted) or by expiration of the server/site defined timeperiod. This > >convenient but somewhat counter-intuitive property of the web browser & > >underlying protocol operation must be factored into secure application > >design.Normally the act of extracting the card from the reader orunplugging the token, makesall SSL state to be lost (in a proper designeddriver/library), so it takes a bit ofeducation to your users. Some of the people making crypto discussions here (and inother lists), have a curiousbut fatal misconception: they want to exclude the humanfactor from securityframeworks, sure, many users are morons but you cannot make a moron(user) proof framework bytechnological means. You have to make an effort educatingthem to enhance security,regardless how good and secure is the design of all thecomponents of the system.So the web site communicates with a client machine and browser software. Token operations occur indirectly throughbrowser software, > >token middleware, and USB device drivers.A couple of fun? details for future reference ... Per current standards, smart cards/tokens can be configured with a "secondary authentication" PIN that must be presented each time a particular signing key is used to perform it's digital signature operation. This "Signing PIN" may be distinct from theUser PIN thatcontrols general access to all protected objects on thecard (privatekeys, certificates, data objects, etc.). See the mostrecent version of > >RSA's PKCS#11 standard for details. I believe Microsoft supports same > >or simlar via their CAPI interface. Intended effect is "one digitalsignature per Signing-PIN presentation".CAPI for IE, outlook and other windoze programs PKCS#11 for NS, mozilla. Also there are others interfaceslike MUSCLE.And let's face it, in systems other than windoze, the smartcard are poorly developedby a variety of factors, including no vendor interest in the platform.Some experts believe that, in some environments, theuser's PIN should > >be entered through a specially designed reader that protects the PINfrom being captured (by keyloggers, etc.) -- see "protected authentication path" in PKCS#11. Several vendors havefielded readers > >with a PINPad capability that allows the PIN to be entered directlythrough the reader unit (e.g., bypassing the client workstation). If / when such capabilities will be sufficiently viable incommercialproducts appears to be an open question.The smart card reader with pinpad are already in themainstream market, but they aremore expensive than standard ones. I know al least that G&D haveone of that. And their SWsupport it, because the other day my boss machine becamedisconfigured due to infetionand suddenly began asking for one of that readers/pinpad(The smarcard windoze logon isa standard here).HTH.__________________________________ Do you Yahoo!? Yahoo! Mail - Easier than ever with enhanced search. Learn more. http://info.mail.yahoo.com/mail_250Forwarded MessageRichard M. Smith wrote:< ... > What I still do not understand is how a Web sitecommunicates >with the USB key device.Token-aware browsers (Internet Explorer, Netscape, Mozilla,etc.) can be >configured with PKI credentials (e.g., private key and corresponding ID >certificate) that are stored either on the PC or on a smart card or USB >token. The client's private key is used during the optional (and servercontrolled) "SSL client authentication" protocol sequence.The tokenmust be "online" at SSL/TLS connect time. The user is prompted to enter his/her user PIN as needed to access the private key(which cannot >be read from the token under any circumstance). Use of certificatesthat have been issued by an Enterprise CA, etc. can helpsimplify userinteraction. For example, the secure website can inform the remote client/browser that it accepts client certificates issued bya certainCA or list of CAs. In that case, other available clientcertificates,if any, will not be part of the site's user-authentication process. It's important to remember that, SSL connections can be"resumed" forsome (server-specified) period of time. The user canrevisit the secure >site without additional token interaction. Normally, this resumecapability is invalidated immediately upon browser programclose (sincethe client's copy of previously negotiated session parameters is deleted) or by expiration of the server/site defined timeperiod. Thisconvenient but somewhat counter-intuitive property of theweb browser &underlying protocol operation must be factored into secureapplicationdesign.Normally the act of extracting the card from the reader or unplugging the token, makes all SSL state to be lost (in a proper designed driver/library), so it takes a bit of education to your users. Some of the people making crypto discussions here (and in other lists), have a curious but fatal misconception: they want to exclude the human factor from security frameworks, sure, many users are morons but you cannot make a moron (user) proof framework by technological means. You have to make an effort educating them to enhance security, regardless how good and secure is the design of all the components of the system.So the web site communicates with a client machine and browser software. Token operations occur indirectly through browsersoftware,token middleware, and USB device drivers. A couple of fun? details for future reference ... Per current standards, smart cards/tokens can be configured with a "secondary authentication" PIN that must be presented each time a particular signing key is used to perform it's digital signature operation. This "Signing PIN" may be distinct from the UserPIN thatcontrols general access to all protected objects on the card(privatekeys, certificates, data objects, etc.). See the mostrecent version of >RSA's PKCS#11 standard for details. I believe Microsoft supports sameor simlar via their CAPI interface. Intended effect is "one digital signature per Signing-PIN presentation".CAPI for IE, outlook and other windoze programs PKCS#11 for NS, mozilla. Also there are others interfaces like MUSCLE. And let's face it, in systems other than windoze, the smart card are poorly developed by a variety of factors, including no vendor interest in the platform.Some experts believe that, in some environments, the user'sPIN shouldbe entered through a specially designed reader that protects the PIN from being captured (by keyloggers, etc.) -- see "protected authentication path" in PKCS#11. Several vendors havefielded readerswith a PINPad capability that allows the PIN to be entered directly through the reader unit (e.g., bypassing the client workstation). If / when such capabilities will be sufficiently viable incommercialproducts appears to be an open question.The smart card reader with pinpad are already in the mainstream market, but they are more expensive than standard ones. I know al least that G&D have one of that. And their SW support it, because the other day my boss machine became disconfigured due to infetion and suddenly began asking for one of that readers/pinpad (The smarcard windoze logon is a standard here). Miguel Ruiz Velasco __________________________________ Do you Yahoo!? Yahoo! Mail - Easier than ever with enhanced search. Learn more. http://info.mail.yahoo.com/mail_250 ********************************************************************** This transmission may contain information that is privileged, confidential and/or exempt from disclosure under applicable law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution, or use of the information contained herein (including any reliance thereon) is STRICTLY PROHIBITED. If you received this transmission in error, please immediately contact the sender and destroy the material in its entirety, whether in electronic or hard copy format. Thank you **********************************************************************
Current thread:
- RE: Smart card proposal, (continued)
- RE: Smart card proposal Ofer Shezaf (Jan 27)
- RE: Smart card proposal Richard M. Smith (Jan 27)
- Re: Smart card proposal DE Gustafson (Jan 27)
- Re: Smart card proposal Koh Gim Leng (Jan 28)
- RE: Smart card proposal Lyal Collins (Jan 28)
- RE: Smart card proposal Richard M. Smith (Jan 27)
- RE: Smart card proposal Ofer Shezaf (Jan 27)
- RE: Smart card proposal maburns (Jan 27)
- RE: Smart card proposal maburns (Jan 27)
- Re: Smart card proposal Miguel Ruiz Velasco Sobrino (Feb 02)
- Security Webcast Series JoeStagner (Feb 02)
- RE: Smart card proposal Glenn_Everhart (Feb 02)
- RE: Smart card proposal Lyal Collins (Feb 03)
- Re: Smart card proposal Rogan Dawes (Feb 03)
- Re: Smart card proposal Kevin Kadow (Feb 16)