Rubah password ‘alpine’ di iPhone (dan iPod)!

April 30, 2008 by ketanitem 

Ini adalah kutipan dari artikel yang pernah gua post di MCI Forum, yang di tulis dari persepektif user dan user yang iseng. Pada waktu artikel ini di tulis, gua belum menemukan tools apapun di luar untuk merubah password di iPhone karena masalah aplikasi passwd yang broken yang datang bersama BSD Subsystem 2.1.

Bagian A dan B lebih menekankan ke detail teknis saja dari seputar UNIX environment password, sedangkan bagian C untuk cara paling mudah dengan menggunakan installer. Silahkan pilih!

A. Prolog

Karena penasaran sampai saat ini belum ada patch untuk aplikasi passwd yang kalau di execute dan reboot iPhone akan menimbulkan ring of death, maka gua coba untuk resolve ini lewat belakang.

Basically struktur password iPhone/iPodnya jelas merupakan turunan basic UNIX, metoda enkripsi adalah dengan crypt atau DES algorithm, di mana 2 karakter awal adalah salt key, dan 11 karakter di belakangya adalah encrypted password yang dibentuk dari maksimum 8 karakter text.

Kalau iseng ingin lihat si alpine di iPhone itu di enkripsi menjadi apa lihat file /etc/master.passwd, dan kita akan lihat password berikut di root (dan id mobile): /smx7MYTQIi2M

Sedikit refresh tentang crypt, ini merupakan simple one way encryption dengan menggunakan pasangan salt key dan text password, dimana salt key merupakan 2 karakter bebas yang kita set sendiri, sedangkan 11 karakter sisa adalah hasil enkripsi.

Jadi untuk mudah nya password = crypt (salt, textpassword) -> secara fungsi crypt (”/s”,”alpine”) akan membentuk /smx7MYTQIi2M . Kalau kita menggunakan Mac tinggal issue command berikut untuk mendapatkan password:

openssl passwd -crypt -salt /s alpine

Program passwd yang lama broken, karena menulis hasil enkripsi di file /etc/passwd, padahal file ini hanya list user dan di maintain untuk kompatibilitas dengan BSD 4.3, sedangkan yang benar adalah hanya menulis di /etc/master.passwd, ini yang menyebabkan ring of death.

B. Waktunya merubah password (the hard way)!

Ada 2 file yang harus diperhatikan di iPod dan iPhone yaitu:
/etc/passwd dan /etc/master.passwd

File /etc/passwd (owner root:wheel, mode 0644) berisi list dari user, contoh standar

##
# User Database
#
# Note that this file is consulted when the system is running in single-user
# mode.  At other times this information is handled by one or more of:
# lookupd DirectoryServices
# By default, lookupd gets information from NetInfo, so this file will
# not be consulted unless you have changed lookupd's configuration.
# This file is used while in single user mode.
#
# To use this file for normal authentication, you may enable it with
# /Applications/Utilities/Directory Access.
##
nobody:*:-2:-2:Unprivileged User:/:/usr/bin/false
root:*:0:0:System Administrator:/var/root:/bin/sh
mobile:*:501:501:Mobile User:/var/mobile:/bin/sh
daemon:*:1:1:System Services:/var/root:/usr/bin/false
unknown:*:99:99:Unknown User:/var/empty:/usr/bin/false
_securityd:*:64:64::0:0:securityd:/var/empty:/usr/bin/false

Sedangkan file /etc/master.passwd (owner root:wheel, mode 0600) berisi user dan password nya.

##
# User Database
#
# Note that this file is consulted when the system is running in single-user
# mode.  At other times this information is handled by lookupd.  By default,
# lookupd gets information from NetInfo, so this file will not be consulted
# unless you have changed lookupd's configuration.
##
nobody:*:-2:-2::0:0:Unprivileged User:/var/empty:/usr/bin/false
root:/smx7MYTQIi2M:0:0::0:0:System Administrator:/var/root:/bin/sh
mobile:/smx7MYTQIi2M:501:501::0:0:Mobile User:/var/mobile:/bin/sh
daemon:*:1:1::0:0:System Services:/var/root:/usr/bin/false
unknown:*:99:99::0:0:Unknown User:/var/empty:/usr/bin/false
_securityd:*:64:64::0:0:securityd:/var/empty:/usr/bin/false

Kita lihat pada file /etc/master.passwd, password untuk root dan mobile sama, ini baris yang harus kita edit dan kita ganti.

Misalnya saja kita inginkan merubah password menjadi gondrong (ingat maks 8 karakter), maka enkripsi nya menjadi:

openssl passwd -crypt -salt "MC" gondrong

dan hasilnya adalah MCx6j/p9c6G1w –>jangan lupa MC adalah 2 karakter bebas untuk salt key.
Nah replace 2 baris di /etc/master.passwd
(sebenarnya cukup baris pertama yaitu root, tapi gua update dua-duanya saja)

dari

root:/smx7MYTQIi2M:0:0::0:0:System Administrator:/var/root:/bin/sh
mobile:/smx7MYTQIi2M:501:501::0:0:Mobile User:/var/mobile:/bin/sh

menjadi

root:MCx6j/p9c6G1w:0:0::0:0:System Administrator:/var/root:/bin/sh
mobile:MCx6j/p9c6G1w:501:501::0:0:Mobile User:/var/mobile:/bin/sh

SELESAI!! Coba deh login melalui SSH di PC / Mac atau vt100 terminal di iPhone,
dan coba password baru, dan untuk afdolnya coba reboot si iPhone.

** WARNING: Gunakan dengan hati2, jangan sampai ada langkah yang terlewatkan,
kalau tidak akan muncul ring of death sehingga iPhone harus di ‘restore’.
(you’ve been warned!)

C. Waktunya merubah password (the easy way)!

Jalankan Installer, masuk ke Tab Sources, dan Add source berikut:

http://repo.indo.net.id/mci.xml

Kemudian masuk ke Tab Install, dan masuk ke dalam Category MCI - System, dan cari Aplikasi yang namanya Passwd Fixer, aplikasi ini akan mereplace broken passwd bawaanya BSD Subsystem 2.1.

Untuk mengganti password, tinggal masuk menggunakan SSH / putty ataupung menggunakan vt100 terminal di iphone dan ketik:

passwd

masukkan password 2x.

ENJOY!!

Comments

No Responses to “Rubah password ‘alpine’ di iPhone (dan iPod)!”

  1. Thangoe78 on May 2nd, 2008 11:16 am

    Betul sekali sob, memang password harus diganti, trims buat Password Fixer nya.

Feel free to leave a comment...
If you want a pic to show with your comment, go get a gravatar!

You must be logged in to post a comment.