Защищаем флешки от вирусов Windows

Защищаем флешки от вирусов Windows

Как известно вирусов для macos практически не существует — но в системе мелкомягких положение как раз обратное. Для защиты от вирусов ставятся антивирусы, делаются проверки всего компьютера, ставятся антивирусы на шлюзы и так далее (причем бывает доходит до полной переустановки системы). Один из популярных способов распространения вирусов — перенос на флешке и запуск из авторана (autorun.inf).

Дабы избежать данной проблемы и обезопасить флешку была написана интересная инструкция которую можно найти здесь. Инструкция позволяет из системы macos обезопасить флешку (которая форматирована под fat32) от дальнейшего заражения на win­dows машинах. привожу ее практически дословно.

Есть очень простой способ сбить с толку autorun-​​вирусы: необходимо на сменном носителе создать каталог с таким именем. Проблема в том, что вирусопейсатели тоже не сидят на месте и новые разновидности заразы данный каталог умеют удалять. Решение? Легче легкого! Вспомним врожденные ограничения ОС Win­dows, а именно невозможность работать с некоторыми именами файлов, например “con”. Эта особенность знакома всем, кто застал командную строку MS-​​DOS. Linux и MacOS подобной рефлексией не страдают и этим можно воспользоваться.

Итоговый алгоритм таков:
1) Удалить с USB-​​накопителя файл “autorun.inf“
2) Создать папку “AUTORUN.INF” и поместить в нее файл с именем “con”

Ни Win­dows, ни вирусы такой каталог удалить не смогут. Задача решена. Однако руками это делать, разумеется, не стоит. Машина должна работать, а человек думать.

Автоматизируем процесс средствами Bash и Apple­Script:
Создаем в /​usr/​local/​bin sh-​​скрипт с именем myUn​vir​.sh:

#!/bin/sh

FULLPATH=$(echo $1 |sed -e 's/\/$//')
FSTYPE=$(mount | grep ${FULLPATH} | sed -e 's/.*(//' |sed -e 's/, .*//')

if [ ${FSTYPE}x != 'x' ] ; then
    if [ $FSTYPE = 'msdos' ] ; then
        if [ -d $FULLPATH ] ; then
	    rm -rf ${FULLPATH}/AUTORUN.INF
	    rm -rf ${FULLPATH}/autorun.inf
	    mkdir ${FULLPATH}/AUTORUN.INF
	    touch ${FULLPATH}/AUTORUN.INF/con
	fi
    fi
fi

Создаем в /​Library/​Scripts/​Folder Action Scripts/​ apple­script с названием antivirus (или любым другим) следующего содержания:

on adding folder items to target_folder after receiving added_items
	repeat with added_item in added_items
		set thefullpath to POSIX path of added_item
		do shell script "/usr/local/bin/myUnvir.sh " & thefullpath
	end repeat
	quit application "System Events"
end adding folder items to

Вешаем этот скрипт на директорию /​Volumes:
Запускаем /​Library/​Scripts/​Folder Actions/​Attach Script to Folder.scpt
Выбираем в меню наш antivirus.scpt и в следующем диалоговом окне нажимаем cmd-​​shift-​​g, в открывшейся строке пишем /​Volumes

Еще раз выражаю благодарность тем людям которые написали эту статью.