Catatan: masalah dasar bagi saya adalah untuk dapat mengakses jaringan berbagi yang saya (Win 7 admin user) telah mengatur ketika saya menjalankan program yang ditinggikan. Biasanya program yang ditinggikan tidak akan memiliki akses ke jaringan berbagi saya yang tidak ditinggikan.
Menurut Microsoft , pengaturan registri EnableLinkedConnections akan memungkinkan proses yang ditinggikan untuk mengakses pangsa jaringan dari proses penjelajah yang saat ini masuk (tidak ditinggikan).
Penjelasan ini masuk akal:
[...] Saat Anda menjadi anggota grup Administrators dan masuk, akun Anda akan dirusak oleh pengguna yang tidak memiliki hak istimewa oleh UAC. Konteks yang berjalan ini benar-benar terpisah dari konteks yang Anda dapatkan ketika Anda mengklik kanan Prompt Perintah dan meluncurkan sebagai administrator. Seperti yang mungkin Anda perhatikan, drive jaringan yang terhubung dalam satu konteks tidak terlihat di yang lain. [...]
Utas forum ini menanyakan tentang kerentanan yang dibuka oleh pengaturan ini. Jawaban yang diberikan tautan ke artikel tentang menonaktifkan UAC meminta (atau jadi saya mengerti).
Pertanyaannya sekarang adalah, apa yang dilakukan atau diizinkan oleh pengaturan registri EnableLinkedConnections pada sistem Windows 7, mengingat bahwa kita tidak berjalan dalam lingkungan domain .
Sunting: Satu hal yang secara khusus saya minati adalah apakah pengaturan ini hanya memengaruhi (visibilitas) drive jaringan atau apakah ia memiliki implikasi lain.
Jawaban:
Tidak memiliki akses sumber ke Windows, sulit untuk mengatakan apa pun yang tidak spekulasi. Di samping penafian itu, inilah yang saya dapat kumpulkan dengan membaca ini:
UAC membuat dua token keamanan saat masuk: token tinggi yang berisi keanggotaan grup lengkap pengguna, dan token terbatas yang memiliki keanggotaan grup "Administrator" dilucuti. Setiap token berisi ID unik unik lokal (LUID) yang mengidentifikasi sesi masuk. Mereka adalah dua sesi log masuk yang terpisah dan berbeda.
Mulai di Windows 2000 Server SP2, drive yang dipetakan (yang direpresentasikan sebagai symlink di namespace manajer objek) ditandai dengan LUID token yang membuatnya (Anda dapat menemukan beberapa referensi Microsoft untuk perilaku ini dalam artikel KBase ini , dan Anda bisa pelajari lebih lanjut tentang mekanisme fitur dalam posting blog ini ). Inti dari fitur ini adalah bahwa drive yang dipetakan yang dibuat oleh satu sesi masuk tidak dapat diakses ke sesi masuk lainnya.
Mengatur nilai EnableLinkedConnections memicu perilaku di layanan LanmanWorkstation dan subsistem keamanan LSA (LSASS.EXE) untuk menyebabkan LSA menyalin drive yang dipetakan dari salah satu token pengguna ke dalam konteks token lainnya. Ini memungkinkan drive yang dipetakan dengan token yang ditinggikan terlihat oleh token terbatas dan sebaliknya. Tidak ada kekhasan perilaku fitur ini dengan menghormati lingkungan domain versus non-domain. Jika pengguna Anda menjalankan dengan akun "Administrator" di lingkungan non-domain, token terbatas dan token mereka, secara default, akan memiliki pemetaan drive independen.
Dalam hal kerentanan, dokumentasi resmi dari Microsoft tampaknya kurang. Saya memang menemukan komentar dan tanggapan dari seorang karyawan Microsoft yang bertanya tentang potensi kerentanan dalam percakapan tentang UAC dari 2007. Mengingat bahwa jawabannya berasal dari Jon Schwartz, yang, pada waktu itu, berjudul "Arsitek UAC", saya akan cenderung menganggap jawabannya memiliki kredibilitas. Inilah inti jawabannya untuk pertanyaan berikut: "... Saya belum menemukan informasi untuk menggambarkan apa yang sebenarnya terjadi secara teknis atau jika ini membuka celah UAC apa pun. Bisakah Anda berkomentar?"
Secara pribadi, saya tidak bisa memikirkan cara untuk "mengeksploitasi" celah ini, sejauh "menyemai" token yang ditinggikan dengan pemetaan drive masih akan mengharuskan pengguna untuk benar-benar mengangkat dan menjalankan sesuatu yang berbahaya dari pemetaan drive yang "diunggah" itu. Namun, saya bukan peneliti keamanan, dan saya mungkin tidak mendekati ini dengan pola pikir yang baik untuk menghasilkan potensi eksploitasi.
Saya telah menghindari menggunakan nilai EnableLinkedConnections di situs Pelanggan saya dengan melanjutkan tren yang kami mulai ketika Pelanggan mulai menggunakan Windows NT 4.0 - meminta pengguna masuk dengan akun pengguna terbatas. Itu bekerja dengan baik untuk kami selama bertahun-tahun dan terus bekerja dengan baik di Windows 7.
sumber
Sederhananya, itu menautkan kredensial pengguna super Anda dengan kredensial normal Anda. Ini tentu saja lebih kompleks, tetapi pada dasarnya, bahkan akun "administrator" Anda di windows 7 bukan admin, tetapi perlu melakukan yang setara dengan SUDO di linux untuk melakukan banyak operasi. Saat Anda memetakan drive jaringan, Anda perlu melakukan ini, tetapi drive jaringan hanya dipetakan untuk pengguna super, bukan pengguna normal. Pengaturan registri ini menautkan kredensial pengguna super dengan yang standar Anda untuk tujuan drive yang dipetakan. Dengan cara ini, keduanya dapat mengakses drive yang dipetakan, bukan hanya pengguna super.
sumber