Cara menemukan file terisolasi di komputer Anda. Bagaimana memastikan isolasi proses dan tidak merusak Windows. Perkenalan, atau betapa buruknya hidup tanpa kotak pasir

Jadi saya mencoba mengunci file penyimpanan terisolasi di aplikasi klien saya sehingga beberapa contoh aplikasi saya tidak dapat mengaksesnya secara bersamaan. Saya menggunakan sintaks berikut:

LockStream = new IsolatedStorageFileStream("my.lck", FileMode.OpenOrCreate, isoStore); lockStream.Lock(0, 0);

Kode ini menyebabkan aplikasi saya membuang NullReferenceException dari metode struktur FileStream.Lock. Saya mencoba menggunakan nilai panjang yang bukan nol. Saya mencoba menulis satu byte ke file dan kemudian hanya memblokir byte itu. Apa pun yang saya lakukan, NullReferenceException yang sama menghantui saya. Adakah yang tahu apakah ini mungkin dilakukan dengan penyimpanan terisolasi?

Saya juga mempelajari teknik ini di aplikasi Silverlight, apakah Silverlight mendukung penguncian file? Dokumen MSDN tampaknya menunjukkan bahwa ini bukan masalahnya, tetapi saya melihat posting dari MVP yang mengatakan demikian.

Pembaruan: Microsoft telah memperbaiki bug yang saya kirimkan ke Connect, tetapi bug tersebut tidak dirilis pada kerangka versi 4. Mudah-mudahan ini akan tersedia di SP berikutnya atau rilis penuh.

4

2 jawaban

Ini sepertinya bug di Framework. Mungkin saya salah karena ini terlalu besar untuk menjadi kenyataan.

Melihat kode sumber .NET 3.5 SP1 dengan Reflector, Anda dapat menemukan bahwa IsolStorageFileStream memanggil konstruktor dasar tanpa dimensi (FileStream()), yang menghasilkan kelas dasar yang tidak benar-benar diinisialisasi. IsolatedStorageFileStream membuat instance FileStream dan menggunakannya di semua metode yang ditimpanya (Write, Read, Flush, Seek, dll.). Aneh rasanya tidak menggunakan kelas dasarnya secara langsung.

Namun penguncian dan pembukaan kunci tidak ditimpa, dan memerlukan bidang pribadi (_handle), yang masih nol (karena konstruktor yang digunakan tidak memiliki parameter). Mereka berasumsi itu bukan nol dan memainkannya dan memicu NRE.

Singkatnya, mengunci dan membuka kunci tidak didukung (atau tidak berfungsi).

Saya rasa Anda terpaksa menggunakan metode penguncian lain seperti Mutex atau Semaphore.

Bagaimana memulihkan file saya yang terhapus oleh antivirus Eset NOD32” adalah permintaan yang sering terlihat di Internet. Namun, tidak banyak kemungkinan solusi untuk masalah ini, yang seringkali menimbulkan perasaan bahwa tidak ada cara untuk mengembalikan dokumen yang hilang.

Pertama-tama, Anda perlu memahami bahwa antivirus tidak akan pernah memblokir atau menghapus file yang tidak mempengaruhi fungsi sistem operasi atau program lain yang diinstal.

Oleh karena itu, jika dokumen Anda telah dihapus, Anda dapat mencurigai bahwa dokumen tersebut berbahaya. Namun, ada juga file yang hanya mengubah program, mengganggu prosesnya, namun tidak menimbulkan ancaman.

Apakah ada cara untuk memulihkan file yang terhapus oleh antivirus? Pasti ada! Pada artikel ini kita akan melihat apa itu aplikasi Eset NOD32, fitur-fitur yang bekerja dengannya dan cara efektif untuk memulihkan file yang terhapus oleh antivirus.

Apa itu Eset NOD32?

Bukan rahasia lagi bagi siapa pun di dunia modern betapa pentingnya, dan yang terpenting, seberapa relevan aplikasi antivirus. Mereka memungkinkan Anda tidak hanya menghilangkan sebagian besar file berbahaya, tetapi juga membantu mencegah kemungkinan ancaman bahkan sebelum ancaman itu muncul, merugikan sistem dengan satu atau lain cara.

Anti Virus Eset NOD32, yang paling sering disebut sebagai NOD32, adalah paket perangkat lunak antivirus lengkap yang dibuat oleh perusahaan Slovakia Eset pada tahun 1987.

Ada dua edisi program ini:

  • Versi rumah.
  • Versi bisnis.

Perbedaan utama antara versi bisnis dan versi rumahan adalah kemungkinan kendali jarak jauh dan adanya perlindungan lintas platform. Yang tidak kalah menyenangkannya adalah fitur yang memungkinkan Anda menyesuaikan program dengan mudah dan fleksibel untuk memenuhi kebutuhan apa pun.

Eset NOD32. Bagaimana cara mengaktifkan atau menonaktifkan antivirus?

Sering terjadi ketika menginstal program tertentu, kita diharuskan menonaktifkan antivirus, karena jika tidak maka antivirus akan “memakan” file penting yang tanpanya aplikasi tidak dapat dijalankan.

Alasan umum lainnya untuk mencari jawaban atas pertanyaan mengaktifkan/menonaktifkan antivirus adalah tujuan mengurangi konsumsi sumber daya “pembela”. Hal ini disebabkan oleh kekhasan cara kerja antivirus - antivirus biasanya memakan jumlah memori yang cukup besar meskipun dalam keadaan pasif, dan saat menjalankan program "berat" lainnya, terkadang perlindungan perlu dijeda.

Jadi bagaimana Anda menyelesaikan tugas mengaktifkan atau menonaktifkan NOD32? Mari kita lihat masalah ini dalam petunjuk di bawah ini.

1. Luncurkan aplikasi Eset NOD32 dan pergi ke Pengaturan.

2. Di jendela yang terbuka, Anda akan menemukan semua paket layanan NOD32 yang terinstal. Kunjungi masing-masing dan aktifkan/nonaktifkan opsi tergantung kebutuhan Anda.

Eset NOD32. Karantina dan pengecualian antivirus.

Karantina- repositori yang selalu ada di antivirus apa pun, terlepas dari pabrikan dan versinya (rumah atau bisnis). Ini menyimpan semua file mencurigakan yang, menurut antivirus, dapat membahayakan sistem operasi Anda dengan satu atau lain cara.

Perlu dicatat fakta bahwa tidak ada satu dokumen pun, meskipun itu adalah Trojan, yang terhapus secara instan. Pertama-tama, ancaman yang ditimbulkannya dinetralisir: file dikarantina dan antivirus dengan sabar menunggu pengguna membuat keputusan yang bertanggung jawab tentang tindakan lebih lanjut - Anda dapat menghapus dokumen yang terinfeksi atau menandainya sebagai pengecualian, yang akan kami lakukan bahas sebentar lagi.

Bagaimana menemukan karantina antivirus Eset NOD32? Sangat sederhana! Mari kita lihat petunjuknya di bawah ini.

1. Berlari Eset NOD32 dan pergi ke bagian tersebut Melayani.

2. Buka tabnya Dana tambahan. Letaknya di pojok kanan bawah.

3. Kami sekarang memiliki daftar lengkap layanan tambahan yang disediakan oleh Eset sebagai bagian dari antivirusnya. Membuka Karantina.

4. Di menu yang terbuka, NOD32 memberi Anda hak penuh untuk mengelola semua file yang diisolasi.

Kami menemukan karantina dan menemukannya fungsi utama:

  • Isolasi berkas. Opsi ini memungkinkan Anda menemukan file berbahaya secara manual dan memblokirnya jika antivirus tidak dapat mengatasinya sendiri.
  • Memulihkan. Opsi yang memungkinkan Anda memulihkan file yang terkunci secara tidak sengaja.

Memulihkan dokumen yang terisolasi saja tidak selalu menghindari pemblokiran lebih lanjut. Bisakah ini diubah? Mari kita lihat.

1. Tanpa meninggalkan jendela Karantina, klik kanan pada file yang ingin Anda buka kuncinya.

2. Pilih sebuah opsi Pulihkan dan kecualikan dari pemindaian.

3. Jika Anda yakin dengan tindakan Anda, klik Ya. Jika Anda tidak tahu apakah suatu file berbahaya atau tidak, sebaiknya klik TIDAK.

Eset NOD32 menghapus file. Bagaimana cara memulihkannya?

Anti Virus- ini adalah satu-satunya penghalang yang menahan sejumlah besar kemungkinan ancaman yang dapat menembus komputer kita melalui Internet. Wajar jika ia memblokir semua file dengan mekanisme operasi serupa; dokumen-dokumen yang dengan satu atau lain cara mengganggu proses sistem atau perangkat lunak.

Sayangnya, antivirus tidak dapat membedakan file, karena file berbahaya apa pun dapat dengan mudah menyamar sebagai proses Windows dan secara bertahap merusak komputer dari dalam.

Akibatnya, program ini mencoba dengan segala cara untuk melindungi PC, memblokir segala sesuatu yang, menurut pendapatnya, menimbulkan ancaman tertentu. Dalam kebanyakan kasus, dokumen yang diblokir dapat dengan mudah dipulihkan hanya dengan membuat pengecualian, tetapi terkadang dokumen tersebut dihapus sepenuhnya jika antivirus menganggap file tersebut sangat berbahaya.

Pemulihan Partisi Starus akan menjadi asisten yang baik dalam pekerjaan sehari-hari dengan sistem file. Aplikasi ini akan membebaskan Anda dari segala kekhawatiran tentang dokumen pribadi Anda dalam jangka panjang dan akan membantu Anda memulihkan file dalam format apa pun, tidak peduli bagaimana Anda kehilangannya.

Anda dapat mengevaluasi semua kemungkinan “memulihkan apa yang hilang” sebelum mendaftarkan alat Starus Partition Recovery. Unduh program untuk memulihkan dokumen pribadi yang terhapus oleh antivirus dan coba sepenuhnya gratis. Semua fitur tersedia dalam versi uji coba, termasuk pratinjau file yang dipulihkan. Jendela pratinjau akan memungkinkan Anda memastikan bahwa file tertentu tidak rusak atau tertimpa dan dapat dipulihkan sepenuhnya.

Kami harap artikel ini bermanfaat bagi Anda dan membantu Anda menjawab pertanyaan Anda.

Bagaimana cara mengisolasi proses mencurigakan di Windows tanpa merusak OS itu sendiri? Bagaimana cara membuat sandbox perangkat lunak yang andal dan kompatibel dengan Windows tanpa virtualisasi perangkat keras dan pengait fungsi kernel, tetapi menggunakan mekanisme keamanan OS bawaan yang terdokumentasi? Kami akan membahas masalah paling umum yang dihadapi oleh pengembang (dan akhirnya konsumen) perangkat lunak sandbox. Tentu saja kami akan menawarkan solusi kami :).

Perkenalan, atau betapa buruknya hidup tanpa kotak pasir

Ada beberapa aksioma di kalangan profesional yang tidak ingin mereka bicarakan. Apa yang dapat kita katakan tentang aksioma? Mereka ada dan sedang ada. Tampaknya semua orang memahami betapa dua dan dua adalah dua. Misalnya saja salah satunya adalah antivirus berbasis tanda tangan tidak melindungi. Artinya, mereka tidak melindungi, dan itu saja. Banyak hal telah dikatakan dan diceritakan kembali mengenai hal ini berkali-kali. Dengan contoh, presentasi yang indah, tarian dan pertunjukan. Dan epidemi segala macam hal buruk seperti Ransomware menjadi salah satu bukti tidak efektifnya teknologi tanda tangan dan heuristik. Segala jenis kriptor dan obfuscator berhasil memecahkan masalah perlindungan malware yang sudah lama dikenal agar tidak terdeteksi, dan untuk beberapa waktu malware ini tidak terdeteksi oleh antivirus. Kali ini cukup bagi sebagian orang untuk merasa buruk dan bagi sebagian lainnya untuk merasa baik.

Artinya, kita bahkan tidak berbicara tentang 0 hari: Anda dapat mengambil malware lama yang terkenal, mengubahnya, menghapus tanda perilaku (berfungsi selama beberapa hari untuk orang malas) dan menggunakannya lagi, dan kemudian lagi, dan lagi, sampai Anda bosan atau sampai Anda dipenjara. Pada saat yang sama, orang-orang yang menjual obat agar “hal buruk” ini tidak pernah terjadi tampaknya tidak ada hubungannya dengan hal itu; Dengan wajah serius, mereka menerbitkan semacam buletin dan berbicara tentang kebersihan di Internet, sambil lupa mengatakan bahwa jika kebersihan yang sama diperhatikan sepenuhnya, maka antivirus, terutama yang berbayar, praktis tidak diperlukan.

Kotak pasir dan fitur implementasinya

Jadi, antivirus tidak menyimpan, tapi terkadang merusak apa yang sudah ada. “Mari kita mendekati perlindungan dari sisi lain dan mengisolasi proses satu sama lain,” kata seseorang yang sangat cerdas. Sangat menyenangkan ketika proses mencurigakan berjalan di lingkungan terisolasi yang disebut kotak pasir. Malware yang berjalan di sandbox tidak dapat meninggalkan batasannya dan membahayakan keseluruhan sistem. Ini bisa menjadi solusi, namun ada perbedaan dalam implementasi sandbox yang ada...
Selanjutnya, kita akan membahas semua seluk-beluk membangun kotak pasir, yang pengetahuannya pasti akan berguna ketika Anda perlu memilih alat isolasi proses atau HIPS (Sistem Pencegahan Intrusi Berbasis Host - sistem pencegahan intrusi untuk stasiun kerja).

Nuansa No. 1, atau satu kotak pasir untuk semua orang

Kebanyakan sandbox sebenarnya tidak menyediakan isolasi proses. Sebenarnya, dalam sebagian besar implementasi, sistem yang dilindungi dibagi menjadi dua bagian - dipercaya dan tidak dipercaya. Bagian yang dipercaya menjalankan proses normal, sedangkan bagian yang tidak dipercaya menjalankan proses yang terisolasi. Artinya, semua proses yang terisolasi berjalan di kotak pasir yang sama, memiliki akses satu sama lain dan sumber daya satu sama lain, menggunakan registri yang sama dan sistem file yang sama.

Dengan demikian, malware dapat mendapatkan pijakan di kotak pasir itu sendiri dan mulai secara sporadis dengan salah satu aplikasi yang terisolasi (atau dengan beberapa aplikasi yang terisolasi, atau dengan salah satu aplikasi tersebut). Pada saat yang sama, kotak pasir sering kali tidak mencatat tindakan dari proses yang terisolasi. Tindakan yang dikeluhkan HIPS terjadi di sandbox tanpa reaksi sedikit pun, disesuaikan dengan isolasi, yang kurang baik.

Bagaimana cara memeriksa apakah insulasi dirancang seperti ini? Sangat sederhana! Jalankan dua aplikasi di kotak pasir. Misalnya notepad.exe dan wordpad.exe. Buat file teks 1.txt menggunakan notepad.exe.

Tentu saja, file ini tidak akan disimpan di desktop, tetapi di direktori “virtual”. Coba buka dengan Wordpad (Gbr. 3).



Jadi, file yang dibuat oleh satu aplikasi sandbox dapat dibuka oleh aplikasi sandbox lainnya. Jujur saja, isolasi bukanlah hal yang baik lagi. Tapi mungkin setidaknya akan ada semacam perlindungan terhadap rekaman? Kami mengubah isinya (Gbr. 4).


Dan kami menghemat. Sekarang mari kita coba membuka file 1.txt menggunakan notepad.exe. Tentu saja, jalankan notepad.exe di kotak pasir (Gbr. 5).


Dan inilah yang kami bicarakan. Dua aplikasi yang terisolasi tidak terisolasi satu sama lain. Ternyata isolasi tersebut tidak sepenuhnya jelas alasannya. Bahkan ransomware, tanpa mendapatkan akses ke folder lokal di komputer, dapat mengenkripsi semua yang ada di direktori tervirtualisasi, dan jika Anda beruntung, juga pada sumber daya jaringan, karena pengaturan kotak pasir sama untuk semua aplikasi yang terisolasi.

Nuansa No. 2, atau isolasi rendah

Ya, proses yang terisolasi tidak dapat menjangkau bagian sistem yang tepercaya... tetapi dalam sebagian besar implementasi, proses ini hanya dapat ditulisi. Artinya, mereka dapat membaca dari mana saja tanpa batasan dan sering kali memiliki akses ke jaringan. Hal ini rupanya dilakukan untuk kompatibilitas yang lebih besar, namun ini tidak bisa disebut isolasi.
Cobalah eksperimen sederhana dengan kotak pasir pilihan Anda. Buat direktori di hard drive Anda. Katakanlah ini: E:\Foto. Tempatkan, misalnya, sebuah foto di dalamnya (Gbr. 6).


Luncurkan Internet Explorer di kotak pasir dan coba kirim gambar ini ke, misalnya, rhost.



Jadi bagaimana? Apakah itu berhasil? Jika eksperimennya berhasil, maka ini tidak terlalu bagus. Lebih buruk lagi, jika kotak pasir tidak memiliki kemampuan untuk menentukan direktori yang tidak dapat diakses oleh aplikasi terisolasi. Dan sama sekali tidak baik jika aplikasi yang terisolasi dapat membaca data dari direktori pengguna saat ini.

Virtualisasi sistem file dan registri di sebagian besar implementasi didasarkan pada prinsip “copy-on-demand”. Artinya, jika suatu file hanya perlu dibaca, maka file tersebut dibaca dari direktori sumber jika tidak ada analog di direktori virtual. Jika file yang sama ada di direktori virtual, maka aplikasi yang diisolasi akan bekerja dengannya. Hal yang sama dapat dikatakan tentang registri virtual. Jelas bahwa ketika Anda mencoba menulis file ke jalur nyata, itu akan ditulis ke sistem file virtual. Hampir selalu.

Jadi, jika malware “diisolasi” dalam sandbox tersebut, maka ia akan dapat memiliki akses penuh ke semua proses “terisolasi” lainnya, hampir semua data yang dapat dibaca dalam sistem, dan data tervirtualisasi (yang disimpan oleh aplikasi terisolasi) (yang sering kali umum untuk semua aplikasi yang terisolasi) untuk perekaman.

Nuansa No. 3, atau “ayo kita buat sepeda lagi, menarik sekali”

Kelanjutan hanya tersedia untuk anggota

Opsi 1. Bergabunglah dengan komunitas “situs” untuk membaca semua materi di situs

Keanggotaan dalam komunitas dalam periode yang ditentukan akan memberi Anda akses ke SEMUA materi Peretas, meningkatkan diskon kumulatif pribadi Anda dan memungkinkan Anda mengumpulkan peringkat Skor Xakep profesional!

4

Jadi saya mencoba mengunci file penyimpanan terisolasi di aplikasi klien C# saya sehingga beberapa contoh aplikasi saya tidak dapat mengaksesnya secara bersamaan. Saya menggunakan sintaks berikut:

LockStream = new IsolatedStorageFileStream("my.lck", FileMode.OpenOrCreate, isoStore); lockStream.Lock(0, 0);

Kode ini menyebabkan aplikasi saya melemparkan NullReferenceException ke dalam metode FileStream.Lock kerangka kerja. Saya mencoba menggunakan nilai panjang yang bukan nol. Saya mencoba menulis satu byte ke file dan kemudian hanya memblokir byte itu. Apa pun yang saya lakukan, NullReferenceException yang sama menghantui saya. Adakah yang tahu apakah ini mungkin dilakukan dengan penyimpanan terisolasi?

Saya juga mempelajari teknik ini di aplikasi Silverlight, apakah Silverlight mendukung penguncian file? Dokumen MSDN tampaknya menunjukkan bahwa ini bukan masalahnya, tetapi saya melihat posting ini dari C# MVP yang mengatakan demikian.

Pembaruan: Microsoft telah memperbaiki bug yang saya kirimkan ke Connect, tetapi bug tersebut tidak dirilis pada kerangka versi 4. Mudah-mudahan ini akan tersedia di SP berikutnya atau rilis penuh.

0

Saya dapat mengatasi kesalahan ini dengan menggunakan refleksi untuk memanggil metode kunci pada bidang IsolatedStorageFileStream dari "m_fs" pribadi seperti: lockStream = new IsolatedStorageFileStream("q.lck", FileMode.OpenOrCreate, isoStore); FileStream m_fs = typeof(IsolatedStorageFileStream).InvokeMember(("m_fs"), BindingFlags.GetField | BindingFlags.NonPublic | BindingFlags.Instance, null, lockStream, null) sebagai FileStream; m_fs.Lock(0, panjang.MaxValue); - bsiegel 05 Maret 10 05-03-2010 15:57:55

  • 2 jawaban
  • Penyortiran:

    Aktivitas

4

Ini sepertinya bug di Framework. Mungkin saya salah karena ini terlalu besar untuk menjadi kenyataan.

Melihat kode sumber .NET 3.5 SP1 dengan reflektor, Anda menemukan bahwa IsolStorageFileStream memanggil konstruktor dasar tanpa dimensi (FileStream()), yang menghasilkan kelas dasar yang tidak diinisialisasi. IsolatedStorageFileStream membuat instance FileStream dan menggunakannya di semua metode yang ditimpanya (Tulis, Baca, Siram, Cari, dll.). Aneh rasanya tidak menggunakan kelas dasarnya secara langsung.

Namun penguncian dan pembukaan kunci tidak ditimpa, dan memerlukan bidang pribadi (_handle), yang masih nol (karena konstruktor yang digunakan tidak memiliki parameter). Mereka berasumsi itu bukan nol dan memainkannya dan memicu NRE.

Singkatnya, mengunci dan membuka kunci tidak didukung (atau tidak berfungsi).

  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat