Kali ini saya akan mengepost cara menghack windows 8 tapi post nya kepanjangan hehe.
Dalam artikel ini saya akan berbagi hasil ad-hoc penelitian kerentanan keamanan yang telah saya lakukan pada windows 8 penyebaran aplikasi. Secara khusus, kita akan membahas kelemahan desain dasar yang memungkinkan ke Reverse Insinyur Win8 aplikasi, modifikasi aplikasi diinstal dan implikasi negatif pada Intelektual perlindungan hak properti, model Perizinan dan keamanan PC secara keseluruhan. Akhirnya kita akan membahas beberapa ide-ide kreatif tentang bagaimana untuk mengurangi masalah keamanan.
para induk beban: C:\Program Files\Applications
Semua Windows 8 aplikasi di preview pengembang yang dipasang di bawah C klandestin: \ Program Files \ Aplikasi lokasi. Saya akan menebak dan mengatakan bahwa setelah Windows App Store pergi online itu akan menginstal semua aplikasi di bawah folder itu. Saat folder adalah salah satu yang tak terlihat dan tidak dapat diakses dari antarmuka pengguna Windows Explorer pada instalasi Win8 pratinjau pengembang baru.
Berikut ini adalah contoh dari beberapa 29 Win8 aplikasi aplikasi diinstal pada pratinjau pengembang Win8:
Dan inilah folder tersembunyi backing it up:
Mendapatkan Akses ke C: \ Program Files \ Aplikasi
Pada dasarnya Anda harus menavigasi ke folder itu, tekan tombol "Tab
Keamanan" dan mengatur diri sebagai pemilik. Biarkan aku berjalan Anda
melalui proses langkah-demi-langkah.
1. Ketik "C: \ Program Files \ Aplikasi" di address bar Windows Explorer dan tekan enter.
2. Amati kaget dan cemas dialog sistem mengatakan Anda tidak memiliki folder pada komputer Anda sendiri. Tekan "Lanjutkan".
3. Setelah menekan "Lanjutkan", Anda akan dihadapkan dengan dialog berikut:
Jangan tekan tombol "close", bukannya mengklik "keamanan tab" link.
4. Dalam dialog sistem berikut klik "maju".
5. Klik "perubahan" link dalam bidang keamanan pemilik.
7. Klik "OK", klik "OK", klik "OK".
Apa jenis kapal aplikasi dengan Windows 8?
Melihat folder ini itu cukup mudah untuk menentukan jenis kapal aplikasi dengan Windows 8 pratinjau pengembang.
Apa yang ada di C: \ Program Files \ Aplikasi?
Untuk aplikasi HTML folder berisi semua kode sumber mereka dan dapat dimodifikasi.
Untuk aplikasi C # folder berisi kode XAML sumber dan versi reverse-engineerable dan dimodifikasi dikompilasi dari kode C #.
Untuk C + + DirectX apps folder tersebut berisi binari dikompilasi.
Jujur, C + + bukan spesialisasi saya, jadi saya akan menghindari
membahasnya pada setiap panjang lebar.
Membalikkan Teknik HTML & CSS javscript & Win8 aplikasi
Ada cacat desain mendasar dalam konsep aplikasi HTML. HTML, Javascript
dan CSS semua ditafsirkan bahasa, dan tidak dikompilasi bahasa. Berarti
Anda harus mengirimkan kode sumber untuk aplikasi Anda bukan pengiriman
dikompilasi binari. Yang menempatkan Kekayaan Intelektual orang memilih
untuk menulis HTML & CSS & JS app hanya untuk platform bawah
risiko.
Sebagai contoh, inilah kode sumber HTML untuk Tweet @ rama Win8 app kode:
Dan inilah tweet @ rama kode Javascript yang melakukan sebenarnya posting Twitter:
Memodifikasi HTML & javscript & Win8 CSS aplikasi
Bagian dari masalah dengan bahasa ditafsirkan adalah bahwa mereka tidak
mengkompilasi sampai saat paling mereka dieksekusi. Yang memungkinkan
para pelaku kejahatan untuk mengedit kode sebelum eksekusi.
Sebagai contoh, di sini adalah layar cetak tweet @ rama standar app;
Mari kita memodifikasi HTML, Javascript dan CSS untuk aplikasi ini:
(untuk singkatnya kita hanya akan walkthrough perubahan HTML sederhana)
Dengan
memodifikasi HTML & CSS & Javascript kode sumber kita dapat
mengubah desain visual untuk sesuatu yang sedikit lebih visual
menyenangkan:
Perhatikan bahwa kita telah berubah baik desain dan perilaku aplikasi
dengan memodifikasi kode sumber. Desain baru ini memiliki judul yang
berbeda, dan perilaku baru menggunakan gambar login di pengguna sebagai
latar belakang. Kami memiliki kekuatan untuk benar-benar mengubah baik
desain visual dan kode sumber pelaksana HTML & CSS & JS Win8
aplikasi.
Baru berkembang biak virus?
Setiap malware yang tidak sah yang memperoleh akses ke C: \ Program
Files \ Aplikasi berpotensi memodifikasi kode sumber untuk mengeksekusi
dengan cara yang berbahaya. Karena ini adalah arah Win8 aplikasi
mengambil menulis ini jenis virus kemungkinan akan menjadi industri
pertumbuhan.
Sebagai contoh kita bisa melihat tweet @ rama app sekali lagi. Aset yang
paling berharga yang memiliki aplikasi yang kami twitter oauth
identitasnya. Virus akan dapat memodifikasi tweet @ source code rama
jadi setelah dijalankan itu mengambil kredensial dan mengirim mereka ke
titik akhir jarak jauh berbahaya. Kode berikut sela ke kode Javascript
tweet @ rama akan melakukan hal itu:
Baru berkembang biak retak?
Setiap eksekusi tidak sah yang memperoleh akses ke C: \ Program Files \
Aplikasi berpotensi memodifikasi kode sumber untuk pembelian solusi
aplikasi Windows Store dan logika lisensi. Seluruh konsep Ujian dan
pembelian fitur didasarkan pada Javascript, C # atau C + + kode
memanggil Windows 8 RuntimeTime API untuk Windows Store. Setiap
perubahan kode yang berpotensi mengubah pembelian dan logika perizinan
untuk aplikasi tersebut.
Misalnya, Dalam konferensi BUILD Microsoft Arik Cohen Menunjukkan
(35:25) kode berikut yang melakukan cek Javascript untuk isTrial.
Ini akan menjadi endavour sepele untuk secara manual mengedit file ini
Javascript dan menghapus "licenseInformation.isTrial" cek. Dan dengan
demikian menghilangkan pembatasan Percobaan dari aplikasi ini Win8
sampel.
Jika ini set masalah tidak diatasi, app pembajakan melalui modifikasi
aplikasi untuk aplikasi Windows Store mungkin akan menjadi cukup lazim.
Membalikkan Teknik C # + XAML Win8 apps
C # kode dikirimkan dalam binari EXE & DLL dikompilasi. XAML dikirim
sebagai kode sumber teks biasa. Yang membuat kedua bentuk kode sangat
rentan terhadap reverse engineering.
Sebagai contoh, kita bisa membuka "Kenangan" (C # WinRT XAML app) MainPage.xaml di Kaxaml dan melihat kode sumber XAML:
Menggunakan dotPeek JetBrains akan mungkin untuk melihat kode C # source untuk aplikasi Kenangan:
Memodifikasi C # + XAML Win8 apps
XAML untuk Win8 aplikasi disimpan dalam plain-teks dan dapat diedit dari
alat mengedit teks. The. Bersih binari adalah unsigned dan dengan
demikian dapat mengedit menggunakan MSIL Tenun alat Reflexil .
Sebagai contoh, di sini adalah "Kenangan" C # XAML app pengiriman dengan Windows 8 pratinjau pengembang:
Mengedit XAML cukup sepele karena itu disimpan sebagai file teks biasa:
Editing C # dapat dilakukan dengan menggunakan reflektor yang Reflxil MSIL Editor:
Dengan beberapa modifikasi cahaya untuk kode # XAML dan C kita dapat mengubah tampilan dan perilaku aplikasi:
Membalikkan Teknik C + + apps Win8
Aku akan mengaku tidak menjadi kuat C + + pengembang (terkesiap!) jadi
saya akan tetap ini singkat dengan menunjukkan C + + apps juga rentan
terhadap reverse engineering. Tampaknya app Toko Microsoft ditulis dalam
C + +. Aset yang paling penting bahwa aplikasi akan memiliki adalah
endpoint untuk toko Microsoft. Membuka C: \ Windows \ System32 \
WinStore \ WinStoreUI.dll di notepad dan mencari alamat "https"
mengungkapkan URL berikut:
Setelah http://go.microsoft.com/fwlink/?LinkId=195322&clcid=0x409
URL mengarah ke URL saat ini tidak aktif dari
https://services.apps.microsoft.com/browse . Saya akan menebak bahwa ini
adalah URL saat ini sedang digunakan untuk menguji Windows Store App.
Apa yang telah kita meyakinkan terbukti selama ini posting blog?
Mengingat bahwa Windows 8 hanya merupakan rilis alpha pengembang, kami telah melihat beberapa hal yang mengganggu:
- Hal ini dimungkinkan untuk melakukan reverse engineering dan memodifikasi HTML, JavaScript dan CSS kode dikirim dalam Win8 aplikasi.
- Hal ini dimungkinkan untuk melakukan reverse engineering dan memodifikasi C # / VB.Net source code pengiriman dengan Win8 aplikasi.
- Hal ini dimungkinkan untuk melakukan reverse engineering dan memodifikasi source code XAML pengiriman dengan Win8 aplikasi.
- Hal ini dimungkinkan untuk (pada beberapa tingkat yang terbatas?) Balik C + + Win8 apps.
Microsoft benar-benar dapat memecahkan masalah ini?
Tidak ada. Menurut pendapat saya, pengiriman aplikasi sebagai
bagian dari semua toko app akan selalu rentan pada beberapa tingkat
terbatas untuk reverse engineering dan modifikasi.
Microsoft dapat mengatasi masalah ini?
Ya, Microsoft dapat membuat aplikasi secara signifikan lebih
marah-bukti dan menumpuk banyak kesulitan pada mereka yang berusaha
untuk melakukan reverse engineering dan memodifikasi Win8 aplikasi.
Dengan asumsi kode berbahaya dan orang-orang tidak dapat mengakses C: \
Program Files \ Aplikasi tampaknya naif yang terbaik.
Berikut adalah beberapa saran untuk apa yang beberapa dari mereka kesulitan tersebut potensial mungkin:
- Mengaburkan C # / VB.Net proyek secara default:. Proyek bersih default untuk pengiriman dengan kode sumber unobfuscated. Jika Microsoft serius memperkenalkan kebingungan jendela-jendela toko App harus diaktifkan secara default untuk semua proyek net,. Bukan hanya bagus untuk dimiliki addon seperti itu sekarang. Tim VS2011 harus menyelidiki dan mengintegrasikan solusi obfuscation langsung ke produk dan menyalakannya untuk semua proyek-proyek baru. Bersih. Hal ini akan membuat lebih sulit untuk melakukan reverse engineering. Apps bersih.
- Mengecilkan HTML, Javascript dan proyek CSS secara default: Dengan sukacita pengembang web penyebaran desktop kemungkinan akan meninggalkan Javascript, HTML dan CSS minification. Sekali lagi, jalan yang baik ke depan di sini adalah untuk memastikan semua kode HTML, dan CSS Jacascript minified secara default. Langkah ini akan membuat lebih sulit untuk melakukan reverse engineering aplikasi HTML.
- Sangat menandatangani semua majelis bersih secara default:. Kuat-penandatanganan telah menjadi bagian dari kerangka bersih selama 10 tahun sekarang.. Hidupkan secara default dengan sertifikat lisensi pengembang yang unik untuk semua Win8. Aplikasi bersih. Pastikan Win8 AppContainers hanya menjalankan aplikasi ditandatangani, bahkan tidak memiliki kunci registry tersembunyi untuk mengaktifkan aplikasi unsigned ( seperti WP7 tidak ). Itu akan membuat lebih sulit untuk memodifikasi. Apps bersih.
- Checksum HTML, Javascript dan CSS sebelum proyek startup: Bahkan jika itu unpreventable bahwa memodifikasi Win8 aplikasi HTML akan terjadi, menjalankan checksum pada semua file sebelum memuat aplikasi ke dalam memori. Itu akan membuat lebih sulit untuk memodifikasi Win8 aplikasi HTML. Kedengarannya seperti AppBlockMap.xml yang seharusnya melakukan sesuatu yang mirip, tetapi tampaknya tidak bekerja.
- Jangan menyimpan file App mengeksekusi sebagai polos berusia file pada hard drive-pengguna: Seharusnya tidak mungkin bahkan melihat file pengiriman dengan sebuah aplikasi secara default hanya menggunakan Windows Explorer. Folder lossless dikompresi dengan DRM perlindungan akan menjadi langkah yang baik ke depan di sini. Hal ini seharusnya membuat lebih sulit untuk melakukan reverse engineering Win8 aplikasi.
tl; dr: Jika Microsoft tidak melakukan langkah-langkah tersebut
atau yang sebanding itu bukan karena tidak bisa, itu karena ia tidak
mau. Jika Microsoft memilih untuk mengabaikan masalah ini selama satu
tahun tersisa (?) Pengembangan siklus hidup untuk Windows 8 maka itu
bukan karena ia tidak bisa memecahkan masalah ini.
Visual Studio 2.011 App Deployment
Apps digunakan oleh Visual Studio 2011 tidak bisa dikerahkan ke C: \ Program Files \ Aplikasi melainkan bisa dikerahkan ke C: \ Users \ \ AppxLayouts.
Lokasi alternatif untuk Visual Studio penyebaran aplikasi dan semua
penyebaran aplikasi lainnya dikendalikan oleh folder registri
HKEY_CURRENT_USER \ Software \ Classes \ Local Settings \ Software \
Microsoft \ Windows \ CurrentVersion \ AppModel.
Sumber: Justin Angel
Dilarang Spam !!
EmoticonEmoticon