1 poin oleh GN⁺ 2024-07-21 | 1 komentar | Bagikan ke WhatsApp
  • Seorang peneliti keamanan menemukan bahwa seluruh process.env dari instance Heroku disisipkan secara dinamis ke dalam JavaScript pada subdomain terkait a16z, portfolio.a16z.com
  • Nilai yang terekspos mencakup berbagai kredensial layanan seperti DATABASE_URL, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, SALESFORCE_CLIENT_SECRET, OKTA_CLIENT_SECRET, dan MAILGUN_API_KEY
  • Peneliti mengatakan ia menangkap referensi kunci AWS saat melakukan pemeriksaan umum untuk mencari secret di file JS dengan lunchcat, dan bahwa hal itu bisa dikonfirmasi hanya melalui tab Sources di alat pengembang browser
  • Cakupan dampaknya disebut mencakup basis data berisi PII, AWS, Salesforce, dan Mailgun; untuk Mailgun, ia mengklaim bisa mengirim email arbitrer dari domain a16z dan membaca email lama
  • a16z tidak membayar bug bounty dengan alasan ada upaya kontak secara publik, sementara peneliti menyatakan situs utama tidak memiliki kontak dan email yang berhasil ditemukan pun memantul

Variabel lingkungan terungkap saat memeriksa subdomain

  • Peneliti mengatakan ia menemukan target dengan mencari perusahaan di Twitter lalu melakukan uji penetrasi cepat, dan sering menggunakan tab Relevant People
    • Jalur kali ini adalah perusahaan terkait crypto → venture capital crypto → a16z cryptoa16z
  • Dalam penyelidikannya terhadap a16z, ia melakukan pemindaian subdomain yang umum dan memakai alat lunchcat untuk memeriksa domain serta mendeteksi secret dalam file JS
  • portfolio.a16z.com tampak seperti alat manajemen portofolio untuk perusahaan-perusahaan milik a16z, dan selama pemeriksaan terdeteksi referensi kunci AWS di suatu bagian situs
  • Di dalam JS, ada nilai yang tampak seperti seluruh process.env dari instance Heroku yang dimasukkan secara dinamis
    • Item yang disertakan antara lain MARKETPLACE_URL, DATABASE_URL, SALESFORCE_CLIENT_ID, SALESFORCE_CLIENT_SECRET, OKTA_CLIENT_SECRET, SESSION_SECRET, MAILGUN_API_KEY, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, COOKIE_SECRET, dan HEROKU_POSTGRESQL_CRIMSON_URL
    • Peneliti mengatakan ia dengan cepat memeriksa kredensial tersebut dan tampaknya itu kredensial nyata, bukan palsu
    • Ia menjelaskan bahwa aksesnya hanya sebatas membuka tab Sources di alat pengembang browser

Cakupan potensi paparan dan kontroversi bug bounty

  • Layanan yang menurut peneliti berpotensi terdampak adalah sebagai berikut
    • Basis data: disebut berisi PII
    • AWS: disebut mungkin dapat diakses melalui kunci yang terekspos
    • Salesforce: tidak diverifikasi langsung, dan ia menambahkan bahwa izin akun mungkin terbatas
    • Mailgun: ia mengatakan bisa mengirim email arbitrer dari domain a16z dan juga membaca email lama
    • Ia juga menyebut mungkin ada layanan lain
  • a16z tidak membayar bug bounty dengan alasan peneliti mencoba menghubungi mereka secara publik alih-alih secara pribadi
  • Peneliti memberikan dua alasan mengapa ia menghubungi secara publik
    • Ia tidak dapat menemukan kontak yang bisa digunakan di situs utama a16z
    • Email yang ia kirim ke alamat yang berhasil ditemukan memantul
  • Sebagai bacaan terkait, dilampirkan artikel TechCrunch, dan disebutkan bahwa Lorenzo menulis artikel itu setelah melihat tweet peneliti yang diunggah saat mencoba menghubungi a16z

1 komentar

 
GN⁺ 2024-07-21
Komentar Hacker News
  • Saat kami merilis proyek open-source kami (https://github.com/heyPuter/puter/), Eva melakukan penetration test yang cukup luas dan menangani laporan kerentanan dengan sangat profesional
    Saat itu bahkan belum ada program bug bounty, dan ia tidak meminta imbalan; Eva adalah hacker yang hebat sekaligus bertanggung jawab, jadi a16z seharusnya memperlakukannya lebih baik

  • Saya pernah melakukan kesalahan serupa
    Kami memakai CMS Node.js bernama apostrophecms, dan menggunakan panel admin bernama global settings untuk mengelola API key server autentikasi. Baru beberapa bulan kemudian kami menyadari bahwa nilai itu dicetak ke kode sumber HTML
    Itu memang dibuat agar bisa dipakai dari JavaScript dan juga ada di dokumentasi, jadi saya tidak menyalahkan mereka, tetapi kami yang terlalu menggampangkan
    Yang lebih menjengkelkan, kami sudah membayar cukup mahal ke perusahaan konsultan besar untuk penetration test, tetapi mereka juga tidak menemukannya. Pada akhirnya kami menemukannya sendiri, memeriksa log, dan sepertinya tidak ada jejak penyalahgunaan, tetapi itu tetap kebocoran yang cukup mengejutkan

    • Untuk penetration test itu, setidaknya saya rasa akan meminta refund
      Sejauh ini penetration test yang saya lihat tidak pernah lebih dari sekadar mengisi checklist
    • Sangat disayangkan Anda mengalami eksposur tak terduga saat memakai ApostropheCMS
      Seperti yang Anda katakan, cara berbagi data ini memang tertulis di dokumentasi, tetapi tetap bisa mengejutkan
      Sebagai tambahan untuk orang yang akan menelusurinya nanti, versi mayor Apostrophe yang saat ini didukung tidak lagi berperilaku seperti ini
      Menyuntikkan data ke frontend yang belum login sekarang harus dipilih secara sengaja oleh developer, dan perubahan itu dibuat untuk menghindari kejutan seperti ini
      Namun masih ada use case ketika API key harus disertakan sebagai bagian dari konfigurasi dan sebagian konten widget tertentu
      Sebagai catatan, saya adalah design lead Apostrophe dan juga memegang peran engineering
    • Saya penasaran kenapa memakai content management system berbasis web untuk mengelola secret value
    • Koreksi: saya tidak bermaksud menyalahkan apostrophe cms
      Situasi ini terjadi karena konfigurasi multitenant kami dan kurangnya pemahaman kami tentang apostrophe
    • Anda berkata “karena ada di dokumentasi, saya tidak menyalahkan mereka. Kami yang terlalu menggampangkan,” tetapi tetap saja mereka harus disalahkan
      Mendokumentasikan perilaku yang berbahaya bukan berarti bebas tanggung jawab, dan menurut saya pelajaran ini seharusnya sudah diketahui luas sekarang
  • Kalau Anda membuat layanan baru dan memasang sertifikat LetsEncrypt di server lewat ACME, log langsung dipenuhi request sampah
    Terlihat jelas bot-bot yang mencari default lemah yang mungkin dibiarkan terbuka oleh developer, dan saya bahkan pernah melihat request untuk file environment proses
    Saya tidak tahu bagaimana kerentanan seperti ini bisa tidak ditemukan atau tidak dieksploitasi; mungkin a16z sangat beruntung, atau sudah dieksploitasi tetapi tidak dipublikasikan
    Seorang peneliti beritikad baik atau orang iseng dengan pola pikir white-hat kebetulan menghubungi mereka lebih dulu, dan sayang sekali tidak ada kerangka hukum untuk kelalaian seperti ini, tetapi menurut saya a16z harus kena denda besar

    • “Bagaimana kerentanan seperti ini bisa tidak ditemukan atau tidak dieksploitasi?”
      Mungkin saja sudah
      Mungkin membiarkannya tetap terbuka lebih bernilai daripada merusaknya begitu saja
    • Kalau adil, situs utamanya sendiri tidak terlihat begitu menarik
      Namun beberapa kredensial seperti OKTA terlihat cukup berbahaya
  • Bagian “mereka tidak memberi bug bounty karena saya menghubungi secara publik. Alasannya, tidak ada kontak di situs utama dan engineering@a16z.com yang saya temukan memantulkan email” terdengar seperti life hack cerdas untuk menghemat uang perusahaan
    Kalau tidak ada cara menghubungi tim engineering secara privat, semua laporan bug bounty akan terjadi secara publik, lalu mereka tidak perlu membayar apa pun

    • Cerdas dalam banyak hal
      Saya juga menduga mereka sangat berhemat di development dengan menawar orang di tempat seperti fiverr, dan kalau grup ransomware Rusia dengan mudah membobol mereka, biaya akuntansi juga akan banyak terhemat secara tidak langsung
    • Tapi itu sama saja melatih peneliti keamanan berikutnya untuk menjual informasi itu alih-alih melaporkannya
    • Perusahaan tidak perlu melakukan “hack” tersendiri untuk tidak membayar
      Kalau tidak ada program bug bounty publik, tidak ada utang apa pun
      Selain itu, ada alamat email kontak di bagian bawah https://a16z.com/connect, yang dengan nyaman terlewat oleh peneliti itu
      Kelihatannya lebih mengejar visibilitas daripada responsible disclosure
    • Kalau hal seperti ini berulang, mereka akan dikenal sebagai pihak yang tidak membayar bounty, dan orang juga makin kecil kemungkinannya melaporkan masalah yang mereka temukan
    • Kalau ia memposting di HN untuk menanyakan cara menghubungi engineering a16z, sepertinya hasilnya akan cukup bagus
  • Ketika perusahaan mengatakan mereka “diretas”, sekarang itu terdengar seperti ungkapan korporat untuk “kami gagal melindungi kredensial penting dengan benar, tetapi tolong salahkan pihak tak dikenal yang kami sebut ‘hacker’”

    • Kalau Anda tanpa sengaja membiarkan pintu depan terbuka lebar dan seseorang mencuri semua barang, Anda tetap akan bilang “dirampok”
      Ada pembedaan hukum seperti “pembobolan rumah”, “pencurian”, dan “masuk tanpa izin”, dan apakah pintunya terbuka bisa memengaruhi unsur ilegalitas atau hukuman, tetapi dalam bahasa sehari-hari itu tetap saja dicuri
  • Tidak memberi bahkan bounty dengan jumlah simbolis untuk lubang sebesar ini cukup buruk

    • Lain kali kalau seseorang menemukan key mereka, orang itu mungkin melihat tulisan ini lalu mengunggahnya ke repositori GitHub publik alih-alih melaporkannya
  • Mereka sibuk menulis white paper arsitektur AI generatif raksasa
    Beri mereka sedikit kelonggaran, mereka sedang memimpikan dunia agen masa depan yang digerakkan chatbot setengah jadi
    Sementara dunia terbakar karena update software yang rusak

    • Dunia sudah terbakar akibat dampak perubahan iklim
      Update software yang rusak pada hari Jumat hanya menjadi sentuhan pamungkas di atasnya
    • “engineering@a16z.com memantulkan email”
      Sama sekali tidak mengejutkan
  • Kalau memang bisa mengakses instance Salesforce, itu pasti sangat mengkhawatirkan dari sudut pandang founder
    Biasanya tempat seperti Salesforce mencatat email, dan di dalamnya bisa terus tersimpan rencana pendanaan atau rencana M&A perusahaan portofolio yang belum dibagikan ke luar

    • Mengumpulkan key dari source code publik halaman web itu legal dan bisa dilaporkan dengan aman
      Tetapi menggunakan key itu untuk mengakses sistem tanpa otorisasi adalah tindak pidana
      Perbedaannya sangat besar
    • Kalau mencakup informasi LP, itu juga bisa menjadi kerugian yang cukup besar
  • Fakta bahwa firma VC ini tidak membayar bug bounty untuk celah keamanan sebesar ini tidak membangkitkan kepercayaan

  • Moderator HN mengganti judulnya menjadi sesuatu yang tidak terlalu memalukan
    Tidak mengejutkan

    • Sepertinya komentar saya juga terlalu kritis terhadap a16z
      Tidak ada perubahan skor, tetapi dipindahkan dari paling atas ke paling bawah
      Banyak sekali cara untuk memberikan respons ya