Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Sanitizer adalah sekelompok alat analisis dinamis yang menemukan kesalahan dalam program saat runtime melalui instrumentasi tambahan yang dimasukkan oleh kompiler. Ini termasuk mendeteksi masalah keamanan memori . Android mendukung dan sangat menyarankan penggunaan pembersih berikut:
HWAddress Sanitizer (HWASan)
HWASan adalah pembersih utama yang memberikan deteksi masalah keamanan memori. Ini membutuhkan ARM64 dan dapat mendeteksi:
Tumpukan dan tumpukan buffer overflow atau underflow
Tumpukan penggunaan setelah gratis
Penggunaan tumpukan setelah cakupan
Tumpukan penggunaan setelah pengembalian
Bebas ganda atau bebas liar
Pembersih Alamat (ASan)
ASan adalah alat yang mirip dengan HWASan. Ini berfungsi di lebih banyak platform, tetapi tidak didukung di Android.
Pembersih Alamat Kernel
KASan adalah mitra kernel dari alat userspace di atas. Ini berbagi implementasi kompiler yang sama. KASAN dan ASan/HWASan saling melengkapi karena satu alat berlaku untuk kernel dan alat lainnya berlaku untuk ruang pengguna. Kami merekomendasikan untuk mengaktifkan keduanya secara bersamaan untuk mengurangi jumlah konfigurasi build dan mengurangi matriks pengujian.
Pembersih Perilaku Tidak Terdefinisi (UBSan)
UBSan melakukan instrumentasi waktu kompilasi untuk memeriksa berbagai jenis perilaku tidak terdefinisi (bukan keamanan memori). Ini termasuk pemeriksaan luapan bilangan bulat yang ditandatangani dan tidak ditandatangani (IntSan), pemeriksaan batas untuk array berukuran statis (BoundsSan), dan banyak jenis perilaku tidak terdefinisi lainnya. IntSan dan BoundsSan juga cocok untuk diaktifkan dalam produksi sebagai mitigasi keamanan.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-02-07 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Informasi yang saya butuhkan tidak ada"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Terlalu rumit/langkahnya terlalu banyak"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Sudah usang"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Masalah terjemahan"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Masalah kode / contoh"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Lainnya"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Mudah dipahami"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Memecahkan masalah saya"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Lainnya"
}]
{"lastModified": "Terakhir diperbarui pada 2024-02-07 UTC."}
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2024-02-07 UTC."]]