Senin, 14 Februari 2011

code php buka gmail

Untuk beberapa tulisan kedepan, saya akan membuat tulisan berseri tentang PHP+IMAP. Untuk tulisan kali ini, kita fokus pada bagaimana cara membaca Gmail dari PHP.

Persiapan

Syarat pertama yang diperlukan, tentu saja, library imap untuk PHP. Kalau pakai xampp, biasanya sudah included. Kalau pakai ubuntu, tinggal install paket php5-imap. Untuk bisa melakukan koneksi IMAP, yang diperlukan selain username dan password account tersebut adalah URL koneksi ke provider IMAP itu sendiri. Kalau pakai GMail, berarti URLnya adalah sebagai berikut:

{imap.gmail.com:993/imap/ssl}INBOX

Dimana INBOX adalah IMAP folder yang ingin dibaca. Kalau dalam kasus GMail, ini berarti label. Beberapa contoh folder yang valid lainnya adalah:

  • [Gmail]/Drafts: Semua draft email
  • [Gmail]/Important: Semua email yang diberi level important (pada interface baru gmail)
  • [Gmail]/Starred: Semua email yang dibintangi
  • appenginejs: Bila anda memiliki label [appenginejs]

Membuka koneksi

Setelah informasi ini didapat, kita bisa membuka koneksi IMAP dengan cara:

$email = "email@gmail.com";//atau alamatemail@nama_domain_hosted
$password = "ini password anda";
$imap_host = "{imap.gmail.com:993/imap/ssl}";
$imap_folder = "INBOX"; //juga bisa disebut sebagai label
$mailbox = imap_open($imap_host . $imap_folder,$email,$password) or die('Gagal membuka koneksi ke GMail: ' . imap_last_error());

Apabila tidak ada error, berarti kita sudah berhasil membuat koneksi ke Gmail dengan informasi koneksi di variable $mailbox.

Mencari email

Selanjutnya kita bisa mengambil email dengan imap_search():

$emails = imap_search( $mailbox, 'ALL');

Imap search menerima parameter berupa koneksi imap yang sudah established dan apa yang ingin dicari.
Beberapa contoh query yang memungkinkan:

  • ALL: Mencari semua email
  • BODY string: Mencari email yang terdapat 'string' di body-nya
  • FROM string: Mencari email yang dikirim oleh 'string'
  • NEW: Mencari email yang baru dan belum dibaca (serupa dengan query pencarian 'RECENT UNSEEN'
  • UNSEEN: Mencari email yang belum dibaca

Daftar lengkap query pencarian bisa dibaca di halaman RFC 1176. Silahkan search string "tag SEARCH search_criteria"

Memproses hasil pencarian

Setelah email didapat, tinggal melakukan looping dari semua data yang dihasilnya:

if( $emails )
{
foreach( $emails as $email_id)
{
$email_info = imap_fetch_overview($mailbox,$email_id,0);
$message = imap_fetchbody($inbox,$email_number,2);
echo "Subject: " . $email_info[0]->subject . "\n";
echo "Message: " . $message . "\n";
}
}

Fungsi imap_search_overview() digunakan untuk memperoleh informasi dari suatu email (subject, from, cc, dll). Sedangkan imap_fetchbody() digunakan untuk memperoleh pesan itu sendiri (termasuk juga untuk mengextract attachment).

Bagaimana? mudah kan? Untuk kode lengkapnya, silahkan copy-paste code berikut:

$email = "alamat@emailgmailanda.com";
$password = "password anda";
$imap_host = "{imap.gmail.com:993/imap/ssl}";
$imap_folder = "INBOX"; //juga bisa disebut sebagai label
$mailbox = imap_open($imap_host . $imap_folder,$email,$password) or die('Gagal membuka koneksi ke GMail: ' . imap_last_error());
$emails = imap_search( $mailbox, 'ALL');
rsort($emails);
if( $emails )
{
foreach( $emails as $email_id)
{
$email_info = imap_fetch_overview($mailbox,$email_id,0);
$message = imap_fetchbody($inbox,$email_number,2);
echo "Subject: " . $email_info[0]->subject . "\r\n";
echo "Message: " . $message . "\n";
}
}
?>

Bug email yahoo

kalau kita membicarakan tentang hal iseng mungkin yang satu ini bisa kita jadikan materi untuk berbuat iseng kepada teman sejawat,sekantor atupun Bos di kantor. namun tolong jangan disalah gunakan untuk kepentingan yang tidak baik. Saya tidak bertanggung jawab atas kerugian yang terjadi setelah anda menjalankan artikel ini GBU Jutaan newbies & Script kiddies di dunia pada umumnya memiliki pertanyaan yang sama dan rasa ketertarikan yang sama terhadap satu hal special ini: Bagaimana cara mendapatkan pasword dan memonitor email orang lain?
Melalui artikel ini saya ingin mencoba untuk membungkam mulut-mulut mereka agar di masa yang mendatang tidak ada generasi-generasi dari mereka yang menanyakan hal yang sama berulang-ulang. Jika anda bukan bagian dari mereka dan anda paham betul apa maksud artikel ini dan apa tujuan saya menerbitkan artikel ini, maka dengan segala hormat saya meminta kepada anda untuk bisa memaklumi tindakan saya ini.Wahai para newbies dan script kiddies…!! Selamat berpesta!!! (^_*)

|–[2. Bugs pada Yahoo Mail—————————Yahoo Mail (http://mail.yahoo.com)
memiliki sistem pertahanan yang cukup tangguh. Disamping itu, tampilan mailbox yang menawan dan banyakanya fitur- fitur menarik yang tersedia dibandingkan dengan penyedia layanan email berbasis web gratisan lainnya menjadi alasan utama bagi mereka untuk memilih Yahoo!Ketika dahulu (dan juga hingga kini) tehnik session hijacking semakin marak dikalangan para attacker, pengguna Yahoo Mail bisa sedikit berlega hati karena Yahoo telah mengantisipasi hal tersebut dengan menerapkan beberapa aturan berikut:1. Menetapkan session identifier yang unik2. Menetapkan sistem identifier berpola acak3. Session identifier yang independen4. Session identifier yang bisa dipetakan dengan koneksi client side.Keempat hal diatas telah cukup untuk membuat banyak para kiddies harus gigit jari karena serangan session hijacking akan sangat-sangat sulit untuk dilakukan (karena ketidakmampuan mereka tentunya dan pengecualian bagi kaum elite Razz)Tapi bagi kamu yang sangat-sangat bernafsu untuk bisa menembus email yahoo orang lain kini bisa sedikit terhibur karena telah ada sebuah bugs baru pada Yahoo. Yahoo memiliki sebuah alamat email special yang otomatis dikendalikan oleh mesin yang jika kita kirimkan sebuah nilai “uid” trenkripsi kepada alamat itu bersama alamat email korban, maka kamu akan memperoleh balasan email otomatis yang berisi password korban
|–[3. Memanfaatkan BugsSudah gak sabar yach…
okay, sekarang ikuti langkah-langkah berikut:Sign in lah kedalam account kamu terlebih dahulu, kemudian dengan perasaan yang mendalam,
tekan tombol [Compose]/[tulis surat ] untuk menulis email.
Pada form isian to: masukkan alamat berikut: webmasterautoresponse3020 [at] yahoo [dot] com
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it Alamat inilah yang saya sebutkan sebagai alamat special tadi. Sebenarnya alamat ini hanya boleh diketahui oleh para admin Yahoo saja, namun yeah.. kini alamat mematikan ini telah jatuh ke tangan kita Pada form cc dan bcc, kosongi saja .
kedua form tersebut sedangkan pada form Subject ketik “uid” tanpa tanda kutip.
Pada form message (pesan), ketik kode UID berikut:
mail.yahoo.com FALSE/FALSE 30201142526d 61 69 6c 6e 10
alamat email kamu C7 CB C3 C6 84 C9 :
password kamu 6C 61 6D 65 72 69 :
alamat email korban Setelah itu tekan tombol send.
Dan tunggulah dalam beberapa hari kamu akan menerima email balasan yang berisi password korban dan informasi-informasi mengenai korban seperti secreet question yang dipakai korban beserta jawabannya dan tanggal lahir korban Contohnya:
misalkan alamat email kamu adalah elite [at] yahoo [dot] comThis e-mail address is being protected from spam bots, you need JavaScript enabled to view it dan password kamu dan alamat email korban korban [at] yahoo [dot] comThis e-mail address is being protected from spam bots, you need JavaScript enabled to view it maka susunannya adalah sebagai berikut:
to: // ]]-->webmasterautoresponse3020@yahoo.com//
Subject:uid
message:
mail.yahoo.com FALSE/FALSE 30201142526d 61 69 6c 6e 10 : // ]]-->elite@yahoo.com//
C7 CB C3 C6 84 C9 : elite123
6D 6C 65 72 69 : // ]]-->korban@yahoo.com//
|–[4. Cara Pencegahan
Bagi kamu para pengguna email yahoo yang tidak ingin passwordmu dicuri dengan tehnik ini, lakukan cara berikut:
to: isikan // ]]-->webmasterautoresponse3020@yahoo.com//
Pada form isian cc dan bcc kosongi saja kedua form tersebut dan
subject ketik “nouid” tanpa tanda kutip.
message sebagai berikut:
mail.yahoo.com FALSE/FALSE 302011425263 65 77 65 63 61 78 65 70 : NOVIEWPWD
alamat email kamu : password kamu
Setelah mengirim email tersebut, maka bisa dipastikan email kamu sudah aman dari bugs mematikan ini. Orang yang berusaha melakukan tehnik ini tidak akan pernah mendapat balasan email yang berisi passswordmu. Namun harap diingat bahwa kamu juga harus melakukan hal ini setelah melakukan perubahan account. Jadi jika suatu ketika kamu mengganti password, lakukan cara penyelamatan lagi.