Thursday, February 12, 2009

cascading style sheet


Masukkan Code ini K1-E2A8B8-E
untuk berbelanja di KutuKutuBuku.com








Introduksi




Style Sheet adalah template yang mengontrol pemformatan tag HTML pada halaman web anda. Bila anda telah terbiasa menggunakan Microsoft Word, anda dapat melihat bahwa konsep Style Sheet mirip dengan template pada Microsoft Word: anda dapat megubah penampilan pada dokumen Word dengan mengubah format pada style dokumen. Begitu pula anda dapat mengubah penampilan halaman web dengan mengubah format pada tag HTML tertentu melalui Style Sheet, untuk selanjutnya menggantikan spesifikasi default dari browser untuk tag-tag tersebut.
Anda dapat mengambil keuntungan dengan menggunakan Style Sheet ini dengan tiga alasan utama: pemformatan tambahan, kontrol yang lebih baik, dan perubahan yang lebih mudah.











Dukungan Browser




Style Sheet relatif baru pada web. Internet Explorer 3.0 keluaran Microsoft adalah web browser pertama yang mendukung Style Sheet. Implementasi Style Sheet pada Internet Explorer 3.0 berdasarkan pada draft World Wide Web Consortium (W3C) yang berjudul “Cascading Style Sheets, Level 1” (diterbitkan pada bulan Mei 1996, lihat http://www.w3.org/pub/WWW/TR/WD-css1.html). Netscape juga telah mengindikasikan bahwa mereka akan mendukung Style Sheet pada versi-versi terbaru browsernya. Browser yang tidak mendukung Style Sheet menampilkan halaman web berdasarkan spesifikasi default browser tersebut.












3 Cara Untuk Menambahkan Style Pada Web




Style Sheet dapat digunakan dengan 3 cara, sesuai dengan kebutuhan anda:
Dengan membuat link ke file Style Sheet dari file HTML. Metode seperti ini memungkinkan anda mengubah style sejumlah halaman web dengan hanya mengedit satu file Style Sheet.
Dengan menyisipkan Style Sheet pada file HTML. Metode seperti ini memungkinkan anda mengubah style suatu halaman web dengan hanya mengedit beberapa baris Style Sheet.
Dengan menyisipkan secara inline pada tag dalam file HTML. Hal ini memberi cara tercepat untuk mengubah suatu tag, sejumlah tag, atau satu blok informasi pada halaman web.
Anda dapat menggunakan satu, dua, atau ketiga cara tersebut pada halaman web.






Sintax Dasar




Baik Style Sheet yang dilink maupun yang disisipkan memiliki satu atau lebih definisi style. (Sintax inline kadang berbeda). Suatu definisi style terdiri dari suatu tag HTML (tag apapun), diikuti oleh sejumlah properti untuk tag tersebut yang terletak diantara tanda kurung kurawal. Tiap properti diidentifikasi oleh nama properti, diikuti oleh titik dua dan nilai properti. Properti ganda dipisahkan oleh titik koma. Sebagi contoh, definisi style berikut memberi tag

ukuran font yang spesifik (15 point), dan ketebalan huruf (boldface):
H1 {font-size: 15pt;
font-weight: bold}
Anda kemudian dapat membuat definisi style untuk sejumlah tag HTML dan menempatkannya pada file terpisah atau sisipkan langsung pada halaman web.









Membuat Link ke Style Sheet




Untuk membuat link ke Style Sheet eksternal, anda dapat dengan mudah membuat sebuah file berisi definisi style kemudian simpan (save) dengan ekstensi .CSS, kemudian buat link ke file tersebut dari halaman web. Dengan cara ini, anda dapat memanfaatkan Style Sheet yang sama untuk beberapa halaman dalam site anda.
Sebagai contoh, bila Style Sheet anda dinamai style-saya.css dan terletak di alamat http://alamat-internet/style-saya.css, diantara tag anda harus menambahkan:

Judul artikel
HREF="http://alamat-internet/style-saya.css"
TYPE="text/css">









Menyisipkan blok STYLE




Untuk menyisipkan (embed) Style Sheet, tambahkan blok di awal dokumen, di antara tag-tag dan . Hal ini memungkinkan anda unutk mengubah penampilan satu halaman web. Tag .



...




Menggunakan inline style




Bila anda menginginkan pemformatan pada sebagian kecil saja dari web anda, anda dapat menggunakan inline style.
Definisi style pada inline style hanya berpengaruh pada tag dimana inline style tersebut berada. Contoh inline style pada tag

berikut:


This line will be indented on the left and right.


This line will receive no indentation.
Hasilnya akan terlihat seperti ini


This line will be indented on the left and right.



This line will receive no indentation.






Opsi Tambahan

Sederhanakan melalui pengelompokkan
Bila anda ingin menerapkan pemformatan yang sama bagi berbagai tag, misal:
H1 {font-size: 15pt;
font-weight: bold;
color: maroon}
H2 {font-size: 15pt;
font-weight: bold;
color: maroon}
H3 {font-size: 15pt;
font-weight: bold;
color: maroon}
anda dapat mengelompokkannya menjadi
H1, H2, H3
{font-size: 15pt;
font-weight: bold;
color: maroon}

Anda dapat pula mengelompokkan spesifikasi pemformatan. Misal:
H1 {font-size: 15pt;
line-height: 17pt;
font-weight: bold;
font-family: "Arial"
font-style: normal}
dapat disederhanakan menjadi seperti berikut ini
H1 {font:
15pt/17pt bold "Arial" normal}
Variasi melalui class
Gunakan class untuk membuat berbagai macam variasi bagi satu tag HTML. Sebagi contoh, bila anda ingin menggunakan tiga warna untuk heading H1 (katakanlah bergantung pada konteks), anda dapat mendefinisikannnya dalam tiga class dalam STYLE tag berikut:

Pada halaman web gunakan class tersebut

This is the red heading


...

This is the blue heading


...

You get the picture...











Link
Implementasi Style Sheet juga memungkinkan anda mengubah penampilan dari link (teks yang diklik oleh user untuk lompat ke halaman lain) dengan memberikan dua class yang telah didefinisikan pada tag :
A:link menunjukkan link yang belum dikunjungi
A:visited menunjukkan link yang telah diklik/dikunjungi oleh user
Anda dapat mengeset sejumlah properti pemformatan teks pada class-class A tersebut, termasuk color, Font-size, font-weight, dan text-decoration. Sebagai contoh, untuk menentukan warna yang spesifik pada tiga tipe link, anda dapat menspesifikasi:
A:link {color: red}
A:visited {color: blue}
A:active {color: orange}
Dengan menambahkan text-decoration “none” menghilangkan garis bawah pada teks link
A:visited {color: blue; text-decoration: none}

Komentar
Anda dapat menambahkan komentar pada Style Sheet. Komentar dapat ditulis pada baris manapun dalam spesifikasi style di antara tanda /* dan */ misal:
H1 {font: 20pt/22pt
bold; color=#00FF00} /* Hijau untuk heading 1 */




Penutup




Anda dapat segera mempraktekkan berbagai kelebihan Cascading Style Sheets pada web anda. Browser-browser terkenal seperti Microsoft Internet Explorer dan Netscape Navigator versi terbaru telah mendukung Cascading Style Sheets.
Mulailah menjelajah web dan temukan berbagai bacaan mengenai Cascading Style Sheets untuk mengasah kemampuan anda. Dokumentasi dan manual Cascading Style Sheets terdapat di situs web World Wide Web Consortium http://www.w3.org/












Referensi Style



Atribut Deskripsi Nilai Contoh
font-size Sets size of text. points (pt)
inches (in)
centimeters (cm)
pixels (px) {font-size: 12pt}
font-family Sets typeface. typeface name
font family name {font-family: courier}
font-weight Sets thickness of type. extra-light
light
demi-light
medium
demi-bold
bold
extra-bold {font-weight: bold}
font-style Italicizes text. normal
italic {font-style: italic}
line-height Sets the distance between baselines. points (pt)
inches (in)
centimeters (cm)
pixels (px)
percentage (%) {line-height: 24pt}
color Sets color of text. color-name
RGB triplet {color: blue}
text-decoration Underlines or otherwise highlights text. none
underline
italic
line-through {text-decoration: underline}
margin-left Sets distance from left edge of page. points (pt)
inches (in)
centimeters (cm)
pixels (px)* {margin-left: 1in}
margin-right Sets distance from right edge of page. points (pt)
inches (in)
centimeters (cm)
pixels (px)* {margin-right: 1in}
margin-top Sets distance from top edge of page. points (pt)
inches (in)
centimeters (cm)
pixels (px)* {margin-top: -20px}
text-align Sets justification. left
center
right {text-align: right}
text-indent Sets distance from left margin. points (pt)
inches (in)
centimeters (cm)
pixels (px)* {text-indent: 0.5in}
background Sets background images or colors. URL,
color-name
RGB triplet {background: #33CC00}



Read more...

TUTORIAL SQL INJECTION


Masukkan Code ini K1-E2A8B8-E
untuk berbelanja di KutuKutuBuku.com





Pengertian SQL Injection
SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi client.
SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data.

Sebab terjadinya SQL Injection
Tidak adanya penanganan terhadap karakter – karakter tanda petik satu ’ dan juga karakter double minus -- yang menyebabkan suatu aplikasi dapat disisipi dengan perintah SQL.
Sehingga seorang Hacker menyisipkan perintah SQL kedalam suatu parameter maupun suatu form.

Bug SQL Injection berbahaya ?
Teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account.
Selain itu SQL injection juga memungkinkan seseorang merubah, menghapus, maupun menambahkan data–data yang berada didalam database.
Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server.


Apa saja yang diperlukan untuk melakukan SQL Injection ?
Internet Exploler / Browser
PC yang terhubung internet
Program atau software seperti softice



Contoh sintaks SQL Injection
Contoh sintak SQL dalam PHP
$SQL = “select * from login where username =’$username’ and password = ‘$password’”; , {dari GET atau POST variable }
isikan password dengan string ’ or ’’ = ’
hasilnya maka SQL akan seperti ini = “select * from login where username = ’$username’ and password=’pass’ or ‘=′”; , { dengan SQL ini hasil selection akan selalu TRUE }
maka kita bisa inject sintax SQL (dalam hal ini OR) kedalam SQL

Gambar contoh SQL Injection




Contoh sintaks SQL Injection
Sintaks SQL string ‘-- setelah nama username
Query database awal :




Berubah menjadi :




Contoh sintaks SQL Injection
SQL Injection melalui URL, contohnya :


Penanganan SQL Injection
Merubah script php
Menggunakan MySQL_escape_string
Pemfilteran karakter ‘ dengan memodifikasi php.ini

1. Merubah script php
Contoh script php semula :
$query = "select id,name,email,password,type,block from user " .
"where email = '$Email' and password = '$Password'";
$hasil = mySQL_query($query, $id_mySQL);
while($row = mySQL_fetch_row($hasil))
{
$Id = $row[0];
$name = $row[1];
$email = $row[2];
$password = $row[3];
$type = $row[4];
$block = $row[5];
}
if(strcmp($block, 'yes') == 0)
{
echo "\n";
exit();
}
else if(!empty($Id) && !empty($name) && !empty($email) && !empty($password));

Script diatas memungkinkan seseorang dapat login dengan menyisipkan perintah SQL kedalam form login. Ketika hacker menyisipkan karakter ’ or ’’ = ’ kedalam form email dan password maka akan terbentuk query sebagai berikut :



Maka dilakukan perubahan script menjadi :
$query = "select id,name,email,password,type,block from user".
"where email = '$Email'";
$hasil = mySQL_query($query, $id_mySQL);
while($row = mySQL_fetch_row($hasil))
{
$Id = $row[0];
$name = $row[1];
$email = $row[2];
$password = $row[3];
$type = $row[4];
$block = $row[5];
}
if(strcmp($block, 'yes') == 0)
{
echo "\n";
exit();
}
$pass = md5($Password);
else if((strcmp($Email,$email) == 0) && strcmp($pass,$password) == 0));
2. Menggunakan MySQL_escape_string
Merubah string yang mengandung karakter ‘ menjadi \’ misal SQL injec’tion menjadi SQL injec\’tion
Contoh : $kar = “SQL injec’tion”;
$filter = mySQL_escape_string($kar);
echo”Hasil filter : $filter”;
Hasilnya :


3. Pemfilteran karakter ‘ dengan memodifikasi php.ini
Modifikasi dilakukan dengan mengenablekan variabel magic_quotes pada php.ini sehingga menyebabkan string maupun karakter ‘ diubah menjadi \’ secara otomatis oleh php
Contoh :




Contoh script yang membatasi karakter yang bisa masukkan :
function validatepassword( input )
good_password_chars =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
validatepassword = true
for i = 1 to len( input )
c = mid( input, i, 1 )
if ( InStr( good_password_chars, c ) = 0 ) then
validatepassword = false
exit function
end if
next
end function

Implementasi SQL Injection
Masuk ke google atau browse yg lain
Masukkan salah satu keyword berikut
"/admin.asp"
"/login.asp"
"/logon.asp"
"/adminlogin.asp"
"/adminlogon.asp"
"/admin_login.asp"
"/admin_logon.asp"
"/admin/admin.asp"
"/admin/login.asp"
"/admin/logon.asp"
{anda bisa menambahi sendiri sesuai keinginan anda}


Bukalah salah satu link yang ditemukan oleh google, kemungkinan Anda akan menjumpai sebuah halaman login (user name danpassword).
Masukkan kode berikut :
User name : ` or `a'='a
Password : ` or `a'='a (termasuk tanda petiknya)
Jika berhasil, kemungkinan Anda akan masuk ke admin panel, di mana Anda bisa menambahkan berita, mengedit user yang lain, merubah about,
dan lain-lain. Jika beruntung Anda bisa mendapatkan daftar kredit card yang banyak.
Jika tidak berhasil, cobalah mencari link yang lain yang ditemukan oleh google.
Banyak variasi kode yang mungkin, antara lain :
User name : admin
Password : ` or `a'='a
atau bisa dimasukkan ke dua–duanya misal :
‘ or 0=0 -- ; “ or 0=0 -- ; or 0=0 -- ; ‘ or 0=0 # ;
“ or 0=0 # ; ‘ or’x’=’x ; “ or “x”=”x ; ‘) or (‘x’=’x
Cobalah sampai berhasil hingga anda bisa masuk ke admin panel

Cara pencegahan SQL INJECTION
Batasi panjang input box (jika memungkinkan), dengan
cara membatasinya di kode program, jadi si cracker pemula akan bingung sejenak melihat input box nya gak bisa diinject dengan perintah yang panjang.
Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan.
Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan.
Ubah "Startup and run SQL Server" menggunakan low privilege user di SQL Server Security tab.


Hacking adalah seni. Hacking adalah perpaduan dari pengetahuan, kreatifitas dan kesabaran. Jika Anda memiliki ketiga-tiganya Anda akan berhasil.

R E F E R E N S I
-------------, SQLinjection, (www.BlackAngels.it).
-------------, Advanced SQL injection in SQL server applications, (www.ngssoftware.com).
-------------, SQL injection walktrough (www.securiteam.com).
BM-100, ”Hacking hiltonjakarta.com (SQL Injection)”, 24 Juli 2005, (http://www.jasakom.com).
Budi Raharjo, ”Keamanan Sistem Informasi Berbasis Internet”, PT Insan Indonesia & PT INDOCISC, Jakarta,2002.





Read more...