Transcript
00:00:00Saya merekam ini beberapa jam setelah serangan rantai pasokan yang sangat merusak
00:00:06dimulai. Serangan rantai pasokan yang menyebar ke lebih banyak paket NPM dan juga Python. Dan pada
00:00:13saat saya merekam ini, belum jelas kapan dan di mana ini akan berakhir. Dan saya telah
00:00:19membuat video terpisah di saluran YouTube saya di mana saya mengulas mendalam tentang serangan rantai pasokan khusus ini
00:00:25karena ini cukup rumit. Dan saya melakukan ulasan mendalam di sana di mana saya menjelaskan semua detailnya karena
00:00:30itu cukup menarik. Tapi di sini saya ingin berbicara tentang serangan rantai pasokan dan keamanan serta AI di
00:00:38era serangan rantai pasokan dan AI tempat kita hidup sekarang. Karena saya yakin segalanya akan
00:00:45menjadi lebih buruk. Dan saya khawatir banyak orang belum benar-benar melihat semua bahayanya. Dan ada lebih banyak hal yang
00:00:54harus kita lakukan sebagai pengembang dan pengguna teknologi serta AI, sejujurnya. Dan ini memengaruhi kita bahkan jika
00:01:01kita bukan pengembang. Saya tahu sebagian besar orang yang menonton atau mendengar ini adalah pengembang. Namun
00:01:07seperti yang akan saya jelaskan, ini bukan hanya tentang menulis kode dan bukan hanya tentang serangan rantai
00:01:13pasokan seperti yang Anda ketahui. Tapi mari kita mulai dengan dasarnya. Apa itu serangan rantai pasokan?
00:01:20Serangan rantai pasokan dalam konteks pengembangan perangkat lunak berarti dependensi yang
00:01:26Anda gunakan telah disusupi. Itulah inti dari apa itu serangan rantai pasokan. Dan disusupi
00:01:35tentu saja bisa berarti banyak hal. Yang biasanya kita lihat adalah adanya kode berbahaya di dalam
00:01:41paket yang disusupi tersebut yang memanen kredensial dan token. Jadi ia memindai hard drive Anda untuk menemukan
00:01:49rahasia yang mungkin Anda miliki di file .env atau kredensial AWS Anda dan sebagainya. Dan ia kemudian menggunakan
00:01:56kredensial tersebut untuk mengakses akun Anda tetapi juga untuk menyebarkan dirinya sendiri. Jadi untuk memengaruhi paket lain. Jika
00:02:04Anda adalah pemelihara paket sumber terbuka atau bahkan jika itu sumber tertutup, jika Anda sedang mengerjakan sesuatu,
00:02:11suatu paket, suatu alat yang digunakan atau diandalkan orang lain, tentu menarik untuk menyusupi
00:02:19mesin Anda untuk menyusupi paket atau alat yang Anda distribusikan itu karena, coba tebak,
00:02:26hal itu kemudian akan memengaruhi lebih banyak orang. Jadi semua serangan rantai pasokan yang kita lihat termasuk
00:02:32serangan rantai pasokan yang dimulai di sini dengan paket Tanstack, mereka adalah worm yang menyebar ke
00:02:38paket lain untuk memengaruhi lebih banyak paket dan pada akhirnya tentu saja mesin tempat
00:02:44paket-paket ini diinstal dan digunakan. Sekarang ada beberapa hal yang dapat Anda lakukan untuk melindungi diri sendiri dan
00:02:51saya membuat video terpisah tentang itu di saluran saya yang lain, saluran Akatamine. Hal-hal seperti memastikan
00:02:56bahwa Anda hanya menginstal paket yang setidaknya sudah berusia tiga hari atau semacamnya,
00:03:02maksud saya versi paketnya, menjalankan kode Anda dalam wadah pengembangan atau mesin virtual.
00:03:08Ini semua adalah hal-hal yang harus Anda lakukan. Anda juga tidak boleh menyimpan rahasia teks biasa di sistem Anda.
00:03:15Sebaliknya gunakan layanan seperti Inphysical atau Doppler atau semacamnya di mana Anda menyimpan rahasia
00:03:22di cloud atau dalam bentuk lain yang terenkripsi sehingga jika penyerang memindai sistem Anda
00:03:28mereka tidak melihat rahasia teks biasa tersebut. Ini semua harus Anda lakukan sekarang. Ini penting
00:03:37karena serangan rantai pasokan ini jumlahnya semakin banyak. Kita melihat lebih banyak dan mengapa demikian?
00:03:42Tentu saja bukan karena Anda tidak bisa menjalankan serangan seperti ini bertahun-tahun yang lalu.
00:03:49Itu mungkin dilakukan saat itu dan memang terjadi saat itu, tetapi frekuensinya telah meningkat drastis
00:03:56tentu saja, dan AI adalah alasan besarnya di sini. Jadi mari kita lihat peran AI. AI adalah alasan besar
00:04:06karena tentu saja ini memudahkan pelaksanaan serangan semacam itu. Jika Anda seorang penyerang, Anda tentu saja dapat
00:04:14menggunakan AI untuk menganalisis berbagai macam repositori paket yang mungkin ingin Anda susupi
00:04:22untuk melihat bagaimana mereka membangun paket mereka? Bagaimana mereka mendistribusikan paket mereka? Misalnya
00:04:30serangan Tanstack di sini yang memulai serangan rantai pasokan baru-baru ini, di sana para pemelihara menggunakan
00:04:38pendekatan yang secara teoritis aman menggunakan proses penerbitan tepercaya oleh NPM dan sekali lagi saya mengulas
00:04:45lebih dalam tentang itu di video terpisah saya di saluran ini tetapi yang juga mereka lakukan adalah mereka menggunakan
00:04:51pemicu acara GitHub actions tertentu dengan cara tertentu yang keamanannya tidak sempurna dan itu
00:05:00memungkinkan penyerang menggunakan peracunan cache untuk memasukkan kode berbahaya dari lingkungan yang tidak tepercaya
00:05:07ke lingkungan tepercaya dan begitulah serangan ini dimulai. Detailnya ada di video lain itu.
00:05:15Tapi tentu saja AI memudahkan analisis repositori untuk menganalisis alur kerja GitHub action mereka
00:05:22atau alur kerja penyedia CICD lainnya. AI dapat menganalisis massal semua skrip alur kerja ini, semua kodenya, dan
00:05:30AI dapat mencari kerentanan keamanan dan tentu saja pemelihara juga dapat menggunakan AI untuk memindai
00:05:38repositori mereka dan mencari potensi vektor serangan, tetapi sebagai penyerang Anda secara alami selalu memiliki
00:05:45keuntungan di sana karena Anda dapat mencari segalanya, Anda dapat mencoba segala macam hal sedangkan sebagai
00:05:52pemelihara Anda harus mengantisipasi segalanya dan AI dapat membantu dalam hal itu tetapi tetap tidak sempurna.
00:05:58Anda memiliki keuntungan di sana sebagai penyerang dan AI telah menyederhanakan hal itu. AI juga tentu saja menyederhanakan
00:06:04proses penulisan kode berbahaya, AI menyederhanakan proses penulisan kode apa pun dan tentu saja dan
00:06:12Anda tahu itu jika Anda menonton video lain dari saya atau mendengar episode lainnya saya adalah pendukung besar untuk
00:06:20memeriksa kode, melakukan tinjauan kode, tidak menyerahkan segalanya kepada AI, tetapi tentu saja
00:06:27jelas bagi saya setidaknya bahwa Anda harus menggunakan AI sebagai peningkat produktivitas dan kita semua masih mencari tahu
00:06:33seberapa banyak penggunaan AI yang tepat, beberapa orang akan memberi tahu Anda 100% mereka bahkan tidak melihat kodenya
00:06:40bagi saya itu tidak terjadi tetapi ada spektrum di sini, entah bagaimana AI jelas memudahkan untuk
00:06:46mengeluarkan banyak kode dan jika kita berbicara tentang kode berbahaya di sana tentu saja ada hal-hal tertentu
00:06:53yang penting bagi Anda jika Anda seorang penyerang, Anda ingin kode yang menjalankan tugasnya yang
00:06:59tidak super mudah dideteksi tetapi Anda tidak peduli apakah kodenya indah, apakah mengikuti praktik terbaik
00:07:06tertentu, praktik terbaik Anda adalah serangan Anda berhasil dan tentu saja AI dapat membantu dalam hal itu
00:07:13IA dapat membantu menulis semua kode berbahaya itu, memunculkan ide-ide tentang bagaimana Anda bisa menyerang
00:07:19paket, jadi di situlah AI membantu tetapi itu hanya satu bagian, memudahkan hanyalah satu bagian dari
00:07:26ceritanya, sisi lain yang sangat penting adalah ada lebih banyak kode dari sebelumnya, itu berarti ada lebih banyak
00:07:35target dari sebelumnya, maksud saya mungkin Anda mengikuti postingan blog atau seluruh cerita seputar semua masalah keandalan GitHub
00:07:43dan waktu henti GitHub, nah alasannya adalah karena ada lebih banyak kode yang didorong ke GitHub
00:07:49daripada sebelumnya karena AI, karena lebih mudah dari sebelumnya untuk menghasilkan kode dan lebih
00:07:55banyak orang dari sebelumnya yang menghasilkan kode dan menulis perangkat lunak termasuk banyak orang yang tidak tahu
00:08:02apa yang dilakukan kode itu, tentang apa itu, pengodean instan adalah hal besar dan memiliki kegunaannya sendiri maksud saya
00:08:11jika saya ingin menggabungkan lima dokumen PDF menjadi satu saya sangat senang memberi tahu agen AI untuk melakukannya untuk saya
00:08:18dan ia mungkin kemudian akan menulis beberapa kode yang melakukannya dan saya tidak peduli tentang kode itu, itu adalah tugas satu kali
00:08:24kan? Tetapi jika saya menjalankannya di sistem saya maka tentu saja agen tersebut mungkin menginstal beberapa paket untuk menggabungkan
00:08:32dokumen PDF ini yang telah terkena serangan rantai pasokan sehingga saya bahkan tidak tahu bahwa
00:08:37paket tertentu digunakan karena saya hanya peduli tentang menggabungkan beberapa dokumen PDF
00:08:43jadi ada lebih banyak situasi daripada sebelumnya di mana paket-paket diinstal karena
00:08:49ada lebih banyak kode daripada sebelumnya yang ditulis untuk perangkat lunak tetapi juga untuk tugas-tugas satu kali dan itu tentu saja
00:08:56membuat pelaksanaan serangan rantai pasokan semacam itu lebih menarik daripada sebelumnya karena ada
00:09:01lebih banyak target daripada sebelumnya termasuk banyak target yang sama sekali tidak tahu tentang keamanan perangkat lunak
00:09:06keamanan siber atau hal semacam itu dan jujur saja banyak dari kita para pengembang juga secara teoritis
00:09:14tahu tentang risiko tertentu tetapi kita mungkin tidak peduli karena begitu nyaman untuk sekadar menyelesaikan
00:09:22pekerjaan dan kita harus berpikir ulang di sini, kita harus berpikir ulang, kita harus mengamankan mesin kita, kita harus memastikan
00:09:31bahwa kita mengembangkan di lingkungan yang aman, jadi di mesin virtual dan wadah pengembangan sehingga tidak ada
00:09:37kredensial yang tergeletak di mana-mana dan jika kita menggunakan agen AI yang kemungkinan besar kita semua lakukan, kita harus
00:09:44berhati-hati di sana juga karena di sana pun ada dua cara untuk berada dalam bahaya jadi mari kita lihat lebih dekat
00:09:53bagaimana agen AI menjadi masalah di sini, satu masalah di sini adalah apa yang sudah saya sebutkan ketika kita menggunakan
00:10:00agen AI terutama saat kita menggunakannya untuk hal-hal yang tidak berhubungan langsung dengan menulis kode atau
00:10:08perangkat lunak tetapi juga saat kita menggunakannya untuk membantu kita mengerjakan program, kita tidak selalu melihat
00:10:17semua yang mereka lakukan jika Anda menggunakan cloud code atau semacamnya dan saya tidak menentang
00:10:23alat-alat ini bahkan saya punya kursus tentang cloud code, cloud co-work, codex saya punya kursus tentang itu karena
00:10:30mereka sangat berguna tetapi jika Anda menggunakannya dan Anda membiarkannya begitu saja dan Anda memberi tahu mereka saya
00:10:35butuh fitur ini dan Anda tidak terlalu peduli tentang itu Anda mungkin tidak menyadari apa yang mereka
00:10:41instal jadi sekali lagi paket yang diinstal Anda mungkin disusupi Anda mungkin terpengaruh sekarang satu
00:10:49pertahanan terhadap itu juga tentu saja adalah membatasi jumlah paket yang ingin Anda gunakan tetapi sekali lagi
00:10:54jika Anda menggunakan agen AI Anda mungkin tidak memegang kendali di sana, ia mungkin menginstal paket yang
00:11:00tidak akan pernah Anda instal jadi itu satu bahaya yang jelas menurut saya, inilah bahaya yang kurang jelas,
00:11:07agen AI adalah target serangan yang sangat menarik apa yang saya maksud dengan itu, nah serangan rantai pasokan ini
00:11:15saya sudah menyebutkan mereka menyebar seperti worm mereka menyerang atau memengaruhi segala jenis paket
00:11:23sekarang tentu akan sangat menarik bagi penyerang untuk merasuki cloud code atau codex atau agen
00:11:32pi coding atau open code atau agen lainnya agen AI lainnya mengapa, nah jika Anda memiliki kode berbahaya
00:11:42yang sebenarnya dioptimalkan untuk juga atau secara eksklusif memengaruhi dan menyusup ke paket agen AI dan
00:11:52repositori dan basis kode maka tentu saja kode berbahaya itu bisa berisi bagian injeksi prompt
00:12:00jadi ia bisa misalnya secara eksplisit menargetkan semua agen AI ini untuk mengubah kode mereka sehingga bukan
00:12:08terutama tentang mengambil data jadi kode paket itu sendiri kode berbahaya yang diinjeksikan bukan
00:12:15tentang mengambil data katakanlah tetapi tentang mengubah kode agen AI sedemikian rupa sehingga ia memiliki
00:12:22beberapa instruksi khusus yang membuatnya melakukan hal-hal di mesin tempat ia digunakan jadi di mesin
00:12:28Anda misalnya yang tidak Anda inginkan, bayangkan cloud code memiliki prompt sistem rahasia
00:12:34yang biasanya akan disetel oleh karyawan anthropic tetapi yang sekarang disetel oleh kode
00:12:39berbahaya itu yang memberi tahunya untuk mengabaikan apa pun yang Anda minta dan hanya memalsukan bahwa ia melakukan apa yang
00:12:46Anda minta atau ia harus melakukan apa yang Anda minta tetapi selain itu ia harus memindai
00:12:52sistem untuk mencari rahasia bahwa selain itu ia mungkin harus menulis program kecil yang melakukan pemindaian
00:13:00dan yang kemudian mengirim data tersebut ke server jarak jauh tertentu atau apa pun semacam itu, kemungkinannya
00:13:06tidak terbatas di sini karena tiba-tiba Anda memiliki seperti kuda troya di sistem Anda tiba-tiba Anda memiliki agen
00:13:12AI yang mengamuk di sistem Anda dan bukan karena AI-nya mengamuk bukan karena modelnya
00:13:20buruk atau salah tetapi karena kode agen itu sendiri dan prompt sistemnya atau apa pun telah terpengaruh dan
00:13:28telah disusupi itu bukan skenario yang tidak realistis dan saya jamin ini akan terjadi pada
00:13:34suatu saat nanti, ini target yang sangat menarik agen AI adalah target yang sangat jelas menarik
00:13:41ini akan terjadi kita akan melihat tingkat baru dari serangan rantai pasokan ini karena mereka tidak hanya
00:13:49melakukan apa yang biasa mereka lakukan memengaruhi sekelompok paket dan memanen kredensial yang sudah mengerikan
00:13:54dan frekuensinya meningkat tetapi kita juga akan melihat agen AI mengamuk karena kode berbahaya
00:14:01hanya masalah waktu saja jadi ada banyak lapisan di sini seperti yang Anda lihat dan itu hanyalah
00:14:08kenyataan baru tempat kita hidup sekarang saya rasa ini agak mirip dengan masa awal internet ini semua
00:14:14bergejolak sementara kita masih mencari tahu segalanya dan kita harus mencari tahu bagaimana meningkatkan keamanan
00:14:21dan bagaimana melakukan segala sesuatunya dengan aman dan satu langkah jelas yang berlaku untuk pengembangan tetapi juga untuk menjalankan
00:14:26agen AI adalah Anda tidak ingin melakukannya di lingkungan di mana hal-hal bisa menjadi salah Anda
00:14:32tidak ingin menjalankannya di lingkungan tempat Anda menyimpan kredensial atau rahasia atau data lainnya
00:14:37yang penting bagi Anda Anda tidak ingin melakukannya di mesin utama Anda Anda ingin menjalankan agen Anda ingin
00:14:42membangun perangkat lunak dalam mesin virtual yang terisolasi mesin jarak jauh apa pun semacam itu di mana radius
00:14:49kerusakannya terbatas karena sekali lagi ini hanya masalah waktu sampai hal-hal menjadi salah dan kita harus
00:14:56menyadari bahwa itu langkah penting pertama hal-hal berubah dengan cepat dan keamanan adalah
00:15:03masalah besar dan ia akan tetap menjadi masalah besar dan menjadi lebih bermasalah seiring percepatan AI saat model AI ini
00:15:11menjadi lebih pintar terutama dikombinasikan dengan alat-alat tempat mereka dijalankan dan karena ini
00:15:17memperkenalkan banyak kemampuan baru dan pada saat yang sama ada begitu banyak kenyamanan yang ditambahkan oleh
00:15:23mereka kenyamanan itu selalu berbahaya karena itu membuat Anda menjadi ceroboh dan mengabaikan banyak hal dan ya
00:15:30AI ada di mana-mana sehingga banyak orang yang tidak tahu apa-apa tentang keamanan siber menggunakannya dan bahkan
00:15:34orang-orang yang tahu banyak tentangnya atau tahu sesuatu tentangnya berada dalam bahaya besar jadi kita akan
00:15:40menghadapi perjalanan yang menantang di sini saya rasa dan kita harus berpikir ulang dan sangat berhati-hati di mana dan bagaimana kita menjalankan agen dan
00:15:49mengerjakan kode kita.