[VOIPSEC] On the topic of Vishing

Simon Horne s.horne at packetizer.com
Fri Jul 14 13:10:04 CDT 2006


At 08:42 PM 14/07/2006, you wrote:
>Perhaps someone companies should focus on creating a SIP based ACL
>of sorts which would follow some already implemented standards (e.g
>RFC's 2267).
>
>Corporation = X
>User = Y
>Authserver = Z
>
>Y (registers VOIP server) to Z using this ACL with checksumming
>(MD5 or better) Z returns to Y verification token Y upon attempting
>to connect to X verifies X's token with Z and the session is
>established.

ACL is not terribly scalable. Email has adopted DKIM (which is globally 
scalable but not end to end) where domains identify themselves by way of 
PKI signatures which are verified against a public key which can be 
downloaded via a URL. With the real time nature of VoIP and to avoid the 
possible delays of downloading these certificates there should be a way to 
include these certificates on the wire for quick processing. This is 
something we are looking at implementing in H.323 (the capability is 
already there). Again, regardless, there is no way the caller can prove (to 
a reasonable extent) they are actually talking to the bank. This is were 
end-to-end authentication is important.


> > As I have mentioned in previous emails that one possible solution
>is
> > the use of 2 factor authentication, Something I have (a PKI cert
>etc)
> > and something I know (username/password)
>
>The scenario above would work more than a user/pass combo since
>human factors are almost always the issue regarding compromises.
>Let's use for example Bank of America's "Sitekey" scenario. Their
>so called twofold method of authentication: You enter your
>credentials and a picture pops up asking you for your "next" method
>of authenticating based on the picture. So what is the answer? Well
>based on the types of pictures I've seen them dish out they tend to
>be simple, a guitar, a banana, a vase. Let Joe Simple's info become
>compromised to an extent, an intruder uses the information gathered
>as far as log in (user/pass) and sees a picture of a banana. Well
>Joe Simple not knowing any better decides his Sitekey will be (what
>else?) banana. Twofold auth based on user input is not that great
>of a solution.

Totally agree. Perhaps, like my local bank has done, because they are sick 
of these phishing scams, started issuing a SecurID style tokens with a 
random number generator, when you go to the bank website you have to enter 
the number on the device. Certainly you can manually enter this number 
through an IVR system but the capability exists to send these type of 
information (from smart cards, RFID, etc) in a call setup message today 
without having to prompt the user but you need to have a protocol that 
support these types of security mechanisms.

> > Certainly using end-to-end authentication will definitely help
>reduce
> > the risk as the caller will have some certainty to whom they are
> > calling but it is not a complete answer as the Vishers may
>acquire a
> > valid digital certificate which makes them appear that they are
> > someone who they are not.
>
>A "visher" wouldn't even necessarily need to acquire a valid
>certificate. Again, based on experience with users and their
>methods of thinking simplistically, a bogus SSL certificate can be
>created by an attacker which most people would likely just hit
>enter to accept.
>
>$SSLDIR/bin/openssl req -new -x509 -keyout
>${SSLDIR}/private/CAkey.pem \
>       -out ${SSLDIR}/private/CAcert.pem  -config
>/usr/local/ssl/openssl.cnf
>
>Using configuration from /usr/local/ssl/openssl.cnf
>Generating a 512 bit private key
>writing new private key to '../private/CAkey.pem'
>Enter PEM pass phrase:
>Verifying password - Enter PEM pass phrase:
>- -----
>You are about to be asked to enter information that will be
>incorperated
>into your certificate request.
>What you are about to enter is what is called a Distinguished Name
>or a DN.
>There are quite a few fields but you can leave some blank
>For some fields there will be a default value,
>If you enter '.', the field will be left blank.
>- -----
>Country Name (2 letter code) [US]:
>State or Province Name (full name) [NC]:
>Locality Name (eg, city) [North Carolina]:
>Organization Name (eg, company) [The Open Group]:
>Organizational Unit Name (eg, section) [ETIS]:
>Common Name (eg, YOUR name) [sitekey.bankofamerica.com]:
>Email Address []:foo at bar.org
>
>A "Visher" can then combine using a bogus cert with the usual http
>scam mails to trick the unknowing user into accepting the cert. How
>many people actually take the time out to read certificate
>information let alone understand it.

You've missed the point completely. Yes you can generate a PKI cert quite 
simply, heck anyone can do that but you need a verified (signed) 
certificate issued by a trusted third party for it to work. Now that is a 
bit more difficult to do but not impossible. The problem with HTTPS:// and 
most web browsers is that you can accept certificates regardless of whether 
they are from trusted source (verisign etc) or not making them next to 
useless as a security enforcement method. For VoIP it doesn't have to be 
like that. You can issue CA certificates to endpoints/UAs (whether manually 
or via a VoIP message) which can be use to authenticate certificates 
presented by the other calling party.


> > This is where the importance of the second factor comes in. The
>Bank
> > issues the user with a user and password and this is used to
>verify
> > the client at the bank so their is no need to enter user/pass or
> > credit card information (or in fact depending on the application
>there
> > so no need for an IVR system at all). Although human conditioning
>may
> > still be an issue, but proper education will go a long way to
>resolve
> > a lot of the vishing problems in VoIP.
>
>A problem with your above mentioned scenario is again the
>gullability factor with people. So the bank verifies user/pass info
>along with some other cert or token but guess what? The victims
>machine was compromised and the token or cert was stolen.
>
>H235 or whatever other framework you choose to use, there are
>better ways to do things without the user/pass combo. Perhaps
>financial industries can find a way to do something `a-la` single
>sign on with some RFID based pass generator given to account
>holders when they open their accounts.

Absolutely, User/pass may not be an ideal solution however unless you have 
a VoIP system that has a generic security framework (like H.235) to support 
a range of different authentication mechanisms (certificates, user/pass, 
securID code, RFID etc) then Phishing is going to be as much (if not more) 
of a problem with VoIP as it is with email.

Simon






More information about the Voipsec mailing list