Install Windows 7 dari USB Flash Disk

July 12, 2011 1 comment

Kali ini saya akan berbagi cara untuk membuat flashdisk menjadi bootable agar dapat digunakan untuk proses instalasi Windows 7. Berguna untuk komputer/laptop yang tidak terdapat DVD drive.

Cara yang akan saya jelaskan disini sudah terbukti berhasil, saya sudah beberapa kali mencobanya. Nah, apa aja yang dibutuhin untuk instalasi Windows 7 via flashdisk?

1. USB Flashdisk, setidaknya 4GB

2. DVD Instalasi Windows 7

3. Niat dan kemauan…

Eh iya, cara ini saya coba berhasil buat install Windows 7 ya. Kalo Windows yang lain belum pernah saya coba, katanya kalo buat install XP sih ga bisa, ga tau yang lain. Jadi do it at your own risk ya. :P

Step-step yang harus kita lakukan garis besarnya adalah seperti ini :

Format FD -> Bikin jadi bootable disk -> Copy files windows ke FD -> Install via FD

Langkah-langkahnya :

1. Buka Command Prompt (Run as Administrator). Caranya masuk ke Start menu > All programs > Accessories, klik kanan pada Command Prompt dan klik Run as Administrator. Setelah terbuka, kita akan memasukkan beberapa perintah yang ditulis dibawah. Perintah-perintah dibawah harus dilakukan berurutan.

2. Setelah terbuka jendela Command Prompt, masuk ke menu DISKPART dengan mengetikkan perintah :

DISKPART

3. Setelah masuk ke menu DISKPART (ditandai dengan tulisan DISKPART>), kita lihat disk yang ada di komputer kita dengan memasukan perintah :

LIST DISK

Disana terlihat disk yang terpasang pada komputer. Carilah disk yang merupakan USB Flashdisk (yang ukurannya sesuai).

4. Pilih disk yang sesuai, hati-hati jangan salah pilih. Pada screenshot dibawah, FD saya berada pada Disk 1, jadi saya akan contohkan dengan menggunakan Disk 1, jika USB Flashdisk anda ada pada Disk 2, gunakan Disk 2. Pemilihan disk dilakukan dengan memasukkan perintah :

SELECT Disk 1

5. Setelah dipilih, kita bersihkan disk (ini sama partisi sama sector2nya dihapus kali ya, sampe ga bisa dibaca biasa lagi). Pembersihan dengan memasukkan perintah :

CLEAN

6. Setelah dibersihkan, kita buat partisi dalam flashdisk tersebut :

CREATE PARTITION PRIMARY

7. Kita pilih partisi yang baru saja kita buat :

SELECT PARTITION 1

8. Kita aktifkan partisi yang baru kita pilih :

ACTIVE

9. Format partisi dengan mode NTFS. Proses ini cukup lama sepertinya, jadi ditunggu aja :

FORMAT FS=NTFS

10. Setelah selesai, kita assign partisinya dan keluar dari diskpart :

ASSIGN

EXIT

Dengan begini, flashdisk sudah siap untuk digunakan untuk tempat menaruh file windows. Berikut contoh screenshoot dari perintah2 yang dimasukkan :

Perintah yang harus dimasukkan

Jangan di close dulu command promptnya. Selanjutnya kita copy files yang ada pada installer windows dan jadikan flashdisk bootable.

11. Masukkan DVD Windows ke dalam DVD Drive ataupun Virtual CD Drive. Cek apa drive letternya. Pada contoh yang akan kita gunakan disini, Flashdisk berada di drive L: sedangkan DVD Windows berada di drive I:.

Drive letter, L untuk Flashdisk dan I untuk DVD Drive

12. Kembali ke command prompt, sekarang kita pindah ke folde BOOT yang ada di dalam DVD Instalasi Windows (Drive I). Caranya masukan perintah :

I:

CD BOOT

Dimana I: adalah drive tempat DVD Windows.

13. Sekarang kita update drive USB agar kompatibel dengan BOOTMGR dan dapat digunakan sebagai boot device. Kita dapat menjalankan perintah :

BOOTSECT.EXE /NT60 L:

Dimana L: adalah drive tempat USB Flashdisk.

14. Setelah itu, copy semua isi dari DVD Windows 7 ke dalam flashdisk. USB flashdisk anda siap untuk digunakan untuk menginstall Windows 7. :)

Perintah yang harus dimasukkan #2

Yang perlu diperhatikan untuk menginstall Windows via bootable USB adalah mengatur prioritas boot device pada BIOS. Udah pada tau kan ya, jadi ga usah dijelasin disini. Di BIOS setting aja biar device pertama yang dipake buat booting adalah USB FDD.

Keuntungan install pake USB, selain buat netbook yang ga ada DVD drivenya, instalasi pake USB juga lebih cepet, dan reliable. Biasanya lebih aman daripada install pake DVD yang kadang2 suka ga kebaca.

Kalau mau yang simple, ga mau main2 ketik2 perintah di command prompt kayak diatas. Ada kok program dari Microsoft yang bisa bikin bootable USB untuk install windows. Programnya namanya Windows 7 USB/DVD Download Tools. Tinggal download terus install. Tapi saya pribadi belom pernah nyobain, jadi ga tau bisa bener apa enggak. :D

Kalo ada pertanyaan… Feel free to comment ya :)

Sumber :
http://www.intowindows.com/how-to-install-windows-7vista-from-usb-drive-detailed-100-working-guide/

Advertisements
Categories: Tutorial

[Javascript] Memfilter Input Numeric pada Textbox

Biasanya, pada sebuah form di sebuah halaman website, kita perlu melakukan validasi terhadap masukan dari user. Untuk textbox misalnya, jika input yang diminta adalah sebuah ukuran tertentu, tentunya kita hanya boleh memasukkan angka kedalamnya. Bagaimana cara agar kita hanya dapat mengetikkan angka pada textbox?

Cara sederhana yang bisa digunakan adalah dengan menggunakan javascript sederhana. Kita lihat kode javascript sederhana dibawah :

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
function filterNumericInput(e) {
    var key = (e.which) ? e.which : e.keyCode;

    if ((key > 47 && key < 58) ||       // angka 0-9
        (key > 95 && key < 106) ||      // numpad 0-9
        (key == 8) ||                   // backspace
        (key == 46) ||                  // delete
        (key == 37) ||                  // panah kiri
        (key == 39) ||                  // panah kanan
        (key == 35) ||                  // end
        (key == 36) ||                  // home
        (key == 9))                     // tab
    {
        return true;
    }
    return false;
}
</script>

Kode diatas dapat ditambahkan di bagianpada HTML. Setelah itu, kita panggil fungsi javascript itu setiap kita menekan tombol untuk input. Caranya seperti yang terlihat dibawah ini :

<input onkeydown="javascript:return filterNumericInput(event);" type="text" />

Dengan begitu, jika kita memasukkan karakter yang selain angka, backspace, delete, panah kanan, kiri, end, home dan tab (lihat di kode javascript), karakter-karakter tersebut tidak akan tertulis di textbox.

Penjelasan

Atribut onkeydown=”javascript:return filterNumericInput(event)” pada textbox berguna untuk memanggil fungsi javascript filterNumericInput(e) yang telah dibuat diatas setiap kali tombol pada keyboard ditekan. Fungsi filterNumericInput(e) menghasilkan nilai true apabila karakter yang dibaca dari event (e) berupa karakter yang ditentukan (angka, backspace, dkk), sedangkan false jika bukan.

Karena yang dipanggil javascript:return filterNumericInput(event) maka proses akan dilanjutkan (karakter tertulis di textbox) apabila keluaran dari fungsi true, sedangkan fungsi itu sendiri hanya menghasilkan true apabila input yang dimasukkan sesuai dengan karakter yang diinginkan. Jadi karakter yang dapat tertulis di textbox hanyalah karakter yang diperbolehkan.

Pada script javascript, terdapat baris kode seperti dibawah ini :

var key = (e.which) ? e.which : e.keyCode;

Kode tersebut mengisi variabel key dengan nomor karakter yang dihasilkan oleh event yang menjadi parameter. event.which sebenarnya merupakan fungsi dari jQuery, fungsi ini melakukan normalisasi dari fungsi event.keyCode dan event.charCode. Intinya fungsi ini menghasilkan nilai karakter yang dihasilkan sebuah event dari ketikan keyboard. Namun karena menggunakan jQuery, penggunaan e.which harus di cek dulu, apa bila bernilai false (mungkin karena tidak diketahui/tidak menggunakan jQuery), kita dapat menggunakan e.keyCode standard.

Untuk melihat nilai-nilai dari karakter yang diinput oleh keyboard, dapat dilihat disini.

Oh iya, hati-hati menggunakan nilai-nilai pada pranala diatas. Nilai itu cocok untuk event onkeydown, tapi tidak cocok untuk event onkeypress, nilai yang dihasilkan berbeda antara kedua event tersebut, saya juga belum tau kenapa :D Tapi yang pasti bisa dipakai lah buat validasi, pakenya event yang onkeydown aja :)

Oke, cukup sekian sharing pada kesempatan kali ini, mohon dikoreksi apabila ada kesalahan, karena saya juga masih belajar. Terima kasih. :)

Categories: Javascript, Source Code

[Java] Mengenal Kelas RandomAccessFile

Pada kesempatan kali ini, saya akan membahas tentang kelas RandomAccessFile pada java.

T: Kok tiba-tiba bahas kelas ini sih?
J: Oh gara-gara tugas sister nih, bos Haqi ngasih kelas yang pake RandomAccessFile-nya

Oke kembali ke topik. Jadi, apa itu kelas RandomAcessFile?

Kelas RandomAccessFile merupakan kelas yang berfungsi untuk mengakses file eksternal secara bebas, bebas disini maksudnya kita tidak perlu membaca keseluruhan untuk mendapatkan/mengubah informasi yang terletak pada posisi tertentu dalam sebuah file. Dengan RandomAccessFile, kita langsung dapat mengakses data pada posisi tertentu yang kita inginkan di dalam file. RandomAccessFile biasanya digunakan karena kecepatan aksesnya.

Bagaimana cara kerja kelas RandomAccessFile?

Kelas RandomAccessFile bekerja seperti merubah sebuah file menjadi sekumpulan array of byte, yang mana didalam kelas ini juga terdapat pointer yang berfungsi untuk menunjukkan posisi byte yang akan diubah atau diambil nilainya.

Kita dapat mengetahui dimana pointer berada dengan method getFilePointer, sedangkan untuk men-set posisi pointer pada suatu posisi digunakan method seek. Untuk dapat membaca byte dari file eksternal pada posisi dimana pointer berada, kita bisa menggunakan method read, sedangkan untuk menulis ke file eksternal, gunakan method write.

Yang penting, ingat-ingat empat method ajaib kelas RandomAccessFile, yaitu :

getFilePointer
seek
read
write

Untuk lebih jelasnya, kita dapat melihat kode program sederhana dibawah ini :

package cobacobacode;

import java.io.RandomAccessFile;

public class Main {
 public static void main(String[] args) throws Exception {
 // membuat objek raf dengan kelas RandomAccessFile dengan file "contoh.txt"
 RandomAccessFile raf = new RandomAccessFile("G:\\TEMPORARY FILES\\contoh.txt", "rw");
 byte b;
 byte[] content = new byte[(int)raf.length()];

 // mencetak posisi awal pointer
 System.out.println("Posisi pointer awal : "+raf.getFilePointer());

 // mengubah posisi pointer ke nilai 5
 raf.seek(5);
 System.out.println("\nMenjalankan fungsi \"seek(5)\"");
 System.out.println("Posisi pointer setelah proses : "+raf.getFilePointer());

 // membaca karakter yang terdapat pada posisi pointer sekarang
 b = (byte)raf.read();
 System.out.println("\nMenjalankan fungsi \"read()\"");
 System.out.println("Karakter yang terbaca : "+(char)b);
 System.out.println("Posisi pointer setelah proses : "+raf.getFilePointer());

 // merubah karakter pada file eksternal yang terdapat pada posisi pointer sekarang
 raf.write('x');
 System.out.println("\nMenjalankan fungsi \"write('x')\"");
 System.out.println("Posisi pointer setelah proses : "+raf.getFilePointer());

 // membaca seluruh isi file
 raf.seek(0);
 raf.read(content);
 System.out.println("\nMenjalankan fungsi \"read(content)\"");
 System.out.println("String yang terbaca : "+new String(content));
 System.out.println("Posisi pointer setelah proses : "+raf.getFilePointer());
 }
}

Isi file “contoh.txt” sebelum program dijalankan adalah sebagai berikut :

abcdefghijklmnopqrstuvwxyz0123456789

Sedangkan isi file setelah eksekusi program adalah :

abcdefxhijklmnopqrstuvwxyz0123456789

Di bagian console, outputnya adalah sebagai berikut :

Posisi pointer awal : 0

Menjalankan fungsi “seek(5)”
Posisi pointer setelah proses : 5

Menjalankan fungsi “read()”
Karakter yang terbaca : f
Posisi pointer setelah proses : 6

Menjalankan fungsi “write(‘x’)”
Posisi pointer setelah proses : 7

Menjalankan fungsi “read(content)”
String yang terbaca : abcdefxhijklmnopqrstuvwxyz0123456789
Posisi pointer setelah proses : 36

Bisa dilihat dari eksekusi program diatas, kelas RandomAccessFile dapat mengubah isi dari eksternal file pada posisi manapun yang ditunjuk oleh pointer. Perubahan terjadi pada huruf “f” yang berganti menjadi huruf “x” akibat proses write. Perubahan yang dilakukan adalah menimpa byte yang lama, bukan menyisipkan.

Selain itu, dapat dilihat pula bahwa setelah proses read maupun write, pointer bergeser sebanyak jumlah data yang dibaca. Pada hal diatas, saat pembacaan byte karakter, pointer bergeser sebanyak satu satuan. Sedangkan di akhir program saat pembacaan seluruh isi file, pointer bergeser ke posisi akhir karena karakter yang dibaca adalah seluruh file.

Sekian dulu penjelasan dari saya pada pembahasan kali ini. Apabila terdapat kesalahan yang perlu diperbaiki ataupun kekurangan yang perlu ditambahkan, bisa langsung komentar di post ini. Untuk lebih lengkapnya, bisa lihat langsung ke website resmi java dari Oracle disini.

Terima kasih atas perhatiannya. :)

Referensi : http://download.oracle.com/javase/1.5.0/docs/api/java/io/RandomAccessFile.html

Categories: Java, Source Code

[KI] Penyadapan pada E-mail dengan Wireshark

Tugas Keamanan Informasi
Arifin Luthfi Putranto
13508050

Anda diminta untuk menyadap email dengan menggunakan tcpdump, wireshark, atau mailsnarf. (Pilih salah satu saja.) Tunjukkan bagaimana mail yang disadap itu.

Pada kesempatan kali ini, akan dilakukan penyadapan terhadap email yang lewat pada jaringan. Sebenarnya tugas kali ini tidak bisa disebut penyadapan, karena Wireshark hanya mendeteksi paket data email yang masuk ke komputer sendiri.

Hal pertama yang dilakukan adalah menyalakan Wireshark dan menjalankan menu Capture->Interfaces. Setelah itu, paket data yang lewat pada jaringan akan terus direkap oleh Wireshark.

Setelah itu, kita mencoba mengirim email kepada diri sendiri. Email yang saya gunakan adalah webmail students informatika. Setelah email dikirim, kita dapat melihat paket yang lewat melalui Wireshark. Paket difilter dengan kata kunci smtp karena email lewat dengan protokol smtp. Berikut tampilan Wireshark yang mendata paket yang lewat :

Pada gambar diatas, terlihat email yang masuk terbaca sebagai paket data oleh Wireshark. Pesan yang terdapat dalam email pun dapat dibaca karena tidak dilakukan enkripsi didalamnya.

Sekian pembahasan kali ini, sampai berjumpa di pembahasan berikutnya :)

[KI] Melihat “RAW File” pada Attachment E-mail

Tugas Keamanan Informasi
Arifin Luthfi Putranto
13508050

Kirimkan dua (2) attachment kepada diri Anda sendiri, kemudian lihat “raw file” dari berkas email tersebut. Tunjukkan bagaimana attachment diproses dalam email.

Untuk melihat RAW File dari sebuah attachment yang ada pada email, kita membutuhkan sebuah mail client. Dalam tugas kali ini, mail client yang saya gunakan adalah Mozilla Thunderbird v3.1.9.

Pertama-tama saya mengirimkan email ke diri saya sendiri. Email dikirimkan dari email google saya ke email students. Setelah email masuk ke mail client (Thunderbird), saya kemudian dapat membuka pesan yang ada di dalamnya beserta attachment yang dilampirkan. Berikut tampilan email yang saya terima :

Dapat dilihat bahwa email yang dikirimkan berisi 2 buah file. Yang pertama sebuah gambar dengan format png dan satu lagi teks dengan format txt.

Untuk melihat RAW File pada email tersebut, pada menu yang terdapat pada Thunderbird, pilih View->Message Source. Data mentah dari email akan muncul dan dapat dilihat seluruh informasi yang ada pada email tersebut. Berikut merupakan data mentah dari email yang saya kirimkan :

Return-Path: <arifin.lutxxx@gmail.com>
X-Original-To: if18050@students.if.itb.ac.id
Delivered-To: if18050@students.if.itb.ac.id
Received: from mx1.itb.ac.id (mx1.itb.ac.id [167.205.23.6])
	by mail.students.if.itb.ac.id (Postfix) with ESMTP id F011FACC27
	for <if18050@students.if.itb.ac.id>; Tue,  5 Apr 2011 11:29:28 +0700 (WIT)
Received: from av1.itb.ac.id (av1.itb.ac.id [167.205.1.71])
	by mx1.itb.ac.id (Postfix) with ESMTP id 518C4DE3A7
	for <if18050@students.if.itb.ac.id>; Tue,  5 Apr 2011 11:37:48 +0700 (WIT)
X-Virus-Scanned: antivirus1-ITB-slb
Received: from mx1.itb.ac.id ([167.205.1.66])
	by av1.itb.ac.id (av1.itb.ac.id [167.205.1.73]) (amavisd-new, port 10001)
	with ESMTP id X+XYxXTTwhLc for <if18050@students.if.itb.ac.id>;
	Tue,  5 Apr 2011 11:40:35 +0700 (WIT)
Received: from mail-px0-f179.google.com (mail-px0-f179.google.com [209.85.212.179])
	by mx1.itb.ac.id (Postfix) with ESMTP id 27C37DAB03
	for <if18050@students.if.itb.ac.id>; Tue,  5 Apr 2011 11:37:46 +0700 (WIT)
Received: by pxi2 with SMTP id 2so1440pxi.24
        for <if18050@students.if.itb.ac.id>; Mon, 04 Apr 2011 21:37:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=gamma;
        h=domainkey-signature:message-id:date:from:user-agent:mime-version:to
         :subject:content-type;
        bh=xl4RQQAUp0X3KOd6Rxxc6GpmJm/ifM+scxtikB7xCiA=;
        b=jB8YiY0Z8bA4+yfNKHc+/YzViGPm1kFv4fAecQ7pxTYXe+5mXnVGS6HuMZxA7Ke3OK
         rTuuM4AGlj6Rz3Mn5MX9B6DWZjKQWJwZ2jlQObQ3zKoXC3z2gSpnBXZMN182zdnNwHVL
         tFmEIP7u/x2TLtOpxpjHhb39dReEnx4OI0L9A=
DomainKey-Signature: a=rsa-sha1; c=nofws;
        d=gmail.com; s=gamma;
        h=message-id:date:from:user-agent:mime-version:to:subject
         :content-type;
        b=AR57d814qPIYy5tVzkz3RegsfhdpU8+BnmeHaULm8/y6ESU1bY4Okix9zRFe+kSrFE
         zDeO1HaZIkjRyVnHwG879w0FjeTbcp4g+ZBTCi9EbEFYELVdgioVaS1OBO5Rv4EfA8Gd
         YGM2K58eCreZCMvbGlE9rIVsMyAYmlGomYmPY=
Received: by 10.143.21.14 with SMTP id y14mr7045383wfi.126.1301978260016;
        Mon, 04 Apr 2011 21:37:40 -0700 (PDT)
Received: from [167.205.35.137] ([167.205.35.137])
        by mx.google.com with ESMTPS id o1sm1108806wfl.21.2011.04.04.21.37.36
        (version=SSLv3 cipher=OTHER);
        Mon, 04 Apr 2011 21:37:38 -0700 (PDT)
Message-ID: <4D9A9C8F.5090009@gmail.com>
Date: Tue, 05 Apr 2011 11:37:35 +0700
From: Arifin Luthfi P <arifin.lutxxx@gmail.com>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9
MIME-Version: 1.0
To: if18050@students.if.itb.ac.id
Subject: [KI] Tugas Email
Content-Type: multipart/mixed;
 boundary="------------040500000708000309050801"
Old-X-EsetId: A4511B214AD23130F71D
X-EsetId: A4511B214AD23130F71D
X-EsetScannerBuild: 9019
X-ESET-AntiSpam: OK;1;calc;2011-04-05 11:37:47;1104051137470007;2B02

This is a multi-part message in MIME format.
--------------040500000708000309050801
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Tes melihat RAW data Attachment...

--
Arifin Luthfi P
13508050
Informatika ITB 08

--------------040500000708000309050801
Content-Type: image/png;
 name="AttachmentGambar.png"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="AttachmentGambar.png"

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
--------------040500000708000309050801
Content-Type: text/plain;
 name="AttachmentTeks.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="AttachmentTeks.txt"

SW5pIGlzaSBkYXJpIGZpbGUgVFhUIHlhbmcgZGkgYXR0YWNoLi4u
--------------040500000708000309050801--

Dapat dilihat dari kode diatas, terdapat dua buah file yang terlampir. Setiap konten dari pesan tersebut dipisahkan dengan boundary :
--------------040500000708000309050801--“.
Email diproses dengan parsing berdasarkan boundary yang tertulis. Boundary memisahkan isi email dan file-file attachment yang terdapat di dalamnya.

Dalam RAW data, format file dituliskan dalam base64, yaitu data dituliskan dalam besaran 6 bit, bukan 8 bit seperti pada ascii biasa. Ini ditujukan agar karakter yang ditampilkan dapat dibaca karena hanya mengandung 64 karakter. Dibawah merupakan tabel untuk mengkonversi karakter menjadi base64 :

Referensi : http://en.wikipedia.org/wiki/Base64

[KI] Tugas KI, Mendeteksi Port-Scanning

Arifin Luthfi P
13508050

Anda diminta untuk menggunakan program sniffer (seperti tcpdump, wireshark, dan sejenisnya) untuk memantau jaringan dan menunjukkan adanya port scanning.

Hint:

  1. Jalankan tcpdump/wireshark di sebuah komputer (misal IP 192.168.1.7) dan monitor paket yang menuju ke komputer tersebut (dst 192.168.1.7)
  2. Gunakan nmap di komputer lain untuk melakukan port scanning ke 192.168.1.7
  3. Simpan hasil capture dari tcpdump dan tunjukkan mana aktivitas port scanning

Pada tugas kali ini, saya meminta bantuan teman saya (Hendra) untuk menjalankan nMap. IP address saya 167.205.35.182 dan IP address hendra 167.205.35.37

Komputer Hendra yang telah dipasangi nMap dijalankan melalui command prompt, dengan perintah :

nmap -st 167.205.35.182

Sebelumnya saya telah menjalankan program Wireshark di komputer saya, dari program wireshark, terlihat komputer Hendra dengan IP Adress 167.205.35.37 mencoba mendeteksi port yang terbuka pada komputer saya dengan IP Adress 167.205.35.182. Tampilan dapat difilter dengan menggunakan perintah filter :

ip.dst==167.205.35.182 && ip.src==167.205.35.37

Dapat dilihat pula pada gambar dibawah IP Address awal adalah komputer Hendra, port yang terdeteksi terbuka juga terlihat pada gambar dibawah :

Terima kasih :)

[KI] Tugas KI, Membuat Aplikasi yang Rentan

Arifin Luthfi P
13508050

Anda bisa memilih salah satu dari tugas ini:

1. Anda diminta untuk membuat aplikasi yang rentan dan bermasalah dengan out of bound array (buffer overflow). Misalnya aplikasi meminta pengguna memasukkan nama dengan panjang tertentu tetapi Anda memasukkannya dengan teks diluar batas tersebut. Tunjukkan bahwa program Anda crash dan memiliki potensi celah keamanan (misal jatuh ke root prompt)
2. Anda membuat aplikasi yang menguju aplikasi lain untuk potensi out of bound array tersebut. Misalnya, aplikasi Anda membuat (generate) teks yang panjang untuk dimasukkan ke form (pada aplikasi berbasis web), atau aplikasi Anda memberik teks yang aneh-aneh (fuzzer).

Pada tugas kali ini, saya akan membuat program yang rentan akan celah keamanan. Program yang saya buat adalah program yang menerima input berupa teks. Input yang dimasukkan tidak boleh lebih dari 10 karakter. Setelah menerima masukkan, program akan menampilkan salam pada layar.

Berikut contoh tampilan program yang diberi masukkan secara benar, input nama < 10 karakter.

Program berjalan dengan sempurna, namun jika masukkan nama lebih panjang dari 10 karakter, akan terjadi crash pada program seperti pada gambar dibawah :

Terima kasih :)