Salam!
Rp20.000,- (P. Jawa)
Rp22.000,- (Luar P. Jawa)
N EOTE K
Dunia Teknologi Baru
Web Hacking
Bukan Hanya Deface Situs
Anatomi suatu serangan hacking
Footprinting
Scanning
Enumeration
Gaining Access
Escalating
• Pelaku deface situs sebenarnya mempunyai jiwa seni juga seperti contoh di atas,
Privilege sedangkan yang lebih berjiwa bisnis lebih berkonsentrasi pada pencurian database.
NeoTutor NeoSoft
Battlefield 1942
19 Java Workshop:
NeoProfil
Remote Control Editorial Office
Aplikasi port I/O untuk Java, berupa
suatu program remote control ber- 38 Delphi Workshop: 3 4 Cairnhill Rise
Inno Installer #05-01 The Cairnhill
basis web dengan memanfaatkan Singapore 229740
Kemas software karya anda menjadi
Tomcat sebagai servlet container. Telp. +65-67386482
suatu installer tunggal agar mudah
digunakan dan didistribusikan meng-
VB Workshop: Business Office
32 Email Client Winsock
gunakan Inno Installer yang source
code-nya juga tersedia.
Gedung Cahaya Palmerah 503
Jl. Palmerah Utara III No. 9
Selain memanfaatkan dvmailer.dll, pro-
Jakarta 11480
gram email client juga dapat dibuat
dengan memanfaatkan Microsoft
Winsock Control.
40 Delphi Workshop:
Cyber Merpati
Telp. 021-5481457
Fax. 021-5329041
Membuat email client sendiri meng-
gunakan Delphi 7, yang mempunyai Pemimpin Umum
34 VB Workshop:
Remote Control
kelebihan fleksibilitas dibandingkan
dengan Outlook Express.Dengan email
Fachri Said
Pemimpin Redaksi
Remote control selalu menjadi topik client ini akan mudah mengubah-ubah Kosasih Iskandarsjah
menarik. Dengan Visual Basic anda parameter atau variabel sebelum me-
dapat membuat program remote Redaktur Ahli
ngirim email seperti X-Mailer, Extra
control sendiri yang dapat dikem- Onno W. Purbo
Header, dan lain-lain.
bangkan lebih lanjut menjadi trojan. Michael S. Sunggiardi
Pemimpin Usaha
36 VB Workshop:
Screen Saver
42 C++ Workshop:
Pengkodean Base64
Fahmi Oemar
Dadang Krisdayadi
Artikel penutup dari rangkaian artikel
Membuat screen saver sendiri yang Redaktur Pelaksana
mengenai membuat sendiri keylogger
akan menjadi komponen untuk pro- MA Rody Candera
menggunakan Visual C++
gram-program lainnya.
Sekretaris Redaksi
Marni
NeoRagam NeoTek Vol. IV No. 06 Webmaster
Klak Klik Supriyanto
4 Battlefield 1942
DarkSigns 0.91
Computer Forensics
Kenali bagaimana para cyber cop
Sirkulasi
Hacking Simulation Game Hedhi Sabaruddin, Denny
menangani kasus-kasus kriminalitas
Digital Video: dari satu format yang melibatkan penggunaan kom- Adm. Langganan
ke format lain puter serta apa saja tool yang digu- KRISHNAdiSTRIBUTOR
Daftar Isi CD NeoTek nakannya yang dapat diterima seba- Iklan dan Promosi
5 Tweak, Benchmark, Diagnostic
Windows XP Tweak Tool
gai evidence di pengadilan. Gianto Widianto
Game Benchmark Psikologis Hacking Keuangan
Diagnostic Tools Tool yang tepat hanya salah satu fak- Aswan Bakri
Graphical Web Design (I) tor saja dalam keberhasilan menem-
45 Mendayagu- bus suatu sistem jaring- Bank
nakan Photo- an. Social engineering Bank BNI
shop untuk ternyata jauh lebih ber-
membuat
a.n. PT NeoTek Maju Mandiri
web site ber-
peran dalam keberha- No. rekening 070.001709720.001
basis grafis. silan ini.
Bank BCA Matraman
(khusus untuk langganan)
a.n. Boedi Krishnadi
No. rekening 342-239-1611
MPEG-2 • Sony MicroMV • Menghilangkan • DVD quality • Dukungan editing • Bluetooth web-
ame yang mensimu- • JVC JY-HD10U warna yang tak • Ukuran file kecil terbatas menggu- casting (kamera
G lasi lingkungan net- • Hitachi DVD terlihat serta (2,4 GB/jam) nakan Sony Movie MicroMV).
work console, yang di sini Camcorders bayangan pada • Tidak lagi diperlu- Shaker, Ulead Video • DVD authoring
anda dapat berperan se- • Panasonic • Menjaga mutu kan kompresi un- Studio 7, dan Pinna-
bagai hacker atau cracker. VDR-M30 dan dengan mem- tuk DVD authoring cle Studio 8.
Fitur game ini mencakup SV-AV100 bandingkan fra- • Frame accurate
DScript language, line me dengan fra- editing sulit dilaksa-
commands, dan struktur me sebelumnya nakan.
direktori. maupun yang
Pentium 200, RAM16 berikutnya
MPEG-4 • Panasonic • Kompresi lebih • Ukuran file kecil • Tidak cocok untuk • Internet streaming
SV-AV100 lanjut dimung- (256MB/jam) editing • 3G mobile phone
kinkan dengan • Mutu gambar baik
mengekspresikan
gambar sebagai
bentuk dan teks-
tur matematis
UTAK-ATI K WI N DOWS X P
Siapa dan Boleh Apa Saja?
Windows XP yang merupakan keluarga Windows NT seperti juga Windows 2000 maupun
Windows Server 2003 kini menjadi sistem operasi yang paling banyak digunakan, khususnya
XP Home Edition dan XP Professional. Bisa apa saja dengan Windows XP?
WINDOWS 9X ATAU ME YANG USER menampilkan semua user yang ada. Untuk itu, anda dapat
B
ERBEDA DENGAN
access pada dasarnya hanya merupakan polesan mengubah cara login dengan harus memasukkan baik user
kosmetik, pada Windows XP dengan adanya admin- name maupun password, sehingga menjadi lebih aman.
istrator dan limited account, user policy dapat benar-benar Software tertentu yang bila dijalankan akan terhubung
diterapkan. Namun login menu tidak begitu aman, sebab dengan identitas pemakai seperti mIRC, Yahoo Messenger,
USER ACCOUNT
1 Pilih Start > Control Panel dan double click User Accounts. Pilih Change the way user log
on or off dan untick use the welcome screen. Tekan Windows+L untuk melihat hasilnya.
ataupun Outlook, dapat disetel agar setiap dijalankan akan Registry entry-nya adalah DWORD value. Value 1 artinya
menanyakan dulu akan dijalankan oleh siapa. Opsi ini tidak enable dan value 0 artinya disable. Anda perlu membentuk
dapat diterapkan pada beberapa software Microsoft seperti sendiri DWORD value yang bersangkutan, yang untuk
Outlook Express ataupun Microsoft Office. NoChangeStartMenu dicontohkan pada langkah-langkah.
Registry Value Policy
Utak-atik Registri NoSimpleStartMenu Disable simple Start Menu dan
Lewat registri banyak hal mengenai perilaku dan cara kerja mengharuskan classic Start Menu.
Windows XP dapat disetel. Salah satunya adalah memberi NoStartMenuMFUprogramsList Membuang program yang sering
batasan terhadap limited user dalam mengakses Start Menu. digunakan dari Start Menu.
Ada beberapa batasan yang dapat diterapkan, dan semua- NoStartMenuMorePrograms Membuang daftar More Programs
nya dilakukan pada cabang regtistry: dari Start Menu.
GreyMSIAds Menampilkan program yang belum
HKEY_CURRENT_USER\Software\Microsoft\Windows\ selesai instal sebagai gray di Start
CurrentVersion\Policies\Explorer Menu.
Apabila batasan hendak dilakukan bukan user per user, NoWindowsUpdate Membuang link Windows Update
melainkan secara keseluruhan, lakukan perubahan pada dari Start Menu.
HKEY_LOCAL_MACHINE. NoSMMyDocs Membuang folder MyDocuments
dari Start Menu.
UTAK-ATI K WI N DOWS X P
Lebih Lanjut dengan Registry
Registry adalah jalan pintas untuk menyetel Windows XP agar berperilaku dan bekerja seperti
yang anda inginkan. Namun cara ini berisiko, salah-salah komputer anda malah crash.
Mem-backup registry adalah jalan yang sangat dianjurkan.
UTAK-ATI K WI N DOWS X P
Bongkar Pasang Komponen
Pada Windows XP sudah terpasang software maupun setelan yang dianggap terbaik untuk
anda, walaupun mungkin bukan itu yang anda mau. Windows Messenger yang tiap kali start
selalu dimuat, misalnya, adalah salah satu ‘fasilitas’ yang menjengkelkan.
UTAK-ATI K WI N DOWS X P
Stop Windows Messenger!
Windows Messenger yang merupakan kloning dari MSN Messenger 4.6 adalah fasilitas dari
Windows XP yang dapat berjalan secara otomatis ketika membuka Outlook Express atau beberapa site
dari Microsoft. Hal ini sangat memudahkan para penggunanya, terutama yang mempunyai koneksi ke
internet. Tapi bagaimana bagi pengguna yang offline? Ikuti tutorial praktis Bondan Muliawan
(milis@waroengbedjo.com) untuk menghentikan fasilitas otomatis ini.
INDOWS XP SERVICE PACK 1 TELAH MEMBERIKAN FA- Simpan dan jalankan dengan cara klik dua kali file terse-
W silitas untuk meng-uninstall Windows Messenger.
Sedangkan Windows XP Home Edition dan XP
but pada Windows Explorer. Windows Messenger tidak
akan muncul, tapi akibatnya waktu yang dibutuhkan un-
Profesional (tanpa SP1) belum memberikan fasilitas un- tuk membuka Outlook Express akan bertambah (sekitar
tuk menghapus Windows Messenger. 30 detik).
Cara termudah untuk menghentikan aksi dari Windows Untuk itu ubah file tanpamsg.reg menjadi:
Messenger adalah meng-upgrade XP anda ke Windows
Windows Registry Editor Version 5.00
XP SP1 dan uninstall program Windows Messenger. Tapi [HKEY_CLASSES_ROOT\CLSID\{FB7199AB-79BF-11d2-8D94-
jika Anda lebih suka untuk bermain dengan registry dan 0000F875C541}\InProcServer32]
gemar untuk meng-oprek komputer anda, ikuti beberapa @=""
tip berikut yang dapat digunakan untuk memodifikasi "ThreadingModel"=""
tingkah laku Windows Messenger. [HKEY_CLASSES_ROOT\CLSID\{FB7199AB-79BF-11d2-8D94-
0000F875C541}\LocalServer32]
TIP 1: Windows Messenger otomatis berjalan sendiri @=""
ketika membuka Hotmail atau web site tertentu. Hal ini
dapat dicegah dengan melakukan hacking pada registry. Klik dua kali untuk mematikan fasilitas otomatis Windows
Messenger. Selain itu buatlah file denganmsg.reg untuk
Buka registry anda Start > Run, ketik regedit dan klik OK menghidupkan kembali fasilitas tersebut, isinya:
HKEY_CLASSES_ROOT\CLSID\{F3A614DC-ABE0-
Windows Registry Editor Version 5.00
11d2-A441-00C04F795683}\LocalServer32 [HKEY_CLASSES_ROOT\CLSID\{FB7199AB-79BF-11d2-8D94-
Sebelum melangkah ke proses selanjutnya backup dulu 0000F875C541}\InProcServer32]
@="C:\\Program Files\\Messenger\\msgsc.dll"
registry anda jika nantinya ingin mengembalikan lagi. "ThreadingModel"="Apartment"
Hapus baris yang menunjukkan path ke file MSMSGS.EXE [HKEY_CLASSES_ROOT\CLSID\{FB7199AB-79BF-11d2-8D94-
0000F875C541}\LocalServer32]
pada nilai (Default). Klik dua kali pada nilai (Default) dan @="\"C:\\Program Files\\Messenger\\msmsgs.exe\""
hapuslah seluruh baris. Tutup Regedit, sekarang Windows
Messenger akan berhenti beraksi ketika Hotmail dibuka. TIP 2: Windows Messenger dapat di uninstall.
Untuk menghapusnya tekan Start > Run, ketik:
RUNDLL32 ADVPACK.DLL,LaunchINFSection
%windir%\INF\MSMSGS.INF,BLC.Remove
TIP 3: Untuk mencegah agar Windows Messenger tidak dan ubah nilai dari automatic menjadi manual atau disable.
berjalan otomatis ketika anda membuka account Hotmail. Lalu:
Jalankan Regedit dan cari: Per User Restriction\User Configuration\Adminstrative
HKEY_CLASSES_ROOT\Messenger.MsgrObject Templates\Windows Components\Windows Messenger
dan ubah nilai dari automatic menjadi manual atau disable.
Klik kanan pada Messenger.MsgrObject, pilih rename, dan Keluar dari GPE dan restart Windows.
ubah namanya dengan yang lain, contoh:
Setelah melakukan ini Outlook atau Outlook Express ke-
Messenger.MsgrObject-DIMATIKAN! tika dibuka akan menjadi lama, sehingga untuk memper-
Klik OK atau tekan Enter, kemudian keluar dari Registry cepat jalankan:
Editor. Selain mengubah anda bisa menghapus nilai ter- MS Outlook Express > Tools > Options, pilih General tab
sebut, tapi sebelumnya sebaiknya anda backup dulu. dan matikan Messenger Support.
TIP 4: Untuk mencegah agar Windows Messenger tidak MS Outlook > Tools > Options, pilih tab Other dan
berjalan otomatis di Windows XP Anda. matikan Messenger Support.
Catatan untuk Group Policy Editor (GPE):
Jika Anda membuka GPE pada Windows XP SP1, maka anda akan
menemukan fasilitas untuk mematikan Windows Messenger. Lihat
gambar di bawah. Ubah nilai keduanya pada Enable maka mustahil
Windows Messenger dapat berjalan di komputer anda lagi.
BA S I C V I D E O E D I T I N G
Instalasi Pinnacle Studio 8
Andi Ismayadi (Fuzk3_kendi@yahoo.com) menanggapi banyaknya pertanyaan mengenai
instalasi Pinnacle Studio 8 dan Hollywood FX.
ARENA BANYAKNYA MINAT TERHADAP PINNACLE STUDIO 8 Hal ini yang kiranya menjadi masalah dalam penginstalan
K dan Hollywood FX yang dikirimkan ke e-mail saya
dan banyaknya pertanyaan tentang cara mengin-
program bundle dari Pinnacle Studio 8.
Kita akan ulas cara menginstal Pinacle Studio 8 dan bundle-
stal Pinnacle studio 8 dan Hollywood FX. Saya akan kem- nya. Cara menginstall berikut adalah menginstall Pinnacle
bali membahas cara menginstal program video editing ini. Studio 8 secara Auto Installation Bundle, artinya anda
Pertanyaan yang sering muncul adalah Setelah saya install menginstal Pinnacle Studio 8 lalu Pinnacle secara otomatis
Pinnacle Studio 8 ini program Hollywood fx-nya kok akan menginstal program-program bundlenya.
nggak ada?
JAVA WO R KS H O P
Java dan Port I/O
Pada dasarnya Java tidak mempunyai kemampuan untuk membaca/menulis
dari/atau ke port I/O. Untuk itu, Fitrianto Halim (fitriantoh@hotmail.com) membahas cara
menggunakan C++ untuk memberikan fungsi itu pada Java.
PC SEMAKIN CEPAT, TETAPI /*
W
ALAUPUN PERKEMBANGAN
ada beberapa peninggalan dari generasi sebelumnya * Class: myIO
(PC XT dan PC AT) yang masih dipertahankan. * Method: outputb
Beberapa di antaranya adalah port-port paralel, serial, timer, * Signature: (II)V
PC speaker, dan lain-lain. */
Pada artikel ini, penulis membahas cara membaca dari dan/ JNIEXPORT void JNICALL Java_myIO_outputb
atau menulis ke port I/O (Input/Output) menggunakan Java (JNIEnv *, jobject, jint, jint);
yang dikombinasikan dengan C++ untuk bagian native-nya.
#ifdef __cplusplus
Sebagai contoh pemanfaatannya, akan disajikan cara mem- }
bangkitkan suara pada PC speaker. #endif
#endif
Kelas MyIO dan _io_.dll
Java pada dasarnya tidak mempunyai kemampuan untuk Sekarang, kita menginjak ke program yang ditulis dengan
membaca dari dan/atau menulis ke port I/O. Untuk itu, kita C++. Untuk lebih jelasnya, Anda dapat melihat listing file
harus membuat native-nya yang dibuat dengan C++. _io_.cpp berikut:
#include <conio.h>
Untuk lebih jelasnya, mari kita membuat kelas myIO (lihat #include "myIO.h"
listing file myIO.java) sebagai berikut:
class myIO { JNIEXPORT jint JNICALL Java_myIO_inputb
public native int inputb(int nport); (JNIEnv *env, jobject obj, jint nport) {
public native void outputb(int nport, int out); return _inp(nport);
static{ }
System.loadLibrary("_io_");
} JNIEXPORT void JNICALL Java_myIO_outputb
} (JNIEnv *env, jobject obj, jint nport, jint out) {
_outp(nport, out);
Compile myIO.java menggunakan perintah: }
javac myIO.java
Lalu, compile _io_.cpp dengan perintah berikut untuk
Karena kita akan membuat native-nya dengan C++ (dalam menghasilkan _io_.dll:
hal ini digunakan MS Visual C++ 6.0), maka ketikkan cl _io_.cpp /LD /Fe_io_.dll /Ic:\jdk1.3\include
perintah berikut untuk menghasilkan file header (file /Ic:\jdk1.3\include\win32
myIO.h): /Ic:\progra~1\micros~3\vc98\include
javah -jni myIO
Catatan:
Isi file myIO.h yang dihasilkan adalah sebagai berikut: • Ganti c:\progra~1\micros~3\vc98\include sesuai dengan
penempatan folder include dari Visual C++ yang anda
/* DO NOT EDIT THIS FILE - it is machine generated */ gunakan. Sebetulnya, kita bisa memasukkan long file
#include <jni.h> name, tetapi berhubung keterbatasan jumlah karakter
/* Header for class myIO */ pada command-line, maka hal itu tidak kami lakukan.
#ifndef _Included_myIO • Jika compiler tidak dapat menemukan file-file library,
#define _Included_myIO maka copy-kan file-file: Libcmt.lib, Oldnames.lib, dan
#ifdef __cplusplus Kernel32.lib ke current directory (directory tempat Anda
extern "C" { melakukan compile).
#endif Ingat, nantinya hanya file-file myIO.class dan _io_.dll yang
/* dipergunakan dalam aplikasi.
* Class: myIO
* Method: inputb Pembangkitan Suara pada PC Speaker
* Signature: (I)I Untuk membangkitkan suara pada PC speaker sebenarnya
*/ cukup mudah, yaitu dengan cara menghidupkan dan mema-
JNIEXPORT jint JNICALL Java_myIO_inputb tikan PC speaker secara bergantian dengan durasi yang sama.
(JNIEnv *, jobject, jint);
Umumnya, teknik yang digunakan adalah seperti yang di-
perlihatkan pada Gambar 1.
Gambar 1
(JAVA DAN PORT I/O), KITA
P
ADA ARTIKEL SEBELUMNYA
Langkah-langkahnya adalah: telah belajar cara membaca dari dan/atau menulis
ke port I/O (Input/Output) menggunakan Java
• Isi port 43h dengan: 10110110b atau sama dengan B6h.
disertai contoh pemanfaatannya, yaitu membangkitkan
• Isi port 42h dengan frekuensi pembagi, LSB dulu baru MSB.
suara pada PC speaker.
• Aktifkan bit-0 dan bit-1 dari port 61h.
Pada artikel kali ini, kita akan membahas pemanfaatan
Untuk menghentikannya cukup mudah, yaitu dengan menon- kelas myIO dan _io_.dll untuk tujuan yang lebih menarik
aktifkan bit-0 dan bit-1 dari port 61h. Misalkan, kita ingin lagi, yaitu pengendalian jarak jauh berbasis internet.
membangkitkan suara dengan frekuensi 1000Hz, maka cara
Perangkat yang akan kita kendalikan juga sederhana, karena
menghitung frekuensi pembagi adalah:
kita memanfaatkan port yang tersedia, yaitu Parallel Port.
1193180
Frekuensi Pembagi = ______________ = 1193 = 0429h Parallel Port
1000
Parallel Port (atau disebut juga Printer Port) umumnya
dimanfaatkan untuk melayani pencetak paralel. Port pa-
Berikut ini adalah program untuk menghidupkan suara ralel pada PC sekarang umumnya 1 buah (LPT1). Tabel 1
dengan frekuensi 1000Hz selama 5 detik (lihat file testIO.java): berisi alamat, sifat, dan nama port untuk LPT1:
class testIO {
public static void main(String[] args) { Tabel 1.
try { Alamat Sifat Nama
int in;
378h R/W Data port (DP)
myIO io = new myIO(); 37Ah R/W Printer control (PC)
io.outputb(0x43, 0xb6); 379h R Printer status (PS)
io.outputb(0x42, 0xa9);
io.outputb(0x42, 0x04);
in = io.inputb(0x61);
in = in | 0x03; Tabel 2 berisi no pin, nama dan sinyal pada soket D25-betina:
io.outputb(0x61, in);
Thread.sleep(5000); Tabel 2.
in = io.inputb(0x61);
in = in & 0xfc;
io.outputb(0x61, in); Pin # Nama Sinyal
} catch(InterruptedException e) { 2 DP-0 data bit-0
} 3 DP-1 data bit-1
} 4 DP-2 data bit-2
} 5 DP-3 data bit-3
6 DP-4 data bit-4
Untuk meng-compile-nya, gunakan perintah: 7 DP-5 data bit-5
javac testIO.java 8 DP-6 data bit-6
9 DP-7 data bit-7
Untuk menjalankannya, gunakan perintah:
java testIO 1 PC-0 strobe
14 PC-1 autofeed
16 PC-2 init
Penutup 17 PC-3 select
Anda dapat mengembangkan program di atas agar lebih
berguna, misalkan untuk membaca file yang berisi 15 PS-3 error
pasangan notasi dan durasinya. 13 PS-4 select
12 PS-5 paper end
Selamat mencoba 10 PS-6 acknowledge
dengan 11 PS-7 busy
Tip: Masukkan folder bin dari JDK dan Visual C++ ke 18 ... 25 ground
dalam PATH untuk memudahkan kompilasi.
JAVA WO R KS H O P
Remote Control dengan Servlet
Melanjutkan bahasan Java dan port I/O, Fitrianto Halim (fitriantoh@hotmail.com)
menunjukkan pembuatan suatu aplikasi untuk memanfaatkannya,
yaitu remote control berbasis Internet dengan memanfaatkan parallel port.
Yang perlu diperhatikan adalah kita harus me-reset Data Port Pada address bar ketik http://localhost/remote (Gambar 3),
ketika servlet pertama kali dipanggil sejak server dihidupkan. lalu pilih, Baca Status LED (Gambar 4).
Hal ini karema ketika komputer dihidupkan, BIOS melaku- Yang perlu diperhatikan adalah semua LED harus dalam
kan self-test yang salah satunya adalah untuk paralel port. keadaan padam, karena kondisi tersebut merupakan hasil
Untuk keperluan itu, gunakan method init(). Method init() inisialisasi (method init()).
hanya dijalankan sekali ketika servlet dipanggil pertama
kali sejak server (dalam hal ini Tomcat) dihidupkan.
Untuk menyalakan atau memadamkan LED mudah saja,
yaitu dengan memanfaatkan operasi-operasi logika seder-
hana. Untuk menyalakan LED, digunakan operasi OR de-
ngan 1. Sedangkan untuk memadamkan LED, diperguna-
kan operasi AND dengan 0. Untuk lebih jelasnya, Tabel 3.
Tabel 3.
Gambar 3 dan 4.
A B A or B A and B
0 0 1 0 Dapat juga gunakan DEBUG
0 1 1 0 untuk menguji, apakah per-
1 0 1 0 ubahan pada Data Port ter-
1 1 0 1 baca oleh servlet. Sebagai con-
Sebelum meng-compile-nya, jangan lupa untuk meng- toh, pada DEBUG berikan perintah o378, aa (Gambar 5),
copy file myIO.class ke folder classes dan _io_.dll ke lalu, pada browser lakukan refresh untuk melihat hasilnya
C:\WINDOWS (jangan salah!); serta atur setting untuk (Gambar 6).
CLASSPATH sebagai berikut:
set CLASSPATH= C:\jakarta-tomcat-3.2.3\lib\servlet.jar;C:
Pengujian
Anda dapat memasang rangkaian berikut pada soket untuk
printer yang terdapat pada PC Anda (Gambar 2). Gambar7, 8, dan 9
Jika Anda tidak sempat membuat rangkaian tersebut, Anda
dapat memanfaatkan DEBUG untuk melakukan pengujian.
Ada dua buah perintah yang akan kita gunakan, yaitu: I
untuk membaca dari suatu alamat port dan O untuk me-
nulis ke suatu alamat port. Keterangan lengkapnya bisa
Anda dapatkan dengan mengetikkan perintah ?.
WE B HAC K I N G
Kerawanan pada Port 80
World Wide Web merupakan bagian dari Internet yang paling populer, sehingga serangan paling
banyak terjadi lewat port 80 atau yang dikenal sebagai web hacking, berupa deface situs,
SQL injection, serta memanfaatkan kelemahan scripting maupun HTML form.
Internet merebak harum di Indonesia, bisa dikatakan mulai
A
RTIKEL INI DIANGKAT DARI BAHAN SEMINAR SECURITY
di Universitas Pelita Harapan yang dibawakan oleh pada hitungan tahun 90-an. Internet yang sebelumnya
S'to dari Jasakom. Terimakasih kepada S'to yang merupakan sebagai hal yang mustahil untuk dirasakan
telah memberikan izin menggunakan makalahnya untuk oleh rakyat kelas bawah, semakin terjangkau dengan laris-
ditulis ulang menjadi artikel ini. manisnya bermunculan warnet (warung internet).
Bicara mengenai web hacking, artikel ini membahasnya Ada ujaran yang mengatakan Kejahatan ada karena ada
dengan pendekatan 5W+1H (W What, Who, Why, When, kesempatan. Ujaran tersebut mungkin belum dapat dituju-
and Where + How). Jika salah urutan tak mengapalah. kan kepada pelaku web hacking. Dengan banyaknya keha-
diran warnet bahkan ada yang buka 24 jam, membuat web
WHAT: Apa itu Web Hacking? hacking dapat dilakukan kapan saja dan dimana saja, tanpa
Web hacking..., bukan hal baru lagi bagi jawara internet harus menunggu waktu.
(hacker) baik aliran putih maupun aliran hitam (cracker).
Apakah yang dimaksud dengan web hacking? Untuk men- HOW: Bagaimana Web Hacking Dilakukan?
dapatkan definisi kedua kata tersebut (w web dan hacking) Bagaimana seseorang melakukan web hacking? Internet
juga sebenarnya lumayan pusing. sudah hampir menjangkau segala sisi kehidupan yang ada
Secara semantik, web didefinisikan menjadi Data yang di- di dunia ini. Informasi mengenai web hacking dapat anda
representasikan di world wide web (Tim Berners-Lee, James temukan dengan berselancar ke Google. Google, search
Hendler, Ora Lassila. Scientific American, May 2001). Ada- engine yang terkenal menjawab pertanyaan Bagaimana.
pun hacking didefinisikan menjadi Tindakan di luar otoritas Dengan memasukkan kata (keyword) pada baris isian pen-
atau tindakan mematahkan/membobol mekanisme ke- carian maka anda akan dibawa ke tempat-tempat yang
amanan sebuah sistem informasi atau sistem jaringan berhubungan dengan web hacking. Anda tinggal memilih
http://www.tsl.state.tx.us/ld/pubs/compsecurity/glossary.html).
(h dan menyaringnya.
Jadi, singkatnya web hacking dapat diartikan Tindakan Seperti yang telah disinggung di atas, pelaku web hacking
menerobos mekanisme keamanan dari suatu sistem yang dapat siapa saja dan tanpa ada syarat-syarat tertentu. Hal
direpresentasikan dalam world wide web. ini disebabkan karena di internet terdapat banyak infor-
masi yang dapat diperoleh termasuk mengenai soal web
WHO: Siapa yang Melakukan Web Hacking? hacking. Informasi dapat berupa tutorial, tools, dan lain
sebagainya hingga akan membuat web hacking benar-benar
Menerobos mekanisme keamanan suatu jaringan, bukan-
mudah untuk dilakukan.
lah tindakan yang gampang untuk dilakukan. Jadi, siapa-
kah pelaku web hacking tersebut? Seiring perkembangan Unicode Bug pada Microsoft IIS
internet yang benar-benar pesat dan diiringi perkembang-
an security dan underground, membuat siapa saja dapat Untuk lebih menjelaskannya, mari kita tinjau masalah HOW
menjadi pelaku. Tidak ada keharusan bahwa pelaku web dari web hacking dengan bentuk studi kasus. Sebagai bahan
hacking adalah orang yang pintar komputer dan internet, studi kita yaitu e-commerce web. Mengapa pilihan ditetap-
atau lain sebagainya. Anda, saya, atau dia bisa saja menjadi kan e-commerce web? Karena e-commerce web merupa-
pelakunya. kan pilihan yang populer di kalangan para pelaku web hacking.
Gambar 1 menunjukkan contoh situs dalam studi kasus kita.
WHY: Mengapa Melakukan Web Hacking?
Jika semua bisa menjadi pelaku web hacking, tentu ada
alasan jika sampai melakukannya dan pertanyaan adalah
Mengapa? Jika pertanyaannya adalah Mengapa, biasanya
jawabannya adalah Karena. Ada banyak alasan orang
melakukan web hacking, diantaranya adalah:
1. Wanna Be A Hacker (ingin menjadi seorang hacker).
2. Mendapatkan popularitas.
3. Ingin mendapat puijian.
Alasan-alasan tersebut di atas cukup bisa dicerna logika.
Tapi bagaimana dengan alasan-alasan yang unik seperti
Nggak ada kerjaan, Suka-suka, Apa urusan loe, dan lain
sebagainya. Menurut hemat penulis, tanpa suatu alasan
apapun seseorang dapat saja melakukan web hacking.
WHEN and WHERE: Kapan dan Dimana? Gambar 1. Situs e-commerce dalam studi kasus kita.
Men-deface situs web lewat bug unicode Microsoft IIS ini Dengan memanfaatkan hanya perintah-perintah dasar dari
pernah dibahas cukup terinci di NeoTek III/03. Untuk itu HTTP, seorang hacker dapat men-deface suatu situs web.
silakan download file format PDF dari artikel ini lewat Berikut ini adalah perintah-perintah yang dijalankannya:
arsip NeoTek di www.neotek.co.id. OPTIONS * HTTP/1.1
Opsi Baca/Tulis pada Protokol HTTP PUT /file.ext HTTP/1.1
Host: hostname
Untuk mengamanankan sever IIS dari deface, server harus Content-Length: jumlahkarakter data yang dikirim
secara berkala di-update dengan sercvice pack dan hotfix
terbaru. Lebih baik lagi kalau situs e-commerce itu juga Terlihat bahwa hal ini terjadi karena setting server yang
dilindungi oleh firewall dan IDS (intrusion detection system). tidak sempurna. Untuk itu perlu dilakukan beberapa hal:
Tapi semua itu ternyata belum menjamin keamanan situs e- • Setting untuk menulis dari HTTP dihilangkan
commerce dari deface. Seperti pada contoh kasus kita, • Menggunakan security template dari Microsoft, NSA,
ternyata setelah semua usaha di atas, ternyata masih terkena dan lain sebagainya.
deface juga. Walaupun kini deface yang terjadi tidak terlalu
mempunyai nilai seni, tetapi tetap efektif (Gambar 4). • Menggunakan berbagai dokument setting server agar
aman
SQL Injection
Setting server dengan benar memang akan mengamankan
e-commerce web dari serangan deface, tetapi bukan berarti
semuanya sudah aman sekarang.
Situs e-commerce yang menggunakan Microsoft IIS juga
menggunakan database access dengan Micosoft SQL
server dan dibandingkan dengan SQL server yang lain,
MS SQL server mempunyai kelemahan yang memung-
kinkan seseorang tanpa account dapat masuk dan lolos
verifikasi dari MS SQL server..
Dari segi kerugian, hal ini lebih serius, sebab bisa saja data
sensitif seperti nomor kartu kredit serta lainnya bocor!
Pada saat seseorang berusaha masuk ke situs e-commerce,
biasanya akan disambut dengan halaman login yang meng-
haruskan pemakai memasukkan login name dan password
Gambar 4. Masih bisa terkena deface, padahal sudah
(Gambar 5).
menginstal Service Pack dan hotfix terbaru dari Microsoft, serta
melindungi server dengan firewall dan IDS.
WE B HAC K I N G
Database Hacking: SQL Injection
Lebih lanjut mengenai web hacking, Andi Ismayadi (Fuzk3_kendi@yahoo.com) membahas
lebih jauh tentang SQL Injection, sebagai oleh-olehnya dari tutorial on-line
di IRC chatroom #neoteker di Dal.net.
ETELAH BANYAKNYA BUG-BUG YANG BETEBARAN DI Gambar 1. Input string ' or
S internet dari unicode hingga yang baru-baru ini
menggemparkan jagad maya yaitu RPC Dcom,
1=1-- yang berbahaya...
Bisa saja anda ganti dengan allinurl:.co.id atau net atau org,
or.id, sampai allinurl:.fr/admin.asp semua tergantung krea-
tivitas anda dalam mencari target menggunakan Google, dan
yang terpenting dari semua itu adalah anda harus tahu di
mana harus menginput string SQL tadi, misalnya di member
login, user login, dan bahkan dapat pula di search product.
Praktek SQL Injection 4. Setelah itu anda klik OK, dan account anda telah terbentuk.
Bagaimana misalnya kalau anda menemukan sebuah situs yang
menyediakan jasa kirim SMS dari web, namun setiap SMS ada
perhitungannya dalam sebuah string, dan kita harus membayar
dengan kartu kredit. Kita tidak akan melakukan carding disini,
namun kita dapat meng-inject database-nya agar string SMS
tadi diberi nilai dan bisa dipakai untuk mengirim SMS.
Untuk mengetahui lebih lanjut dari serangan SQL Injection,
perhatikan SQL Injection dari sebuah situs yang memberi
layanan SMS web ke handphone ini. Disini akan dijelaskan
string dasar SQL yang dapat berubah menjadi hal yang mem-
bahayakan suatu situs.
1. Cari target dengan Google, keywordnya
allinurl:.com/sendsms.asp. Inilah URL yang sering dipakai oleh
web site yang menyediakan jasa mengirim SMS.
Apabila anda adalah web admin, semua ini dapat anda hindari
8. Karena sejak awal kita melakukan SQL Injection ini untuk me-
nambah Credits (string khusus penghitung SMS) di situs ini,
dengan men-disable special character atau wild character di
maka kita ubah account kita dengan injeksi ini. situs anda, dan membatasi input char.
Perintah UPDATE adalah perintah SQl yang berguna untuk Seperti halnya dengan mempelajari bahasa assembly untuk
mengubah atau memperbaiki data dalam suatu field di table meng-crack suatu program, mempelajari SQL tidaklah sulit
yang memuat field itu, dengan kode dan SQL Injection ini dapat meningkatan minat untuk mem-
' UPDATE [nama_table] set [field1] = [nilai1] where kondisi ; pelajari bahasa pemrograman database ini, agar nantinya
dapat menghasilkan sesuatu.
Jadi dengan info yang kita dapatkan dari error page yang tadi
maka kita dapat membuat string-nya Untuk melengkapi artikel ini silahkan anda mengunjungi
' UPDATE YepCell_membersDB set Credits = 100 where
link-link yang membahas tentang SQL Injection ini:
UserID ='yamakasi' www.sqlsecurity.com
bosen.net/releases/?id=35
kita klik submit lalu... www.spidynamics.com
www.sensepost.com
www.sony-ak.com
www.neoteker.or.id
Tutorial ini diharapkan hanya sebagai bahan pembelajaran dan
penulis tidak bertanggung jawab atas perbuatan yang ditimbulkan
dari artikel ini.
Dalam sebuah perbincangan di IRC ada seseorang dengan nickname
ftp_geo, dia bilang sekarang u belajar SQL untuk hacking tapi nanti
u make SQL untuk menghasilkan duit.
Regardz kepada sony-ak dan alphacentury atas tutor online-nya,
serta target-targetnya.
WE B HAC K I N G
Comersus Shopping Cart Bug
Andi Ismayadi (Fuzk3_kendi@yahoo.com) membahas Comersus, shopping cart yang banyak
digunakan dalam situs-situs e-commerce. Database-nya dalam format Microsoft Access, yang
mudah di-download dan tool untuk meng-crack password database itu banyak tersedia.
ETELAH ADANYA BUG PADA CART32, KINI KEMBALI sedikit script pada browser kita, dapat men-download
S muncul bug pada shopcart baru yaitu Comersus.
Comersus merupakan salah satu software shopping
database Comersus itu. Bug ini pertama kali dipublikasi-
kan di Indonesia oleh sebuah Komunitas Security Indo-
cart berbasis ASP yang sifatnya open source, meskipun nesia http://bosen.net.
tetap komersial (bug Cart32 dan kelemahan Shopper.cgi Untuk mengeksploitasi bug ini anda perlu dibantu tool
dibahas di NeoTek III/05). yang dapat men-decrypt isi database tersebut. Tool itu
Comersus pertama kali di-release pada tahun 2000. Bela- dapat anda download di:
kangan ini diketahui memiliki sedikit kelemahan pada sis- http://bosen.net/releases/DecryptComersus.exe
temnya, seperti halnya kompatriotnya vsap dulu yang
sampai sekarang juga memiliki masalah yang hampir sama. Ada dua tools di sini. Yang satu merupakan programnya
dan satunya lagi teks yang berisi decrypter. Mari kita
Kelemahannya adalah kesalahan admin meletakkan infor- bahas lebih jauh tentang bug yang satu ini.
masi database-nya pada direktori publik sehingga dengan
bagian admin, credit card, atau costumer-nya untuk melihat data-data berharga
di sini. Database ini di-encrypt dan dilindungi password sehingga anda tidak
dapat langsung menerjemahkannya tanpa decrypter yang anda download.
VI S UAL BAS I C WO R KS H O P
Email Client dengan WINSOCK
Dalam Visual Basic Workshop kali ini, Wawan Ridwan (iniemailwawan@telkom.net)
kembali membahas cara membuat email client sendiri.
Kali ini dengan memanfaatkan Microsoft Winsock Control.
Finishing
Langkah berikutnya adalah memasukkan kode ke tombol
CmdKirim. Tombol ini yang nantinya akan menjadi pe-
micu pengiriman email kita. Silakan double-click tombol
tersebut dan masukkan kode program berikut ini:
Private Sub CmdKirim_Click()
If PeriksaForm() Then
KirimEmailnyaDong txtEmailServer.Text, txtNamaPengirim.Text,
txtEmailPengirim.Text, txtNamaPenerima.Text,
txtEmailPenerima.Text, txtJudul.Text, txtPesan.Text
StatusTxt.Caption = "Email dikirim..."
Beep
Close
End If
P
ERNAHKAH ANDA TERPIKIR UNTUK MENGENDALIKAN
End Sub
komputer orang lain atau mengutak-atik kompu-
ter orang lain tanpa menyentuh komputernya?
Error Checking Kegiatan remote control ini selalu merupakan topik yang
Jika koneksi mengalamai kegagalan Winsock akan mem- menarik, terlihat dari populernya software remote control
berikan event Winsock_Error. Untuk mengetahui apakah terang seperti VNC, Virtual PC, ataupun COOL! Remote
koneksi berhasil atau tidak kita perlu memasangkan kode Control, maupun yang gelap seperti misalnya berbagai
kecil dalam event tersebut. Double-click pada control jenis trojan.
Winsock dan pilih Private Sub Winsock1_Error, selanjut- Membuat program remote control sendiri sebenarnya mu-
nya ketik kode berikut ini: dah saja dan pada kesempatan kali ini penulis akan men-
Private Sub Winsock1_Error(ByVal Number As Integer, Description As
coba membahasnya untuk para pembaca setia NeoTek.
String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile Sebagai catatan, dari apa yang nantinya akan anda coba
As String, ByVal HelpContext As Long, CancelDisplay As Boolean) sesuai dengan yang telah diterangkan, jika sampai terjadi
MsgBox "Winsock Error: #" & Number & vbCrLf & _
Description hal-hal yang tidak diinginkan, janganlah menyalahkan
End Sub penulis. Juga demi menjaga kreativitas anda, penulis hanya
menyampaikan hal-hal yang dianggap perlu saja sesuai
Silakan Coba Kirim Email dengan informasi yang ingin disampaikan sebagai tam-
bahan pengetahuan bagi kita semua.
Sampai di sini program kita sudah selesai. Silakan anda
coba dengan mengisi form pengiriman email kita pada Microsoft Visual Basic
kolom-kolom yang semestinya. Dan tekan tombol kirim.
Program remote control berikut yang akan kita bahas kali
Dengan Microsoft Winsock Control selain untuk membuat ini, aslinya bukan buatan penulis sendiri, melainkan buat-
program emil client anda bisa membuat program program an teman belajar bersama penulis dalam mempelajari pe-
client server lain, seperti chat, file upload/download, dll. mrograman Visual Basic. Kami memang belajar bersama-
Selamat berkarya! sama dalam satu komputer, berbagai sumber yang yang
kami gali dari internet, diskusi bersama jika menemukan
kesulitan, dan lain-lain.
Baru Mengenal Visual Basic?
Penulis mengharapkan, semoga pembaca telah memiliki
Bagi yang baru mengenal Visual basic, ada baiknya
sedikit dasar pemograman ini agar tidak kesulitan dalam
membaca dulu artikel-artikel sebelumnya, khususnya
pembuatannya. Dalam pembahasan yang lalu-lalu penulis
dalam seri Visual basic Workshop sebagai berikut:
sendiri sudah berapa kali mengangkat mengenai pemro-
VB Workshop: Mengenal Visual Basic graman Visual basic.
NeoTek IV/02
VB Workshop: Membuat Notepad Sendiri Namun bila anda benar-benar awam dalam hal pemro-
NeoTek IV/03 graman Visual Basic, silakan buka kembali NeoTek IV/02
Visual Basic: Fake Program Buatan Sendiri yang membahas dasar-dasar Visual Basic.
NeoTek III/11
Sama seperti program remote control pada umumnya,
Visual Basic: Program Jahat Buatan Sendiri yang terdiri dari dua file *.exe yaitu:
NeoTek III/11
VB Workshop: Program Penggoda yang Berbahaya 1. Server.exe; sang Private Sub Form_Load()
NeoTek III/12 korban (yang di- Winsock1.LocalPort = 5578
VB Workshop: Password Cracker Buatan Sendiri tanam di komputer Winsock1.Listen
NeoTek IV/02 orang yang nan- End Sub
VI S UAL BAS I C WO R KS H O P
Remote Control Buatan Sendiri
MA Rody Candera (odyxb@melva.org) bersama rekannya h3r01n@hotmail.com
berbagi pengalaman mengembangkan program remote control dengan Visual Basic
yang dapat anda kembangkan sendiri menjadi trojan.
VI S UAL BAS I C WO R KS H O P
Screen Saver Buatan Sendiri
Dalam Visual Basic Workshop kali ini, MA Rody Candera (odyxb@melva.org) membahas cara
memanfaatkan untuk membuat screen saver sendiri yang akan menjadi komponen untuk
program-program lain di bahasan mendatang
Form1
Klik Form untuk memulai menentu-
kan properties yang akan diwakilkan-
nya nanti. Pada windows Properties
cari dan sorot bagian BackColor, pilih
warna sesuai keinginan anda. Dalam
hal ini sebagai contoh dipilih warna
hitam. Untuk properties Form1, cukup
itu saja yang dilakukan
Timer
Anda sesuai untuk properties dari tiap-tiap komponen
timer berdasarkan tabel berikut:
No. Komponen Properties Nilai
1. Timer 1 Interval 0
2. Timer 2 Interval 20000
3. Timer 3 Interval 0
4. Timer 4 Interval 0
Tag 0
5. Timer 5 Interval 0
6. Timer 6 Interval 0
7. Timer 7 Interval 100
Tag 0
8. Timer 8 Interval 5000
Tag 0
9. Timer 9 Interval 1
10. Timer 10 Interval 1
11. Timer 11 Interval 1
12. Timer 12 Interval 1000
13. Timer 13 Interval 10
14. Timer 14 Interval 1
15. Timer 15 Interval 1
16. Timer 16 Interval 1
Image
Sebelum menentukan properties tiap-tiap komponen image,
Gambar 4 dan 5. Timer dan Image sebagai control array. anda membutuhkan sebuah icon. Untuk contoh beri-
kut penulis menggunakan contoh icon yang telah di-
sediakan oleh Microsoft Studio yaitu icon Smile.
3. Properties Untuk tiap komponen image properties yang ditentukan
Tahap berikutnya adalah menentukan properties. Ini pen- diperlukan Picture dan cari icon yang sesuai.
ting dilakukan demi menghasilkan program yang sesuai
dengan anda inginkan. Perhatikan window properties yang
terdapat di sebelah kanan dari window Visual Studio anda.
Klik event Properties untuk menentukan event yang akan
ditentukan propertiesnya (perhatikan Gambar 6b kedua
dari point ini).
a b c
Gambar 6. Menentukan properties. Gambar 8. Menggunakan suatu icon untuk komponen Image.
DELPHI WORKSHOP
Gambar 9.
Inno Setup
Dalam Delphi Workshop kali ini, Happy
Candraleka (cakrabirawa@mail.ru) membahas
cara mengemas program karya anda menjadi
suatu installer tunggal.
Coding
P seorang software developer akan mengemas program
yang dibuatnya dalam bentuk installer. Dengan installer,
Anda sekarang berada pada tahap akhir yaitu menuliskan maka distribusi paket software hanya berupa file setup tunggal.
kode program. List kode program selengkapnya dapat anda Di samping itu, end-user yang akan menggunakan program
lihat pada source yang disertakan pada CD. tersebut cukup mengikuti wizard instalasi sehingga proses
instalasi program pada komputernya berjalan secara otomatis
Untuk menuliskan dan memudahkan.
kode, penempatan
Pada tutorial kali ini
penulisannya pada
akan digunakan pe-
kode editor. Untuk
rangkat pembuat
mengaktifkan kode installer Inno Setup
editor, bisa anda versi 3.0.7 yang
mulai dari menu karya Jordan Russell.
standar View > Alasan dipilihnya
Code atau mengklik perangkat ini adalah
gambar pertama di karena merupakan
window Project. perangkat untuk
membuat installer
yang cukup baik,
memenuhi kebu-
tuhan para software DOWNLOAD & INSTALASI
developer secara
umum dalam mem-
1 Masuk ke http://www.jrsoftware.org
untuk mendapatkan Inno Setup 3.
buat installer. File yang Anda dapatkan adalah
isetup-3.0.7.exe (921 KB). Install
Perlu digarisbawahi perangkat tersebut ke komputer
lagi, perangkat ini Anda. Ikuti saja wizard yang telah
disediakan.
Gambar 10 dan 11. tersedia sebagai
freeware. Lebih
Uji Coba hebohnya lagi,
Jordan Russell ber-
Selesai sudah proyek anda, silakan anda uji untuk melihat baik hati memper-
hasilnya... Tekan tombol F5 pada keyboard kurang lebih silakan siapa saja
hasilnya seperti yang terlihat pada Gambar 12: untuk memperoleh
kode sumber dari
Inno Setup yang
dalam bahasa Delphi.
Kita akan membuat
installer untuk pro-
gram Tweakid.exe
yang pernah dibahas
pada NeoTek III/8.
File lain yang dibu-
tuhkan dalam simu- MULAI MEMBUAT INSTALLER
lasi ini adalah file
License.txt dan file
2 Jalankan Inno Setup 3 yang telah
terinstal. Pada kotak dialog
Welcome, pilih opsi Create a new
General.txt yang ada script file using the Script Wizard,
di folder Windows. tekan tombol OK. Akan tampil
Ketiganya hanya jendela Inno Setup Script Wizard,
sebagai contoh, anda tekan saja tombol Next.
ganti dengan file
Gambar 12. lain yang anda buat.
D E LP H I WO R KS H O P
Cyber Merpati Email Client
Ada beberapa cara membuat email client sendiri. Selain menggunakan Visual Basic pada
artikel-artikel sebelumnya, dapat juga menggunakan Delphi 7.
Happy Candraleka (cakrabirawa@mail.ru) membahasnya untuk anda.
MAIL MERUPAKAN SALAH SATU LAYANAN INTERNET YANG Perancangan Antarmuka Cyber Merpati
E paling tua dan paling banyak digunakan. Umum-
nya seorang user dapat mengirimkan email dengan
Penulis menganggap bahwa Borland Delphi 7 telah ter-
instal pada komputer anda. Sebagai tahap pertama anda
dua cara, yaitu melalui website yang menyediakan layanan akan merancang tampilan aplikasi Cyber Merpati. Peran-
email berbasis web atau dengan menggunakan program cangan antarmuka/tampilan merupakan hal yang paling
email client. Untuk program email client ini, yang paling
awal dilakukan dalam rangkaian pemrograman berbasis
banyak dan populer digunakan adalah Outlook Express GUI (Graphical User Interface). Berdasarkan tabel berikut
buah karya Microsoft. ini tempatkan beberapa komponen pada bidang Form1.
Tanpa bermaksud untuk menandingi Microsoft, kiranya perlu
juga pembaca membuat program sederhana yang dapat ber- Tabel 1.
fungsi untuk mengirimkan email. Meski sederhana tetapi Komponen Tempat di Component Pallete Jumlah
akan terdapat rasa puas karena Anda sendiri dapat membuat TLabel Pallete Standard 9
aplikasi untuk mengirim email. Terlebih lagi karya Anda TEdit Pallete Standard 6
tersebut adalah legal, ketimbang memakai Outlook Express TMemo Pallete Standard 1
tetapi hasil bajakan. TPanel Pallete Standard 1
Pada bahasan ini Anda akan penulis bimbing untuk mem- TButton Pallete Standard 4
TIdMessage Pallete Indy Misc 1
buat sebuah aplikasi sederhana untuk mengirim email TIdSMTP Pallete Indy Clients 1
layaknya sebuah email client. Bahasa dan compiler yang
digunakan adalah Borland Delphi 7, yang merupakan versi
Delphi yang terkini. Pada versi Delphi ini terdapat kompo- Selanjutnya Anda dapat mengatur tata letak komponen-
nen Indy versi 9.00.10 yang merupakan inti dalam aplikasi komponen tersebut seperti terlihat pada Gambar 2. Anda
yang akan kita buat ini. Kita namakan saja aplikasi kita ini dapat mengklik dan men-drag satu komponen dan memin-
dengan Cyber Merpati, untuk menghargai burung merpati dahkannya ke posisi yang lain. Perhatikan saja Gambar 2.
atas jasanya sebagai pengirim surat di masa susah dulu.
Gambar 2. Tata
letak komponen-
Menjalankan Borland Delphi 7 komponen.
Tabel 2 Hal yang sama juga pada komponen Button4. Kode yang
ditambahkan adalah
Komponen Properti Nilai
Close;
Label1 Caption Host
Label2 Caption User Name Sekarang klik pada komponen IdSMTP1. Pada Object
Label3 Caption Password Inspector pilih tab Event. Klik ganda pada Event
Label4 Caption From OnConnected. Tambahkan kode sederhana ini.
Label5 Caption To
Label6 Caption Subject Label9.Caption := 'Hey.., already connected';
Label7 Caption Body
Label8 Caption Status Lakukan juga pada Event OnDisconnected. Tambahkan
Label9 Caption kode ini
Panel1 Caption Label9.Caption := 'Disconnected. Sayoonaraa';
Height 3
Width 421 Sampai di sini segala sesuatunya selesai. Anda tinggal meng-
Button1 Caption Connect compile-nya untuk menjalankan program Cyber Merpati.
Button2 Caption Send Pilih menu Run > Run, atau dengan menekan tombol F9
Button3 Caption Disconnect pada keyboard. Borland Delphi 7 akan menghasilkan file
Button4 Caption Close executable yang siap dijalankan di komputer lain tanpa
Memo1 Height 185 perlu meng-install Delphi di mesin sasaran.
Width 417
Form1 Caption Cyber Merpati Contoh penggunaannya akan penulis paparkan di sini.
Misal Anda mempunyai email account saya@yahoo.com.sg
Gambar 3. akan mengirim email ke tujuan@dimana.co.id. Isikan pada
Tampilan Cyber bagian Host dengan smtp.yahoo.com.sg (host name email
Merpati. anda), User Name dengan saya, password dengan password
anda sendiri, di kotak From isikan dengan email Anda
saya@yahoo.com.sg, dst.
Lanjutkan dengan menekan tombol Connect sampai status
menampilkan Hey.., already connected. Ikuti dengan me-
nekan tombol Send. Bila pengiriman berhasil, maka status
akan menampilkan Message sent successfully.
C++ WO R KS H O P
Pengkodean Base64
Dewanata (m_strdewanata@yahoo.com) menjayikan pengodean Base64
sebagai pelengkap rangkaian artikel keylogger yang telah selesai dimuat
sejak NeoTek III/8 sampai dengan NeoTek IV/4
ASE64 ADALAH STANDAR PENGKODEAN (ENCODING) YANG 3. Pengelompokan
B umum dijumpai di Internet. Walaupun Base64 ka-
dang juga disebut sebagai salah satu tipe enkripsi
Mengelompokan rangkaian binari menjadi beberapa kelom-
pok yang masing-masing berisikan enam karakter binari.
Base64 encryption), metode ini sebenarnya tidak melaku-
(B Contoh kita akan menjadi: 010011 000100 100101 000001
kan proses enkripsi data. Base64 adalah suatu standar atau
metode yang digunakan untuk merepresentasikan data da- 4. Ubah ke desimal
lam format tertentu. Sebagai analogi, anda dapat memban-
dingkannya dengan format sistem bilangan binari, heksa, Melakukan proses konversi masing-masing kelompok bi-
atau yang lainnya. nary yang dihasilkan oleh langkah sebelumnya ke angka
desimal.
Salah satu contoh pengunaan pengkodean ini adalah dalam
pengiriman data SMTP (pengiriman email). Di proses Untuk contoh kita:
tersebut, ada kalanya server SMTP mewajibkan pengirim ter- 010011 → 19
otentikasi sebelum melakukan pengiriman email. Untuk itu, 000100 → 4
username dan password si pengirim harus dikirimkan ke 100101 → 37
server. Data tersebut bisa dikirimkan dalam berbagai format, 000001 →' 1
tergantung permintaan server. Namun pada umumnya
format pengkodean yang digunakan adalah Base64. 5. Ubah ke karakter
Merepresentasikan setiap desimal ke karakter yang terbaca
Proses Pengkodean (readable characters).
Langkah-langkah dasar dalam proses pengkodean: Untuk itu digunakan array karakter Base64 sebagai berikut:
1. Ubah ke desimal ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnop
2. Ubah ke binari qrstuvwxyz0123456789+/
3. Pengelompokan
4. Ubah ke desimal Pencarian karakter yang mewakili angka desimal kita ada-
5. Ubah ke karakter lah berdasarkan indeksnya.
Untuk menjelaskan proses di atas, ada baiknya kita lang- Terlihat bahwa array tersebut akan dapat mewakili setiap
sung mencoba melakukan proses pengkodean langkah demi nilai desimal yang dihasilkan oleh langkah sebelumnya ka-
langkah, dengan menggunakan satu contoh. Untuk mudah- rena cakupan nilai desimal langkah empat adalah 0 (binary
nya, mari kita jadikan string LIA sebagai contoh string 000000) s/d 63 (binary 111111).
yang akan dikodekan menggunakan metode ini. Untuk contoh kita, konversi akan menghasilkan string TElB.
1. Ubah ke desimal 19 → T
4 → E
Proses untuk mengonversi setiap karakter string menjadi 37 → l
representasi angka desimal. Jika menggunakan C++, maka 1 → B
konversi ini dapat dilakukan dengan memanggil fungsi
int(c), dengan c adalah karakter yang akan dikonversi. Demikian, telah dijelaskan langkah-langkah utama dalam
proses pengkodean Base64.
Contoh:
L → 76 Di bawah ini akan dijelaskan satu proses tambahan yang
I → 73 dapat terjadi akibat sifat pengelompokan string binary men-
A → 65 jadi enam karakter binary, yang dilakukan di langkah tiga.
Setelah langkah dua dijalankan output yang dihasilkan ada- CBase64Coder() dan ~CBase64Coder() adalah constructor dan
lah 0100110001001001. destructor class ini.
Fungsi SetPlainChar() adalah fungsi untuk memasukkan string
Ketika dilakukan langkah ketiga, maka output-nya adalah yang akan dikodekan.
010011 000100 1001.
Fungsi Encode() adalah fungsi untuk memulai proses pengkodean.
Terlihat bahwa kelompok terakhir (1001) akan kurang dari Fungsi GetCodedChar() adalah fungsi untuk mendapatkan string
enam karakter binari. hasil pengkodean.
Untuk menghindari hal tersebut, maka kita perlu melaku- Private member:
kan padding dengan langkah-langkah sebagai berikut: Variabel npad digunakan untuk menyimpan informasi banyak-
nya padding yang diperlukan.
1. Tambahkan binari 0 sehingga jumlah karakter menjadi
plain_char adalah variabel yang menyimpan string sebelum
habis dibagi tiga. dikodekan.
Mari kita terapkan di contoh di atas. Pada string LI, pan- coded_char digunakan untuk menyimpan string yang telah
jang string adalah 2. Agar habis dibagi tiga, maka perlu dikodekan.
ditambahkan 1 (satu) karakter tambahan, atau 8 (delapan) basis_64 adalah string Base64 yang digunakan untuk mengonversi
karakter binari 0 tambahan. Lihat implementasinya di desimal ke karakter.
bawah ini. bin_to_six_char() fungsi untuk mengelompokkan rangkaian
binary menjadi per enam karakter binary.
01001100 01001001 00000000
bin_to_dec() fungsi untuk mengonversi string binary menjadi
Keterangan: desimal.
String binari pertama adalah representasi binari dari 'L' char_to_bin() fungsi untuk mengonversi string karakter ASCII
String binari kedua adalah representasi binari dari 'I' menjadi string binary.
String binari ketiga (bergarisbawah) adalah tambahan yang dec_to_bin() fungsi untuk konversi desimal ke format binary.
dimaksud.
Berikut ini (List 2) adalah implementasi class kita. Perhati-
2. Lanjutkan ke langkah selanjutnya. kan bahwa antisipisi kemungkinan penggunaan padding
telah dimulai sejak awal pada fungsi SetPlainChar(). Penam-
Yaitu Langkah 4: Ubah ke desimal dan Langkah 5: Ubah ke bahan padding itu sendiri dilakukan di fungsi char_to_bin().
karakter. Akan dihasilkan output akhir sebagai berikut:
TEkA. Perhatikan, karakter A di akhir output adalah hasil // Base64Coder.cpp
// By Dewanata m_strdewanata@yahoo.com
dari proses padding.
3. Ganti karakter padding CBase64Coder::CBase64Coder()
{
Sesuai dengan jumlah karakter tambahan, ganti karakter A npad=0;
yang dihasilkan akibat proses padding menjadi =. Untuk basis_64 = new char[65];
contoh kita: TEkA akan menjadi TEk= strcpy(basis_64,
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");
Pemrograman
Setelah menguasai teori, mari kita mengimplementasikan- //
nya ke sebuah program. Seperti biasa, sebaiknya data dan 0123456789012345678901234567890123456789012345678901234567890123
fungsi dikapsulasi ke dalam satu class. Fungsi-fungsi yang }
diekspos ke publik adalah sekedar fungsi get/set. Untuk
artikel ini, penulis telah membuat satu class sebagai contoh CBase64Coder::~CBase64Coder()
implementasi. Contoh ini dibuat sesederhana mungkin {
dengan lebih menekankan pada penjelasan teori. Source delete [] basis_64;
code lengkap disertakan dalam CD NeoTek kali ini. delete [] coded_char;
delete [] plain_char;
Perhatikan prototipe class pada List 1. }
Public member: // decimal to binary '01'
char * CBase64Coder::dec_to_bin(int dec_in)
{
// Base64Coder.h char * cbin = new char[8+1];
memset(cbin,0,8+1);
class CBase64Coder
{
int dec_step;
public:
CBase64Coder () ; for(int i=0; i<8; i++){
virtual ~CBase64Coder () ; dec_step = pow(2,8-i-1);
void SetPlainChar(char * c); if(dec_in>=dec_step){
void Encode(); cbin[i] = '1';
char * GetCodedChar(); dec_in -=dec_step;
} else
private: cbin[i] = '0';
int npad; }
char * plain_char; return cbin;
char * coded_char; }
char * basis_64;
char * bin_to_six_char(char * bin_in); // string to binary '01'
int bin_to_dec(char * bin_in); // 'Hello' will be '0100100001100101011011000110110001101111' BEFORE PADDING
char * char_to_bin(char * char_in); char * CBase64Coder::char_to_bin(char *char_in)
char * dec_to_bin(int dec_in); {
}; int clen = strlen(char_in);
List 1 char * partchar = new char[8+1];
} CBase64Coder cbase;
cbase.SetPlainChar(plain_char);
char * CBase64Coder::bin_to_six_char(char *bin_in) cbase.Encode();
{
printf("coded: %s\n\n\n",cbase.GetCodedChar());
int i=0; return 0;
int j-0 } List 3
int k=0;
int len=strlen(bin_in);
int len2=len/6 + 1;
while(i<len){
memset(chtemp,0,6+1);
while(bin_in[i] && j<6){
chtemp[j]=bin_in[i];
j++;
i++;
} Gambar 1.
int m=bin_to_dec(chtemp);
result[k] = basis_64[m];
j=0;
k++; Rangkaian Artikel Keylogger
} Artikel ini merupakan rangkaian artikel tentang pembu-
atan keylogger yang dimuat di nomor-nomor NeoTek sbb:
// replace all paddings to '='
for(i=0; i<npad; i++) result[len2-i-2]='='; C++ Workshop: Membuat Sendiri Keylogger
NeoTek III/8
delete [] chtemp; Keylogger v. 2.0: Modifikasi srv32.exe dan srv32.dll
return result; NeoTek III/12
} Hasil Intersepsi Keylogger Dikirim Otomatis ke Pemasang
NeoTek IV/1
void CBase64Coder::SetPlainChar(char *c) SMTP untuk Keylogger: Menggunakan Subscribed SMTP
{ NeoTek IV/2
plain_char = new char[strlen(c)+1]; SMTP untuk Keylogger: Mampu Mengirim Attachment
strcpy(plain_char, c); NeoTek IV/3
Keylogger dengan Kemampuan Kamuflase
// calculate padding NeoTek IV/4
int len=strlen(plain_char); Addendum untuk Keylogger: Format Base64
npad=len%3; NeoTek IV/5
G R AP H I CAL WE B D E S I G N (1)
Mendayagunakan Photoshop
thc_oi@neoteker.or.id membahas suatu proyek web design menggunakan Photoshop,
Image Ready, dan Dreamweaver yang disajikan secara berseri. Pada bagian pertama ini
dibahas pembentukan halaman web menggunakan Photoshop.
untuk header
content
link
dipilih agar nantinya pengunjung menampilkannya. Bentuk sebuah Caranya klik ikon
yang masih memakai resolusi garis (guide) sebagai pembentuk lalu tempatkan di bidang gambar
monitor 800x600 masih bisa me- layout dengan cara menariknya yang diinginkan (sesuai layout).
nikmati web anda dengan nyaman), dari ruler ke bidang gambar. Pada
mode RGB. Tapi nanti anda bisa tahap ini kita akan membuat Seleksi dengan klik ikon
mengubah ukuran sesuka hati, header ,link, dan frame untuk dari pojok kiri atas sampai pojok
asal memberikan keterangan, content. kanan bawah guide horizontal
misalnya best view @ 1024x768. kedua dari atas.
Hasil akhir
header
EFEK GRADASI
7 Supaya background yang dibuat ti-
dak terlihat kaku, maka perhalus
dengan memberi efek gradasi.
Caranya klik Add layer mask
pada layer pallete. Tekan tombol D
lalu X. Kemudian pilih gradient tool
Pada properties gradient tool pilih Tulisan Neoteker akan kita beri efek Kemudian klik Gradient color-nya.
opsi linear gradient, mode normal,
opacity 100%, dan tick semua opsi
(reverse, dither, transparency), sambil
8 agar lebih indah. Kembali bekerja
di layer teks Neoteker dengan cara 9 Atur dengan cara menggeser poin
warna putih yang berada di kanan
memilihnya di layer pallete. Kemu- bawah ke kiri.
menekan Shift kemudian tarik kur- dian klik icon f di layer pallete. Pilih
sor mulai dari ¾ bagian bawah la- bevel dan emboss (size 2 , soften 0).
yer yang telah diberi efek sampai Tick drop shadow untuk memberi
ke guide line ke dua dari atas. Ha- effect bayangan. Tick gradient Hasil dari header yang telah kita
silnya akan terlihat di atas. overlay. Atur sudut menjadi -90. buat tampak pada gambar di atas.
Tahap 1B: Menu Link
Rata dengan
guide
MEMBUAT MENU LINK Caranya dengan double click Set 1 lalu ubah namanya. Layer set berfungsi menyim-
10 Pada tutorial ini, kita membuat
link antara lain: About me, Gallery,
11 pan layer-layer dalam satu folder. Mirip dengan folder biasa yang kita kenal berisi file-
file. Hanya saja sebuah layer set tidak bisa menampung layer set lagi, dan hanya bisa
menampung layer-layer. Dengan kata lain tidak ada sublayer set seperti halnya
Contact, Links, dan Download.
subfolder. Dengan Set 1 terseleksi seperti Gambar sebelumnya buat teks (size dan
Buat layer set baru (Create new font face sesuai selera anda) About me dan tempatkan di sebelah kiri. Otomatis layer
layer set) dengan mengklik baru yang kita buat akan berada di bawah layer set.
tombol yang ada di layer
pallete. Tempatkan layer set tsb Kemudian dengan Move Tool (hot key V) geser tulisan About me sejajar rata kiri
ke paling atas. Anda juga dapat dengan guide yang ada di kiri. Di sini akan terasa fungsi guide sebagai penolong, yai-
mengubah nama layerset agar tu salah satunya sebagai pembantu meratakan suatu objek.
mudah diketahui apa isinya.
Hasil sementaranya terlihat di atas.
Untuk membuat tampilan seperti itu, lakukan Duplicate layer set. Masih pada set over, layer About me. Tekan Ctrl + U untuk
14 Caranya: klik kanan set yang ingin di-duplicate (dalam hal ini set
link) lalu beri nama over. Pastikan set over berada di bawah set
link. Bila belum berada di bawah set link, drag set over ke bawah
15 mengubah warnanya. Tick Colorize dan Preview agar an-
da bisa melihat preview nya. Lalu set Hue = 209,
Saturation = 100, dan Lightness = +41. Kemudian OK.
set link. Kemudian lihat isi dari set over. Pilih layer About me pada
set over. Kemudian Filter > Blur > Gausian Blur; akan muncul per-
tanyaan, jawab saja OK. Lalu masukkan nilai 4.8 pixel.
Lakukan hal yang sama pada layer yang lain yang ada di Yang efek itu yang kita buat tidak terlihat ketika normal
16 set over. Sehingga untuk sementara hasilnya akan terlihat
seperti gambar di atas. Kemudian buat layer set over 17 (tidak di-mouse over). Sampai di sini pembuatan over
link sudah siap, tapi belum selesai. Masih ada lagi bagai
menjadi invisible (tidak terlihat). Caranya klik lambang mata mana supaya menampil kan efek biru yang tadi muncul
yang ada di layer over. Hal ini dimaksudkan untuk ketika di over mouse. Nanti kita akan mengolahnya di
mengkondisikan link pada saat normal. Image Ready.
Sekarang kita akan membuat frame yang di dalamnya akan • Supaya frame tidak berbentuk sudut 90 derajat, halus-
18 berisi content dari halaman kita. Dalam frame ini juga bisa
kita bubuhkan background sebagai pemanis. Berikut langkah
langkahnya:
19 kan dengan Select > Modify > Smooth, isi 10 pixel, atau bila
ingin yang lebih bulat/halus isi dengan nilai yang lebih
besar. Klik OK.
• Buat Layer baru di luar layer set over dan link. Caranya pilih • Beri stroke/garis dengan Edit > Stroke, width = 3, location
layer Neoteker, lalu klik New layer. center. Lagi-lagi dua warna. Untuk masalah warna saya
• Buat seleksi sebesar layout yang kita buat dengan bantuan serahkan kepada anda, tetapi saran saya gunakan hitam,
guide dengan menggunakan selection tool gray, light gray, atau biru muda, agar serasi dengan war-
na yang ada. Setelah itu klik OK.
Tip
Untuk membuat backgroud, kita harus memperhatikan warna. Warna font yang akan kita
pakai dengan background harus berbeda tapi serasi supaya terlihat selaras. Jika kita
mau menggunkakan warna hitam untuk teks, maka warna background harus soft dan
cerah. Supaya teks dapat dibaca dengan nyaman.
FINISHING • Bila anda ingin membuang bagian yang tidak diinginkan dari
22 • Level pencahayaan foto ini dirasa kurang pas, untuk meng-
customize level-nya kita lakukan adjustment pada foto ini
foto tersebut, sebaiknya gunakan mask dan hindari menggu-
nakan erase tool. Dengan mask kita bisa me-restore kembali
agar terlihat lebih baik. Caranya Image > Adjustment > Level. apa yang telah kita hilangkan.
Setelah itu atur ketiga point yang ada di slide. Cara menggunakan mask:
• Pilih layer foto, lalu klik tombol Add layer mask pada layer palete.
Keterangan: • Tekan d untuk men-default-kan warna (hitam sebagai foreground
• Point yang paling kiri adalah untuk menentukan black point dan putih sebagai background).
• Point yang paling kanan adalah untuk mementukan white point • Gunakan brush tool, klik kanan untuk menampilkan Properties-nya
Sulit menjelaskan secara detail. Cara terbaik adalah dengan dan gunakan brush soft round, yang ukurannya sesuaikan dengan
mencobanya sendiri. Lakukan coba-coba menggeser bagian keadaan foto. Untuk ini saya gunakan 40 px.
kiri, tengah, atau kanan dan perhatikan perbedaannya. Ter- • Kini lukis daerah yang ingin dihilangkan dengan brush tool tsb
kadang hanya perlu melakukan perubahan sedikit saja pada • Sekarang ubah opacity dari layer foto sampai terlihat memu-
point yang ditengah. Cara coba-coba lazim digunakan, karena dar. Hal ini dimaksudkan suapa nantinya kombinasi warna
tidak ada acuan pasti. text dan background menjadi serasi.
• Sekarang kita ubah warna foto ini menjadi biru (menyesuai- Di bagian kiri bawah masih terlihat kosong, anda bisa mem-
kan dengan warna yang lain). Caranya Image > Adjustment > biarkannya atau lebih baik mengisinya dengan sesuatu, bisa
Hue/Saturation (Ctrl+U), tick opsi Colorise kemudian geser shapes/bentuk,logo, atau foto anda. Caranya sama seperti
slide Hue untuk mengatur warnanya sehingga menjadi biru pada waktu kita memasukkan foto tadi. Apabila ukurannya
(biasanya di daerah tengah), atur Saturation untuk mengatur terlalu besar maka bisa di-resize dengan hot key Crtl+t.
muda/tuanya warna, kemudian Lightness untuk mengatur
intensitas cahaya. Bila semuanya sudah pas sesuai dengan
yang diinginkan, klik OK. Ingat untuk background yang
Selesai sudah tugas PhotoShop sampai di sini dan ja-
nantinya akan diisi dengan teks berwarna gelap, background- ngan lupa untuk menyimpan hasil karya anda dalam
nya harus berwarna soft dan terang serta pudar. format .PSD. Pada suatu saat apabila perlu dilakukan
editing dapatdengan mudah dikerjakan.
Iklan visionnet