Wayback Machine untuk developer dan peneliti: membaca masa lalu sebuah situs lewat arsip web
Cara kerja Wayback Machine, format URL snapshot, CDX API untuk mendaftar dan memfilter arsip, membandingkan versi halaman, menyimpan bukti dengan Save Page Now, serta batasan dan cara memakainya secara bertanggung jawab.
- osint
- arsip-web
- forensik-digital
- riset
Situs web berubah dan menghilang lebih cepat dari yang kita kira. Halaman dihapus, domain kedaluwarsa, startup tutup, dan pernyataan resmi diedit diam-diam. Wayback Machine milik Internet Archive adalah salah satu dari sedikit tempat yang menyimpan potret masa lalu itu dalam skala besar, dan bisa dibaca siapa saja.
Di OSINT untuk developer Wayback Machine hanya muncul sebagai satu perintah. Tulisan ini membahasnya lebih dalam: bagaimana arsip itu dibuat, cara membaca URL snapshot, cara memakai CDX API untuk riset, dan apa saja yang tidak bisa dipercaya dari sebuah arsip.
Sekilas sejarah dan cara kerjanya
Internet Archive didirikan Brewster Kahle pada 1996 sebagai perpustakaan digital nirlaba. Arsip webnya dibuka untuk umum sebagai Wayback Machine pada 2001, dan sejak itu terus bertambah hingga ratusan miliar halaman.
Arsip itu dibangun oleh crawler: program yang mengunjungi halaman, menyimpan respons HTTP-nya (HTML, gambar, CSS, JavaScript), lalu mengikuti tautan ke halaman berikutnya. Hasil crawl disimpan dalam format WARC (Web ARChive, standar ISO 28500), yang merekam bukan hanya isi halaman tetapi juga header permintaan dan respons beserta waktunya. Sumbernya beragam: crawl umum Internet Archive, kerja sama dengan perpustakaan nasional dan proyek seperti Archive-It, serta permintaan pengguna lewat Save Page Now.
Konsekuensinya penting: Wayback Machine hanya menyimpan apa yang pernah dilihat crawler-nya. Halaman di balik login, konten yang dirender penuh oleh JavaScript, atau halaman yang tak pernah ditautkan dari mana pun sering tidak terarsip sama sekali.
Membaca URL snapshot
Setiap snapshot punya alamat dengan pola yang sama:
https://web.archive.org/web/20190615083012/https://domain-anda.com/tentang
└─────┬──────┘ └────────────┬────────────┘
waktu (UTC) URL asli
YYYYMMDDhhmmssBeberapa trik yang berguna:
- Waktu tidak harus lengkap.
/web/2019/https://domain-anda.comakan diarahkan ke snapshot terdekat dari awal 2019. Perhatikan URL tujuannya: snapshot terdekat bisa saja berjarak berbulan-bulan. - Tanda bintang menampilkan daftar.
/web/*/domain-anda.commembuka kalender semua snapshot, dan/web/*/domain-anda.com/*mendaftar semua URL di bawah domain itu. - Akhiran
id_memberi berkas asli. Biasanya Wayback Machine menulis ulang tautan di halaman dan menambahkan toolbar. Dengan/web/20190615083012id_/https://…, yang dikembalikan adalah respons mentah seperti saat diarsipkan, cocok untuk dibandingkan atau di-hash.
Waktu di URL selalu dalam UTC. Bila Anda mencocokkan snapshot dengan kejadian di Indonesia, tambahkan 7 jam untuk WIB.
CDX API: arsip sebagai data
Kalender di situs web enak dilihat, tetapi untuk riset kita butuh data mentah. CDX API mengembalikan satu baris per snapshot, lengkap dengan waktu, status HTTP, tipe MIME, dan digest isi berkasnya:
curl -s 'https://web.archive.org/cdx/search/cdx?url=domain-anda.com&output=json&fl=timestamp,statuscode,mimetype,digest&limit=20'Parameter yang paling sering dipakai:
| Parameter | Fungsi | Contoh |
|---|---|---|
matchType | cakupan URL: exact, prefix, host, domain (termasuk subdomain) | matchType=domain |
fl | kolom yang dikembalikan | fl=timestamp,original |
from, to | rentang waktu (boleh sebagian, misalnya tahun saja) | from=2018&to=2020 |
filter | filter regex per kolom, ! untuk negasi | filter=statuscode:200 |
collapse | gabungkan baris berurutan yang kolomnya sama | collapse=digest |
limit | batasi jumlah baris (negatif = dari yang terbaru) | limit=-5 |
Kolom digest adalah hash SHA-1 (dalam base32) dari isi respons. Karena itu collapse=digest sangat berguna: crawler bisa mengunjungi halaman yang sama ratusan kali, tetapi yang menarik hanyalah saat isinya berubah.
curl -s 'https://web.archive.org/cdx/search/cdx?url=domain-anda.com/privacy&fl=timestamp,digest&filter=statuscode:200&collapse=digest'Untuk memetakan berkas lama di seluruh domain, gabungkan matchType=domain dengan filter tipe MIME atau ekstensi:
curl -s 'https://web.archive.org/cdx/search/cdx?url=domain-anda.com&matchType=domain&fl=original&collapse=urlkey&filter=original:.*\.(pdf|json|env|bak|sql|zip)$' \
| sort -uUntuk domain besar, hasilnya bisa sangat panjang. Pakai limit dan rentang waktu, atau alat seperti waybackurls dan gau yang sudah mengurus paginasi. Dan beri jeda di antara permintaan: Internet Archive adalah lembaga nirlaba, dan API-nya menerapkan batas laju.
Membandingkan dua versi halaman
Pertanyaan riset yang paling umum adalah "apa yang berubah?". Setelah tahu dua timestamp dari CDX, ambil versi mentahnya dengan id_ lalu bandingkan:
A=20230101000000; B=20240101000000
URL=https://domain-anda.com/syarat-layanan
curl -sL "https://web.archive.org/web/${A}id_/${URL}" -o a.html
curl -sL "https://web.archive.org/web/${B}id_/${URL}" -o b.html
diff <(sed 's/<[^>]*>//g' a.html | tr -s ' \n') \
<(sed 's/<[^>]*>//g' b.html | tr -s ' \n')Membuang tag HTML dengan sed memang kasar, tetapi cukup untuk menemukan kalimat yang ditambah atau dihapus. Untuk halaman yang rumit, ekstrak teksnya dengan parser HTML sungguhan sebelum di-diff.
Pola ini dipakai jurnalis untuk melacak perubahan syarat layanan, rilis pers, dan halaman tim, serta oleh peneliti untuk melihat kapan sebuah klaim produk mulai atau berhenti muncul.
Menyimpan bukti dengan Save Page Now
Arsip tidak hanya untuk dibaca. Siapa pun bisa meminta sebuah halaman diarsipkan sekarang juga lewat formulir di web.archive.org atau langsung lewat URL:
curl -s -o /dev/null -w '%{http_code}\n' 'https://web.archive.org/save/https://domain-anda.com/pengumuman'Lalu pastikan snapshot-nya benar-benar ada dengan availability API:
curl -s 'https://archive.org/wayback/available?url=domain-anda.com/pengumuman×tamp=20261102' \
| jq '.archived_snapshots.closest'Bila Anda mengumpulkan bukti, misalnya halaman phishing, unggahan yang mungkin dihapus, atau pernyataan resmi, simpan juga salinan lokal beserta hash-nya. Snapshot publik membantu orang lain memverifikasi, tetapi Anda tetap butuh catatan sendiri:
[2026-11-02 20:15 WIB] https://domain-anda.com/pengumuman
arsip : https://web.archive.org/web/20261102131502/https://domain-anda.com/pengumuman
lokal : pengumuman-20261102.html sha256=3f9a…Batasan yang perlu diingat
Arsip web adalah sumber yang kuat, tetapi bukan rekaman sempurna.
- Tidak lengkap. Crawler tidak mengunjungi semua halaman dan tidak setiap hari. Tidak adanya snapshot bukan bukti bahwa halaman itu tidak pernah ada.
- Campuran waktu. Satu snapshot halaman bisa memuat gambar, CSS, atau skrip yang diarsipkan pada waktu lain. Yang tampil di layar belum tentu persis seperti yang dilihat pengunjung saat itu. Periksa timestamp tiap aset bila detailnya penting.
- Konten dinamis. Halaman yang isinya diambil oleh JavaScript dari API sering terarsip sebagai kerangka kosong.
- Bisa dikecualikan. Pemilik situs dapat meminta Internet Archive menyembunyikan arsip domainnya, sehingga snapshot yang kemarin ada hari ini bisa hilang dari tampilan publik.
- Layanan bisa terganggu. Pada Oktober 2024 Internet Archive diserang DDoS dan mengalami kebocoran data akun pengguna, sehingga layanan mati beberapa hari. Untuk riset penting, silangkan dengan arsip lain seperti archive.today, atau agregator Memento seperti Time Travel yang mencari di banyak arsip sekaligus.
Di pengadilan, snapshot Wayback Machine sudah sering diajukan sebagai bukti, tetapi biasanya tetap perlu dikuatkan, misalnya dengan keterangan resmi dari Internet Archive atau saksi yang bisa menjelaskan cara snapshot dibuat. Prinsipnya sama dengan OSINT pada umumnya: arsip adalah petunjuk kuat yang harus diverifikasi, bukan fakta yang berdiri sendiri.
Dari sisi pemilik situs
Wayback Machine juga berguna untuk diri sendiri:
- Memulihkan situs yang hilang. Bila backup tidak ada, halaman dan aset lama sering masih bisa diunduh dari arsip, satu per satu atau dengan alat seperti
wayback_machine_downloader. - Mencegah tautan mati. Saat menautkan sumber di blog atau dokumentasi, arsipkan sumbernya juga. Wikipedia melakukan ini secara otomatis untuk jutaan rujukannya.
- Mengaudit kebocoran lama. Jalankan query CDX di atas pada domain sendiri. Berkas
.env, backup database, atau dokumen internal yang pernah sempat publik mungkin masih tersimpan di arsip. Hapus berkasnya dari server, ganti kredensial yang ikut terekspos, lalu pertimbangkan meminta pengecualian ke Internet Archive.
Langkah terakhir itu penting: menghapus berkas dari server tidak menghapus salinannya di arsip. Sama seperti di OPSEC untuk developer, anggap apa pun yang pernah publik sudah disalin di suatu tempat, dan rotasi rahasia yang pernah bocor alih-alih berharap tidak ada yang melihatnya.