Like me, you may have faced this situation when you really need Internet but only have access to non-free WiFi hotspots (airport, tube, train, etc.). And even worst, when you cannot establish a single SSH connexion nor VPN proxy because the firewall blocks everything. Fortunately, DNS tunneling is here to save us!
One of the most famous DNS tunneling tool is iodine, which is quite easy to setup. Unfortunately the latest client version (0.6.0-rc1) was not available for iOS, until I decided to compile it and push it on my Cydia Repository. So you can now enjoy DNS tunneling on your jailbroken iPhone, iPad or iPod Touch!
The package “iodine 0.6.0-rc1 (IPv4 over DNS tunnel)” installs the latest and patched version of iodine on your iDevice. This tool lets you tunnel IPv4 data through a DNS server. This can be usable in different situations where internet access is firewalled, but DNS queries are allowed.
If you need the server daemon compiled for iOS too, feel free to contact me.
How do I install this package?
Add Thireus Repository http://repo.thireus.com/ to Cydia and install the package named “iodine 0.6.0-rc1 (IPv4 over DNS tunnel)“.
Is it safe?
The iodine client should be safe to use. The most dangerous aspect of DNS tunneling is that anyone can see your trafic and do nasty things with it. Nothing is encrypted. So if you really wish to do DNS tunneling you should use a SSH tunnel inside the DNS tunnel.
I recommend you to read those lines carefully. They have been extracted from the manpage:
Login is a relatively secure challenge-response MD5 hash, with the password never passing the wire. However, all other data is NOT encrypted in any way. The DNS traffic is also vulnerable to replay, injection and man-in-the-middle attacks, especially when iodined is used with the -c option. Use of ssh or vpn tunneling is strongly recommended. On both server and client, use iptables, pf or other firewalls to block all traffic coming in from the tun interfaces, except to the used ssh or vpn ports.
What about performances?
DNS tunneling is very slow. But you have to understand that using such a trick allows you to have Internet in the worst scenario, just by accessing a WiFi hotspot that performs DNS queries (most of them do). Depending of the payload size you can pipe into the DNS tunnel, you can have very bad performances such as 5kb/s but that can go up to 200kb/s.
Enjoy Internet everywhere!
Big thanks to Kryo, yarrick, Doorman, D4rkM4t3r and all iodine contributors.
- http://code.kryo.se/iodine/ – Official iodine website, kryo.se: iodine (IP-over-DNS, IPv4 over DNS tunnel).
- https://github.com/yarrick/iodine – A maintained iodine version. This is the one I used.
- http://doorman.danssaert.be/?p=51 – An old iodine version (0.5.2) compiled for iOS with diff provided by Doorman.
- https://github.com/D4rkM4t3r/libpcap-iphone – libpcap for iOS. Awesome script by D4rkM4t3r.
- http://code.gerade.org/tunemu/ – tunemu, a tun device emulation for Darwin.
Incoming search terms:
Today I released a FireWall package on Thireus Cydia Repository… Untrusted Hosts Blocker
Do you know that iOS applications can track you and steal data from your device? These information are transmitted behind your back to online hosts. Now say STOP to ads, spies, tracking and untrusted hosts on your JailBroken iPhone/iPad/iPod Touch. Have a quick look here.
Update: 1.5.1 update is out! Hosts are now redirected to 0.0.0.0 which is more efficient than 127.0.0.1. (Thanks to zeflash for the report )
Update: 1.6 update is out! winhelp2002 list updated + hosts from user requests + special list from Nervous94 (blocking various Cydia ads).
Block more than 16,000 blacklisted hosts! This is not just a classic adblocker but a powerful FireWall for confidentiality and security purpose. This package will add all blacklisted hosts to your /etc/hosts file. If you are unhappy with this hack, you can uninstall this package, all installed entries will be automatically removed.
If you want to add more hosts or delete some, feel free to contact me.
How do I install this package?
Add Thireus Repository http://repo.thireus.com/ to Cydia and install the package named “Untrusted Hosts Blocker“.
Is it safe?
Hosts entries have been validated by myself. Most of these hosts are from the work of winhelp2002 and 0th3lo, some blacklisted hosts are from me. The provided hosts modifications have been used by myself for years on my iPhone 3GS and MacOS X. Most of the blacklisted hosts have been manually tracked and classified as untrusted or dangerous.
All entries redirect the traffic to
127.0.0.1 0.0.0.0, there is only one exception (220.127.116.11 gs.apple.com).
I took the time to monitor common iOS apps (about 30) to check if more hosts must be added and if the current FireWall rules do not affect the functioning of applications. Then, I packaged everything for you
You are free to uninstall this package. Uninstallation can take up to 3 minutes and remove all added entries to restore your hosts file
Why should I install it?
This FireWall is designed to block all hosts classified as untrusted or dangerous.
Some information an App Store application can steal:
- Mobile phone number
- App ID
- iPhone model
- Text Messages
- All Incoming & Outgoing Call Logs
- GPS Location (Tracking)
These information are transmitted online (during the use of the application), for advertising, to track you or to do nasty things behind your back.
The purpose of ‘Untrusted Hosts Blocker‘ is to block most of the hosts that request these information and provide an adblocker for your iDevice.
For your security and confidentiality I recommend you to install this package.
Incoming search terms:
Today I introduce you a new Cydia Repository… Thireus Repository
After my fresh new JailBreak, I decided to give a little push to my current JailBreak tool projects. So I created my own Cydia repository to host future apps.
Actually the repository only contains 2 packages, one is MobileTerminal 520-1, and the other one my recommended hacker tools for your iDevice.
Let’s add this repository…
To add my repository, Open Cydia. Cydia > Manage > Sources > Edit > Add, http://repo.thireus.com.
Go further with more security…
For your security I advice you to add the GPG public key of the repository. This can be done via the apt-key command, you must be root on your iDevice.
wget http://repo.thireus.com/thireus.pub scp thireus.pub mobile@your_idDevice_IP:/var/mobile/ # Default root password is alpine ssh mobile@your_idDevice_IP su # Default root password is alpine apt-key add thireus.pub # Now open Cydia, Cydia > Manage > Sources > Edit > Add, http://repo.thireus.com.
Note: If your ‘mobile’ or ‘root’ passwords are “alpine“, change them!
passwd # Command to change current user password
- Copy this file to your iPod/iPhone/iPad filesystem in ‘/var/mobile/’ via SCP/SFP: http://thireus.com/thireus.pub.
- Execute “apt-key add thireus.pub” as root at the same directory.
- Open Cydia, Cydia > Manage > Sources > Edit > Add, http://repo.thireus.com.
More packages are coming. Security-oriented stuffs as always