Live data from Hacker News

Iran Shuts Down Major Websites and Https Protocol

news.ycombinator.com

71–80 of 151 posts

Re: Iran Shuts Down Major Websites and Https Protocol

#71
post #20

I am really passionate about this problem. We are currently working on the VPN solution for consumers and I could dedicate some of our servers for this to develop a VPN that would work when governments shut down encrypted connections. where should we start? it it even feasible to do a secured tunnel hidden in normal traffic undetected?

You can tunnel anything over anything. You'd just start with a generic URI to negotiate the secure connection before sending the real requests/responses.

Yes - Already looking at this HTTP tunnel (http://www.nocrew.org/software/httptunnel.html) that someone else posted here.

I am wondering whether this approach is better than the one someone else suggested - connecting to a streaming server (like OnLive) - I guess streaming server could be made more undetectable, but more expensive to run

Re: Iran Shuts Down Major Websites and Https Protocol

#72
post #57

Earlier quoted context omitted.

That is actually how the iOS Flash players like iSwifter and Photon works. It's just a video stream (seen from weird MPEG-compression artifacts) to a Linux VM running Firefox.

So would this not be ideal for getting through government censors?

My impression is that it could be ideal - but it needs much more bandwidth on the client side, as well as server side - making it expensive to run

Re: Iran Shuts Down Major Websites and Https Protocol

#73
post #33

FYI, Jacob Applebaum just asked[1] people to set up TOR bridges using a new protocol called obfsproxy[2]. 1: https://twitter.com/#!/ioerror/status/167922546807812096 2: https://www.torproject.org/projects/obfsproxy-instructions.h...

I would be willing to set up a bridge but how can we get the bridge IPs to those who need them?

See https://lists.torproject.org/pipermail/tor-talk/2012-Februar...

Currently if you run such a bridge, you'll either need to manually tell us (via email to tor-assistants at torproject.org ) about it or you'll need to share these bridges with people you want to help directly. It's a pain and we're working on it.

Re: Iran Shuts Down Major Websites and Https Protocol

#74
post #46

This is why good old analogue amateur or personal radio should still be a powerful force for people who are rebelling against their governments and corporate overlords. The Internet is easy to kill, as are digital cell-based radio networks. Proper amateur radio is not. Jamming is not that effective over a large area before anyone suggests that.

The internet may be easy to disable but to kill it is another ball game

Re: Iran Shuts Down Major Websites and Https Protocol

#75
post #17
post #14

Earlier quoted context omitted.

So where would one find SSL over http implementation? You know, you send your usual POST to a proxy, only the body would be an actual request. Whole handshake could probably be done like this. Not even the proxy would (wouldn't have to) know the content. Encrypted body could be translated to valid XML for extra effect.

I was just googling this and it looks like http://www.nocrew.org/software/httptunnel.html could handle that use case. (Another interesting idea I saw was to steg the data in cat pictures sent normally. I'm not sure if cat pictures are as big in Iran as in the US though such that even user-level analysis wouldn't be too suspicious if there's a ton of cats.)

I see three problems. The first one is that the Iranians would have to have their own JPEG images to sit in an "uploads" directory on the client, since what you're proposing is a very broad-scale steganography attack. (Or else we'd need a procedural way to generate a great number of images which look indistinguishable from real traffic that you might want to send. In any case we risk that the censors block image uploads and form POSTs.)

Second is, I'm not sure anyone has yet connected steganography with public-key cryptography, but it really does have to be done that way for plausible deniability, otherwise you can just look inside the packets. So, inside the first JPEG linked from index.html there is steganographically hidden a 2048-bit RSA public key, and communication consists of uploading steganographic requests of the form encrypt(public_key, shared_key) | encrypt(shared_key, request). The first segment, the server knows should be 2048 bits = 256 bytes long. My bsencode project (https://github.com/drostie/bsencode) might be useful for formatting the data-to-be-encrypted; you need to transmit something like 32 bytes for a key, 16 bytes for a nonce, 32 bytes of predictable plain text so that the server knows that the request is intentional, perhaps 16 bytes of unrelated randomness just to give the RSA packet some extra entropy, and perhaps we could already specify some aspects of the protocol and intended query in the header as well. The 256 bytes would be plenty to contain an entire handshake.

However, you would have to think long and hard about how the public key is encoded, since it's a two-part data structure and either part -- or the glue -- could "leak" the fact to an adversary able to do basic data-processing that there is an RSA key hiding in plain sight. Also the access pattern might leak this info -- how many places do you know which are important enough that Iranian citizens should have access to them, but follow a predictable pattern of "download HTML, download image, upload image"? The last part is the unique part; uploading images and lots of text is relatively uncommon.

The third problem that I see is the interaction problem: Iran can guess at steganography by its access pattern, lots of large HTTP uploads followed by HTTP downloads -- but it can then confirm the guess by sending its own requests to the same server and validating that it gets valid responses back. So you can target the system by simply trying to use it.

This last problem is much harder, I think. One obvious solution is to only handle one client at a time -- but that is dangerous because it paves the way for denial of service attacks from the government; they just take download of index.html followed by a GET request for a JPEG and try to send their own steganographic request, tying that server up with respect to real traffic.

Mounting a good steganographic attack against the people who run the communications infrastructure is going to be very difficult indeed.

Re: Iran Shuts Down Major Websites and Https Protocol

#76
post #20

I am really passionate about this problem. We are currently working on the VPN solution for consumers and I could dedicate some of our servers for this to develop a VPN that would work when governments shut down encrypted connections. where should we start? it it even feasible to do a secured tunnel hidden in normal traffic undetected?

Undetected is the hard part; I'm not sure anyone currently has the cpu horsepower to analyze all traffic, but encrypted information has a high degree of entropy that is hard to hide even steganographically.

http://en.wikipedia.org/wiki/Steganography_tools#Cryptograph...

Re: Iran Shuts Down Major Websites and Https Protocol

#77
Moreover, SSH has stopped working, too. But, finally I found a way to circumvent it. A simple twist in the client side, could simply bypass the filtering.

I wrote a simple script to do this, and I would like to share it with all of my countrymen:

https://launchpad.net/~mohammad-sepent/+archive/ppa/+package...

To use it, just replace ssh command with issh like this:

issh user@hostname [other-ssh-options]

Re: Iran Shuts Down Major Websites and Https Protocol

#78
post #63
post #58

Earlier quoted context omitted.

How do they know it's encrypted? I mean would they block something that looks like gibberish but was plain text over port 80?

I like that idea. You could encode a block of octets with plain words. "\xC3\x08\x00\x23\xFA" would then actually travel on the wire as "Was named prefer to use the other especially in, every cast a chuckle on neithout getting. Into useful informash speech makes removing a featuring a move or usage actual considered!", and be decoded back at the other end. You'd have to use common words so it looks as innocuous as po…

I doubt you'd need to go to such lengths, otherwise you wouldn't be able to transmit binary data such as images, either.

Re: Iran Shuts Down Major Websites and Https Protocol

#79

Earlier quoted context omitted.

>Forcing countries like China, Iran and US to go into dark ages if they don't use the new all encrypted networks. The problem is some governments would be perfectly happy with that. In fact for the most repressive ones it's long term goal. China wants to create a separate internet for Chinese users and they're half way there. They have their own local censored versions of Google, Twitter and Facebook. Soon most inter…

Maybe but they'll lose the productivity gains from networked organizations and communities. China can grow a long way without those gains, but they'll eventually hit a wall.

>Maybe but they'll lose the productivity gains from networked organizations and communities

Absolutely but the effect will be not be huge in my opinion because of the language differences. All my Chinese friends here in the EU still use mainly Chinese language website, most of which are based in China, especially the social networking ones.

Post reply on HN