Tuesday, December 11, 2007

Menghilangkan Windows Genuine Alert

  1. Buka Windows Task Manager.
  2. Hentikan wgatray.exe process pada Task Manager.
  3. Restart Windows XP dan masuk Safe Mode.
  4. Hapus WgaTray.exe dari c:\Windows\System32.
  5. Hapus WgaTray.exe dari c:\Windows\System32\dllcache.
  6. Buka RegEdit.
  7. Browse :
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\
    Windows NT\CurrentVersion\Winlogon\Notify
  8. Hapus folder ‘WgaLogon’ dan semua isinya
  9. Restart Windows XP.

~arief karfianto~

Read More......

Implementasi Fungsi Hash di GNU/Linux (bagian pertama)

Arief Karfianto

Pernahkah anda memikirkan bagaimana sebuah password disimpan di dalam komputer ? Atau bagaimana menjamin keaslian isi suatu file ? Sebelum menjawab pertanyaan tersebut, terlebih dahulu kita akan berkenalan dengan kriptografi. Kriptografi adalah seni menyembunyikan pesan terang (plaintext) menjadi pesan yang acak (ciphertext). Kriptografi merupakan bagian dari kriptologi. Selain kriptografi, kriptanalisis juga merupakan bagian dari kriptologi. Kriptanalisis merupakan usaha untuk mendapatkan plaintext dari suatu ciphertext tanpa mengetahui kuncinya.

Kriptanalisis juga mengandung usaha untuk menemukan kelemahan dari suatu sistem kriptografi. Jadi perkembangan kriptanalisis juga semakin mendorong perkembangan kriptografi, dan sebaliknya. Cakupan bahasan kriptografi sangat luas sehingga tidak akan kami paparkan dalam tulisan ini. Semoga bisa kami bahas pada kesempatan lain.
Salah satu yang dipelajari dalam kriptografi adalah fungsi hash satu-arah (one-way hash function) – selanjutnya disebut fungsi hash. Fungsi hash merupakan suatu fungsi h yang memetakan input x dengan panjang berapapun pada output h(x) dengan panjang tetap, sifat ini disebut fungsi kompresi. Properti lainnya adalah mudah untuk menghitung nilai h(x) namun sangat sulit untuk mendapatkan input x dengan diketahui nilai h(x), sifat ini disebut property preimage. Fungsi hash inilah yang akan memainkan peranan yang penting dalam penyimpanan password dan integritas data pada suatu sistem operasi, khususnya GNU/Linux.
Password pengguna (users) pada GNU/Linux disimpan dalam file /etc/passwd. Berikut contoh sebagian isi file /etc/passwd pada komputer saya :

[root@localhost ~]# cat /etc/passwd
root:$1$KzJGhs53$UMoqTDH2nmgArMxn60Uc0.:0:0:root:/root:/bin/bash
.
.
intruder:$1$gXo/vhCc$vbOLBQm/OXdbzC0.ztipp1:500:500:intruder:/home/intruder:/bin/bash

Pada contoh diatas terlihat bahwa terdapat user bernama root dan intruder. Password root disimpan dalam file tersebut dalam bentuk $1$KzJGhs53$UMoqTDH2nmgArMxn60Uc0. Bentuk tersebut merupakan keluaran dari fungsi hash yang diterapkan pada password. Hal ini bertujuan untuk menghindari diketahuinya password tersebut oleh orang lain sehingga dapat login sebagai user tertentu.
Proses yang dilakukan saat proses login adalah komputer menerima masukan username dan password dari pengguna. Misalnya username : ‘root’ , password : ‘pass’. Kemudian password tersebut menjadi masukan pada fungsi hash sehingga menjadi bentuk yang acak, misalnya $1$KzJGhs53$UMoqTDH2nmgArMxn60Uc0. Setelah itu, string tersebut dicocokkan dengan string yang ada pada file /etc/passwd untuk username : root. Apabila sama, maka password yang dimasukkan benar untuk username root.
Lalu, bagaimana untuk menjamin keaslian isi suatu file ? Tunggu artikel selanjutnya.

-k4rf1-
PROUDLY PRESENTS FOR
_________ __________________________
___ ____/_____________ _____ __ ____/__ ___/__ ____/
__ /_ __ ___/_ _ \_ _ \_ / _____ \ _ / __
_ __/ _ / / __// __// /___ ____/ / / /_/ /
/_/ /_/ \___/ \___/ \____/ /____/ \____/

F R E E C O M P U T E R S T U D Y G R O U P



Read More......

Menambah Paket dari Repository pada Fedora

Menambah Paket dari Repository pada Fedora

Arief Karfianto
karfianto.wordpress.com
karfi.anto[at]gmail.com

Siapa yang belum mengenal Fedora ? Distro Linux yang satu ini memang pantas untuk diperhitungkan pada jajaran distro-distro linux lainnya. Alasannya antara lain karena keandalannya saat digunakan menjadi server. Memang distro ini masih membawa sifat pendahulunya, Red Hat. Pada awal kemunculannya Red Hat sudah menempati kelas tertinggi sebagai distro yang sangat mendukung aplikasi server dan terus dikembangkan. Hingga pada suatu saat pihak Red Hat memutuskan untuk menghentikan dukungannya untuk Komunitas Open Source. Tetapi langkah tersebut diikuti dengan dibentuknya suatu komunitas dibawah bendera Red Hat namun dengan nama project yang berbeda, yaitu Fedora Project. Fedora Project mengembangkan Distro Fedora Core 1 sampai 6 dan sampai saat ini bernama Fedora 7. Paket yang disertakan tidak jauh berbeda dengan distribusi Red Hat .

[root@localhost ~]# mv /etc/yum.repos.d/ /etc/temp-yum.repos.d

Kemudian kita menginstall paket yang bernama createrepo.

[root@localhost ~]# cp /media/FedoraCore-6/Fedora/RPMS/createrepo-0.4.4-2.fc6.noarch.rpm /data/Software/linux/
[root@localhost ~]# mv /etc/temp-yum.repos.d/ /etc/yum.repos.d
[root@localhost ~]# rpm -ivh /data/Software/linux/createrepo-0.4.4-2.fc6.noarch.rpm
warning: /data/Software/linux/createrepo-0.4.4-2.fc6.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing… ########################################### [100%]
1:createrepo ########################################### [100%]

Lalu kita mulai membuat database repository dari kumpulan software yang sebelumnya sudah dicopy ke harddisk.

[root@localhost ~]# createrepo /data/rpms/
2242/2242 - zsh-html-4.2.6-1.i386.rpm
Saving Primary metadata
Saving file lists metadata
Saving other metadata

Pada tahap ini berdoalah semoga tidak mati lampu dan baterai laptop anda habis  , atau anda akan mengulanginya dari awal. Sekarang anda bisa menuggunya, mungkin sambil mencuci pakaian karena memang prosesnya agak lama.

Pindahkan kembali file kita backup di awal.

[root@localhost ~]# mv /etc/yum.repos.d/ /etc/temp-yum.repos.d
You have mail in /var/spool/mail/root

Sampai pada langkah ini, kita sudah memiliki database repo yang dapat kita gunakan sewaktu-waktu saat ingin menambah paket untuk Fedora kita.

Kali ini saya akan mencontohkan menambahkan paket GNU C Compiler (GCC) untuk kebutuhan programming dengan bahasa C. Caranya sebagai berikut :
[root@localhost ~]# yum install gcc gcc-c++ gcc-objc gcc-objc++ cpp pkgconfig compat-libstdc++-33
Loading “installonlyn” plugin
Setting up Install Process
Setting up repositories
installer 100% |=========================| 951 B 00:00
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 656 kB 00:00
################################################## 2242/2242
Parsing package install arguments
Resolving Dependencies
–> Populating transaction set with selected packages. Please wait.
—> Downloading header for gcc to pack into transaction set.
gcc-4.1.1-30.i386.rpm 100% |=========================| 51 kB 00:00
—> Package gcc.i386 0:4.1.1-30 set to be updated
—> Downloading header for gcc-c++ to pack into transaction set.
gcc-c++-4.1.1-30.i386.rpm 100% |=========================| 44 kB 00:00
—> Package gcc-c++.i386 0:4.1.1-30 set to be updated
—> Downloading header for gcc-objc++ to pack into transaction set.
gcc-objc++-4.1.1-30.i386. 100% |=========================| 41 kB 00:00
—> Package gcc-objc++.i386 0:4.1.1-30 set to be updated
—> Downloading header for gcc-objc to pack into transaction set.
gcc-objc-4.1.1-30.i386.rp 100% |=========================| 44 kB 00:00
—> Package gcc-objc.i386 0:4.1.1-30 set to be updated
—> Downloading header for compat-libstdc++-33 to pack into transaction set.
compat-libstdc++-33-3.2.3 100% |=========================| 7.4 kB 00:00
—> Package compat-libstdc++-33.i386 0:3.2.3-61 set to be updated
–> Running transaction check
–> Processing Dependency: libstdc++-devel = 4.1.1-30 for package: gcc-c++
–> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc
–> Processing Dependency: libobjc.so.1 for package: gcc-objc
–> Processing Dependency: libobjc = 4.1.1-30 for package: gcc-objc
–> Processing Dependency: libgomp = 4.1.1-30 for package: gcc
–> Processing Dependency: libgomp.so.1 for package: gcc
–> Restarting Dependency Resolution with new changes.
–> Populating transaction set with selected packages. Please wait.
—> Downloading header for libstdc++-devel to pack into transaction set.
libstdc++-devel-4.1.1-30. 100% |=========================| 122 kB 00:00
—> Package libstdc++-devel.i386 0:4.1.1-30 set to be updated
—> Downloading header for libgomp to pack into transaction set.
libgomp-4.1.1-30.i386.rpm 100% |=========================| 42 kB 00:00
—> Package libgomp.i386 0:4.1.1-30 set to be updated
—> Downloading header for libobjc to pack into transaction set.
libobjc-4.1.1-30.i386.rpm 100% |=========================| 41 kB 00:00
—> Package libobjc.i386 0:4.1.1-30 set to be updated
—> Downloading header for glibc-devel to pack into transaction set.
glibc-devel-2.5-3.i386.rp 100% |=========================| 103 kB 00:00
—> Package glibc-devel.i386 0:2.5-3 set to be updated
–> Running transaction check
–> Processing Dependency: glibc-headers = 2.5-3 for package: glibc-devel
–> Processing Dependency: glibc-headers for package: glibc-devel
–> Restarting Dependency Resolution with new changes.
–> Populating transaction set with selected packages. Please wait.
—> Downloading header for glibc-headers to pack into transaction set.
glibc-headers-2.5-3.i386. 100% |=========================| 136 kB 00:00
—> Package glibc-headers.i386 0:2.5-3 set to be updated
–> Running transaction check

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
compat-libstdc++-33 i386 3.2.3-61 installer 232 k
gcc i386 4.1.1-30 installer 4.7 M
gcc-c++ i386 4.1.1-30 installer 3.3 M
gcc-objc i386 4.1.1-30 installer 2.5 M
gcc-objc++ i386 4.1.1-30 installer 2.7 M
Installing for dependencies:
glibc-devel i386 2.5-3 installer 2.0 M
glibc-headers i386 2.5-3 installer 602 k
libgomp i386 4.1.1-30 installer 62 k
libobjc i386 4.1.1-30 installer 83 k
libstdc++-devel i386 4.1.1-30 installer 9.5 M

Transaction Summary
=============================================================================
Install 10 Package(s)
Update 0 Package(s)
Remove 0 Package(s)

Total download size: 26 M
Is this ok [y/N]: y
Downloading Packages:
Running Transaction Test
warning: compat-libstdc++-33-3.2.3-61: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: libobjc ####################### [ 1/10]
Installing: libgomp ####################### [ 2/10]
Installing: libstdc++-devel ####################### [ 3/10]
Installing: glibc-headers ####################### [ 4/10]
Installing: glibc-devel ####################### [ 5/10]
Installing: gcc ####################### [ 6/10]
Installing: gcc-objc ####################### [ 7/10]
Installing: gcc-c++ ####################### [ 8/10]
Installing: compat-libstdc++-33 ####################### [ 9/10]
Installing: gcc-objc++ ####################### [10/10]

Installed: compat-libstdc++-33.i386 0:3.2.3-61 gcc.i386 0:4.1.1-30 gcc-c++.i386 0:4.1.1-30 gcc-objc.i386 0:4.1.1-30 gcc-objc++.i386 0:4.1.1-30
Dependency Installed: glibc-devel.i386 0:2.5-3 glibc-headers.i386 0:2.5-3 libgomp.i386 0:4.1.1-30 libobjc.i386 0:4.1.1-30 libstdc++-devel.i386 0:4.1.1-30
Complete!

Akhirnya setelah penantian yang cukup mendebarkan, selesai juga kita menambahkan paket GCC dan sekarang kita bisa segera mulai programming. Yeah.. Linux Programming..!! (mudah-mudahan saya sempat juga untuk membahasnya).
Sementara cukup sekian yang dapat saya sampaikan, mudah-mudahan berguna dan mohon maaf bila ada ‘salah-salah kata’.

Wassalam.

31-10-07

PROUDLY PRESENT FOR
_________ __________________________
___ ____/_____________ _____ __ ____/__ ___/__ ____/
__ /_ __ ___/_ _ \_ _ \_ / _____ \ _ / __
_ __/ _ / / __// __// /___ ____/ / / /_/ /
/_/ /_/ \___/ \___/ \____/ /____/ \____/

F R E E C O M P U T E R S T U D Y G R O U P

Read More......