Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[13.59.220.223] |
|
Страницы: (3) 1 2 [3] все ( Перейти к последнему сообщению ) |
Сообщ.
#31
,
|
|
|
Цитата Eretic @ Нет. Во-первых, файловые операции находятся под контролем охранных средств ОС, во-вторых, они при необходимости легко аудируются, и журналы прозрачно фильтруются, в-третьих, их цели чётко определяются логической структурой тома в отличие от целей прямого доступа. Я что-то вообще не пойму, ты мне предлагаешь прочитать ликбез по основам безопасности, что ли? Ну так вот, держи конспект.В таком случае в первую очередь нужно запретить операции чтения и записи файлов, поскольку именно они в 99.9% случаев используются для вредоносных действий, а вовсе не прямой доступ к диску Предоставляется, но контролируются правами пользователя и привилегиями его учётной записи. Я же не зря в прошлом посту упомянул админа. По дефолту опасные привилегии даже у него выключены. Начиная с Висты, конечно. Повышение привилегий должно быть явным или известным антивирусу как безопасное для конкретного приложения в конкретном его месте. Иначе нужно сильно громко кричать, иногда даже резаной свиньёй. Держи следующий конспект. Читай выше. Не буду повторяться. Это ещё почему? Если ты нашёл уязвимость в продукте Компании С Большим Именем, она тебе только спасибо скажет, когда ты ей об этом сообщишь. Конечно, если ты начнёшь эту уязвимость скрытно эксплуатировать... но ты же не начнёшь? А так это похоже на отговорку, извини. Впрочем, я вангую, что ничего путного из этой затеи не выйдет, т.к. все такие дыры давным-давно уже найдены и закрыты. А, ну тогда понятно. Именно поэтому я больше 15 лет не покупаю ATI. И, боюсь, никогда не буду. И тем не менее, порча файлов на NTFS не может быть следствием синих экранов, если с самим носителем нет проблем. Может быть потеря сделанных изменений в них, это да, но это не порча данных. |
Сообщ.
#32
,
|
|
|
Цитата Eretic @ МБР с момента своего появления не менялось и сейчас является индустриальным стандартом. Нарваться на несовместимость здесь гораздо труднее, чем на "люли" в городском парке. Никакого пустого места там нет, все занято. Это не так. В МБР можно найти местечко, чтобы запихнуть туда несколько байтов. Простейший вариант - там есть пара текстовых литералов "operating system", заменяем этот текст на "OS" и добываем немножко байтов на свои нужды (ну или литерал "partition table" заменяем на "PT"). Это при условии, что между кодом и собственно таблицей разделов нет зазора - а в "старых" версиях кода он есть. Ещё проще использовать пространство нераспределённых секторов - например, секторы между МБР и началом первого раздела, или нераспределённые секторы (между последним кластером и копией бут-сектора) в конце раздела. |
Сообщ.
#33
,
|
|
|
Цитата Qraizer @ Ты прикалываешься что ли? Доступ к секторам в винде реализован точно так же как и к файлам, а значит он тоже "находится под контролем охранных средств ОС, при необходимости легко аудируются". Что касается "чётко определяются логической структурой тома", то доступ к секторам как раз и нужен для случаев, когда эта структура не нужна. Ведь как раз отслеживание изменений этой самой файловой структуры и является уязвимым местом защиты сабжа. Решение очевидно - обойтись без нее.Нет. Во-первых, файловые операции находятся под контролем охранных средств ОС, во-вторых, они при необходимости легко аудируются, и журналы прозрачно фильтруются, в-третьих, их цели чётко определяются логической структурой тома в отличие от целей прямого доступа. Цитата Qraizer @ А с этим вроде никто не спорит. Даст юзер разрешение - программа будет выполняться. Не даст - закроется самой ОС. Антивирь то здесь каким боком?Предоставляется, но контролируются правами пользователя и привилегиями его учётной записи. Цитата Qraizer @ Естественно не начну, потому что сомневаюсь в самом существовании такого механизма в антивирусах. Он попросту не нужен. Перехватив первое обращение к винту антивирь запрашивает у пользователя добро и получив его просто запоминает этот выбор, автоматом применяя его в дальнейшем. Вот и вся схема. А описанная тобой излишне сложная и ненадежная.Это ещё почему? Если ты нашёл уязвимость в продукте Компании С Большим Именем, она тебе только спасибо скажет, когда ты ей об этом сообщишь. Конечно, если ты начнёшь эту уязвимость скрытно эксплуатировать... но ты же не начнёшь? А так это похоже на отговорку, извини. Впрочем, у меня до сих пор сомнения, что антивирь вообще будет перехватывать прямой доступ к диску. Теоретически это забота системы, а не антивиря. Цитата Qraizer @ Я это слышал еще в ФИДО, по обсуждении, ЕМНИП, выхода 2-й версии др. веба, когда кое-кто доказывал, что учли все ошибки и теперь то веб непробиваем Угу, дыры в его анализаторе нашлись уже через пару недель... Идеальных программ не бывает.Впрочем, я вангую, что ничего путного из этой затеи не выйдет, т.к. все такие дыры давным-давно уже найдены и закрыты. Цитата Qraizer @ И правильно делаешь. Я тоже зарекся.А, ну тогда понятно. Именно поэтому я больше 15 лет не покупаю ATI. И, боюсь, никогда не буду. Цитата Qraizer @ Выброс в синий экран и не портил. Порча была при мертвых висах и внезапных перезагрузках, да и то редко, видимо крайне неудачное совпадение обстоятельств. С железом все норм, сейчас то, после установки последних дров, все работает нормально. И тем не менее, порча файлов на NTFS не может быть следствием синих экранов, если с самим носителем нет проблем. Может быть потеря сделанных изменений в них, это да, но это не порча данных. Добавлено Цитата Akina @ Не, это уже радиолюбительский трюк, или как там у программистов называется. Я противник лезть туда, где нет четкого определения. Вот таблицы партиций - это другое дело, они обязательны и четко регламентированы.Это не так. В МБР можно найти местечко, чтобы запихнуть туда несколько байтов. Простейший вариант - там есть пара текстовых литералов "operating system", заменяем этот текст на "OS" и добываем немножко байтов на свои нужды Цитата Akina @ Тоже вариант. Я предлагал чуточку посложнее - просканировать все разделы и составить карту свободных секторов. Ещё проще использовать пространство нераспределённых секторов - например, секторы между МБР и началом первого раздела, или нераспределённые секторы (между последним кластером и копией бут-сектора) в конце раздела. |
Сообщ.
#34
,
|
|
|
Eretic
Структура МБР определена строго, чётко и однозначно. И те места в области исполняемого кода, где находятся устойчиво определяемые строки-литералы, вполне доступны бинарной корректировке. Строка выводится с определённого (хардкод) смещения и до закрывающего символа (точка). Причём сюрпризов можно не бояться, код в МБР свою целостность не контролирует. А вот область таблицы разделов использовать не следует. Первый же запуск чекдиска вынесет оттуда всё нахрен - и хорошо, если при этом существующие разделы не превратятся в кашу... а он, кстати сказать, может. |
Сообщ.
#35
,
|
|
|
Цитата Eretic @ Нет, похоже это прикалываешься ты. Ну или сознательно троллишь. Ну или ты полный профан в сфере безопасности, уж извини. Реализация прямого доступа к дискам по сравнению с доступом к файлам реализована абсолютно иначе. Там даже разный стек драйверов задействован. Ну-ка попробуй... просто в DOS, чтобы никакая защита не мешала, посредством int 13h создать на FAT16-томе новый текстовой файл с содержимым "Hello, world!"Ты прикалываешься что ли? Доступ к секторам в винде реализован точно так же как и к файлам, а значит он тоже "находится под контролем охранных средств ОС, при необходимости легко аудируются". Что касается "чётко определяются логической структурой тома", то доступ к секторам как раз и нужен для случаев, когда эта структура не нужна. Ведь как раз отслеживание изменений этой самой файловой структуры и является уязвимым местом защиты сабжа. Решение очевидно - обойтись без нее. Но это только начало. Ни диски, ни тома не защищены никакими охранными средствами ОС, кроме требования наличия привилегии SeManageVolumePrivilege у пользователя. По дефолту она присутствует только у админов и выше, но криворукие, хотя правильнее было бы сказать долбанутые на пол-головы, пользователи с правами админа могут отредактировать политики безопасности. Имея эту привилегию, убить любую файловую систему и даже целиком весь физический диск со всеми его разделами не составляет никакого труда, и ОС будет бессильна что-либо этому противопоставить. Точнее, можно научить её препятствовать деструктивным действиям, однако не существует и в принципе не может существовать формальных правил такого контроля, чтобы можно было отличить деструктивные действия зловредов от полезных действий доверенных приложений, потому что вообще-то они функционируют абсолютно одинаково. В противовес этому каждый объект файловой системы защищён атрибутами безопасности, которые чётко определяют права каждого идентифицируемого ОСью субъекта политики безопасности. Админ, конечно, и тут может гостеприимно раскрыть ворота первому встречному... но не будем о дебилах. И каждый такой субъект рассматривается индивидуально, ОС принимает во внимание множество его атрибутов и запрашиваемых их привилегий, прежде чем решить дать доступ или отвергнуть. В целом, неадмин навредить системе просто не состоянии, если только админ не полный олигофрен. Это просто невозможно. Но даже если админ олигофрен, просчёт на одном файле убьёт конкретный файл в конкретном каталоге на конкретном томе конкретного диска. В отличии от прямого доступа к диску, где от фатальной катастрофы на всех томах всех дисков сразу хранит одна-единственная привилегия безотносительно к остальным атрибутам субъекта. По-прежнему считаешь, что нет никакой разницы? Пожалуй, больше на эту тему лекций я читать не буду. Гугли литературу, читай и просвещайся сам. Цитата Eretic @ Ну так почитай. Вот кусочек оттуда:Естественно не начну, потому что сомневаюсь в самом существовании такого механизма в антивирусах. Он попросту не нужен. Перехватив первое обращение к винту антивирь запрашивает у пользователя добро и получив его просто запоминает этот выбор, автоматом применяя его в дальнейшем. Вот и вся схема. А описанная тобой излишне сложная и ненадежная. Цитата Собственно, поэтому и вангую, что ничего не выйдет.Другими словами, наш белый список пользовательских программ — это огромная и постоянно обновляемая база знаний существующих приложений. Она содержит информацию более чем о миллиарде уникальных файлов абсолютного большинства популярных программ, в том числе офисных пакетов, браузеров, программ просмотра изображений, — в базе есть все, что только можно представить. Для того чтобы минимизировать количество случаев ложного срабатывания, мы используем данные от 450 партнеров. Главным образом это разработчики приложений, которые заранее предупреждают нас о грядущих обновлениях их программных продуктов. Цитата Eretic @ Вообще-то да. Но так уж исторически сложилось, что ОС не заморачивается такой фигнёй, как защита дураков от них самих. Кроме того, ошибиться может и грамотный специалист, в конце-концов он просто человек, который может быть уставшим, не выспавшимся или заболевшим. Потому дополнительная защита в реальном времени, особенно интеллектуальная и обучаемая, не помешает. Впрочем, у меня до сих пор сомнения, что антивирь вообще будет перехватывать прямой доступ к диску. Теоретически это забота системы, а не антивиря. |
Сообщ.
#36
,
|
|
|
Цитата Qraizer @ Все коментировать нет смысла, т.к. похоже мы говорим о разных вещах. Прокоментирую лишь пару цитат.Нет, похоже это прикалываешься ты. Ну или сознательно троллишь. Ну или ты полный профан в сфере безопасности, уж извини. Цитата Qraizer @ Легко. В чем проблемы то? Только я не понял к чему этот вопрос? Во первых, есть либы от самой микрософт для работы с ф/с NTFS на низком уровне. Точнее это DLL из какой-то ее старой системы. Во вторых, если программа лезет в сектора, значит ф/с ей просто не нужна. В третьих, никто не запрещает использовать те АПИ, что лучше всего подходят к данной задаче, поэтому для записи "Привет мир!" будет использована АПИ ф/с, а для модификации МБР соответственно АПИ прямого доступа. Ну и в четвертых, в самой NT-подобной ОС есть средства узнать принадлежность сектора файлу, если уж кто-то так боится что-то затереть/испортить.Ну-ка попробуй... просто в DOS, чтобы никакая защита не мешала, посредством int 13h создать на FAT16-томе новый текстовой файл с содержимым "Hello, world!" Цитата Qraizer @ Принципиальной разницы нет. Юзеру не будет легче от того, что его любимые фотки были затерты АПИ ф/с, а не АПИ прямого доступа к диску. По-прежнему считаешь, что нет никакой разницы? Прежде чем читать ликбезы неплохо бы выяснить простую вещь - от чего чаще всего страдают данные пользователя. А то спор напомнил мне ту истерию, что развернул айфончик, выставив пьяниц за рулем в качестве вселенского зла, хотя статистика ментов прямо говорит, что по банальной невнимательности в ДТП гибнет гораздо больше людей, чем по вине выпимших. Цитата Qraizer @ Так это не антивирусный список. Так называемые белые списки поддерживаются самой ОС, ЕМНИП начиная с XP. Сама система блокирует выполнение любых программ, чьих данных нет в списке. Антивирь просто предоставляет базу данных приложений и удобный интерфейс, чтобы пользователь сам не мучился с добавлением в нее нужных программ. Это системная фича и соответственно обойти ее гораздо труднее.Ну так почитай. Вот кусочек оттуда: Цитата Qraizer @ Все эти защиты хороши под руководством грамотного сисопа, но никак не простой домохозяйки, которая не отличит байт от бареля. В итоге всплывающие предупреждения/запросы настолько приедаются простому пользователю, что он их разрешает автоматом, даже не читая. Про детишек я вообще молчу Потому дополнительная защита в реальном времени, особенно интеллектуальная и обучаемая, не помешает. Добавлено Цитата Akina @ Когда вносишь изменения в чужой код, то сюрпризы очень даже возможны. Структура МБР определена строго, чётко и однозначно. И те места в области исполняемого кода, где находятся устойчиво определяемые строки-литералы, вполне доступны бинарной корректировке. Строка выводится с определённого (хардкод) смещения и до закрывающего символа (точка). Причём сюрпризов можно не бояться, код в МБР свою целостность не контролирует. Цитата Akina @ Вообще-то нормальный сканер должен просто игнорировать несипользуемые записи в таблице разделов. Уверен на счет этой утилиты? А вот область таблицы разделов использовать не следует. Первый же запуск чекдиска вынесет оттуда всё нахрен - и хорошо, если при этом существующие разделы не превратятся в кашу... а он, кстати сказать, может. |
Сообщ.
#37
,
|
|
|
Цитата Eretic @ Когда вносишь изменения в чужой код, то сюрпризы очень даже возможны. В данном конкретном случае никаких именно сюрпризов не будет. Всё, что может быть - это либо антивирус заблокирует внесение изменений в МБР, либо сработает защита загрузочного сектора БИОСа, буде она есть и включена. Цитата Eretic @ нормальный сканер должен просто игнорировать несипользуемые записи в таблице разделов. Уверен на счет этой утилиты? Так то нормальные... скандиск ничего не игнорирует. Его самоуверенность - это нечто... он, не спрашивая, "лечит" и нестандартные разделы, и разделы неизвестных ему типов, а уж некорректные с точки зрения структуры записи выносит из РТ гарантированно. Не зря же ему передали на хранение гордое имя диск-дестроера, когда NDD немного поумнел... |
Сообщ.
#38
,
|
|
|
Цитата Eretic @ Именно. Я говорю об архитектуре безопасной ОС, а ты несёшь ахинею от обиженного разработчика. Безусловно у безопасной ОС и обиженных разработчиков противоположные мотивации. Т.к. обиженных разработчиков из-за их лени следовать правилам хорошего тона со временем становится всё больше, ОС приходится от версии к версии ужесточать требования к безопасному программированию, из-за чего обиженные разработчики обижаются ещё больше, а добросовестным приходится переносить свои приложения на новые версии ОС, затрачивая отличные от нуля усилия.Все коментировать нет смысла, т.к. похоже мы говорим о разных вещах. Цитата Eretic @ Ок. Я думаю, что если ты не видишь разницы в цифрах вероятности одного и другого и размерах повреждений от того или другого, то говорить больше не о чем. Собственно ты был бы прав, если б вероятность встретить динозавра на улице была бы 50%, но увы.Принципиальной разницы нет. Юзеру не будет легче от того, что его любимые фотки были затерты АПИ ф/с, а не АПИ прямого доступа к диску. Так что разговор, думаю, окончен. Гугл вот там, там же и учебники. Цитата Eretic @ От собственных ошибок. Потенциально опасные действия должны быть подтверждены. Это предохраняет от случайной активации небезопасного действия. Если даже после этого пользователь соглашается на вред самому себе, он это заслужил, поделом. Повторю: в задачи ОС не входит охрана дураков от них самих. Философии о нечитающих ничего "простых пользователях" оставь, пожалуйста, компьютерным сервисам, они с них кормятся.Прежде чем читать ликбезы неплохо бы выяснить простую вещь - от чего чаще всего страдают данные пользователя. Цитата Eretic @ ЧЁ? Нет, определённо разговор окончен. Счастливо. Так это не антивирусный список. Так называемые белые списки поддерживаются самой ОС, ... |
Сообщ.
#39
,
|
|
|
Если вы пытаетесь защитить целую программу ее (защиту) сломают. Если вы защитите каждую функцию взлом программы будет равен написание той же программы сидя в неудобном дизасемблере. Никто из хакеров такой трудоемкой работой заниматься не будет.
|
Сообщ.
#40
,
|
|
|
Цитата cezar @ Любой уважающий себя хакер умеет обходить "трудоемщину".Если вы пытаетесь защитить целую программу ее (защиту) сломают. Если вы защитите каждую функцию взлом программы будет равен написание той же программы сидя в неудобном дизасемблере. Никто из хакеров такой трудоемкой работой заниматься не будет. Да и дизассемблер "неудобным" не бывает. Если защищать каждую функцию одинаково - в автоматическом режиме такую защиту можно обезвредить. Если выдумывать на каждую функцию свой метод, размещать его по функциям - это сложнее. Но зависит от ценности ПО. Как однажды сказал B.V. (жаль его сообщение не перенесли в тему при переносе). Цитата B.V. @ Все советчики в этой теме забывают главное: не ломаемой защиты не существует. Весь вопрос в целесообразности взлома, а целесообразность зависит от востребованности. Если программа простая и не пользуется особой популярностью, смысла усложнять защиту никакого нет. |
Сообщ.
#41
,
|
|
|
когда я только начинал писать программы то мне помогла эта статья
https://www.z-oleg.com/secur/articles/progprotect.php |
Сообщ.
#42
,
|
|
|
В данный момент вообще антивирус не стоит) Я так думаю - если не качать ничего из непроверенных источников, не лазить по всяким подозрительным сайтам и ничего не прицепится.
|
Сообщ.
#43
,
|
|
|
Луший метод защиты пишите все через GoTo
Даже если ваш исходник попадет в руки хакера, в нем не возможно будет разобраться )) |
Сообщ.
#44
,
|
|
|
Можно еще на каждую функцию поставить оригинальную защиту. Чаще использовать проверку по таймеру.
Добавлено Цитата Все советчики в этой теме забывают главное: не ломаемой защиты не существует. Но если время взлома больше или равно времени жизни среднестатистического хакера этого же вполне достаточно. |