Akhirnya Microsoft memberikan penjelasan aplikasi misterius “G” yang mencegah perangkat untuk shutdown, yangtelah menimbulkan kekhawatiran sejak lebih dari satu tahun dari sekarang.
Sekitar bulan Oktober kemarin, Microsoft menjelaskan aplikasi G misterius yang masuk sebagai daftar perbaikan Bug untuk build preview Windows 10 20H1, akan diperbaiki tahun depan. Microsoft mengatakan sedang menyelidiki laporan pengguna, dan akan memperbaiki masalah di 20H1. Alih-alih merupakan malware, ini ternyata disebabkan oleh keunikan dalam cara Windows menangani GDI + , yaitu sebuah komponen grafis yang awalnya ditulis untuk Windows 98. GDI adalah singkatan dari Windows Graphics Device Interface.
“Kami menyelidiki dan menemukan masalah di mana Windows yang terkait dengan GDI + hanya dirujuk sebagai ‘G’. Kami telah memperbaiki ini, jadi ke depannya, akan memiliki nama ‘GDI + Window (<exe name>)’, di mana <exe name> akan menampilkan nama .exe dari aplikasi yang menggunakan GDI +, “kata tim Windows Insider.
Tetapi mengingat sejumlah keluhan tentang aplikasi G ini, Microsoft telah memutuskan untuk menawarkan penjelasan yang jauh lebih rinci dari Raymond Chen, seorang veteran Microsoft yang telah bekerja di Windows selama lebih dari dua puluh tahun. Menurut Chen, Aplikasi ini hanya muncul di Windows karena bug salah menafsirkan teks Unicode sebagai ANSI, yang biasanya muncul sebagai karakter pertama dari suatu aplikasi.
“Jika pengguna mengirimkan pesan Unicode ke DefWindowProcA, maka mereka akan menemukan bahwa banyak string terpotong pada karakter pertama mereka” jelas Chen.
Library GDI + ditulis untuk mendukung Windows 98, yang memiliki dukungan terbatas untuk Unicode. Selama perbaikan berikutnya, tim GDI + mengkompilasi ulang GDI + sebagai komponen Unicode daripada komponen ANSI. “Kecuali bahwa prosedur Window Notifikasi berisi panggilan eksplisit ke DefWindowProcA. Sebagian besar ketidakcocokan set karakter akan ditangkap oleh kompiler karena ketidakcocokan jenis. Tetapi ketergantungan set karakter dalam DefWindowProc tidak dikodekan dalam tipe parameter. Ini tersirat dalam cara pengguna menerima pesan. Ketidakcocokan ini tidak terdeteksi oleh kompiler, “jelas Chen.
“Ketidakcocokan ini juga tidak terdeteksi oleh pengujian karena jendela pemberitahuan tidak melakukan pemrosesan teks. Judul jendela dipotong dari ‘GDI + Hook Window’ menjadi hanya ‘G’, tetapi judul itu tidak digunakan untuk apa pun, jadi kesalahan itu tidak ada konsekuensinya. Judul jendela tidak pernah ditampilkan kepada pengguna. Kecuali ketika masalah itu terjadi. ” lanjutnya
Jadi mengapa ini mencegah beberapa mesin Windows dari proses shutdown? Chen mengatakan ini terkait dengan layar Resolution Shutdown Blocked . “Ketika sebuah program mencegah pengguna logout atau shutdown , Windows mencari jendela yang terlihat milik program itu dan menggunakannya untuk mewakilinya di layar Blocked Shutdown Resolver (BSDR). Tetapi jika program tersebut tidak memiliki jendela yang terlihat, maka BSDR akan mengambil jendela apa pun yang termasuk dalam program itu sendiri, terlihat atau tidak, dan terkadang jendela yang tampil merupakan jendela yang tak terlihat, dan yang dipilih adalah yang bernama ‘G’.
Perlu diingat, hanya sebagian saja yang mengalami masalah ini, dan masalah ini sepertinya sudah ada sejak Windows 10 1803, namun saya sendiri belum pernah menemukan masalah ini, apakah kamu pernah? silahkan komen dibawah guys.
Sumber : ZDNet, Microsoft, Malwarebytes