Відновлення пошкоджених архівів



Зберігання інформації в архіві більш надійно через те, що дані зберігаються в стислому вигляді, менше вірогідність їх випадкового пошкодження, наприклад через дефекти магнітного покриття диска.

Але в деяких випадках архівні файли з великою вірогідністю можуть бути пошкоджений. Ось найтиповіші з таких ситуацій:

- запис архіву на дефектну дискету або читання його з такої дискети;

- передача архіву по телефонній мережі через модем

- пошкодження через дію вірусів, необережних дій користувачів, неправильно працюючих програм і т.д.

Якщо програми PKZIP або PKUNZIP знаходять, що зміст архіву пошкоджений, вони виводять на екран повідомлення:

ім'я-архіву: Error in ZIP, use PKZipFix (помилка в архіві, використовуйте програму PKZipFix)

Формат виклику: PKZIPFIX имя-архивного-файла

Ця програма створює в поточному каталозі архівний файл PKFIXED.ZIP, що містить всю інформацію, яку вдалося відновити з початкового архівного файла.

Видалення файлів з архіву

Видалення файлів з архіву здійснюється наступною командою: pkzip –d ім'я-архіву имена-файлов

Імена-файлов- позначення файлів, можна використовувати * і ?

Основні види вірусів і схеми їх функціонування

Серед всієї різноманітності вірусів можна виділити наступні основні групи:

- завантажувальні

- файлові

- файлово-завантажувальні

Тепер детальніше про кожну з цих груп.

Завантажувальні віруси

Розглянемо схему функціонування дуже простого завантажувального вірусу, що заражає дискети. Ми свідомо обійдемо всю численну тонкість, яка неминуче зустрілася б при строгому розборі алгоритму його функціонування.

Що відбувається, коли ви включаєте комп'ютер? Насамперед управління передається програмі початкового завантаження, яке зберігається в пристрої (ПЗП), що постійно запам'ятовує, тобто ПНЗ ПЗП.

Ця програма тестує устаткування і при успішному завершенні перевірок намагається знайти дискету в дисководі А:

Будь-яка дискета розмічена на т.з. сектори і доріжки. Сектори об'єднуються в кластери, але це для нас неістотно.

Серед секторів є декількох службових, що використовується операційною системою для власних потреб (в цих секторах не можуть розміщуватися ваші дані). Серед службових секторів нас поки цікавить один - т.з. сектор початкового завантаження (boot-sector).

В секторі початкового завантаження зберігається інформація про дискету - кількість поверхонь, кількість доріжок, кількість секторів і ін. Але нас зараз цікавить не ця інформація, а невелика програма початкового завантаження (ПНЗ), яке повинне завантажити саму операційну систему і передати їй управління.

Таким чином, нормальна схема початкового завантаження наступна:

ПНЗ (ПЗП) - ПНЗ (диск) - СИСТЕМА

Тепер розглянемо вірус. В завантажувальних вірусах виділяють дві частини - т.з. голову і т.з. хвіст. Хвіст, взагалі кажучи, може бути порожнім.

Хай у вас є чиста дискета і заражений комп'ютер, під яким ми розуміємо комп'ютер з активним резидентним вірусом. Як тільки цей вірус знайде, що в дисководі з'явилася відповідна жертва - в нашому випадку не захищена від запису і ще не заражена дискета, він приступає до зараження. Заражаючи дискету, вірус проводить наступні дії:

- виділяє деяку область диска і позначає її як неприступну операційній системі, це можна зробити по-різному, в найпростішому і традиційному випадку зайняті вірусом сектори позначаються як збійні (bad)

- копіює у виділену область диска свій хвіст і оригінальний (здоровий) завантажувальний сектор

- заміщає програму початкового завантаження в завантажувальному секторі (теперішньому часі) своєю головою

- організовує ланцюжок передачі управління згідно схемі.

Таким чином, голова вірусу тепер першої одержує управління, вірус встановлюється в пам'ять і передає управління оригінальному завантажувальному сектору. В ланцюжку ПНЗ (ПЗП) - ПНЗ (диск) – СИСТЕМА з'являється нова ланка:

ПНЗ (ПЗП) - ВІРУС - ПНЗ (диск) - СИСТЕМА

Ми розглянули схему функціонування простого вірусу, що живе в завантажувальних секторах дискет. Як правило, віруси здатні заражати не тільки завантажувальні сектори дискет, але і завантажувальні сектори вінчестерів. При цьому на відміну від дискет на вінчестері є два типи завантажувальних секторів, що містять програми початкового завантаження, які одержують управління. При завантаженні комп'ютера з вінчестера першої бере на себе управління програма початкового завантаження в MBR (Master Boot Record - головний завантажувальний запис). Якщо ваш жорсткий диск розбитий на декілька розділів, то лише один з них помічений як завантажувальний (boot). Програма початкового завантаження в MBR знаходить завантажувальний розділ вінчестера і передає управління на програму початкового завантаження цього розділу. Код останньої співпадає з кодом програми початкового завантаження, що міститься на звичайних дискетах, а відповідні завантажувальні сектори відрізняються тільки таблицями параметрів. Таким чином, на вінчестері є два об'єкти атаки завантажувальних вірусів - програма початкового завантаження в MBR і програма початкового завантаження в бут-секторі завантажувального диска.

Файлові віруси

Розглянемо тепер схему роботи простого файлового вірусу. На відміну від завантажувальних вірусів, які практично завжди резидентні, файлові віруси зовсім не обов'язково резидентні. Розглянемо схему функціонування нерезидентного файлового вірусу. Хай у нас є інфікований виконуваний файл. При запуску такого файла вірус одержує управління, проводить деякі дії і передає управління «господарю» (хоча ще невідомо, хто в такій ситуації господар).

Які ж дії виконує вірус? Він шукає новий об'єкт для зараження - відповідний по типу файл, який ще не заражений (в тому випадку, якщо вірус «пристойний», а то попадаються такі, що заражають відразу, нічого не перевіряючи). Заражаючи файл, вірус упроваджується в його код, щоб отримати управління при запуску цього файла. Окрім своєї основної функції - розмноження, вірус цілком може зробити що-небудь хитромудре (сказати, запитати, зіграти) - це вже залежить від фантазії автора вірусу. Якщо файловий вірус резидентний, то він встановиться в пам'ять і отримає можливість заражати файли і проявляти інші здібності не тільки під час роботи зараженого файла. Заражаючи виконуваний файл, вірус завжди змінює його код - отже, зараження виконуваного файла завжди можна знайти. Але, змінюючи код файла, вірус не обов'язково вносить інші зміни:

- він не зобов'язаний міняти довжину файла

- невживані ділянки коду

- не є зобов'язаний міняти початок файла

Нарешті, до файлових вірусів часто відносять віруси, які «мають деяке відношення до файлів», але не є зобов'язаний упроваджуватися в їх код. Розглянемо як приклад схему функціонування вірусів відомого сімейства Dir-II. Не можна не визнати, що з'явившись в 1991 р., ці віруси стали причиною справжньої епідемії чуми в Росії. Розглянемо модель, на якій ясно видно основна ідея вірусу. Інформація про файли зберігається в каталогах. Кожний запис каталога включає ім'я файла, дату і час створення, деяку додаткову інформацію, номер першого кластера файла і т.з. резервні байти. Останні залишені «про запас» і самій MS-DOS не використовуються.

При запуску виконуваних файлів система прочитує із запису в каталозі перший кластер файла і далі вся решта кластерів. Віруси сімейства Dir-II проводять наступну «реорганізацію» файлової системи: сам вірус записується в деякі вільні сектори диска, які він позначає як збійні. Крім того, він зберігає інформацію про перші кластери виконуваних файлів в резервних бітах, а на місце цієї інформації записує посилання на себе.

Таким чином, при запуску будь-якого файла вірус одержує управління (операційна система запускає його сама), резидентний встановлюється в пам'ять і передає управління викликаному файлу.


Дата добавления: 2019-02-13; просмотров: 262; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!