Dari Peretas hingga Pemilik Program Bounty Bug: Pengalaman Belajar
Diterbitkan: 2022-04-27Keamanan telah menjadi prioritas utama di sini di Braze sejak didirikan pada tahun 2011. Fokus kami untuk melindungi data pelanggan kami membuat kami merangkul pola pikir keamanan dan privasi dengan merancang saat membangun produk kami, memastikan kami disertifikasi sehubungan dengan ISO 27001 dan SOC 2 Tipe 2, dan untuk membangun klaster HIPAA khusus untuk membantu merek melindungi informasi kesehatan yang dilindungi. Tapi sementara semua langkah itu penting, kami tidak berpuas diri. Selalu ada lebih banyak yang dapat Anda lakukan, dan fokus untuk menemukan cara baru untuk memperkuat keamanan kita adalah alasan utama mengapa saya di sini.
Kembali pada tahun 2020, Mark Shasha, Kepala Keamanan di Braze, membawa saya untuk membantu meluncurkan program hadiah bug di sini, dengan tujuan mempermudah mengidentifikasi masalah keamanan yang dapat memengaruhi produk kami. Dan sekarang setelah program ini berjalan selama lebih dari setahun, saya pikir sudah waktunya untuk melihat kembali apa yang kami bangun dan apa yang telah saya pelajari selama ini.
Apa Itu Program Bug Bounty?
Dalam program hadiah bug Braze, pihak luar diundang untuk mencoba berkompromi dengan versi platform Braze yang bebas data pelanggan dan dibersihkan ketika mereka mengidentifikasi masalah keamanan yang valid dan dapat ditindaklanjuti. Membuat program bug bounty memungkinkan perusahaan seperti Braze untuk memanfaatkan peneliti keamanan eksternal dan profesional untuk mengidentifikasi potensi masalah keamanan, memungkinkan kami untuk secara proaktif mengatasi kerentanan.
Program-program ini secara luas dilihat sebagai salah satu langkah keamanan siber terpenting yang dapat diterapkan oleh perusahaan—sebagian, karena program ini memungkinkan merek untuk mengumpulkan wawasan keamanan dari sejumlah besar orang yang berbeda dengan beragam keahlian. Sebagai aturan, meluncurkan dan mempertahankan karunia bug publik yang sukses adalah tanda bahwa sebuah organisasi memiliki program keamanan yang sehat, karena menjalankan program seperti ini tanpa insiden memerlukan tingkat kematangan keamanan yang membutuhkan banyak pemikiran dan perhatian untuk mencapainya.
Hari-hariku sebagai Peserta Bug Bounty
Saya pertama kali mendengar tentang bug bounty pada tahun 2014, tetapi karena saya pikir mereka terdengar terlalu bagus untuk menjadi kenyataan, saya tidak benar-benar berpartisipasi dalam satu sampai 2016. Terinspirasi oleh beberapa posting blog yang ditulis oleh peretas etis lainnya, saya ikut serta dalam Yahoo! bug bounty program dan menemukan bahwa saya memiliki bakat nyata untuk pekerjaan itu. Untuk satu hal, mereka memberi saya kesempatan untuk meningkatkan keterampilan hacking saya untuk membantu melindungi sistem komputer, daripada membahayakan mereka. Untuk yang lain, mereka memberi saya kesempatan untuk menghasilkan uang dalam jumlah besar saat saya melakukannya.
Seiring bertambahnya jumlah perusahaan dan organisasi pemerintah yang meluncurkan program bug bounty, saya akhirnya mengkhususkan diri dalam memburu bug server-side request forgery (SSRF) untuk program bug bounty yang terkait dengan perusahaan telekomunikasi besar dan menghasilkan hanya di bawah $1 juta dolar hanya dari mengidentifikasi kerentanan tersebut. Tetapi sementara sisi keuangan dari hadiah bug yang bekerja benar-benar terbayar bagi saya, saya mendapati diri saya kehilangan struktur dan koneksi pribadi yang datang dengan memiliki pekerjaan harian. Jadi ketika Braze menawari saya kesempatan untuk meluncurkan dan mengawasi program karunia bug saya sendiri, saya mengambil kesempatan itu.
Bagaimana Kami Meluncurkan Program Bug Bounty di Braze
Di Braze, kami harus melalui sejumlah langkah sebelum kami dapat mewujudkan visi kami tentang program hadiah bug. Untuk satu hal, karena peserta dibayar untuk setiap bug yang valid dan dapat ditindaklanjuti yang mereka temukan, meluncurkan program bounty tanpa mengatasi setiap dan semua kerentanan yang diketahui dapat membuat perusahaan membayar mahal untuk informasi yang sudah mereka miliki, mengurangi dampak program sekaligus secara bersamaan menaikkan biayanya. Untuk itu, kami melakukan langkah-langkah berikut sebelum mempersiapkan peluncuran resmi:
Menyebarkan perjanjian tingkat layanan keamanan internal (SLA) dengan tim pengembangan
Membuat program manajemen kerentanan
Menyebarkan alat pengujian keamanan analisis dinamis (DAST)
Melakukan tes penetrasi internal
Lakukan tes penetrasi pihak ketiga
Memastikan bahwa semua masalah yang diketahui telah diperbaiki
Kemudian, setelah kami yakin bahwa versi duplikat dari platform Braze yang dibuat untuk program bug bounty telah dikancingkan sebanyak mungkin, kami memulai program pribadi dengan cakupan terbatas menggunakan platform Bugcrowd. Kami meluncurkan program sesuai permintaan selama dua minggu ini sehingga kami dapat menggunakannya sebagai bukti konsep dan untuk membantu memperkenalkan organisasi Braze pada kenyataan menjalankan program hadiah bug. Lagi pula, ide mengundang peretas dan peneliti keamanan untuk mencari kelemahan keamanan di produk Anda mungkin tampak aneh atau membingungkan jika Anda belum pernah menemukan bug bounty sebelumnya.
4 Pembelajaran Besar dari Peluncuran Program Bug Bounty Baru
Saya belajar cukup cepat bahwa meluncurkan program karunia bug baru jauh lebih sulit daripada mengambil alih yang sudah ada. Ada begitu banyak faktor berbeda yang digunakan untuk membuat program yang sukses yang tidak mendapatkan banyak perhatian—sebagian, karena faktor tersebut tidak semenarik mengidentifikasi bug kritis, memperbaikinya dengan cepat, dan membayar hadiah yang besar. Mengingat itu, mari kita bahas beberapa pembelajaran terbesar saya:
1. Meluncurkan Program Bug Bounty Membutuhkan Kolaborasi Lintas Tim
Awalnya, saya berharap meluncurkan program akan sesederhana memutuskan untuk melakukannya, memilih platform yang tepat, memutuskan ruang lingkup dan jumlah hadiah, dan kemudian memulai semuanya. Tetapi melakukannya dengan benar membutuhkan perencanaan, persiapan, dan perhatian yang jauh lebih banyak daripada yang saya kira. Untuk satu hal, saya tidak memperhitungkan semua tim lain dalam Braze yang berperan dalam mendukung peluncuran program hadiah bug—dari pekerjaan yang dilakukan tim Hukum kami untuk memastikan kami memiliki kata-kata yang tepat untuk persetujuan Safe Harbor kami untuk pekerjaan yang dilakukan untuk membuat SLA kami dan memastikan kami memiliki proses eskalasi yang tepat ketika pelanggaran terjadi. Pekerjaan ini bisa jadi menantang, tetapi ini sangat penting. Program bug bounty yang belum direncanakan dan dijalankan dengan hati-hati pasti akan mengalami banyak masalah, yang, pada gilirannya, dapat menyebabkan berita buruk tentang program tersebut, sehingga lebih sulit untuk menarik peretas tingkat atas dan peneliti keamanan dan berpotensi menghancurkan seluruh usaha.
2. Jangan Pernah Melupakan Hubungan Anda Dengan Peretas dan Peneliti
Penting bagi merek untuk mengingat bahwa program karunia bug yang sukses bergantung pada hubungan antara program dan peretas/peneliti yang berpartisipasi di dalamnya. Peretas yang bahagia jauh lebih bersedia menghabiskan waktu mereka untuk program Anda dan mengingat bahwa setiap program hadiah berjuang untuk mendapatkan bagian dari sumber daya yang terbatas—yaitu, waktu dan perhatian peretas/peneliti—penting untuk memastikan Anda menyiapkan diri sendiri untuk sukses dengan memprioritaskan hubungan ini dan melakukan apa yang Anda bisa untuk membedakan diri Anda dari program lain. Beberapa perusahaan melakukan ini dengan membayar hadiah yang lebih besar daripada rata-rata industri untuk berbagai kelas dan tingkat bug, tetapi itu bukan satu-satunya (atau terbaik) cara untuk melakukannya.
Karena latar belakang saya sebagai pemburu hadiah bug, saya dapat menggunakan pengalaman saya untuk membantu menginformasikan bagaimana Braze memelihara hubungan itu. Misalnya, saya bisa mendapatkan dukungan untuk memastikan bahwa Braze menjalankan program karunia bug publik dan pribadi secara bersamaan. Itu memungkinkan kami untuk mengidentifikasi individu yang terlibat dalam program publik kami yang melaporkan laporan yang baik dan valid dan kemudian memberi penghargaan kepada mereka dengan mengundang mereka ke program pribadi kami. Peserta ini memiliki fungsionalitas tambahan untuk menguji dan mendapatkan celah pertama pada penambahan cakupan baru sebelum kami menambahkannya ke program publik. Saya percaya bahwa dengan melakukan hal-hal kecil seperti ini, perusahaan dapat menunjukkan penghargaan mereka kepada para peneliti yang berkontribusi pada program mereka dan mendorong mereka untuk memperdalam keterlibatan mereka di masa depan.
3. Hadiah Bug Terlihat Berbeda Dari Sisi Perusahaan
Sebelum saya mulai menjalankan program karunia bug saya sendiri, saya bukan penggemar bekerja dengan program yang dikelola oleh platform pihak ketiga. Untuk program yang diatur seperti ini, biasanya perusahaan mengandalkan triager pihak ketiga yang disediakan oleh platform, yang meninjau kiriman dari peretas/peneliti dan menentukan tingkat keparahan setiap bug yang diidentifikasi, dan saya memiliki beberapa pengalaman di mana triager memiliki membuat panggilan yang tidak saya setujui.
Namun, sekarang saya berada di sisi lain, saya dapat melihat seberapa besar nilai yang diberikan pendekatan berbasis platform semacam ini kepada perusahaan yang menggunakannya. Sementara kami masih terlibat dalam mengawasi langsung pekerjaan yang dilakukan oleh triager pihak ketiga yang kami gunakan, saya telah menemukan bahwa memanfaatkan mereka dapat melakukan banyak hal untuk mengurangi beban waktu dan energi yang terkait dengan menjalankan program seperti ini. Triager yang bekerja sama dengan kami adalah pro dan telah terbukti menjadi aset besar bagi program kami, membantu memungkinkan peluncuran yang sukses.
4. Pekerjaan Tidak Berakhir Ketika Bug Teridentifikasi
Sebelum bergabung dengan Braze, saya sering frustrasi dengan program hadiah bug yang membutuhkan waktu berminggu-minggu atau berbulan-bulan untuk memperbaiki kerentanan yang saya kirimkan kepada mereka. Dari sudut pandang saya, masalah umumnya tampak cukup terpotong dan kering dan saya merasa patch untuk bug tersebut membutuhkan sedikit atau tidak ada waktu untuk diterapkan.
Tetapi sekarang setelah saya menyaksikan apa yang terjadi di balik layar ketika salah satu bug ini dikirimkan, saya menyadari bahwa saya gagal memperhitungkan semua diskusi dan pekerjaan yang dilakukan di belakang layar selama siklus hidup kerentanan keamanan—dari penyelidikan dan konfirmasi bug dan pengiriman detail tersebut ke tim yang bertanggung jawab secara internal untuk perubahan pengkodean aktual, pengujian, dan rilis yang harus terjadi sebelum bug benar-benar ditangani. Kenyataannya adalah bahwa hal-hal ini membutuhkan waktu dan, sebagai seorang hacker, saya tidak selalu mempertimbangkan pekerjaan yang terlibat, sebagian karena saya ingin seluruh proses dilakukan secepat mungkin sehingga saya dapat dibayar.
Pikiran Akhir
Menjalankan program bug bounty selama setahun terakhir telah mengubah seluruh pandangan saya tentang industri ini dan bahkan mengubah cara saya memilih program bug bounty yang saya fokuskan di waktu luang saya. Mengintip di balik tirai ini telah memberi saya lebih banyak rasa hormat untuk pekerjaan penting yang dilakukan oleh triager platform dan pemahaman yang lebih baik tentang apa jadwal realistis bagi perusahaan untuk menilai dan mengatasi bug yang saya kirimkan. Dengan wawasan baru ini, saya berharap saya dapat terus meningkatkan dan mengembangkan program hadiah bug Braze sambil juga melihat lebih banyak kesuksesan sebagai pemburu hadiah bug ke depan.
Tertarik untuk bergabung dengan tim di Braze? Lihat peran terbuka kami !