Kunjungan ke Pengadilan soal SQL Injection
(sockpuppet.org)- Prinsip keterbukaan yang luas dalam Illinois FOIA diuji ketika berhadapan dengan skema basis data lembaga publik, dan permintaan atas basis data tilang parkir Chicago CANVAS berujung pada gugatan serta perdebatan legislasi
- FOIA sangat kuat menjamin keterbukaan informasi yang sudah ada, tetapi tidak bisa memaksa pembuatan catatan baru, sehingga ketika data makin banyak berada di dalam aplikasi, skema yang menunjukkan kueri seperti apa yang harus diminta menjadi penting
- Chicago menolak dengan alasan skema CANVAS mengancam keamanan, dan inti persidangan adalah apakah pengungkapan skema membuat serangan SQL Injection benar-benar mungkin dilakukan atau lebih mudah dilakukan
- Di pengadilan tingkat pertama dan banding, pihak yang mendukung keterbukaan menang, tetapi Illinois Supreme Court menilai file layout sebagai objek yang dikecualikan dengan sendirinya, dan memutuskan bahwa SQL schema termasuk di dalamnya
- Saat ini lembaga publik di Illinois dapat menolak membuka skema basis data, sementara SB0226 berupaya mewajibkan penyediaan penjelasan struktur basis data agar pemohon dapat meminta kueri basis data yang spesifik
Masalah yang dihadapi Illinois FOIA di depan basis data
- Illinois FOIA pada prinsipnya memperlakukan informasi yang dikumpulkan lembaga publik sebagai milik publik, dengan pengecualian yang terbatas
- Pemohon umumnya tidak dikenai biaya
- Lembaga publik tidak bisa dengan mudah membatasi jumlah permintaan
- Batas waktu respons pada dasarnya 5 hari, dan bisa ditambah 5 hari bila ada permintaan perpanjangan tertulis
- Jika menggugat penolakan yang tidak semestinya, biaya pengacara dapat dipulihkan
- Keterbatasan besarnya adalah bahwa FOIA tidak dapat memaksa lembaga publik membuat catatan baru
- Jika laporan yang diinginkan sudah ada, laporan itu bisa diminta
- Jika belum ada, pemohon harus meminta data mentah dan menyusunnya sendiri
- Seiring informasi lembaga publik makin banyak tersimpan bukan di lemari arsip, shared drive, atau dokumen Word, melainkan di aplikasi dan basis data khusus, nilai skema pun makin besar
- Skema basis data adalah struktur yang memuat nama berbagai tabel dan nama kolom di tiap tabel
- Artikel ini mengibaratkannya seperti file Excel dengan banyak tab
- Nama tiap tab dan baris header di masing-masing tab itulah yang setara dengan skema
Permintaan Matt Chapman atas skema CANVAS
- Matt Chapman diperkenalkan sebagai civic hacker yang melakukan jurnalisme data dengan memanfaatkan permintaan FOIA dalam skala besar
- Dalam proses pengolahan data tiket parkir Chicago, muncul sistem bernama CANVAS
- CANVAS adalah repositori pusat yang menyimpan semua data tiket parkir Chicago
- Matt Chapman meminta skema melalui FOIA untuk mengetahui apa saja yang ada di dalam basis data CANVAS
- Chicago menolak permintaan itu dengan mengacu pada klausul pengecualian Illinois FOIA terkait pemrosesan data otomatis
- Klausul itu mencakup software, protokol operasional, ringkasan program, file layouts, daftar sumber, modul, panduan pengguna, dokumen desain logis dan fisik, serta manual pegawai
- Informasi yang jika diungkap dapat mengancam keamanan sistem atau data juga dicantumkan sebagai pengecualian
- Chicago menyebut Matt Chapman sebagai “hacker” dan berargumen bahwa jika skema CANVAS jatuh ke tangan yang salah, itu bisa membahayakan kota
Isu teknis utama di pengadilan: SQL Injection
- Pertanyaan utama di persidangan adalah apakah pengungkapan skema CANVAS memungkinkan terjadinya serangan SQL Injection
- SQL adalah bahasa yang digunakan banyak program untuk berkomunikasi dengan basis data, dan SQL Injection adalah kerentanan keamanan yang dapat muncul di program yang menggunakan SQL
- SQL Injection terjadi ketika input pengguna disisipkan secara keliru ke dalam template kueri SQL di kode aplikasi
- Contohnya, dalam kueri yang membungkus nama dengan tanda kutip, input seperti
Bob O’Connoryang mengandung tanda kutip bisa membingungkan interpretasi basis data - Penyerang dapat memanfaatkan titik input seperti ini agar sisa input dijalankan seolah-olah itu kode
- Contohnya, dalam kueri yang membungkus nama dengan tanda kutip, input seperti
- Bruce Coffing, CISO Chicago, berargumen bahwa pengungkapan skema memberi penyerang tiga jenis bantuan
- Membantu menemukan kerentanan
- Membuat penelusuran kerentanan lebih tersembunyi
- Membantu memilih aplikasi yang paling layak diserang
- Argumen tanding berfokus pada fakta bahwa skema bukanlah tempat untuk menemukan kerentanan SQL Injection
- Kerentanan SQL Injection ditemukan di template kueri SQL dalam kode sumber aplikasi, bukan di skema basis data
- Yang diminta bukan kode sumber, melainkan skema yang lebih mirip baris header sebuah tabel
- Penyerang juga dapat mengambil skema lewat SQL Injection, sehingga skema lebih dekat sebagai hasil serangan daripada prasyarat serangan
Putusan tingkat pertama dan banding
- Di pengadilan tingkat pertama, pihak Matt Chapman menang
- Chicago langsung mengajukan banding, dan Matt Chapman tidak menerima skema CANVAS
- Pengadilan banding menelaah isu hukumnya dengan asumsi bahwa pengadilan tingkat pertama adalah pihak utama yang menilai fakta
- Risiko akibat pengungkapan dipusatkan pada standar “would jeopardize”
- “could” berarti sekadar dapat dibayangkan bahwa sesuatu mungkin terjadi
- Standar hukum “would” dijelaskan sebagai bukti bahaya yang jelas dan tidak menyisakan keraguan yang masuk akal bagi hakim
- Pengadilan banding menilai bahwa kemungkinan bahayanya harus sangat tinggi
- Pengadilan banding juga membahas apakah frasa pembatas dalam klausul pengecualian hanya berlaku untuk “any other information”, atau berlaku untuk keseluruhan frasa “Administrative or technical information” dalam pengecualian itu
- Jika hanya berlaku pada “any other information”, maka file layouts dan sejenisnya dikecualikan dengan sendirinya
- Jika berlaku untuk keseluruhan pengecualian, maka penilaian fakta bahwa pengungkapan tidak mengancam keamanan sudah cukup untuk memenangkan pihak Matt Chapman
- Pengadilan banding memutuskan bahwa frasa pembatas berlaku untuk seluruh pengecualian, sehingga berpihak pada Matt Chapman
Kesimpulan yang dibalik di Illinois Supreme Court
- Chicago kembali mengajukan banding, dan perkara ini sampai ke Illinois Supreme Court
- Illinois Supreme Court menafsirkan klausul pengecualian FOIA secara berbeda dari pengadilan banding
- Frasa pembatas hanya berlaku pada “any other information”
- Item-item lainnya dikecualikan dengan sendirinya
- Dengan putusan ini, pertanyaan apakah SQL schema adalah file layout menjadi penentu utama
- Muncul sanggahan bahwa skema dan file layout berbeda secara teknis
- SQL schema yang sama dapat digunakan oleh beberapa mesin basis data
- Masing-masing mesin basis data mengelola data hasilnya dengan underlying file layout yang berbeda
- McGraw-Hill Dictionary of Scientific & Technical Terms, 6E mendefinisikan file layout sebagai “deskripsi susunan data di dalam file”
- SQL schema lebih dekat pada abstraksi yang dibuat agar kita tidak perlu memikirkan susunan fisik data yang sebenarnya
- Illinois Supreme Court juga menggunakan definisi schema dari Merriam-Webster Online Dictionary, yaitu “structured framework or plan: outline”
- Pengadilan menilai perbedaannya hanya pada nama
- Hasilnya, skema diperlakukan sebagai file layout, dan pihak Matt Chapman kalah
Status saat ini dan SB0226
- Saat ini lembaga publik di Illinois dapat menolak membuka skema basis data
- Semakin banyak data berpindah ke aplikasi khusus, semakin sering pula akses ke data dasar menuntut permintaan kueri basis data lewat FOIA
- Masalah yang tersisa adalah basis data tidak boleh menjadi zona aman bagi pemerintah daerah untuk menghindari keterbukaan informasi publik
- SB0226 berupaya menambahkan rumusan ke undang-undang FOIA agar lembaga publik wajib memberikan penjelasan yang memadai tentang struktur semua basis data yang mereka kelola
- Tujuannya adalah agar pemohon dapat meminta lembaga publik menjalankan kueri basis data yang spesifik
- RUU ini dalam banyak hal sejalan dengan upaya Matt Chapman yang terus mengangkat persoalan ini
1 komentar
Komentar Hacker News
Saya adalah penggugat dalam gugatan ini. Saya juga masih menulis tulisan pendamping untuk postingan tptacek dan itu akan segera siap, jadi sementara itu silakan ajukan pertanyaan di sini.
Sambil menunggu, tulisan lama ini juga layak dibaca: https://mchap.io/that-time-the-city-of-seattle-accidentally-...
Namun perlu diingat bahwa Matt tetap kalah secara teknis meskipun didukung Loevy and Loevy, firma pengacara hak sipil papan atas tingkat nasional. Ini menunjukkan betapa tidak masuk akalnya sulitnya melawan balai kota, dan tanpa pengacara situasinya akan lebih parah lagi.
Hal yang menguntungkan kita adalah mengubah undang-undang, seperti yang diusulkan dalam tulisan itu. Jika mahkamah agung negara bagian sudah memutuskan, tanpa amandemen semuanya selesai, dan Illinois punya sejarah sering merevisi undang-undang FOIA. Hanya saja, sebagian revisi itu bukan untuk memperluas keterbukaan, melainkan justru memperkuat penutupan informasi.
Perubahan lain yang diperlukan adalah menjatuhkan hukuman berat pada lembaga yang kalah dalam pertarungan seperti ini. Di Illinois, itu dibatasi sekitar denda perdata 5000 dolar untuk lembaga tersebut. Apa itu denda perdata pun didefinisikan secara agak samar, dan dulu uangnya diberikan kepada penggugat, tetapi dalam perkara-perkara yang saya lawan kemudian, mereka hanya diminta membayar ke county. Seperti kata seorang jaksa negara bagian, “tidak masalah kalau kalah, saya tinggal menulis cek untuk diri saya sendiri.”
Terakhir, harus hati-hati dengan apa yang diminta dalam gugatan. Putusan banding seperti ini bisa keluar lalu mengukuhkan menjadi hukum persis hal yang sedang saya lawan. Ini bukan salah siapa pun, tapi memang terjadi. Saya sendiri pernah mendapatkan satu putusan konyol yang bukannya memperkuat hak-hak narapidana, malah menghapusnya.
'); SELECT col FROM loginsdaripada harus menebak nama kolom?Saya juga tidak terlalu bisa membantah penilaian pengadilan tentang skema dan tata letak file. Skema memang bukan tata letak file itu sendiri, tetapi cukup mirip: itu memberi tahu bagaimana “file” (record) ditempatkan dalam “sistem file” (tabel database). Misalnya, denormalisasi sangat mirip dengan menyimpan data secara inline di dalam record file. Sudut pandang bahwa sistem file pada dasarnya adalah database juga sudah dikenal luas. Saya penasaran bagaimana orang bisa berargumen bahwa keduanya tidak mirip.
Menurut Anda apa langkah berikutnya?
Saya setuju kota itu seharusnya membagikan skemanya, dan pada dasarnya memang sedang mengklaim security through obscurity, tetapi saya tidak setuju dengan premis inti tulisan itu, yaitu bahwa “mengetahui skema SQL tidak membantu penyerang.”
Saya memahami argumen tulisannya seperti ini: “Penyerang memulihkan skema SQL lewat serangan SQL injection. Skema bukan prasyarat serangan, melainkan hasil dari serangan.” Itu tampak berarti bahwa jika kerentanan ditemukan, skema pada akhirnya tetap bisa dipulihkan, tetapi itu tidak selalu benar. Beberapa SQL injection hanya bisa mengambil sebagian data dari tabel yang sedang dikueri, dan tidak bisa mengambil tabel lain seperti
information_schema. Jika sinyal yang Anda dapat dari kerentanan hanya berupa “kueri gagal” atau “kueri berhasil, data dikembalikan”, maka mengetahui skema membuat eksploitasi jauh lebih mudah.Jika kueri database yang gagal dicatat secara terpisah, maka injection yang bisa ditemukan oleh serangan 24 jam non-stop kemungkinan sudah ditambal. Dengan begitu, log mungkin tidak ramai sampai titik injeksi yang benar-benar ada—misalnya kerentanan yang hanya muncul bagi pengguna login sehingga tidak bisa ditemukan bot—ditemukan, dan pada saat itu mungkin masih ada waktu untuk melaporkan dan memperbaikinya sebelum penyerang menemukan cara memanfaatkannya.
Mengetahui skema tidak hanya mempercepat eksploitasi kerentanan, tetapi juga meningkatkan kemungkinan untuk mengeksplorasi injeksi tanpa menyebabkan kegagalan kueri sejak awal.
Standarnya seharusnya bukan “sensor semua informasi yang membantu”, melainkan “jangan ungkapkan kata sandi atau kode yang membocorkan backdoor.” Skema tidak bisa masuk kategori itu.
Meski begitu, saya juga pernah benar-benar menangani aplikasi di mana mengetahui skema membantu eksfiltrasi data bahkan tanpa adanya injection penuh. Contoh paling jelas adalah ketika kueri dibangun berdasarkan parameter URL, tetapi parameter itu tidak dibatasi dengan allowlist.
Jadi saya setuju bahwa skema bisa memberi sedikit keuntungan bagi penyerang.
https://brutecat.com/articles/leaking-youtube-emails
Jadi menurut saya logika itu tidak berlaku.
Di log server tidak ada apa pun yang menunjukkan error.
Bahkan sebagian besar latihan SQL injection tingkat pemula yang pernah saya ajarkan juga dilakukan tanpa mengetahui skema. Itulah sebabnya SQL injection begitu licik dan berbahaya.
Kurt mengunggah ini untuk menjebakku. Perlu diketahui bahwa target pembaca aslinya kebanyakan adalah orang nonteknis yang terlibat dalam politik pemerintahan daerah di wilayahku, Chicagoland
Sekalian iklan layanan masyarakat soal politik lokal: terlibat dalam politik nasional itu suram dan menguras semangat, seperti serangga kecil yang menabrak kaca gedung pencakar langit. Sebaliknya, politik lokal sangat responsif. Dengan waktu luang dan biaya yang nyaris nol, aku bisa menghasilkan dampak nyata, bahkan membantu meloloskan satu undang-undang. Sangat berbeda dibanding politik nasional
Hal yang mengejutkan di banyak tempat adalah politik lokal berjalan dengan berpusat pada papan diskusi. Papan diskusi itu mungkin bukan tempat yang ingin kalian datangi, dan sering kali berupa Facebook Group, tetapi ya harus diterima. Jika kalian menikmati ikut serta di komunitas seperti HN, kalian juga bisa ikut berpolitik, dan hanya dengan aktivitas di papan diskusi pun kalian bisa membuat sesuatu benar-benar terjadi
Sebenarnya bahkan di dalam AS sendiri pun sering begitu. Hanya pemerintah daerah dengan kewenangan home rule yang bisa menetapkan ordonansi tentang topik apa pun selama tidak bertentangan dengan hukum negara bagian atau federal; pemerintah daerah tanpa itu hanya bisa menetapkan aturan untuk topik tertentu yang diizinkan legislatif negara bagian. Ada negara bagian yang memberi home rule ke semua county dan munisipalitas, ada yang sama sekali tidak, dan ada yang hanya memberi ke sebagian. Misalnya di Texas, sebuah munisipalitas bisa memperoleh kewenangan home rule setelah mencapai populasi 5000 orang dan mendapat persetujuan pemilih
Juga penasaran apakah kamu bisa menautkan sumber yang bagus, entah di Facebook atau tempat lain, untuk orang yang ingin lebih terlibat dalam politik Chicago. Aku pernah mencoba mencari sebelumnya, tetapi hasilnya sangat terbatas
Bukankah konyol bahwa mahkamah agung dan pengadilan banding berbeda pendapat soal masalah struktur kalimat? Terlepas dari fakta bahwa itu hal yang umum, menurutku menafsirkan kalimat sebagai “semua penempatan file dan item lain juga termasuk, tetapi item lain itu hanya yang buruk” benar-benar tidak masuk akal. Aneh rasanya bahwa orang bisa menerima pasal hukum yang tetap sepenuhnya ambigu seperti itu
Aku juga paham bahwa ambiguitas seperti ini menguntungkan pengadilan yang memperoleh ruang diskresi, dan bahwa meski ada upaya berani, tidak mungkin membuat redaksi hukum menjadi bahasa yang “secara formal lengkap”. Aku tahu hukum itu berantakan, dan hukum ditulis oleh manusia naif yang penuh kesalahan
Tapi tetap saja, jika struktur kalimat dasar yang tertulis dalam hukum bahkan tidak jelas bagi pengadilan, bukankah itu berarti seluruh sistem gagal pada gerbang pertama?
Biasanya jawabannya adalah hukum seharusnya ditulis tanpa ambiguitas, tetapi itu tidak semudah kedengarannya. Selain itu, kadang para legislator sendiri juga tidak sepenuhnya sepakat, sehingga mereka sengaja membiarkan sebagian redaksi tetap ambigu agar pengadilan yang menafsirkannya
Apakah cuma aku yang merasa agak terganggu dan khawatir bahwa pengecualian kode sumber dimasukkan secara terang-terangan?
Mudah membayangkan skenario di mana sebuah kota mengembangkan perangkat lunak tertentu secara internal, lalu menyembunyikan “bias” yang mungkin tidak diinginkan atau elemen lain di dalam kode sumbernya
Bahkan tidak perlu membangun semuanya dari nol. Cukup menambal komponen pihak ketiga berlisensi permisif lalu menggunakannya
Menurutku amandemen yang diusulkan ini tidak melangkah cukup jauh
Ini masalah yang sama seperti yang dihadapi orang saat mencoba mengubah proyek tertutup menjadi open source. Kode proprietari yang hanya memberi hak pakai kepada pengembang dan pelanggan, tetapi bukan hak membagikan source code, terkunci di mana-mana
Bahkan proyek yang sejak awal dibuat dengan orientasi keterbukaan yang kuat tanpa kepentingan komersial langsung, seperti kontraktor pemerintah, bisa mengalami masalah ini. Masalah yang dihadapi kernel Linux saat mendukung ZFS atau driver binary blob kernel/user-space sudah sangat dikenal[1]
Ironisnya, di satu sisi informasi memang bergerak menuju kebebasan, dan secara ekonomi perangkat lunak open source pada akhirnya akan menyingkirkan pesaing tertutup seiring waktu. Tetapi proses mengubah proyek menjadi open source sendiri mahal, dan kadang sangat mahal sampai tidak terjangkau, sehingga meskipun para pengelola dan perusahaan ingin melakukannya, mereka tetap tidak bisa membuka alat-alat lama. Hanya dengan melibatkan tim legal dan mencari pemegang hak untuk setiap komponen saja sudah cukup membuat sebagian besar pengelola menyerah
Jika pemerintah mewajibkan dalam kontrak agar pemasok hanya menggunakan komponen open source di seluruh pohon dependensi, biayanya bisa sangat tinggi. Banyak dependensi tidak punya pengganti open source yang setara, atau alternatif tertutup memiliki kemampuan yang kurang sehingga perlu anggaran untuk menutup kekurangan fungsi. Dalam jangka pendek, tidak ada parlemen yang akan menerima biaya tambahan seperti itu, tetapi dalam jangka panjang publik akan diuntungkan
[1] Masalah kernel itu memang pada dasarnya fungsi dari GPL. Jika lisensinya lebih permisif seperti Apache 2 atau MIT, masalah seperti itu tidak akan ada, dan keluarga BSD juga tidak akan kesulitan mendukung ZFS. Namun posisi bahwa aplikasi publik pada prinsipnya harus di-open-source-kan oleh pemerintah lebih dekat ke GPL daripada MIT dari sudut pandang lisensi. Kalau tidak, pemasok bisa saja membawa bagian yang benar-benar penting sebagai kode binary blob yang “divendorkan”, lalu menyisakan hanya kerangka kosong yang tidak bermakna pada komponen yang dipublikasikan untuk memenuhi persyaratan
Meski begitu, putusan seperti ini bisa menimbulkan efek menciutkan
Seingatku, pemerintahan koalisi Jerman sebelumnya yang kini sudah gagal sempat memasukkan ini ke dalam janji kampanye mereka, tetapi tidak berhasil menjalankannya. Mungkin pemerintah baru akan melakukannya
Tulisan yang sangat menarik
Menganggap pengungkapan skema sebagai sesuatu yang harus dilindungi tampak menggelikan. Jika benar seperti yang dijelaskan, maka hasil ajaib seperti “karena ada di dalam database, tidak ada yang bisa diketahui, dan jika tidak bisa menjelaskan cara menemukannya maka tamatlah sudah” menjadi mungkin
Dari sudut pandang orang yang bekerja di perusahaan kecil dengan banyak pelanggan, saya juga tidak ingin begitu saja menyerahkan skema database, tetapi saya tetap akan berusaha mencari dan menyediakan data yang diinginkan pelanggan, bukan menolaknya
Untuk proyek cleartap.com saya mengajukan permintaan FOIA untuk lebih dari 1 juta halaman dokumen database kualitas air di AS
Sebagian besar negara bagian hanya mengenakan biaya kecil untuk mengumpulkan dokumen
Michigan meminta 50 ribu dolar untuk permintaan FOIA. Saya rasa itu karena krisis kontaminasi timbal di Flint. Sepertinya mereka ingin membuat saya menyerah
Proyeknya hebat
“Ambilkan data semua tilang parkir yang diterbitkan untuk Bob O, lalu ambil juga semua informasi lain di database dan semua kata sandi semua orang.”
Ini adalah contoh injeksi SQL yang ditulis dalam bahasa Inggris biasa, tetapi di sini “everyone's” juga menimbulkan apostrof tunggal yang terlepas, jadi itu juga bermasalah. Jika “Bob O'Conner” buruk, maka “everyone's” juga buruk
“Kode sumber program yang mereka jalankan juga umumnya tidak bisa diminta melalui FOIA.”
Sayangnya, menurut saya bagian itu seharusnya ilegal di bawah FOIA
Kode sumber seharusnya open source dan dapat diaudit. Jika dikecualikan dari FOIA, itu menjadi cara untuk mengakali kepercayaan publik terhadap penggunaan perangkat lunak oleh pemerintah
Saya penasaran bagaimana dan di mana pengadilan sudah memutuskan isu seperti ini
Bisa juga ada logika bisnis yang memang ingin dirahasiakan oleh lembaga pemerintah dan secara hukum diperbolehkan. Dalam kasus database tilang parkir di tulisan asli, bisa saja kode sumber perangkat lunak yang berkomunikasi dengan database itu memuat logika untuk memilih kapan dan di mana petugas parkir akan melakukan penertiban terfokus yang “acak”
Hal-hal seperti ini yang membuat keinginan saya masuk sekolah hukum memudar. Sebagian besar litigasi terasa seperti teater kabuki, dan lebih tampak seperti retorika untuk memberi pembenaran agar orang yang berwenang bisa mengambil keputusan yang sebenarnya sudah ingin mereka ambil sebelum persidangan, bukan retorika untuk mencapai hasil yang adil atau logis
Seseorang dapat secara sah membangun sistem mirip firewall web yang memeriksa kata kunci seperti
information_schemadan variasi pengodeannya dalam permintaan HTTP masuk. Hal seperti itu selalu bisa dianggap percobaan peretasan, sehingga dapat diblokir. Jika Anda sudah tahu skemanya, Anda bisa menyusun kueri tanpa perlu terlebih dahulu menghindari batasan itu. Apakah ini kemungkinan penghalang yang serius? Tidak. Apakah ini ada hubungannya dengan keegoisan? Rasanya tidak begituMengatakan bahwa itu memiliki nilai yang sangat kecil hanya dalam arti “bersifat periferal”, yaitu bukan inti dan tidak cukup penting untuk diperdebatkan, tampak akurat. Tetapi karena ia hanya mengatakan kebenaran, pihak lawan lalu membesar-besarkannya untuk meyakinkan pengadilan dengan “lihat, bahkan ahli dari pihak sana juga bilang ada nilainya”. Jadi kesimpulannya ahli itu seharusnya cukup mengatakan “tidak ada nilainya”. Saya menganggap itu salah, tetapi salahnya terlalu kecil sehingga sulit membuktikan bahwa pihak lawan tidak sepenuhnya benar. Pada akhirnya, ucapan yang kurang akurat jadi lebih menguntungkan di ruang sidang ini, dan retorika menjadi sama pentingnya dengan peran ahli itu sendiri