Archive for November, 2007

Gobbles is back?!

Sunday, November 18th, 2007

GOBBLES, tim yang memiliki nuansa tersendiri dalam kemampuannya memberikan opini untuk menjatuhkan security consultant baru-baru ini mengirimkan email ke mailing list full-disclosre berkaitan dengan komentar-komentar sinis yang sering dilotantarkan oleh Matasano. GOBBLES memiliki nuansa tersendiri karena dalam setiap advisoriesnya selalu diselingi cerita-cerita unik selain penjelasan teknikalnya yang juga mengagumkan, jadi bukan hanya sekedar bentuk trol dengan segala macam omong kosongnya. Advisories-advisories dari GOBBLES dapat dilihat dijumpai disini.

Matasano akhir-akhir ini memang mencuat namanya, isi blog mereka memberikan penjelasan-penjelasan teknikal dimana tingkat pengalaman para staff-nya ikut tergambar disitu. Dan, iya, thomas ptacek serta dino dai zovi bukan tipe yang memberikan isi blog sembarangan. Bahkan baru-baru ini blog matasano ikut nyantol di website securityfocus sebagai blog security yang isinya disorot industri security dunia, dan ini dimulai sejak blog thomas ptacek mengenai qmail security (CMIIW :) ).

Disatu sisi, blog thomas ptacek seringkali memberikan analisis pendapatnya terhadap isi blog pihak lain, ataupun memberikan analisis pendapatnya terhadap artikel dari pihak lain yang sering memunculkan semacam perdebatan, atau saya lebih menyukai dengan istilah ‘diskusi’. Beberapa contoh diantaranya adalah ketika thomas memberikan pendapatnya saat RSnake gagal mengingatkan tim google mengenai kemungkinan hole di aplikasi google gadget, atau ketika dia mengemukakan pendapatnya mengenai masalah adam bozanich, hingga analisis permasalah pada tingkat security qmail buatan bernstein. Jenius, dan taste well.

Namun disisi lain, pendapat-pendapat nya cenderung menyerang pihak lain, dan menganggap pihak tersebut salah dan pendapatnya lah yang benar. Ya, saat membaca blog matasano saya pribadi juga sering sekali muncul feel seperti itu, dan memang terkesan ada effort dari pihak matasano untuk menaikan nama di industri security akhir-akhir ini. But bloody hell, cukup banyak tulisan teknikal (ya ya…I love technical thingy) mereka yang bagus walaupun tidak dari semua staff. Namun sepertinya ini membuat sisi ego dari pihak-pihak yang lebih 8l33t kurang setuju, dan GOBBLES salah satunya.

Kali ini GOBBLES pun muncul dengan bentuk yang mirip dengan sebelumnya, penjelasan opini yang disertai dengan kritikan secara teknikal (again, I love it). Dan bahkan, baru kali ini saya melihat ada kritikan yang dilancarkan terhadap HDM untuk metasploit-nya, padahal h0n0 pun suka dengan metasploit ;) . Tools satu ini betul-betul swiss-army-knife bagi para pecinta dunia exploitasi, khusus-nya sistem exploitation.

Well, janji GOBBLES adalah apabila matasano mengeluarkan blog akan dibalas dengan tulisan respon dari GOBBLES. Ini adalah keasyikan tersendiri di dunia security, dimana pihak Matasano sebagai security expert akan ditantang secara langsung oleh GOBBLES dari dunia underground, mereka sama-sama memiliki pengetahuan teknikal yang baik. Seru kayak nya, semoga saja bukan conspiracy theory untuk menaikan nama pihak-pihak tertentu…:).

Breaking the CAPTCHA

Thursday, November 15th, 2007

Begitu banyak cara yang ditempuh untuk breaking suatu sistem yang menggunakan CAPTCHA (Computer Automated Public Turing test to tell Computer and Human Aparts), ide-ide yang muncul mulai dari bersifat teknikal hingga yang cerdas dan kreatif, walaupun beberapa teknikal hacker menganggap ide cerdas plus kreatif ini sangat kiddies tapi menurut saya pribadi cukup mengesankan.

Beberapa waktu yang lalu, saya sempat melihat ada 2 comment yang jelas-jelas berasal dari bot berhasil masuk ke dalam blog kecoak elektronik, namun karena trafik nya masih rendah maka semua comment highly moderated untuk saat ini secara manual. Yang membuat heran adalah sistem CAPTCHA di blog menggunakan reCAPTCHA, dimana akan sangat-sangat sulit menembusnya seperti yang saya kemukakan pada blog sebelumnya, walaupun memang bukan berarti tidak mungkin untuk dilakukan.

Ada beberapa penjelasan mengenai trik-trik menembus sistem CAPTCHA, salah satunya dapat dilihat pada link ini. PWNcaptcha memperlihatkan beberapa teknik implementasi CAPTCHA yang dapat ditembus, namun code nya belum dirilis untuk publik. Penjelasan secara teori yang cukup teknikal dapat dibaca pada blog ini, dimana kita bisa mendapatkan sedikit banyak gambaran mengenai tehnik untuk breaking CAPTCHA. Pentingkah? Jelas, bisa kita lihat aplikasi-aplikasi web saat ini banyak menggunakan CAPTCHA sebagai sistem keamanannya. Terlebih lagi webmail yang mengharuskan kita membaca CAPTCHA sebelum melakukan pendaftaran.

Disamping penjelasan secara teknikal, ada juga beberapa ide yang memanfaatkan manusia untuk memecahkan CAPTCHA, dan ini diimplementasikan pada trojan bernama CAPTCHAR. Penjelasan mengenai implementasi CAPTCHAR seperti ini:

1. Website A hosts a service protected by CAPTCHA verification.
2. Website B is set up by a party desiring to automate usage of the services of Website A.
3. Website B offers users free access to content, but requires they defeat a CAPTCHA challenge.
4. Website B copies a CAPTCHA image from Website A that it needs defeated and presents it to a user visiting Website B.
5. The user provides the CAPTCHA response.
6. Website B provides the offered content to the user, and then uses their response to defeat the CAPTCHA test on Website A.

CAPTCHAR

Informasi diatas diambil dari blog avertlabs.com.

Tehnik diatas digunakan dalam bentuk trojan untuk sistem operasi windows. Pada komputer korban, trojan setelah terinstall akan memperlihatkan seorang wanita pirang yang menawarkan kepada user akan membuka semua bajunya dengan satu syarat: user harus mengetikan sederetan huruf acak. Jika sederetan huruf tersebut benar maka wanita tersebut akan melepaskan satu bagian pakaian yang digunakan dan memberikan deretan huruf lain untuk dijawab oleh user. Jika salah, maka wanita tersebut akan meminta untuk mencoba lagi. Ide yang menarik bukan?

Apa sih susahnya memasukan sederetan huruf acak tersebut?pemikiran seperti itulah yang menjadikan manusia sebagai budak untuk memecahkan CAPTCHA. Yup, sederetan huruf acak tersebut adalah CAPTCHA dari suatu sistem yang hendak di breaking oleh trojan. CAPTCHA yang baik adalah sebisa mungkin tidak bisa dibaca oleh mesin namun bisa dibaca oleh manusia, celah inilah yang dimanfaatkan untuk memecahkan CAPTCHA suatu sistem. Teknik ini terkesan kurang l33t karena terlihat seperti mainan anak-anak, namun dari sisi ide ini adalah sesuatu yang mengesankan, simple namun mematikan.

Saya rasa teknik inilah yang digunakan untuk memecahkan reCAPTCHA pada blog kecoak elektronik. Implementasi trojan hanya salah satu bentuk trik breaking CAPTCHA dengan memanfaatkan manusia, bentuk lainnya tentu masih banyak lagi. Misalnya: buat forum dimana CAPTCHA yang diberikan pada user adalah CAPTCHA dari sistem lain di internet, dengan begitu kita bisa memanfaatkan user forum untuk memecahkan CAPTCHA ditempat lain, solusi gratis dan efisien. atau memberikan CAPTCHA challange untuk memposting comment di blog dimana CAPTCHA nya diambil untuk breaking ke suatu aplikasi per-bank an. Dan sebagainya, silahkan cari ide buas sendiri.

Well, jangan kuatir untuk daftar user baru di forum kecoak elektronik, ataupun posting comment di blog ini…karena kami tidak meng-implementasikan ide seperti itu pada media publik kecoak elektronik indonesia hehe…;).

Fenomena Backtrack

Wednesday, November 14th, 2007

Backtrack…distro yang sangat populer dikalangan pecinta dunia security, distro ini juga termasuk favorite dikalangan underground untuk digunakan dalam berbagai kesempatan. Pertanyaannya, kenapa?apa keistimewaannya?

Saat awal-awal muncul distro linux yang mengkhususkan diri sebagai distro untuk proses hacking / pen-test, menurut opini saya secara pribadi security auditor lah yang paling 'pas'. Satu hal yang paling dominan adalah kemampuan security auditor untuk portable, portable dalam hal pengenalan hardware dan portable sebagai distro untuk proses pengembangan (misal: build package). Walaupun saat itu ada beberapa jenis distro untuk lingkungan security, diantaranya whax dan phlak. Banyak yang menyukai whax karena menyediakan tools-tools yang lebih menarik.

(more…)

Roberto Preatoni dan WabiSabi Labi

Friday, November 9th, 2007

Well…WabiSabi Labi, industri baru yang dibungkus dengan nuansa dan inovasi baru sebagai tempat penjualan 0day sepertinya harus menunda pesta meriahnya. Roberto Preatoni, salah satu co-founder dan direktur strategi perusahaan ini plus founder dari Zone-H ditangkap di italy atas kasus skandal berupa penyadapan terhadap Telecom Italy.

Penangkapan preatoni tidak ada sangkut pautnya dengan pasar jual-beli 0day tersebut, preatoni ditangkap berhubungan dengan pekerjaannya sebagai security consultant. Telecom italy menggunakan tenaga preatoni beserta “tiger team”-nya sebagai security expert untuk melakukan proses penetration testing terhadap tingkat security IT perusahaan tersebut. Namun anggota tiger team ini ketahuan memasang trojan horse dan melakukan penyadapan data-data rahasia terhadap sejumlah orang penting, diantaranya CEO dari Brazil Telecom. Preatoni diduga membantu proses setting-up aksi skandal ini saat sedang melakukan pekerjaannya sebagai security consultant.

Aksi skandal ini memang tidak berhubungan dengan WabiSabi Labi, namun secara tidak langsung akan berpengaruh pada kredibilitas market tersebut. Konsep WabiSabi Labi sebenarnya tidak jauh berbeda dengan perusahaan-perusahaan seperti 3Com, iDefense, Immunity yang membayar *researcher* untuk menyediakan 0day. Namun industri-industri tersebut umumnya membeli exploit untuk kemudian dilaporkan kepada vendor yang bersangkutan, dengan kata lain industri-industri tersebut bisa menjadi media/jembatan antara pihak yang menemukan vulnerability suatu aplikasi dengan vendor yang memproduksi aplikasi tersebut, dan tentu saja ada imbalan yang akan diberikan kepada si penemu vulnerability untuk jerih payahnya melakukan riset dalam menemukan bugs (fuzzer, hunneh?!).

WabiSabi Labi merupakan industri yang membuka pasar secara lebih terbuka, dalam arti…jika kamu memiliki sebuah 0day, maka kamu bisa menjualnya melalui WabiSabi Labi dan ditawarkan kepada pembeli secara bebas (aha, teringat dengan pasar darknet?), siapapun bisa membayar untuk exploit tersebut. Dan mekanismenya bahkan lebih eksklusif, yaitu pembeli 0day bisa menentukan eksklusifitas-nya dimana WabiSabi Labi tidak akan menjual 0day tersebut kepada pihak lain, jadi hanya pembeli eksklusif itulah yang memiliki 0day itu.

Hal lain nya?WabiSabi Labi juga akan menjadi vendor penyedia produk IDS (Intrusion Detection System) yang bekerja sama dengan produsen hardware tertentu untuk menyediakan produk ini, dan signature untuk IDS ini menggunakan database 0day yang diperjual belikan pada pasar WabiSabi Labi. Tentu saja, si penyumbang eksploit akan mendapatkan semacam royalti selama 0day nya masih ada di database dan digunakan oleh client. Dengan memanfaatkan WabiSabi Labi maka para penyumbang 0day (call it researcher, or…blackhat or..whatever):

  1. Akan mendapatkan bayaran atas jerih payah nya (dlm hal ini Wabi bertindak sebagai broker), jumlah nya pun mungkin bisa jadi lebih besar dibandingkan menggunakan jasa iDefense dll (jelas, karena pihak pembeli bisa siapapun, termasuk organisasi kriminal yang ingin mendapatkan akses ssh ke bank, misalnya :P ).
  2. WabiSabi Labi pun dalam hal ini akan bertindak sebagai vendor security penyedia produk dengan signature database 0day yang belum di-publish dimanapun (ini teknik marketing baru yang cerdik untuk menarik banyak client :) ).
  3. Buat kamu-kamu yang punya 0day pun akan mendapatkan royalti selama signature database nya masih digunakan oleh client, berarti duit ngalir dan riset tidak sia-sia (duit..duit..duit..duit.. ;) ).
  4. Dll

Itu sekelumit cerita tentang WabiSabi Labi dan Roberto Preatoni sebagai salah satu founder nya, yang ternyata harus di-busted akibat tuduhan membantu setting-up skandal pemasangan trojan dan penyadapan data-data penting saat diberikan kepercayaan untuk melakukan audit security. Yang pasti, akibat kejadian ini mungkin pihak vendor akan lebih berhati-hati saat menyewa security consultant, bisa jadi mereka menyewa maling yang berkostum polisi ;) .

So, ada yang tertarik bermain di WabiSabi Labi untuk duit tambahan?atau lebih suka memamerkan exploit di milw0rm/bugtraq dengan quote shout yang panjang namun inti exploit cuma 3 baris?atau lebih memilih masuk dalam kegelapan dunia underground dan bertransaksi disana?atau…cukup simpan sendiri dan menikmati keluar masuk server pemerintah kemudian baca email-email mereka maupun digunakan untuk kampanye umum (DEFACE!!!) melakukan protes terhadap negara lain misalnya?

Well, the choice is yours, you guys know who you are… =))

XSS VS BoF

Monday, November 5th, 2007

Except all those troll game playing around Full-Disclosure mailing list, there’s still some interesting discussion related to security. One of them just showed lately regarding discussion between PDP(architect) and reepex about ‘XSS and it’s technical merit’. It’s been already knew that most of people think XSS just a lamme bugs, most of published exploit related to XSS limited to cookie staling, phising, etc using injected code against web application. And the other interesting part, lot of people who used to deal with buffer overflow exploitation thought XSS is useless and it’s only for dummies who can’t find and produce any Buffer Overflow exploit against system application.

IMHO, PDP’s way to explain about XSS in the lists is very interesting. Let’s not to look it from comparison part between Buffer Overflow and XSS, but let’s see about any other thing which come with it. Just like PDP said on the lists, today we can see everywhere use ‘A’ x 10000 in a common way to find buffer overflow bugs, but let’s remember these technique 10-15 years ago when buffer overflow still a difficult bugs to imagine and to be exploited, but it’s easy to find the vector and crashed the software. And few years later, technique to find this vulnerable increase and we can see lot of people trying every part of software which read input (user input, env variable, etc) and test it against buffer overflow plus produce exploit to use that vector of getting machine execution. Not much people realize about it at the first time while lot of application vulnerable to this kind of attack, and we all knew at that time system application not as we found it today.

Today, system related technology are getting well. Lot of application and system have capability to prevent Buffer Overflow to be executed, lot of technique found to prevent the bugs, and it’s difficult to deal with this kind of bugs since the system are getting mature after 15 years, and also lot of system protected with two or more layers which make buffer overflow getting hard to be implemented. But I don’t think we can use that reason to say XSS and other web bugs are lamme. Trend are moving now, technology also move from basic system into web technology. We can imagine that web is a platform just like the operating system and more and more people involved on this technology, social bookmark, company, social life are getting tied in web technology. So bugs related to this is getting harmfull since lot of people and part will be affected, not exception with XSS. And also, PDP has proved that we can just walk and scan internal network which is protected by firewall using XSS bugs.

Another interesting part about this discussion are XSS (in deep harm impact) more difficult to research against application since it relate to live online system where everything we can see is only POST/GET request. You cannot just get the binary and use debugger offline to find it’s vulnerability, and it’s a challange for now to develop application for this purpose, as we can use IDA Pro, ollydbg, or gdb to get picture about how application work.

XSS is largely complicated type of attack. It is very hard to pull and
requires a lot of technical knowledge. It is easy to find useless XSS
vectors but exploiting them is an art very few can practice at the
moment. The beauty of buffer overflow exploits is in their sharpness.
The beauty of XSS is in the imagination of the attacker and the level
of tangled complexity you have to deal with.

I like the last part of his statement. Yes, BoF are sharp but XSS need more imagination from us to exploit them in an art way using the existing vector.

Bunny Fuzzer, the other approach for fuzzing

Friday, November 2nd, 2007

Michael Zalewski (lcamtuf) mengembangkan project yang disebut bunny. Project ini merupakan tools untuk melakukan fuzzing terhadap aplikasi C. Seperti biasa, lcamtuf membuat aplikasi yang merupakan inovasi dibandingkan aplikasi-aplikasi sejenis, dan bunny fuzzer ini menggunakan pendekatan lain dalam melakukan proses fuzzing terhadap aplikasi-aplikasi C.

A closed loop, high-performance, general purpose protocol-blind fuzzer for C programs.

Uses compiler-level integration to seamlessly inject precise and reliable instrumentation hooks into the traced program. These hooks enable the fuzzer to receive real-time feedback on changes to the function call path, call parameters, and return values in response to variations in input data.

This architecture makes it possible to significantly improve the coverage of the testing process without a noticeable performance impact usually associated with other attempts to peek into run-time internals.

Bunny is currently known to support Linux, FreeBSD, and Cygwin on IA32 systems.

Fuzzer umum nya mengharuskan kita memahami proses kerja suatu aplikasi, tujuan nya adalah agar kita dapat memberikan ’seed’ atau data input yang akan digunakan untuk testing suatu aplikasi. Jika yang akan dilakukan adalah suatu protocol fuzzing, maka kita diharapkan memahami proses kerja protocol tersebut (yeah, RFC is ur friend then).

Bunny agak berbeda dalam hal implementasi fuzzy ini, berikut ini hal yang akan dilakukan bunny fuzzer:

  1. Seed fuzzing queue with a known good input file.
  2. Attempt several deterministic, sequential fuzzing strategies for subsequent regions in the input file, as well as for regions that are known to affect execution paths based on previously recorded data.
  3. If any change resulted in a never previously observed execution path, store the input that triggered it and queue it for further testing.
  4. If any change resulted in an interesting change in any function call parameter or return value within a known execution path (for example, we now have -3 where we had 7 previously), store and queue the input.
  5. If program fault is sensed for any input (crash, hang, etc), record this event and make copy of the offending input data.
  6. When done, fetch next input to be tested from queue, go to 2.

Bunny akan melakukan proses fuzzing dengan melakukan intergrasi terhadap aplikasi dan melakukan analisis pada level runtime execution. Proses yang dilakukan mirip dengan tehnik artificial intelligent dimana bunny akan diberikan berbagai macam legal input, dan kemudian baru diberikan input-input untuk testing. Bunny akan melakukan monitoring langsung saat runtime execution sehingga apabila ada execution yang ‘abnormal’ akan dicatat dan di proses lebih lanjut, dengan begini maka kita dapat melakukan proses fuzzing dengan lebih mudah.

Bunny fuzzer dapat di download disini, dan dokumentasinya dapat ditemukan disini.