Steganografi adalah seni untuk menyembunyikan pesan dengan suatu metode tertentu sehingga selain si pengirim dan penerima tidak ada seorang pun yang mengetahui atau menyadari bahwa ada suatu pesan rahasia. Perbedaannya dengan kriptografi adalah pada kriptografi arti dari suatu pesan disamarkan, tetapi tidak menyembunyikan suatu pesan di dalamnya.
Pada tugas keamanan informasi kali ini, saya ditugaskan untuk membuat suatu steganografi untuk menyembunyikan suatu pesan. Steganografi yang saya buat bisa diunduh disini
Minggu depan, saya akan memberitahukan cara untuk membaca pesan tersembunyi yang ada di dalam pesan tersebut. Selamat Mencoba!
Senin, 15 Maret 2010
Kamis, 11 Maret 2010
Self Generating Program
Self generating program atau sering dikenal dengan istilah quine adalah sebuah program komputer yang menghasilkan sebuah copy dari source code program tersebut sebagai keluaran dari program tersebut. Program Quine dapat dibuat di dalam bahasa pemrograman apapun selama bahasa tersebut memiliki kemampuan untuk mengeluarkan string. Nama quine program berasal dari pencetusnya yakni, Willard Van Orman Quine yang membuat studi mengenai indirect self-reference.
Pada tugas kali ini, saya akan mencoba menerapkan prinsip dari self generating program yang akan ditulis dalam bahasa Java. Kode yang saya tuliskan dibawah apabila dieksekusi dapat menghasilkan source code dari program tersebut.
Source code dari program dapat dijabarkan sebagai berikut :
public class Quine {
public static void main (String[] args) {
char c = 34;
int i = 1;
int p = 3;
if (i != 1) {
System.out.println(p);
}
System.out.println(str+c+str+c+';'+'}');
}
static String str = "public class Quine { public static void main(String[] args){ char c = 34; int i = 1; int p = 3; if(i != 1) { System.out.println(p);} System.out.println(str+c+str+c+';'+'}'); } static String str=";}
Apabila dijalankan pada command prompt maka didapatkan keluaran sebagai berikut
Satu hal yang perlu diperhatikan disini adalah deklarasi 'char c = 34' digunakan untuk membuat tanda " pada program. Sehingga pada penulisan ' String s' dapat ditambahkan karakter " . Kemudian, sisanya adalah print string seperti biasa. Sekian pembahasan mengenai Self Generating Program yang saya buat.
Minggu, 07 Maret 2010
Anatomi Email
Pada tugas kali ini, saya akan mengobservasi anatomi dari sebuah email. Untuk melakukannya, saya mengirimkan sebuah email kepada diri saya sendiri. Pada email tersebut terdapat attachment gambar. Setelah email dikirim, maka untuk mengetahui anatomi dari email, pesan email yang original harus dilihat. Jika menggunakan gmail, untuk menunjukkan bentuk pesan email yang original pengguna harus membuka email tersebut dan kemudian meng-klik tanda panah ke bawah yang ada di samping button reply dan kemudian mengklik show original.
Langkah 1 Mengirimkan email kepada diri sendiri dengan attachment
Langkah 2 Membuka pesan original dengan meng-klik tombol show original
Setelah dibuka pesan original, dapat terlihat pesan original seperti dibawah ini.
MIME-Version: 1.0Received: by 10.231.35.195 with HTTP; Sat, 6 Mar 2010 07:01:13 -0800 (PST)Date: Sat, 6 Mar 2010 22:01:13 +0700Delivered-To: fachryfr@gmail.comMessage-ID: <79135e41003060701n28ded886h8a44fe04dea38739@mail.gmail.com>Subject: Tugas Keamanan InformasiFrom: Fachry FrisandiTo: Fachry FrisandiContent-Type: multipart/mixed; boundary=000325574d6661f8490481231a32
--000325574d6661f8490481231a32Content-Type: multipart/alternative; boundary=000325574d6661f8400481231a30
--000325574d6661f8400481231a30Content-Type: text/plain; charset=ISO-8859-1Halo.. Ini email percobaan untuk tugas keamanan Informasi..--Fachry Frisandi13507027Sistem dan Teknologi InformasiInstitut Teknologi Bandung
--000325574d6661f8400481231a30Content-Type: text/html; charset=ISO-8859-1Content-Transfer-Encoding: quoted-printable
Halo.. Ini email percobaan untuk tugas keamanan Informasi..=A0all">--Fachry Frisandi13507027Sistem dan Teknologi InformasiInstitut Teknologi Bandung
--000325574d6661f8400481231a30----000325574d6661f8490481231a32Content-Type: image/jpeg; name="homer.jpg"Content-Disposition: attachment; filename="homer.jpg"Content-Transfer-Encoding: base64X-Attachment-Id: f_g6gjgcs80
Pada dasarnya, pesan email terdiri dari 2 section utama, yakni :
- Header – Distrukturkan menjadi field-field, seperti summary, sender, receiver, dan informasi lain mengenai email.
- Body – Isi pesan itu sendiri yang merupakan teks yang tidak terstruktur dan terkadang berisi blok tanda tangan pada bagian akhir. Bagian ini apabila dianalogikan dengan surat biasa, merupakan bagian isi dari surat.
Header dipisahkan dari body dengan sebuah baris kosong.
Header
Bagian yang termasuk kedalam header dari sebuah email adalah
“MIME-Version: 1.0To: Fachry Frisandi fachryfr@gmail.com“
Received: by 10.231.35.195 with HTTP; Sat, 6 Mar 2010 07:01:13 -0800 (PST)
Date: Sat, 6 Mar 2010 22:01:13 +0700
Delivered-To: fachryfr@gmail.com
Message-ID: <79135e41003060701n28ded886h8a44fe04dea38739@mail.gmail.com>
Subject: Tugas Keamanan Informasi
From: Fachry Frisandi
Pada header terdapat
- MIME-Version : MIME merupakan kependekan dari multipurpose internet mail extensions , merupakan suatu standar untuk menangani beragam tipe data non-textual yang dapat dimasukkan ke dalam body dari sebuah pesan email, atau sebagai ‘attachment’. Setiap blok data yang berada di message body atau attachment diidentifikasi berdasarkan tipe dari MIME, yang merupakan salah satu label pada header sebuah pesan email.
- Received : Informasi untuk melakukan tracking yang dihasilkan oleh mail server
- Date : Tanggal dan waktu saat email dibuat
- Delivered-To : alamat email penerima pesan
- Message-ID : field yang digenerate otomatis untuk menghindari pengiriman berulang
- Subject : Uraian singkat mengenai topik sebuah pesan email
- From : Alamat email pengirim
- To : Alamat email tujuan
Body
Bagian yang termasuk ke dalam 'badan' sebuah pesan email adalah
“--000325574d6661f8490481231a32
Content-Type: multipart/alternative; boundary=000325574d6661f8400481231a30
--000325574d6661f8400481231a30
Content-Type: text/plain; charset=ISO-8859-1
Halo.. Ini email percobaan untuk tugas keamanan Informasi..
--
Fachry Frisandi
13507027
Sistem dan Teknologi Informasi
Institut Teknologi Bandung
--000325574d6661f8400481231a30
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Halo.. Ini email percobaan untuk tugas keamanan Informasi..=A0
all">
--
Fachry Frisandi
13507027
Sistem dan Teknologi Informa=
si
Institut Teknologi Bandung
--000325574d6661f8400481231a30—“
Pada bagian header, bagian body atau isi dari sebuah email didefinisikan dengan
Content-Type: multipart/mixed; boundary=000325574d6661f8490481231a32
Yang berarti bahwa pada bagian isi dari pesan email ini terdiri dari banyak bagian dan bagian boundary berisi string yang menjadi atribut dari content-type menjadi penanda bahwa bagian isi pesan akan dimulai dengan --000325574d6661f8490481231a32 dan dibagian akhir pesan juga ditandai dengan --000325574d6661f8490481231a32.
Pada bagian body juga terdapat 2 jenis content-type (tipe isi) yakni, text/plain dan text/html.
Tipe isi (content-type) di spesifikasikan dengan parameter charset yang dipisahkan dengan tanda titik koma. Charset mendefinisikan kumpulan karakter yang akan digunakan. Pada bagian isi yang bertipe html terdapat parameter content-transfer-encoding yang mendefinisikan teknik encoding yang digunakan pada bagian isi pesan. Pada email ini, teknik encoding yang digunakan adalah quoted-printable. Encoding quoted printable menggunakan 7 bit encoding US-ASCII untuk mengkodekan sebuah teks yang memerlukan alfabet dengan 8 bit karakter.
Email client kemudian akan memutuskan apakah ingin menampilkan dalam format html atau dalam bentuk plain text. Hal ini disebabkan tidak seluruh email client dapat menampilkan pesan dalam format html.
bagian attachment-nya dikodekan seperti dibawah ini dengan menggunakan encoding base64. Dari content-type kita dapat mengetahui tipe file yang di-attach ke pesan email, yakni berupa file gambar bertipe jpeg, dan memiliki nama file "homer.jpg". Sedangkan X-Attachment adalah ID dari attachment pada pesan email.
bagian attachment-nya dikodekan seperti dibawah ini dengan menggunakan encoding base64. Dari content-type kita dapat mengetahui tipe file yang di-attach ke pesan email, yakni berupa file gambar bertipe jpeg, dan memiliki nama file "homer.jpg". Sedangkan X-Attachment adalah ID dari attachment pada pesan email.
--000325574d6661f8490481231a32
Content-Type: image/jpeg; name="homer.jpg"
Content-Disposition: attachment; filename="homer.jpg"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_g6gjgcs80
--000325574d6661f8490481231a32--
Senin, 01 Maret 2010
Mencari level domain tingkat 4 di itb.ac.id
Di tugas ini , yang akan dicari tahu adalah berapa banyak domain tingkat 4 di itb.ac.id. Contoh dari domain tingkat 4 adalah if.itb.ac.id. Dengan menggunakan nslookup kita dapat mendapatkan list seluruh domain di itb.ac.id akan tetapi untuk mendapatkan yang tingkat 4, diperlukan program untuk men-sortir apa saja yang merupakan domain tingkat 4. Tugas ini dilakukan dari dalam jaringan ITB. Untuk mengerjakan tugas ini, langkah - langkahnya adalah sebagai berikut :
1. Membuka command prompt, kemudian mengetikkan nslookup.
2. Setelah itu mengeset server ke alamat server ITB, yakni 167.205.23.22, dengan cara mengetikkan server 167.205.23.22
3. Kemudian, untuk mendapatkan list alamat pada domain itb.ac.id dan menyimpannya ke file eksternal 'test.txt' diketikkan perintah ls itb.ac.id > test.txt
Setelah itu didapatkan file eksternal yang berisi semua alamat pada domain, seperti dilihat pada gambar dibawah
1. Membuka command prompt, kemudian mengetikkan nslookup.
2. Setelah itu mengeset server ke alamat server ITB, yakni 167.205.23.22, dengan cara mengetikkan server 167.205.23.22
3. Kemudian, untuk mendapatkan list alamat pada domain itb.ac.id dan menyimpannya ke file eksternal 'test.txt' diketikkan perintah ls itb.ac.id > test.txt
Setelah itu didapatkan file eksternal yang berisi semua alamat pada domain, seperti dilihat pada gambar dibawah
Pada file 'test.txt' alamat yang ada tidak semua memiliki level 4, sehingga untuk mendapatkannya dibutuhkan program untuk men-sortir alamat domain mana yang memiliki level 4 dan juga untuk memastikan tidak ada redundansi atau pengulangan alamat domain yang sama. Maka, saya membuat program dalam bahasa Java untuk melakukan hal tersebut. Kode programnya dapat dilihat dibawah ini.
public class Main {
public static void main(String[] args) {
int count = 0;
String[ ] tokens = null;
// tempat menyimpan file eksternal
File existingDirFile = new File("C:\\Users\\Fachry\\Desktop\\test.txt");
try {
FileReader fr = new FileReader(existingDirFile);
BufferedReader br = new BufferedReader(fr);
String s;
String comparator = ""; // pembanding untuk menghilangkan domain yang sama
while( (s = br.readLine()) != null ){
tokens = s.split(" ");
if(is4thLevelDomain(tokens[1])) {
System.out.println(tokens[1]);
if (!(tokens[1].equals(comparator))) {
count++;
}
comparator = tokens[1];
}
}
} catch (FileNotFoundException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException e) {
System.out.println("error");
} finally {
System.out.println("jumlah domain di level 4 ada = "+ count);
}
}
public static boolean is4thLevelDomain(String x) {
String[ ] a = null;
a = x.split("\\.");
if (a.length == 1) {
return true;
} else {
return false;
}
}
}
Setelah program dijalankan maka keluaran dari program dapat terlihat seperti gambar dibawah ini.
Sehingga dapat disimpulkan, dari hasil keluaran program diatas, bahwa alamat domain yang berada di bawah domain itb.ac.id dan memiliki tingkatan level 4 adalah sebanyak 487 buah.
Langganan:
Komentar (Atom)




