Author Archive

Cracking M1 Free SMS Captcha using the Cloud

February 8, 2012 Leave a comment

I wrote a simple script on cracking the M1 free SMS service using free internet services.

The M1 free sms website is available at

The website is ‘protected’ from abuse by a very simple captcha.

The script is pretty much self explanatory and is now available on

You can also crack the captcha using Tesseract which is the de facto tool for cracking captchas.

However, I have used the font recognition services on for this purpose due to the below reasons
1. This is a very simple captcha
2. The success rates are higher than an untrained tesseract 3.0
3. I do not have to find the font that the captcha is using (required to train tesseract for recognizing the characters in the captcha)

As shown in the below screenshot, MyFonts is able to detect the characters in the captcha accurately which is perfect for cracking the captcha on M1′s sms website.

Please do not abuse the free sms service on M1′s website. It is illegal to do so.

This post is to demonstrate that weak captchas can be easily cracked using online services.

There is a very good article here on how to crack Captcha using Tesseract

For more difficult captchas, you want want to by rendering the services of human captcha crackers.

Cracking hashes using findmyhash

January 24, 2012 Leave a comment

Hashcat is the definitely tool to use for cracking hashes. It might be highly possible that the hash might have been cracked by others online.

Therefore, it might be more convenient to perform a lookup using the online free services before even trying to crack the hash with Hashcat.

findmyhash is a very useful tool for cracking the hashes using free online services.

Most of the password dumps have been appearing on websites like and it makes it even more useful if findmyhash is able to find and crack md5/sha1 hashes located in a website link like pastebin. I have submitted a patch to for this new feature.

If you do not feel comfortable with another party knowing about the hashes, you should skip using findmyhash all together and dive straight to hashcat instead.

Read more…

Speed Improvement for Metagoofil (Intelligence Gathering)

January 9, 2012 Leave a comment

I made some speed bumps to the source code for metagoofil by adding in some threading code to speed up the downloading process.
The below tests were done on a vmware guest with 4GB of ram with 1 processor (2 cores).

Results might varies on your machine.

For the below test, I ran metagoofil against for 100 pdfs.

Results show that you can get quite a significant speed improvement if you are downloading a lot of documents for analysis with metagoofil.

Download Links

If you adventurous enough to try the patch, you can download the patch or the updated file from the below links

Updated File:

Let me know if you face any issues.

OWASP Ajax Crawling Tool (Good Companion Tool to Burpsuite)

December 26, 2011 1 comment

OWASP Ajax Crawling Tool is an awesome companion to the tool Burpsuite. It allows you to crawl ajax websites which is a feature missing from Burpsuite. Both are must have tools for penetration testing of modern Ajax websites.

The official website for ACT is

The current version of ACT 0.1a seems to have issues with crawling some Ajax websites due to some issues in the dependencies.

I have submitted the bugfixes to the website but it will take some time for the changes to be committed.

Below shows the screenshots of the results of the crawl before and after the patch.

Before the patch

After the patch
As shown in the below screenshot, extra 4 links were discovered after the patch.

I have also added the function of being able to specify the proxy server via command line mode.

Below is the temporary download link for the ACT if you can’t wait for the changes to be committed at the main site.

Categories: Penetration Testing

Reversing LifeSize 220 HD Video Conferencing Appliance Firmware

December 18, 2011 Leave a comment

I have recently taken an interest in finding vulnerabilities in embedded devices.   Since it is expensive to purchase some of these equipments to perform testing, it might be more cost effective to reverse the firmwares instead.
The product which I am reversing is the LifeSize Room 220.  LifeSize Room 220 is a HD video conference solution.

It looks like a fairly interesting product to learn more about reversing firmware.

More information about the product can be found here.

First, we will need to install all the prerequisites in Debian.
$ apt-get install pkgconfig libglib2.0-dev libcurl4-gnutls-dev
$ wget
$ tar xvfz zlib-1.2.5.tar.gz
$ ./configure && make && make install

Next, we will download the Lifesize firmware from a 3rd party’s website
$ wget

Next, we will downloading and compiling binwalk which will identify signatures of compressions/filesystems on the firmware
$ wget
$ ./configure
$ make && make install

$ binwalk LS_RM1_4.1.1_17.cmg

We will need to download cramfsswap which will convert the cramfs filesystem from big endian to little endian
$ apt-get install cramfsswap
$ cramfsswap LS_RM1_4.1.1_17.fs LS_RM1_4.1.1_17.cramfs

Next, we wil need to download firmware mod kit which contains uncramfs which can be used to extract the cramfs filesytem
$ mkdir /tmp1/image

$ apt-get install subversion
$ svn checkout firmware-mod-kit-read-only
$ cd firmware-mod-kit-read-only/trunk/src/uncramfs
$ make
$ ./uncramfs /tmp/cramfs /tmp1/LS_RM1_4.1.1_17.cramfs

In order to properly emulate the device, we need to identify the processor type.  We can do that by running the file command against /bin/busybox.

Having identified the processor type as PowerPC, we will then download and compile Qemu which will be used for emulation.
$ wget
$ tar xvfz qemu-1.0.tar.gz
$ ./configure -static
$ make && make install

$ cp /tmp1/qemu-1.0/ppc-linux-user/qemu-ppc /tmp1/image
$ chroot . ./qemu-ppc ./bin/ls

We have successfully run /bin/ls command from the firmware image

iPhone Espionage Writeup on InfosecInstitute

October 31, 2011 1 comment

A more in-depth writeup on the IPhone espionage project has been posted at

Breaking Enterprise iPhone Application Security ?

October 17, 2011 1 comment

There are a couple of enterprise iPhone applications out there that promises over the air and device encryption. (e.g. MS Exchange email sandbox apps).

However, there is a fundamental issue. Some of these iPhone applications are built upon the iOS frameworks like UIViewController which provides the layout of the applications.

It is possible to hook onto these classes on a jailbroken iPhone to perform screen captures of confidential emails in your so called sandbox applications. When used together with a iPhone keyboard logger ( which hooks on the UIKeyboardImpl class and captures all keystrokes that you have entered, including any passwords.

In this case, if your jailbroken device is compromised, there is only so much you can do even if you are using an iPhone application that provides encryption or security.

Should you allow jailbroken iPhones in your organization?

Should your enterprise application detect if the device is a jailbroken iPhone and exit the application if a jailbroken iPhone is detected ?

Please let me know what you think.

Source code can be found at the below link

Slide deck and Short Video for iPhone Espionage talk at HackInTheBox Malaysia 2011

October 12, 2011 Leave a comment

The slide deck can be downloaded here. .

A demo video for the basic tool can be found here

Categories: iPhone Espionage

iPhone Espionage

October 12, 2011 1 comment

Slashdot published this article “iPhone’s PIN-Based Security Transparent To Ubuntu” in May 2010.   This shouldn’t work on Jailbroken iPhone 4 as the vulnerability is reported so long ago.

Using the below tool, you are able to access SMS database and other confidential information which are supposed to be protected on a passcode protected jailbroken iPhone.  Well, if you have a non jailbroken iPhone, you are safe!

In order to recreate the demo that I did in HackInTheBox, you will need to run the below on your Ubuntu/Debian system or you can download the shell script from

  • apt-get install libusb-dev usbmuxd libimobiledevice-dev libplist-dev libgnutls-dev build-essential libgnutls-dev libxml2-dev libreadline5-dev libgcrypt-dev libglib2.0-dev libplist-dev libusbmuxd-dev usbmuxd make automake autoconf libtool gcc python-dev git libfuse-dev libimobiledevice-utils -y
  • mkdir /tmp1 && cd /tmp1
  • git clone
  • cd libiphone && ./ && ./configure && make && make install
  • cd /tmp1
  • git clone
  • cd ifuse && ./ && ./configure -prefix=/ && make && make install
  • cd /tmp1
  • wget
  • bunzip2 -d ideviceinstaller-1.0.0.tar.bz2 && tar xvf ideviceinstaller-1.0.0.tar && cd ideviceinstaller-1.0.0 && ./configure && make && make install
  • cd /tmp1
  • apt-get install libgtk2.0-dev libnautilus-extension-dev intltool libzip-dev -y
  • wget
  • bunzip2 -d nautilus-ideviceinfo-0.1.0.tar.bz2 && tar xvf nautilus-ideviceinfo-0.1.0.tar && cd nautilus-ideviceinfo-0.1.0 && ./configure && make && make install

After installing the prerequisites, create a folder called /tmp1 and download the file and put it inside /tmp1

Since we are unable to use launchctl command to allow our binaries to run during setup, we need to find an alternative means.

It seems possible to overwrite the plist file for any iOS service and iOS doesnt do any verification at all.  We have identified a list of launch daemons which can be safely replaced to execute our own executable instead.

You might want to modify the plist file with the time and executable that you want it to execute.

Next, you will download (from and put it inside /tmp1/ as well.

Run and then connect your iPhone to one of the USB ports on your computer.

It should rip out a couple of databases like google maps cached location, call history database, SMS database and cell tower location database.

It should not take more than 3 seconds if you connect it locally instead of via a VM.

Edit and compile and then save it in /tmp1/Transfer/sql12.

sql2 is a iPhone tool which is a POC code which extracts your Facebook caches/database as well as Dropbox offline files.
You can find more tools which you can deploy via scanUSB from here

You might want to recompile this with your own email address and password so that it delivers the information to your email.

Run /tmp/ and then connect your iPhone.

Let me know if you face any issues or have any suggestions on how I can improve the tools.  Enjoy!

Categories: iPhone Espionage

Get every new post delivered to your Inbox.