UNINNOVATE / Engineering At Its Finest

Archive for July, 2007

iPhone hacks enable ring tones, menu customization, and file access

Custom Ringtones

While many modern cell phones allow users to upload and use custom ringtones, the iPhone does not have this ability. Users are limited to the default and rather limited set of ringtones that ship with the phone.

Apple’s future plans for custom ringtone support are not clear. Some users say that a “ringtone” option was visible in iTunes during the original MacWorld iPhone demo and predict that this feature will be added in a later update. Others say that AT&T or record labels may be discouraging Apple from adding this ability. Whatever the real reason, this is an essential feature that any phone in the price range of the iPhone should support.

Luckily for iPhone users, programmers gathered in the #iphone irc channel and around the globe have figured out how to use the recovery mode of the iPhone to access the file system and upload custom ringtones. Step-by-step instructions have been provided for both Mac users and Windows users.

Using the iPhone as a hard drive

Although Steve Jobs has often referred to the iPhone as “the best iPod we’ve ever created”, it lacks the ability to be used as a hard drive to shuttle files from one place to another. This ability was enabled in ever other iPod model.

Two workarounds for this limitation (both currenty Mac-only) have been developed:

  • Ecamm Network’s iPhoneDrive is a $10 program that allows files to be copied to and from the iPhone. It is easy to use, but the iPhone’s contents can only be accessed within the iPhoneDrive application and only files added with the application can be accessed.

iPhoneDrive

  • iPhoneDisk is an open-source, developer-orientied application that allows the iPhone to be accessed as a regular hard drive directly from Finder in OSX. While this is much more powerful than iPhoneDrive, it is in the earliest stages of development and is not really meant for end users at this point.

Customize the iPhone’s main menu

Hackers have also discovered how to add, remove, and rearrange the icons on the iPhone’s main menu. The process is similar to adding ringtones.

Microsoft stuck in endless DRM battle with Hacker: Part 3 of Many

In September 2006, Microsoft’s PlaysForSure DRM, used by online music stores like Rhapsody.com and Napster.com to prevent unauthorized copying of music, was cracked. A program called FairUse4WM was released that allowed users to unlock purchased music and copy it without restriction.

Microsoft quickly patched the vulnerability and sent updates to their PlaysForSure business partners. But before Microsoft’s partners were able to deploy the fix, an updated crack was released that nullified the fix and again left Microsoft’s partners with no effective copy protection.

In an attempt to slow the patch/crack cycle, Microsoft comically filed a lawsuit against against “John Does 1-10″ because they had no idea who was authoring the cracks. The author was only known by his or her online pseudonym - Viodentia. Unable to track down Viodentia, Microsoft was forced to give up and quietly dismissed the lawsuit.

Today, a user known as “Divine Tao” (clearly an anagram of Viodentia) posted a new version of FairUse4WM with an add-on application called “mirakagi”. The new version cracks music purchased from Microsoft’s Zune Marketplace and adds compatibility for Windows Vista. This will be especially upsetting to Microsoft because the Zune Marketplace’s optional subscription-based plan would allow a user to download thousands of tracks at very low cost and then unlock them with FairUse4WM and keep them forever.

Microsoft will no doubt respond quickly because they believe that their business model depends on having effective DRM in place. However, there is good evidence to refute this claim, at least for pay-per-track downloads - the largest part of Microsoft’s business . Emusic.com doesn’t use DRM to protect the music it sells, yet it has been far more successful in the marketplace than any store that uses Microsoft’s PlaysForSure DRM system or the Zune Marketplace.

Once again, let’s go back to December 3, 2003:

None of this technology that you’re talking about’s gonna work. We have Ph.D.’s here, that know the stuff cold, and we don’t believe it’s possible to protect digital content.

What’s new is this amazingly efficient distribution system for stolen property called the Internet — and no one’s gonna shut down the Internet. And it only takes one stolen copy to be on the Internet. And the way we expressed it to them is: Pick one lock — open every door. It only takes one person to pick a lock.

- Steve Jobs, The Rolling Stone Interview

4 comments

Dear iPhone: Give me my data!

Apple’s iPhone allows users to input notes, bookmarks, contacts, and all sorts of other data. However, the user is only allowed limited access to a portion of this data via iTunes. For example, the only way to get notes off the phone is for the user to email the note to himself or herself.

However, all data is available on the user’s computer in the form of an iPhone back up. An iPhone back up is made whenever an iPhone is synchronized. This backup contains everything from the user’s web history, bookmarks, and cookies to their contact lists and SMS chat history.

In order to spur further development of iPhone data extraction tools, I have created a script that will extract all files from an iPhone backup into a format that is easily readable. This script, called extract_iphone_backup.py (source code here), will look for any iPhone back ups, process them, and dump the data files. Note: Currently, this script will only run on OSX.

To use the script:

  1. Download the script and save it to your Home folder.
  2. Run Applications > Utilities > Terminal in Finder.
  3. In the terminal window, type:
    • python extract_iphone_backup.py
  4. Watch as all the settings files from your iPhone are extracted to a folder called “iphone_backup”. Inside of that folder, there will be a folder for each iPhone. The name of the folder will match the phone number of the iPhone.

So what’s inside?

Here are some of the interesting things you can do with your iPhone’s files. To make the most use of these files, you will want to download Sqlite Database Browser.

  • Review your call history

Open the file Library_CallHistory_call_history.db with Sqlite Database Browser. Click on “Browse Data” and choose “call” from the table drop-down. This table contains the last 100 calls you have made.

  • Read logs of your SMS (Text Message) chats

Use Sqlite Database Browser to look in Library_SMS_sms.db in the table “message”.

  • Access notes written on your iPhone

Use Sqlite Database Browser to look in Library_Notes_notes.db in the table “Note”.

  • Access your raw contacts list

Use Sqlite Database Browser to look in Library_AddressBook_AddressBook.sqlitedb in tables “ABPerson” and “ABMultiValue”.

  • Look at your web bookmarks, cookies, and history.

Try opening Library_Safari_Bookmarks.plist, Library_Cookies_Cookies.plist, and Library_Safari_History.plist in Text Edit.

And there is a lot more…

While all of this may not be very useful for the average user, there is a wealth of settings information here from all the basic iPhone apps for developers to look at and play with. Using this information, it will be easy for developers to write user-friendly tools to access or update all of the data stored in the iPhone back ups. Have fun!

19 comments