Protecting Your Personal Info While Traveling?
AdEbh asks: "I was just listening an interesting article on a local radio station regarding computer security. In it a member from the AFP cybercrime unit mentioned that they are starting to see keylogger software installed on public access terminals, such as internet cafes. With friends & family overseas at the moment or soon to be what advice should I give them? Is this a real concern?"
If I am forced to use a public terminal I like to check the tasks that are running in the background, to see if there is anything suspicious. It has saved me a few times, of course not all kiosks will let you use that command.
[n8.r0n] http://petesweb.spymac.net/
I am becoming increasingly paranoid about typing passwords in public terminals... I am even reluctant to type my password in a friend's computer... Generally avoid typing your password for anything you don't need while at a public terminal, and if you're REALLY paranoid you could have it written in a file in a USB keychain and pasted (keyloggers don't log pasting, do they?).
Send email from the afterlife! Write your e-will at Dead Man's Switch.
You wouldnt give your credit card # to someone over the phone in a public place.
You dont throw away check stubs without shredding them.
You dont give strangers your home address.
I guess I dont understand how people can not connect the dots.
CS: It is all sink or swim...oh and did I mention there are sharks in that water?
If you want to keep in touch with friends and family during travel, create an email address with one of the many free webmail services available.
Then use only this adress while traveling, and only for casual messages, nothing important. Specify to your correspondants that this adress is temporary, and subject to be "stolen", so they should be suspicious regarding messages coming from it.
But in order to log into your e-mail account, you would need to supply your password. One way to get round this is to type the first few letters of the password, switch to an other app, type some gibberish, and then switch back to your web-browser / telnet-session (doing more switching if you're feeling insecure). If this is one of those hardware devices that sit between the PC and the keyboard, it cannot know what belongs where, but there might be some software out there that can detect app-switching and record kepresses on a per-app basis.
It also helps to have two or three sets of passwords:
- The least sensitive password should be used for "subscription required" sites, like the NYT.
- The medium sensitive password should be used to protect your web mail accounts, like Gmail
- The most sensitive password should be used for online banking
Dedicated Linux servers (root access) $45 p.M.
If you want to access your email remotely, and you want to be sure it won't be hacked, bring your own computer. Otherwise, just accept the risk that your password will be sniffed, and change your password when you get home.
Ideally, you should change your password before you leave, and then change it back when you get home, because if you're like most people there are lots of things online for which you use the same password.
Oh, and if you need to do any kind of transactions _other_ than email while you're abroad, definitely bring your computer. Doing serious transactions on a public workstation is about the same as writing your PIN on your bank card and leaving it stashed near your favorite ATM so you don't have to carry it in your wallet.
When you are on a public terminal you can type in your username and/or password by typing in the last half of it then use your mouse and go the front of the text box and type in the 1st half. It's not full proof but at least someone won't have your password in plain view in front of them.
:wq
While in Hawaii on vacation last September I prepaid for an hour of web cafe time. After answering all my emails and checking what news I felt like reading, I still had a good chunk of time left over and my GF was still in the same strip mall shopping. I decided it might be interesting to download and install ad-aware. (They were old windows 98 machines, so there was absolutely NO security.) In the 15 minutes or so I hung around watching and chatting with the clerk running the place, ad-aware ticked off over 2,000 spyware items found, and it wasn't anywhere near done!
I do very little 'sensitive' work while I'm visiting my folks, or the in-laws too. I just finished reinstalling the in-laws' machine and patching/updating it due to a huge spyware/virus problem. They could have had keylogging crap installed there unknowingly too.
The only machines I trust are those that I own and have direct, constant control of. Period.
My mother-in-law on the other hand decided that she'd keep doing her online banking/shopping, etc even after I advised her not to (it was going to be 2 weeks before I could do the wipe/reinstall). My father-in-law is a cop and well aware of how much identity theft is growing these days. Despite that, we couldn't convince her to sit tight for a few days.
That's why I get so annoyed when she asks for help!
-Ben
If you're using a public machine, you shouldn't do any financial activities like banking, paypal etc., at all.
Try and find a bank that requires one-time passwords. I don't know how common such systems are internationally, but over here in the Netherlands, it's pretty much standard.
My own bank provides its users with a small calculator that, when unlocked with your PIN, will also generate one-time login numbers. For extra security every transaction requires an extra one-time number keyed to that particular transaction (so highjacking the connection after the login is provided is mostly harmless).
I'm sure it's still not 100% safe, but crackers will definitely have to work for their money.
Right now in existing operating systems, some sort of keyboard driver will translate the keystrokes coming down the wire into characters and pass it where it needs to be. Of course, anywhere between the driver and the keryboard can be compromised. You can tamper with the physical cable, between the cable and the keyboard port, or directly in the software.
Now imagine this scenerio to fight this:
The keyboard and OS are NGSCB (Microsoft's Next-Generation Secure Computing Base (NGSCB)) -aware.
They have been configured to work together. (Leave the discussion for HOW that happens another day)
The keyboard will ENCRYPT all keystrokes and ensure the integrity of the data with a message digest and send the secure payload to the OS.
The OS kernel driver for the keyboard receives the data. The keyboard driver is untrusted, and can do nothing with the data except drop it. Ok. Denial of service if this is a rogue driver. But nothing else can happen. No information disclosure. It can't read the information. A proper keyboard driver would see this special payload and transfer it to the trusted environment through the use of a secure conduit transport. (Microsoft calls their particular environment Nexus, and have easy to use API to accomplish this)
Here the trusted computing base can pass the payload to the proper secure driver, in this case a secure keyboard driver that can verify the integrity of the data and unencrypt it. It can then determine what information can be passed back to the untrusted kernel. Microsoft calls these drivers agents, or more commonly NCA. In the case of password management, they can verify passwords securely on the trusted side, and just pass back particular results to the untrusted side.
At this point... both software and hardware keystroke loggers become useless. They can do very little but record the encrypted payload. (Of course they could try to brute crack this.. but a good design would account for this). It's actually quite a neat design... except that you have to trust the "trusted code base". Of course, you don't HAVE to. You could replace Microsoft's Nexus with your own. And from my understanding they are making provisions for that in Longhorn. But should I trust you any more than Microsoft?
I am over simplifing this, but my point is that Trustworthy Computing is actually a good thing.
Don't worry about hardware keyloggers. They cost more than software loggers, so they won't be there. Cops and spooks break in to install them on dissidents' machines; they are probably very rare otherwise. Just bring along an Ubuntu LiveCD, and boot from it. If you can't do that, and you can arrange to produce your own web site, have web-page javascript password-entry scheme that uses just the mouse, unrepeatably. (That is, each time the page is (re-)loaded the buttons appear in different places on the screen.) Or, bring along a USB key with a pile of temporary-use private keys in it, and a copy of ssh configured to use only those key files. Be sure to delete the corresponding public key after each use. Even if they log keystrokes they won't copy the entire contents of every USB key plugged in; and it doesn't matter so much if they do, anyway.
If it's keylogger software you are worried about, it sounds like a single use password (tear sheet style) would be ideal.
If it's one of those little PS/2 keyboard devices that sits between your PC and keyboard, try this: Log in normally, use your password, do whatever, then logout. Before you walk away from the kiosk, tape down the left-arrow key. The auto-repeat will fill the buffer (might be a few Kb) and eventually overwrite your PW.
Cut-n-paste your sensitive logins and passwords one character at a time. You need to type-in the alphabet (upper and lowercase) and numbers into a different window. This is all the keylogger sees (that and cut-n-paste commands).
Hopefully nobody is looking at your screen remotely (and see the mouse movements)... anyone have a technique around that?
not to use the public machines for any financial or private communications.
;)
:)
Agreed. When I travel what I do is change my password on all my accounts to one which I will throw away when I return home. Yes, there's still a risk of abuse, but the window is hopefully small enough if you're only gone for a few weeks that it won't be a problem.
What I also do is forward all my email accounts to a throw-away Gmail account. Again, so I can read and respond to email but not be concerned someone could try and break into my box. It also means I'll avoid at all costs trying to ssh into my machine.
The final really geeky thing I sometimes do is setup an almost honeypot box. A machine that I can ssh into with a throw-away password that is on an isolated network. I then place an ssh key somewhere on this box and use it to ssh to one of my other boxes if needed. This way the only password I will type will be to this honeypot box, not to the actual machine I need access to (being a sysadmin, sometimes you need to pop in to a machine while away, but I'll never 'su' - I'll ask whoever is covering for me to actually do that 'work'). Again one great advantage of this is you can then just erase the key from that honeypot box, so even if the keylogging person is somewhat techno-savvy, they can't get access to that key. If you hide about 3 keys on the machine, you can do this use/erase method 3 times over your trip.
And I know others will probably suggest an ssh-key on a usb key, another very good idea - as long as you're going somewhere that has a high enough level of computing to be able to use this method. Most of my trips have been to the developing world, where machines are still running win98. USB keys don't exactly work too well on those machines, if they even have USB slots.
The key takeaway message is - use a one-time password and create a throw-away email account for communication. And I agree, no banking! Leave your online banking info with someone at home and email them to do it for you. Nothing wrong with being a little paranoid.
I've got kind of a weird system brewing in the back of my head. I have RDP set up on my home computer (think VNC, only faster, and Windows). Ideally I want to log in to that. But I don't want it open 24/7, so I have the port completely closed. What I *will* have (don't have it yet) is a few ports open to a virtual private server I own. I connect to the virtual private, type in a one-time password, and it sends an instruction to my home computer to open a port to a certain IP for a minute. During which time I connect to it via Remote Desktop and use my home computer.
:)
Since my home computer has passwords saved, of course, I wouldn't need to type in passwords from here. This assumes the connection is secure from being hijacked (I don't honestly know if it is) and there's a little vulnerability where someone could immediately RDP into my computer again, from the same IP, with the password that they've presumably just logged, since *that's* not a one-time password. (I suppose I could try to set it up to only allow one connection in.) But they'd only have a minute to do it in.
Of course, the point is entirely moot since I haven't set any of this stuff up - it turned out I needed a laptop for work, so they gave me a laptop, and I've just been using that with ssh and cygwin. Heh.
But that's the plan.
Breaking Into the Industry - A development log about starting a game studio.
Is there any utility program out there that interfaces with a SSH server that will generate a list of, say, 500 one time use passwords which you can print on paper and carry with you (on trips)? Then each time you ssh home, you type in one of these passwords (say 10 chars long) to do whatever (VNC, email etc). Then the server deletes the password from being used again. I guess if the server is willing to accept any of 500 passwords, this makes it easier to attack, but not by much.
If you need another list of passwords, go to a trusted computer and get the server to generate and send you another 500 one time use passwords that you can print off.
Why does various web based email sites not offer this service??
I've heard that some European banks do one-time passwords - you just print out a sheet and bring it with you. This would be the ideal solution if you don't care about privacy, but of course if, like me, you live in the U.S., you probably don't have this option.
Nobody has mentioned the simple way to limit your losses. Open a travel account at another bank. Set up automatic weekly transfers. Use it for gas and such. My travel account gets $200/week. If it gets hit, I contact my bank. My potential loss is very limited. The checking account is not backed up with overdraft protection. Keep track of your balance and use the bank ATM whenever possible. The rest of the bills are set up from the primary account at another bank with auto payments. If the electric is a little off one month, it can be adjsted upon my return. They are happy to receive a regular payment even if it is a little over or under. Let them know what's up. They are very good working with you to get paid.
The truth shall set you free!
Unable to navigate and/or enter data for a visa to the U.S. from the U.S. Embassy Tokyo site with FireFox on Mac and Konqueror on FreeBSD, I printed out the hand written form (which the State Department says to do if the site doesn't work) and brought that in to the embassy. (To enter an appointment required turning off JavaScript after viewing the calendar of available days since Microsoft's JScript screws up Date.getYear() and the site creators don't know that!)
Anyway, once arriving at the embassy with everything, I was given the below paper and told to make another appointment:
(Bold is theirs.)
Am I the only one to find this official advise to use Internet cafes to enter my personal information for a visa application a bit scary?
With a combination of looking at page source code to get to next pages, and enabling and disabling JavaScript, I was finally able to get their EVAF barcode. (I found it interesting that Konqueror can handle VBScript - treating it like JavaScript, which it looked like.) So with just a little bit of effort, this whole process can be made cross-browser friendly. Why won't the State Department do that? And stop recommending using Internet cafes to enter personal information?