LaCie NAS (Network Attached Storage) adalah semacam komputer kecil dengan hardisk besar yang difungsikan sebagai file server. Sayangnya akses kontrol ke omputer hanya bisa lewat web based interface (panel) yang menurut penulis sangat membatasi fitur sebenarnya.
Karena sebetulnya device LaCie ini dibangun dengan OS Linux, sangat memungkinkan untuk diinstall Telnet Server untuk menggantikan web based panel tersebut.
Kebetulan minggu lalu saya membeli LaCie Disk Mini. Setelah dua kali reset ulang, percobaan peretasan yang ketiga saya tuliskan di sini.
Untuk bisa menginstall Telnet Server, diperlukan akses command ke system yang bisa diberikan oleh bash script “webshell”
#!/bin/sh
echo "Content-type: text/plain"
echo ""
echo $QUERY_STRING
eval $QUERY_STRING
script ini perlu kita salin ke dalam hardisk LaCie sehingga bisa diakses dengan url:
http://192.168.10.10/cgi-bin/admin/webshell?echo “hello universe”
dimana ip 192.168.10.10 adalah ip yang didapat oleh LaCie. Pada jaringan di rumah saya, dhcp server disediakan oleh adsl modem. Ubahlah ip tersebut sesuai dengan ip yang didapat LaCie di tempat anda.
Buatlah account baru toor” dengan mengakses link:
http://192.168.10.10/cgi-bin/admin/users
Jika belum login, akan ditanya user dan password, masukkan “admin” dan “admin” tanpa tanda petik. Tambahkan user “toor”.
Aturlah user tersebut supaya bisa mengakses baca dan tulis (rw) folder share:
http://192.168.10.10/cgi-bin/admin/shares?do=edit&sharename=share
Salin script diatas tadi dengan nama webshell dan unggah ke hardisk LaCie folder share lewat ftp, bagi pengguna windows anda bisa menggunakan aplikasi filezilla untuk mengunggahnya.
Folder share tadi berada di /home/share, supaya bisa diakses lewat web browser, anda perlu menyalinnya ke folder /www/cgi-bin/admin/. Dan satu-satunya cara untuk melakukannya ya dengan cara membuka casing LaCie dan menghubungkan kabel data hardisknya ke komputer yang terinstall linux, atau anda bisa menggunakan knoppix live cd.
Peringatan:
Dengan membuka casing, anda akan merusak sticker garansi sehingga beresiko kehilangan garansi. Jika anda tidak siap kehilangan garansi, anda bisa menunggu sampai garansinya habis dulu. ![]()
Setelah casing terbuka, cabut kabel data hardisknya (sata), gantikan dengan kabel data dari komputer anda. Nyalakan LaCie dan komputer.
Hardisk LaCie akan dikenali sebagai sda, dengan partisi:
# fdisk -l /dev/sda
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 125 1004031 5 Extended
/dev/sda2 126 60801 487379970 83 Linux
/dev/sda5 1 16 128457 82 Linux swap
/dev/sda6 17 17 8001 83 Linux
/dev/sda7 18 18 8001 83 Linux
/dev/sda8 19 34 128488+ 83 Linux
/dev/sda9 35 125 730926 83 Linux
Gunakan aplikasi partimage untuk membackup partisi sda7, sda8 dan sda9.
Mount partisi sda7 dan sda2:
# mkdir /mnt/sda7 /mnt/sda2
# mount /dev/sda7 /mnt/sda7
# mount /dev/sda2 /mnt/sda2
Salin script webshell dari sda2 ke sda7 dan ubah permissionnya menjadi 755:
# chmod 755 /mnt/sda2/share/webshell
# cp /mnt/sda2/share/webshell /mnt/sda7/www/cgi-bin/admin/
# ls -s /mnt/sda7/www/cgi-bin/admin/webshell
# cat /mnt/sda7/www/cgi-bin/admin/webshell
Shutdown komputer dan matikan LaCie, masukkan lagi ke dalam casingnya (jangan lupa, sambung lagi kabel data aslinya) dan hidupkan lagi, test dengan mengakses url:
http://192.168.10.10/cgi-bin/admin/webshell?id
anda akan mendapatkan output berikut pada web browser:
id
uid=0(root) gid=0(root)
Selamat, anda sudah mempunyai akses ke OS Linux pada LaCie sebagai root user!
Aplikasi telnet server untuk LaCie bisa didownload di:
http://downloads.nas-central.org/Uploads/LSPro/Binaries/utelnetd
Upload utelnetd pada folder share LaCie dengan menggunakan ftp dan ubah permission menjadi 755 dengan url:
http://192.168.10.10/cgi-bin/admin/webshell?chmod 755 /home/share/utelnetd
http://192.168.10.10/cgi-bin/admin/webshell?ls -l /home/share/utelnetd
Sebenarnya lewat ftp client juga bisa untuk melakukan hal diatas, hanya sepertinya lebih keren dengan menggunakan webshell. ![]()
Dan jalankan server telnet dengan url:
http://192.168.10.10/cgi-bin/admin/webshell?/home/share/utelnetd -d
Icon browser akan berputar terus, pencet escape dan berikan url yang baru:
http://192.168.10.10/cgi-bin/admin/webshell?netstat -nat
akan terlihat output:
tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN
yang menunjukkan server telnet sudah berjalan dan siap menerima koneksi.
Sekarang coba jalankan telnet untuk mengaksesnya:
telnet 192.168.10.10
Trying 192.168.10.10…
Connected to 192.168.10.10.
Escape character is ‘^]’.
EDmini login: toor
Password:
Connection closed by foreign host.
Kenapa tidak bisa login? itu karena user toor tidak punya shell.
http://192.168.10.10/cgi-bin/admin/webshell?cat /etc/passwd
cat /etc/passwd
root:x:0:0:root:/root:/bin/sh
bin:x:1:1:bin:/bin:/bin/sh
daemon:x:2:2:daemon:/sbin:/bin/sh
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/var:/bin/sh
nobody:x:65534:65534:Nobody:/:/bin/sh
anonymous:x:65534:65534:Nobody:/:/bin/false
admin:x:500:100:LaCie Ethernet Disk mini Admin:/home:/bin/false
toor:x:501:100:Linux User,,,:/home:/bin/false
Shell dari user toor adalah /bin/false, agar bisa login ubah barisnya seperti ini:
toor:x:501:100:Linux User,,,:/home:/bin/sh
Untuk selanjutnya perintah akan saya ketik langsung tanpa url:
http://192.168.10.10/cgi-bin/admin/webshell?
Bagaimana cara mengedit file /etc/passwd diatas?
Bisa dengan menggunakan perintah sed, tapi karena saya tidak mahir menggunakannya, saya akan membuat file passwd yang baru dan ditimpakan ke /etc/passwd
buat file passwd dengan isi:
root:x:0:0:root:/root:/bin/sh
bin:x:1:1:bin:/bin:/bin/sh
daemon:x:2:2:daemon:/sbin:/bin/sh
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/var:/bin/sh
nobody:x:65534:65534:Nobody:/:/bin/sh
anonymous:x:65534:65534:Nobody:/:/bin/false
admin:x:500:100:LaCie Ethernet Disk mini Admin:/home:/bin/false
toor:x:0:0:Linux User,,,:/root:/bin/sh
Lihat, bukan hanya /bin/false yang diubah, tapi home jadi /root, juga uid dan gid diubah menjadi 0.
salin ke /home/share lewat ftp dan lewat webshell jalankan perintah:
cp /etc/passwd /home/share/passwd.ori
cat /home/share/passwd
cp /home/share/passwd /etc/passwd
cat /etc/passwd
Nah sekarang coba telnet lagi:
$ telnet 192.168.10.10
Trying 192.168.10.10...
Connected to 192.168.10.10.
Escape character is '^]'.
EDmini login: toor
Password:
BusyBox v1.1.0 (2006.11.03-14:53+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
EDmini /root #
TADAAAA!!!!
Ok, sementara itu dulu. Tulisan selanjutannya tentang bagaimana menginstall ssh server dan screen di LaCie ini. Nggak janji kapan ditulisnya.
Untuk menginstall ssh-server di LaCie, sudah tutorialnya ada di LaCie Success Story.
kami adalah gerombolan penulis dari
wah! pak erte ngeretas… TAPI KOK TETEP BASI PAK?!
*lari*