Support
All support resources for our products. Here you can find answers to frequently asked questions, discuss with other users, recover a lost license code or file a support request.
Forum closed
This forum was closed and turned into an archive effective April 21, 2018. It is no longer possible to create new topics or reply to existing topics.

Thanks everyone for all the great questions and contributions over the years.

Please use the Contact form to get in touch.

Remote Buddy Forum

Overview 

AuthorThread
User

20.07.2007 12:03:01
Re: Re: iPhone as a remote

This posting is older than 6 months and can contain outdated information.
Thanks for the insightful post!

So, the actual task of scrolling the list isn't actually the 
performance problem here then? It's more the length of the list that 
makes it take a long time to reach its end?

How does the iPhone handle a list with thousands of entries (i.e. if 
you access the "Tracks" category in the "Music" part)? Does it still 
scroll smoothly? Are the entries displayed instantly (or do they need 
their time to display like in the demo videos by Apple)?

The password is sent in clear text, but only once upon login. From 
then on, a unique session ID is used to identify your iPhone as an 
authorized client. And in fact, the AJAX Remote was designed with 
your local network in mind, which - by itself - should already be 
encrypted and thus secure the connection.

However, taking a closer look at the security issues that spring to 
mind are giving a somewhat different image than you might expect:

1) You can browse the filesystem using Remote Buddy and open them in 
applications installed on your Mac, but not download them via your 
browser. However, before you can do that, as an attacker, you do need 
to have either the correct password or a currently valid session ID 
(which is strong enough to withstand brute force attacks for a very 
long time).

2) If you want to find out about either of the password or session ID 
easily, the attacker would need to listen to your network connection. 
If he can do this, however, he'll already have been able to gain 
access to other passwords in the past, as many websites that offer 
login options do not offer encrypted connections for them 
(iospirit.com, btw, does encrypt your entire login and then your 
entire session via SSL, no matter which area of the website you access).

3) If someone already has the ability to sniff your network 
connection, SSL is of very limited use. "But SSL encrypts my 
connection, right?" I hear you ask. Yes, it does. But as so often, 
it's the details:

If you want to encrypt your network connection via SSL, you'll need a 
private key and a certificate belonging to it. Both can be generated 
easily with tools shipping with each OS X install. So far so good.

Usually, when a company uses a certificate on their webserver to 
secure its connection, they let it sign by a trust center (this has 
been done for i.e. https://secure.iospirit.com/ - and it costs you 
quite some dollars to do - more than at least two copies of Remote 
Buddy for sure - annually, per domain). Your browser already has a 
trusted copy of the trust center's certificate and this way can 
verify that the certificate it receives is not spoofed / faked. 
However, with self-signed certificates, and that's what we're 
speaking about here, your browser can't verify whether it's really 
your certificate that is being used to secure the connection. So, 
with self-signed certificates, a man-in-the-middle attack (MITMA) is 
perfectly possible. MITMAs work this way:

Your server, your certificate <-> Man in the middle client

and then

Man in the middle, uses his own certificate <-> your client

So basically, the MITM establishes a secure connection in your place, 
gets access to the data in clear text, then plays the role of the 
server and establishes a "secure" connection with your client (which 
believes the MITM *is* your server). As your certificate is not 
signed, you'll receive a warning, but unless you really go to some 
length to check the validity of the certificate *each and every time* 
upon that warning, you can't be sure that nobody is listening to your 
connection and abusing the service.

There's more info on Wikipedia on this:

http://en.wikipedia.org/wiki/Man_in_the_middle

The usage of dynamic IPs for internet connections does add to the 
problem as a certificate does contain the website's domain name (also 
called "common name") - and this one keeps changing on each reconnect 
of your Mac. So, unless you have a static IP, even if you would go 
through a trust center, you’d have to shell out (a lot of) money and 
time each time the IP of your Mac changes. Otherwise, when common 
name and "domain name" (here: your IP) do not match, the browser will 
warn you as well (try connecting to https://www.iospirit.com/ to 
receive such a warning - as the certificate is bound to a different 
subdomain, https://secure.iospirit.com/ ).

So, yes, free, self-signed SSL certificates certainly help against 
"dumb" attackers. But if someone really is able to listen to your 
network connection, he'll usually also have the tools and knowledge 
to know how he can listen to your connection nonetheless using a MITMA.

I'll look at adding SSL support nonetheless, although I feel that the 
gain in security will mostly be a felt one rather than a real one.

Best regards, 
Felix 

Thread-display::