Kamis, 28 April 2011

protect your web [web master level]

0 komentar
Quote Originally Posted by Rahaden L.B View Post
hohoy......sekarang kita belajar protect web ya....malu kan kalo tukang pepes kepepes :dagh: ?mbuh jare spo..."ngamanin tu lebih susah dari ngancurin...."?nah modal omongan itu tuh harusnya kita lebih ati2 lagi .....kalo dibilang paranoid...ya bodo mamat lah...yang penting ga di bilang loooooossseeerrr.......wakakakakak? emang c ga ada tempat aman di dunia ...tp plng ngga punya usaha ngamanin dah... :ngekek: ?so...what to do??ente tau kan...kalo web attack ada 2 metode:?
1. URL (method GET)?
2. media input yang adadi form (method POST)?ada 2 cara umum ngirim variable dalam PHP yaitu GET n POST so, special handy harus dilakukan.??so...what to do????

# cegahan SQL Injection,
contoh sintak SQLi :?

[sourcecode language=�php�]??or 1=1�?[/sourcecode]

tu syntax buat nyerang data basi om. gimane nyegahnye bos???, ?kita tau karakter ( ? ), (�), (NULL), (x00), (n), (r), (?), (/), (/x1a) mantra bajaYib bin biang kerok SQL...,?
nah di escape aje smua karakternya untuk php/mysql: mysql_real_escape_string. ato juga bisa filtering smua karakter masuk dan cuma mengijinin karakter ttt yg bisa di input. ?inget om, Sql injection ga cuma bisa masuk dari inputan user aje tapi juga bisa lewat URL pake karakter ( ; ) yang artinye dari karakter itu adalah ?baris dibelakang ;bakal ikut di eksekusi?. ?wajib...abaikan/ilangin semua karakter itu kalo mao tidurnya pules...wkwkwkwkw?ni Contoh script filetring karakter :

[sourcecode language=�php�]?function validatepassword( input )?good_password_chars =?�abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU VWXYZ�?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?[/sourcecode]

# nglapisin pake penahan kutip (') or addslashes()?
penting bos, coz Fungsi PHP ini yg ngebantu kita namabahin tanda kutip (�) pada setiap karakter garing (/) jadi bisa nyegah timbulnya efek SQLi. ?Penambahan kutip akan membuat garing menjadi bertipe string jadi ga bakal diaanggap perintah query pada MySQL / SQL.
Contoh : addslashes($_POST['_username'])
weak point : Form Login??
# batesin juga jumlah karakter di media input
buat nyegah penulisan mantra2 jS di inputbox.?
Contoh: <input name=�_cari� maxlength=�10? />?
weak point : Input Login (username dan password), Input search

# bikin nama unik
di media input kita ?lumayan buat bikin mumet tools yg make library (kamus kata) dlm penentuan nama variable incerannya. ?Misalnya di media input login tambahin aja garis bawah,or wateper lah yang kira2 pembuat tool injection ga kpikiran masukin string2 nya.( gud bye havij,schemafuzz,sql brutal,lan konco2 ne...wkwkwkw)
Contoh: <input name=�_username� /> or <input name=�_______username� />?
weak point : Input Login (username dan password)

# awas XSS !!!!! (Cross Side Scripting),
Lapisin pake penahan tag atau htmlspecialchars()?tambahin fungsi itu kalo ga mao di bantai lewat xss or jS inject ,fungsi ini bikin tag html or jS punya tipe data string,jadi ga bakal di eksekusi browser(paham kan?wkwkwkwk).?kalo script dimungkinkan dalam media input sehingga masuk ke dalam database n waktu browser ngebuka halaman yang terkontaminasi ntu maka browser kita langsung eksekusi terhadap perintah ntu yg biasanya dalam bentuk javascript.
Contoh: htmlspecialchars($_POST['woy kampret...mo ngapain lu?'])?
weak point : Form Login, Form Kontak Admin
nyolong cookie bisa di lakonin pake teknik ini bos....kalo xss nya ktemu...keteker bisa loh ngbantai lewat form, buku tamu or URL. biarpun perubahan yang bisa dilakukan cuma bersifat clien tetapi kalo cookie dicolong wah laen perkara tuh�..! ?bisa juga nyegah XSS bisa pake Konversi jadi lt; dan gt; n d diawali karakter &amp; (artinya pengganti nilai dlm tag HTML) n filter semua inputan dari user. ?buku tamu salah satu celah buat ketecker.
orang yang tau script ngacak2 buku tamu,bisa bikin buku tamu ente brantakan abeess dgn ngeganti tampilan sak enak udele dwe..wkwkwkw(sory script nya ga ane share). ?nah karena di php dah nyediain fungsi buat nyegah tag html jdi tnggal di optimalin aja(htmlspecialchars). Contoh script

[sourcecode language=�php�]?function cleanup($value=��, $preserve=��, $tag=��) {?if (empty($preserve)) {?$value=strip_tags($value, $allowed_tags);?}?$value=htmlspecialchars($value); ?return $value;?}?[/sourcecode]

# JS 4L4Y
pake JS emang bikin web kita look difrence,tapi kalo terlalu ng4l4y malah bisa bikini web kita jadi s4s4r4n empug,jangan make JS di web ente di tempat2 yang dimana hidup mati web ente bergantung (kalo web master mah pasti ngerti lah tujuan omongan ane),?kita juga tau kalo JS tu client..yg bisa bikin load page lemud,so enaknya c pake aplikasi laen seperti PHP dan ASP coz bersifat server.??# put your DB in right place?simpen file DB di private dir,Jangan pernah nyimpen di directory public yang aksesablea. Tapi biasanya di web hosting dah menyediain direktori khusus untuk database. bikin double auth mode pd DB,kalo perlu kasih muty ferify mode,biar makin pules tidur ente. ?jadiin SSL koneksi ke DB.enkrip sinsitive Data yang penting sebagai hash (md5) or modifikasi dari md5 yaitu SHA-256 n SHA-512 bisa juga enkripsi pake bahasa pemrograman lain misalnya PHP

.?# .htaccess?
Sebenarnye ini metode yg bikin website kita spti punya? struktur direktori yang luas, padahal itu adalah variable.pake method ini lumayan dah buat bikin ketecker mentok tembok 404 error.?nah buat tampilan 404 erornya kreasiin aje se horor mungkin.?contoh:?

<IfModule mod_rewrite.c>?RewriteEngine On?RewriteCond %{REQUEST_FILENAME} !-f?RewriteCond %{REQUEST_FILENAME} !-d?RewriteRule ^(.*)$ index.php?page=$1 [L]?</IfModule>??RewriteEngine on?RewriteCond %{HTTP_HOST} ^mydomain.com$ [NC]?RewriteRule ^(.*) http://www.mydomain.com/$1 [L,R=301]

# Hindari $_REQUEST()?
Metode ini pake buat nangkep variable dalam bentuk POST dan GET. Ada kalanya kita membutuhkan metode penerimaan variable dengan menggunakan fungsi ini, tapi batasin pemakaian nya coz metode ini bisa juga nimbulin internal problem. ?tapi kalo dah terlanjur make ke seluruh aplikasi...siap2 repot reconstruct nya,makanya pilah2 mana aje yg mau di pake string ini,n mana yg ngga.??# Session dan Cookies timeout?bikin ribeeeettttt....tiap nutup n buka lagi.eh kudu login ulang ,ngga langsung login otomatis..wkwkwkwkwkw ...dasar bawel...ribet dikit jauh lbh baik dri pada kbobolan,coz make timeout pada session or cookies kususnya buat login identification/pengenalan login. Session merupakan penanda dari sisi server ?n bakal ilang/flush kalo browser ditutup,nah..kalo cookies is pengenalan dari sisi browser n kalo ga diset timeout maka stattus ente bakal login terus2an..pdhl mungkin ente dah tidur pules sambil garuk2 ketek..wkwkwkw (pada pengenalan login.),

# B care full milih webhosting, ?
walaupun sekuritas ente nglebihin PENTAGON,tapi kalo host ente letoy..wah cuma bikin cape n mubadzir aje om,coz kalo host server nya ga tahan serangan..web ente kena imbasnya juga om,satu lagi yang penting...jangan milih hosting yang salesnya PENGHIANATTTT !!!!
nah sgitu dulu ye proteksi web di LOW LEVEL PROTECTION....?next time kita share lg maslah web protection di MIDLE n HIGH LEVEL PROTECTION?sori ya kalo tulisannya brantakan bgt n ga tratur.. maklum lah...ga pernah kuliah..hihihiyyy?
CMIIW

Leave a Reply

Labels