The iPhone Dev-Team recently released their latest version of the PwnageTool for Mac OS X, PwnageTool 3.1.3. Here is a how-to guide for jailbreaking the iPhone 3GS’s OS 3.1, in ten simple steps. This new PwnageTool will allow you to update firmware 3.1 without updating the baseband on your iPhone and is for iPhones running firmware 3.0 or 3.0.1.
Note: This tutorial is for Mac OS X only. Be sure to read the full Dev-Team instructions before proceeding. This will not work with iPhones that came with 3.1 already installed or that have upgraded to 3.1. If you have updated to firmware 3.1 in iTunes you will need to first downgrade your firmware back to 3.0 or 3.0.1.
1. Check to be sure that you have the latest version of iTunes on your computer, download and install if you do not.
2. Sync your iPhone and back up all your data on iTunes.
4. Start PwnageTool 3.1.3. Chose your device, which should be the iPhone 3GS.
5. PwnageTool 3.1.3 should detect the proper firmware automatically.
Click “Yes” when asked to continue.
6. Click “Yes” when asked: “Do you have an iPhone 3G(S) contract that would activate normally through iTunes?
7. The PwnageTool should now create a custom, jailbroken .ispw file that you will be able to restore with.
8. Once completed, you will be prompted to close the PwnageTool application and put your 3GS into Recovery mode. Once this is done, start iTunes and restore with the custom firmware bundle. To do this, click on your iPhone in the iTunes sidebar to get to the Sync screen. Hold “alt” down as you click “Restore.” This will allow you to chose the location of the firmware, select the custom .ispw file and click “Open.”
9. From here iTunes will take over with a series of automated steps, just follow along and after your phone automatically restarts, you will have a jailbroken iPhone OS 3.1 in your hands.
10. With your jailbroken iPhone, you can now unlock your iPhone with ultrasn0w.