песочница — всё по этой теме для программистов


Оглавление (нажмите, чтобы открыть):

Песочница — всё по этой теме для программистов

Песочница (значения) — О песочнице в Википедии смотрите страницу Википедия:Песочница (страница для тренировок). В Викисловаре есть статья « … Википедия

Honeypot (информационная безопасность) — Honeypot («Ловушка») (англ. горшочек с мёдом) ресурс, представляющий собой приманку для злоумышленников. Задача Honeypot подвергнуться атаке или несанкционированному исследованию, что впоследствии позволит изучить стратегию… … Википедия

Sandboxie — В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете … Википедия

Deep Freeze — Deep Freeze … Википедия

Обнаружение основанное на эмуляции — Обнаружение, основанное на эмуляции метод работы антивирусной программы, при котором подозрительный файл либо запускается в тщательно контролируемой среде, либо эмулируется его исполнение с целью выявления тех признаков вредоносного кода, которые … Википедия

Основанное на эмуляции Обнаружение — Обнаружение, основанное на эмуляции метод работы антивирусной программы, при котором подозрительный файл либо запускается в тщательно контролируемой среде, либо эмулируется его исполнение с целью выявления тех признаков вредоносного кода, которые … Википедия

Returnil Virtual System — Returnil Virtual System … Википедия

Shadow Defender — Внешний вид Shadow Defender Тип Информационная безопасность Разработчик … Википедия

Chroot — операция изменения корневого каталога в Unix подобных операционных системах. Программа, запущенная с изменённым корневым каталогом, будет иметь доступ только к файлам, содержащимся в данном каталоге. Поэтому, если нужно обеспечить программе… … Википедия

Обнаружение, основанное на эмуляции — метод, используемый в антивирусном программном обеспечении, для обнаружения еще неизвестных вредоносных программ (т.н. 0day угроз) Содержание 1 Общее описание 2 Преимущества эмуляции … Википедия

ProjectEuler: игра-песочница для программистов

Примерно месяц назад во время изучения мной языков LISP и Ruby, один мой знакомый подкинул занятную штуку (сам он изучал F#):

Суть в следующем: у нас имеется N-ое число математических проблем, как то вычисление 10001 простого числа, нахождение количества путей в сетке 20*20, подсчитать сумму цифр в числе 2^1000 и т.д. Проблемы нужно решать, причём без разницы каким образом ты это делаешь. Без разницы, на каком языке, на какой машине. Хоть руками считай на бумажке, хоть на мэйнфрейме запускай. Полная свобода действий. Главное — получить верный ответ. Собственно далее вводим ответ и проверяем решение. Система выдаёт верно ли решена задача.

Но самое интересное в этой бодяге — это система достижений. Во-первых мы зарабтываем уровень за решение задач. Во-вторых там есть занятные достижения, например решить первые 12 проблем с номерами-простыми числами, или решить 10 проблем подряд. Как-то всё же стимулирует и появляется некий азарт.

Подобные системы вроде как есть(сам я не проверял), но мой знакомый сказал что из всех что он видел — этот сервис самый прикольный.

В общем, если кто хочет изучить какой-то язык программирования, то эта «игра» для этого идеально подходит. Я например, теперь когда на работу прихожу, вместо того чтобы посещать форумы, решаю пару задач с этого сайта (кода минут на 10-20). Как бы и тренировка для мозгов и заодно вникнуть с утра в программирование.

Как использовать «песочницу» на компьютере в Windows — Sandboxie

Доброго времени суток, дорогие друзья, знакомые, читатели, почитатели и прочие личности.

Помимо всяческих антивирусов, фаерволлов, ловушек, носкриптов, ублоков и кучи разношерстных настроек, среди элементов безопасности бытуют такие штуки как «песочницы», а т.к Вы давно просили статью об этом, то мы решили кратенько затронуть эту тему.

По сути «песочница» представляет собой изолированную программную среду с жестко ограниченными ресурсами для выполнения в рамках этой среды программного кода (говоря просто, — запуска программ). В некотором роде «песочница» это такая себе урезанная виртуализация, предназначенная для изоляции сомнительных процессов в целях безопасности.

Некоторая часть хороших антивирусов и фаерволлов (правда, как правило, в платном своём варианте) используют этот метод без Вашего ведома, некоторые позволяют управлять этим функционалом (т.к всё таки он создает излишнее ресурсопотребление), но так же существуют и программы, которые позволяют реализовывать подобный функционал.

Об одной из таковых мы сегодня и поговорим.

Sandboxie — обзор, настройка и загрузка

Как Вы поняли из заголовка и подзаголовка, мы будем вести речь о программе Sandboxie .

К сожалению, она условно-бесплатная, но тот же бесплатный период поможет Вам познакомится с этим типом инструментов поближе, что, возможно, в дальнейшем таки подтолкнет Вас к более подробному изучению виртуализации, которая, в большинстве своём, существует в бесплатном виде и предоставляет больше возможностей.

Скачать Sandboxie можно с сайта разработчика или, допустим, по этой вот ссылке. Установка практически элементарна, не считая момента, когда потребуется установка драйвера (см.скриншот ниже).

На данном этапе лучше отключить любые элементы защиты (т.е те же антивирусы и фаерволлы), иначе, если этот шаг не удастся, а компьютер повиснет, перезагрузится или уйдет в BSOD, то может потребоваться загрузиться в безопасном режиме и удалить программу без возможности дальнейшего использования.

После установки, собственно, программу необходимо запустить. Вполне возможно, что Вы столкнетесь с уведомлением, которое показано выше. Ничего страшного в нём нет, просто нажмите » ОК «.

Далее Вам предложат пройти краткий курс по работе с программой, точнее немного расскажут о том как оно работает. Пройдите все шесть этапов, желательно, внимательно читая написанное в предоставленной Вам инструкции.

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

Как настроить и использовать программу-песочницу

Теперь давайте попробуем понять как с этим работать. Для начала Вы можете попробовать запустить, скажем, браузер, в «песочнице». Чтобы это сделать, собственно, либо воспользуйтесь ярлыком, который появился у Вас на рабочем столе, либо используйте в главном окне программы, элементы меню: » DefaultBox — Запустить в песочнице — Запустить Web-браузер «, либо, если Вы хотите запустить браузер, который не установлен в системе как браузер по умолчанию, то используйте пункт » Запустить любую программу » и укажите путь к браузеру (или программе).

После этого, собственно, браузер будет запущен в «песочнице» и Вы увидите его процессы в окне Sandboxie . С этого момента всё происходящее происходит в, как уже неоднократно говорилось, изолированной среде и, допустим, вирус, использующий кеш браузера как элемент для проникновения в систему, собственно, не сможет толком ничего сделать, т.к по завершению работы с изолированной средой.. Вы можете её очистить, выкинув, как говорилось в метафоре, исписанный лист и перейдя к новому (при этом никак не трогая целостность компьютера как такового).

Для очистки содержимого песочницы (если оно Вам не нужно), в главном окне программе или в трее (это где часы и прочие иконки) используйте пункт » DefaultBox — Удалить содержимое «.

При этом Вы можете сохранить необходимые Вам данные (допустим, если Вы что-то скачивали браузером и тп), либо просто избавиться от всего одним махом.

Внимание ! Удалится лишь та часть , что писалась и работала в изолированной среде, т.е, допустим, сам браузер, удалён с компьютера не будет, а вот перенесенная в него.. ммм.. условно говоря, копия процесса, созданный кеш, сохраненные данные (вроде скаченных/созданных файлов) и тп, будут удалены, если Вы их не сохраните.


Чтобы глубже понять принцип работы, попробуйте несколько раз позапускать браузер и другой софт в песочнице, скачивая различные файлы и удаляя/сохраняя содержимое по завершению работы с этой самой песочницей, а потом, допустим, запуская тот же браузер или программу уже непосредственно на компьютере. Поверьте, Вы поймете суть на практике лучше, чем её можно объяснить словами.

Кстати говоря, по нажатию на правую кнопку мышки на процессе в списке процессов окна Sandboxie Вы можете управлять доступом к разного рода ресурсам компьютера в в обход песочницы, выбрав пункт » Доступ к ресурсам «.

Грубо говоря, если Вы хотите рискнуть и дать, например, тому же Google Chrome, прямой доступ к какой-либо папке на компьютере, то Вы можете сделать это на соответствующей вкладке ( Доступ к файлам — Прямой/полный доступ ) с использованием кнопки » Добавить «.

Логично, что песочница предназначена не только и не столько для работы с браузером и хождению по разного рода сомнительным сайтам, но и для запуска приложений, которые кажутся Вам подозрительными (особенно, например, на работе (где зачастую плохо настроены права для запуска приложений), запускают сомнительные файлы из почты или флешек) и/или, не должны иметь доступа к основным ресурсам компьютера и/или оставлять там лишних следов.

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

Конечно данные из песочницы не обязательно удалять по завершению и работать с некоторыми программами только в изолированной среде (прогресс запоминается и существует возможность быстрого восстановления), но делать это или нет, — дело Ваше.

При попытке запуска некоторых программ Вы можете столкнуться с вышепоказанной проблемой. Не стоит её пугаться, достаточно, для начала, просто нажать в » ОК «, а, в дальнейшем, открыть настройки песочницы методом » DefaultBox — Настройки песочницы » и на вкладке » Перенос файлов » задать чуть больший размер для опции переноса файлов.

О других настройках мы сейчас говорить не будем, но, если они Вам интересны, то Вы легко можете разобраться с ними самостоятельно, благо всё на русском языке, предельно понятно и доступно.. Ну, а если возникнут вопросы, то Вы можете задать их в комментариях к этой записи.

На сим, пожалуй, можно переходить к послесловию.

Послесловие

Ах да, чуть не забыли, само собой, что песочница потребляет повышенное количество ресурсов машины, т.к откусывает (виртуализирует) часть мощностей, что, естественно, создаёт нагрузку, отличную от запуска напрямую. Но, логично, что безопасность и/или конфиденциальность может того стоит.

Кстати говоря, использование песочниц, chroot или виртуализации, частично относится к методологиии безантивирусной безопасности, которой мы обучаем в рамках наших пакетов обучения.

На сим, пожалуй, всё. Как и всегда, если есть какие-то вопросы, мысли, дополнения и всё такое прочее, то добро пожаловать в комментарии к этой записи.

Как это работает: учимся создавать свой sandbox с нуля

Если вам случалось писать большие приложения, вы, вероятно, использовали такие виртуальные машины, как VMWare, Virtual PC или что-то иное. Но задавались ли вы вопросом: как они работают? Чтобы развенчать «магию» и разобраться в деталях, сотрудник InfoWatch написал «с нуля» собственную систему виртуализации – «песочницу». Далее мы публикуем текст от имени автора.

Предполагаемый уровень подготовки читателя

Разработка виртуальной машины – задача не для начинающих программистов, так что я предполагаю, вы имеете опыт в программировании для Windows, и, в частности:

• вы хорошо пишете на C/C++;
• имеете опыт в Win32 API программировании;
• прочли книги о внутреннем устройстве Windows (например, книги Марка Руссиновича);
• имеете базовое представление о сборке софта.

Вам также пригодится опыт разработки драйверов ядра Windows. Несмотря на то, что песочница требует некоторого количества кода, работающего в режиме ядра, при написании этого материала я учитывал, что вы можете не обладать нужными знаниями. Я раскрою тему разработки драйверов в деталях в рамках этого цикла статей.

Виртуальные машины и песочницы – в чём разница?

Виртуальные машины следовало бы разделить на два больших класса – «тяжелые» виртуальные машины , т.е. полностью эмулирующие железо, и легковесные виртуальные машины , которые эмулируют критически важные части операционной системы, такие как файловая система, реестр и некоторые другие примитивы ОС (например, мьютексы). Примеры легковесных виртуальных машин: Featherweight Virtual Machine, Sandboxie, Cybergenic Shade .

Featherweight Virtual Machine является проектом с открытым исходным кодом, однако есть некоторые недостатки, например, способ виртуализации вызовов функций ядра ОС. Featherweight Virtual Machine использует технологию «хуков», а это подразумевает под собой изменении кода ядра ОС – нечто ставшее запрещенным для 64-битных операционных систем, начиная с Vista. Подобного рода патчи кода ядра активируют Patch Guard —¬ специальный компонент ОС, вызывающий BSOD (синий «экран смерти») в таких случаях, поскольку Microsoft рассматривает патчи как злонамеренные действия. Поэтому FVM могла бы быть хорошей отправной точкой для первого взгляда на технологии виртуализации как таковые, но она недостаточно совместима с современными операционными системами. Основные трудности возникают при попытках сохранить совместимость с Patch Guard, мы детально рассмотрим эти проблемы позже.

Большая часть программистов изобретает технологии обхода Patch Guard, но подобные обходы ослабляют защиту ОС, делая её более уязвимой к «традиционным» зловредам уровня ядра, которые не могли бы быть запущены на ОС, защищенной Patch Guard. Нашей целью будет не обход или отключение Patch Guard, а сохранение совместимости с ним. Песочница должна добавить дополнительную защиту ОС, чтобы сделать её более устойчивой к атакам злоумышленников, а не ослаблять защиту, неправильно работая с Patch Guard.

Мастер Йода рекомендует:  Лучшие плагины для оптимизации WordPress-сайта под мобильные устройства

В этом цикле статей мы собираемся сосредоточиться на разработке легковесной виртуальной машины. Главная идея состоит в том, чтобы перехватывать запросы ОС к критическим системным операциям и перенаправлять их к некоторого рода виртуальному хранилищу, к выделенной папке, для операций с файлами, в частности. Скажем, есть некоторое приложение, для которого мы хотим эмулировать модификации файла с именем C:Myfile . Мы должны сделать копию этого файла в нашей виртуальной папке, скажем, C:SandboxCMyfile , и перенаправлять все операции, которые осуществляет приложение над данным файлом, к его виртуальному двойнику. То же самое касается операций над реестром и ещё некоторых системных механизмов.

Что следует виртуализировать и каким образом?

Давайте подведём итоги, что именно означает виртуализация операции. Начнём с виртуализации файловой системы. Как вы знаете, для получения доступа к файлу приложение сперва открывает его.

С точки зрения Windows, происходит вызов функции API, такой как CreateFile(). Если вызов осуществлен успешно, приложение может читать и писать в файл. Когда работа закончена, файл закрывается посредством вызова CloseHandle() API. Таким образом, мы должны иметь возможность перехватить вызов CreateFile(), изменить его параметры, такие как имя файла, которое приложение хочет открыть. Этим мы бы принудительно заставили приложение открыть другой файл.

Но перехватывать именно вызов CreateFile() – плохая идея по нескольким причинам: во-первых, приложение может открыть файл и другим образом, не только используя CreateFile(). Например, это может быть сделано посредством NtCreateFile(), нативного вызова API, которая по факту и вызывается в CreateFile(). Таким образом, перехватив NtCreateFile(), мы перехватим и CreateFile(), потому что в конечном итоге он вызывает NtCreateFile(). Но NtCreateFile() не является самой нижележащей функцией.

Так где же находится самая «нижняя» функция CreateFile(), которая будет вызываться, когда приложение хочет открыть/создать файл? Такая функция находится в коде режима ядра. Все файловые операции управляются драйверами файловых систем. Windows поддерживает так называемые фильтры файловых систем (в данной статье, мы сосредоточимся на подклассе таких фильтров — минифильтрах .), которые используются для фильтрации файловых операций. Следовательно, написав минифильтр файловой системы, мы смогли бы перехватывать все файловые системные операции, которые нам нужны. То есть наша первая цель – перехват системных вызовов файловых операций в режиме ярда путем написания драйвера минифильтра. Сделав это, мы бы смогли заставить ОС открывать абсолютно другой файл. В нашем случае, это будет виртуальный файл-двойник оригинала. Однако внимательный читатель может заметить: поскольку копирование – это весьма дорогая операция, то было бы неплохо немного оптимизировать процесс. Во-первых, можно проверить, был ли открыт файл только для чтения или нет. Если да, то нет нужды делать копию. Поскольку здесь не будет никаких изменений файла, мы можем просто предоставить доступ к исходному файлу.

Мы не будем перехватывать чтение или запись как таковые – вполне достаточно перехватывать функции режима ядра, эквивалентные (CreateFile() (OpenFile()) для того, чтобы перенаправлять всю остальную работу с файлами в нашу виртуальную папку. Однако виртуализации файловой системы недостаточно. Нам также следовало бы виртуализовать реестр и некоторые другие примитивы операционной системы. Но сейчас давайте сосредоточимся именно на виртуализации файловой системы, и начнем мы с обсуждения общих вопросов, касающихся устройства файловых систем и некоторых компонентов режима ядра.

Объекты привилегированного режима и объекты типа

Когда приложение открывает файл с помощью вызова интерфейса прикладного программирования, скажем, функцией CreateFile(), происходит много интересного: во-первых, для так называемых символических имен в заданном имени файла ищется их «родной» двойник, как показано ниже:

Например, если приложение открывает файл с названием «c:mydocsfile.txt», его имя заменяется чем-то вроде «DeviceHarddiskVolume1mydocsfile.txt». По сути, символическое имя «C:» было заменено на «устройство» с именем «DeviceHarddiskVolume1». Во-вторых, в результате родное имя снова анализируется менеджером объектов — компонентом в привилегированном режиме операционной системы, чтобы определить, на какой драйвер поступал запрос на открытие. Когда драйвер регистрируется в системе, он представляется структурой DRIVER_OBJECT. Эта структура, наряду с другими вещами, содержит список устройств, за которые драйвер несет ответственность. Каждое устройство, в свою очередь, представляется структурой объекта устройства (DEVICE_OBJECT) и драйвер несет ответственность за создание объектов устройств (DEVICE_OBJECTs), которыми он собирается управлять.

Менеджер объектов проходит через один компонент за раз и пытается определить «итоговое» устройство, ответственное за данный компонент. В нашем случае, первым делом драйвер встречает компонент «Device». В этот момент определяется объект типа для компонента. В данном случае, это каталог объектов (object directory). Я рекомендую вам скачать утилиту winobj от systinternals.com, чтобы увидеть родное дерево каталога объектов. Оно очень похоже на дерево каталогов файловой системы — содержит каталоги объектов и различные системные объекты, такие как порты ALPC, именованные каналы, события, в виде «файлов». Как только тип объекта определяется и так называемый «тип объекта» извлекается, выполняются дальнейшие действия.

А теперь я должен сказать пару слов о том, что такое «объект типа». Во время загрузки Windows регистрирует с помощью диспетчера объектов много типов объектов, таких как объект каталога, событие, мутант (также известный разработчикам пространства пользователя как «мьютекс»), устройства, драйверы и так далее. Поэтому когда драйвер создает, скажем, объект устройства – на самом деле, он создает объект типа «устройство». Объект типа «устройство», в свою очередь, является объектом типа «объект типа». Иногда для программиста проще понять вещи, когда они рассматриваются на языке программирования, а не на разговорном языке, так что давайте выразим это понятие в C++:

Когда пользователь создает событие (event), он просто создает экземпляр типа eventType. Как вы можете заметить, эти объекты типа «объект типа» содержат множество методов: open(), parse () и т.д. Они вызываются менеджером объектов во время синтаксического разбора имени объекта, чтобы определить, какой драйвер отвечает за то или иное конкретное устройство. В нашем случае, сначала он встречает компонент «Device», который является просто объектом типа «каталог» (directory object). Так, будет вызван метод parse() объекта типа «каталог» (objectDirectoryType), которому будет передан остаток пути в качестве параметра:

Метод parse(), в свою очередь, определит, что HarddiskVolume1 является объектом типа «устройство». Драйвер, ответственный за это устройство, извлекается (в данном случае, это драйвер файловой системы, который работает с этим томом), и метод parse () объекта типа «устройство» (deviceType), в конечном счете, вызывается c «остатком» пути (например, «mydocsfile1.txt»). Драйвер фильтра файловой системы, о котором мы будем писать в этой статье (если быть точным, экземпляр драйвера), ответственный за указанный том, увидит именно этот остаток пути в параметрах, передаваемых соответствующей процедуре обратного вызова. Драйверы файловой системы отвечают за обработку этого «остатка» пути, так что метод parse() должен сказать диспетчеру объектов, что весь путь распознан, а значит, дальнейшая обработка имени файла не требуется. На самом деле, эти члены типа «объект типа» не документированы, но важно иметь в виду их существование, чтобы понять, как ОС работает с типами объектов ядра.


Фильтры файловой системы

Написание драйвера фильтра является далеко не простой задачей и требует много шаблонного кода. Существует масса запросов, получаемых от различного рода драйверов файловой системы (и следовательно, фильтров). Вы должны написать обработчик (или, более конкретно, диспетчерскую процедуру (dispatch routine)) для каждого типа запроса, даже если вы не хотите делать специальную обработку того или иного отдельного запроса. Типичная диспетчерская процедура драйвера-фильтра выглядит так:

В этом примере драйвер-фильтр канала проверяет, принадлежит ли запрос устройству драйвера файловой системы канала (указатель на объект-устройство сохранен в g_LegacyPipeFilterDevice), и если да, то он передает запрос нижнему устройству, например, нижележащему фильтру, или на сам драйвер устройства. Иначе процедура просто успешно завершает запрос. Запросы ввода- вывода отправляются диспетчером ввода-вывода, о котором упоминалось выше, в форме запроса пакетов ввода-вывода или же просто пакетов IRP. Каждый IRP, наряду с большим количеством других материалов, содержит так называемые кадры стека. Чтобы упростить вещи, вы можете представлять их просто кадрами стека процедуры, которые распределяются между зарегистрированными фильтрами так, чтобы каждый фильтр имел свой собственный кадр стека.

Кадр содержит параметры процедуры, которые могут быть прочитаны или изменены. Эти параметры включают в себя входные данные для запроса, например, имя файла, который будет открыт при обработке запроса IRP_MJ_CREATE. Если мы хотим изменить некоторые значения для нижнего драйвера, мы должны вызвать IoGetNextIrpStackLocation (), чтобы получить кадр стека нижнего драйвера. Большинство драйверов просто вызывают IoSkipCurrentIrpStackLocation(): эта функция меняет указатель кадра стека внутри IRP так, что драйвер нижнего уровня получает тот же кадр, как и наш драйвер. С другой стороны, драйвер может вызвать IoCopyCurrentIrpStackLocationToNext() для копирования содержимого кадра стека в кадр нижележащего фильтра, но это более затратная процедура, и ее обычно используют, если драйвер хочет выполнить какую-то работу после обработки запроса ввода-вывода путем регистрации процедуры обратного вызова, которая называется процедурой завершения ввода-вывода.

Функция PassThrough(), приведенная выше, должна быть зарегистрирована драйвером фильтра для получения уведомления от диспетчера ввода-вывода всякий раз, когда приложения отправляют запросы, которые мы хотим перехватить. Фрагмент кода ниже показывает, как это обычно делается:

Приведенный выше код регистрирует устройство-фильтр для запросов, отправляемых к именованным каналам. Сначала он получает экземпляр класса DEVICE_OBJECT виртуального устройства, которое представляет каналы:

Далее он заполняет массив MajorFunction обработчиком PassThrough() по умолчанию. Этот массив представляет все типы запросов, которые диспетчер ввода-вывода может отправить на устройства, контролируемые драйвером. Если вы хотите проводить обработку некоторых запросов особым образом, вы регистрируете дополнительные обработчики для них, как показано в коде на примере обработчика CreateHandler. Последний шаг – прикрепить наш фильтр к стеку драйверов:

Вспомним, как наша диспетчерская процедура PassThrough() передаёт запрос вниз по стеку через процедуру CallDriver(), просто передавая IRP в качестве параметра, и указатель на нижнее устройство. Данный указатель – это устройство, к которому мы прикрепились. Когда API-функция вызывает устройство, в какой-то момент она использует его имя, например, Device
amedPipe, при этом она не знает ни о каких фильтрах. Но как получилось, что наш фильтр получает запрос? «Магия» осуществляется функцией IoAttachDeviceToDeviceStackSafe() – она прикрепляет наше прозрачное устройство фильтра (deviceObject), которое было создано с помощью IoCreateDevice(), к нижнему устройству, в нашем случае, к тому, которое называется Device
amedPipe. С этого момента все запросы, направляемые к именованным каналам, сначала проходят через наш фильтр. Обратите внимание, что CreateIoDevice() передает NULL в качестве имени устройства. В данном случае имя не требуется, поскольку это устройство-фильтр и, следовательно, не будет никаких запросов, направляемых непосредственно к фильтру, вместо этого они пойдут устройству, но вышележащий фильтр перехватит их первым.

С этого момента мы почти закончили наш минимальный драйвер-фильтр. Все, что нам нужно сделать – это закодировать процедуру DriverEntry(), которая просто вызывает RegisterLegacyFilter:

Минифильтры файловой системы

Как вы видели в предыдущем разделе, мы написали много кода только для записи ключевых обработчиков драйвера, которые ничего не делают. Они необходимы, просто чтобы написать минимальный работающий драйвер. Чтобы упростить вещи, на сцену выходит новый тип драйверов-фильтров – драйверы минифильтров. Это плагины к «устаревшему» драйверу-фильтру FltMgr, или диспетчеру фильтров. Драйвер FltMgr является «традиционным» драйвером-фильтром, который реализует большинство шаблонного кода и позволяет разработчику создавать «полезную нагрузку» к этому драйверу в виде плагина для него. Эти плагины называются минифильтрами файловой системы. Краткий макет минифильтров показан на рисунке ниже.

Как вы помните из предыдущих глав, каждый «традиционный» фильтр присоединяется к стеку драйверов конкретного устройства. Так было бы, впрочем, неудобно контролировать занимаемое фильтром точное место в стеке. Минифильтры исправляют эту проблему путем введения двух новых концепций – это высота и фрейм. Высота помогает контролировать порядок, в котором вы будете получать уведомления от диспетчера ввода-вывода. Например, на картинке выше минифильтр А является первым в очереди на получение IRP, минифильтр Б – вторым и так далее. В общем, чем выше ваш драйвер, тем выше место, которое он занимает в стеке. Диапазоны высот группируются во фреймы. Каждый фрейм представляет позицию экземпляра FltMgr в качестве «традиционного» фильтра в стеке драйверов. Например, на картинке выше есть два экземпляра FltMgr под названиями «Фрейм 1» и «Фрейм 0». Как видите, есть и другие «традиционные» фильтры, присутствующие в стеке вместе с экземплярами FltMgr. Драйвер определяет его высоту в .inf-файле, специальном типе установочного файла ОС, который используется для установки драйверов.

Заключение

В этой статье мы рассмотрели общие вопросы, касающиеся разработки драйверов-фильтров файловых систем, обсудили новый тип драйверов-фильтров – минифильтры, которые являются «плагинами» к «традиционным» драйверам-фильтрам. Мы коснулись вопросов синтаксического разбора имен устройств менеджером объектов, механизмов определения им драйвера, отвечающего за данное устройство и взаимодействия менеджера объектов с менеджером ввода-вывода.

В следующей статье мы рассмотрим проблему виртуализации файловой системы с практической стороны и приступим к реализации инструмента «песочница», который виртуализирует работу с файлами. Любая коммерческая «песочница», однако, виртуализирует не только операции с файловой системой, но и множество других механизмов системы, таких как системный реестр, удаленный вызов процедур, именованные каналы и т.д.

Работа в «песочнице» — игры для взрослых. Часть 1

Сергей и Марина Бондаренко

21 июля 2010

В последнее время кибер-преступники стали столь изобретательны, что сообщения о вирусных эпидемиях не вызывают удивления и стали, в общем, привычными. Однако увидеть новость о распространении нового трояна на 3DNews это одно, а обнаружить этот самый троян на своем компьютере — совсем другое. В Интернете можно найти множество советов относительно того, как не стать жертвой мошенников: от использования современных версий ПО, в которых закрыты все известные уязвимости, и до наличия на компьютере надежного современного решения для обеспечения безопасности.

Однако в некоторых случаях от заражения пользователя не спасает даже самый надежный брандмауэр и самый глазастый антивирус. Это происходит тогда, когда программа, защищающая компьютер, не уверена во вредоносном действии запускаемого приложения или выполняемого на веб-странице скрипта, вследствие чего оставляет решение о разрешении действия за пользователем. Вы вполне можете решить, что антивирус излишне подозрителен или просто, задумавшись, щелкнуть мышкой по кнопке «ОК», тем самым разрешив исполнение вредоносного кода.

Что же делать? Неужели из-за возможности подхватить троян, лучше не запускать новые приложения, а от веб-серфинга и вовсе отказаться? Существует прекрасное решение, которое для многих может стать отличным дополнением ко всем средствам для защиты компьютера от проникновения вредителей. Речь идет о работе с приложениями в «песочнице».

«Песочница» представляет собой изолированную среду, для которой отводится небольшое пространство на жестком диске и которая никак не зависит от реальной операционной системы. При запуске программы в «песочнице» она работает так же, как обычное приложение, однако не может влиять на любые компоненты системы, которые находятся вне изолированной среды. Это значит, что из «песочницы» невозможно внести изменения в системный реестр, заменить системные файлы или выполнить любые другие действия, которые могут повлиять на стабильность работы системы. Благодаря этому «песочницу» можно использовать для безопасной работы в Интернете и для запуска неизвестных приложений. Такой изолированной среде можно найти и другие применения – например, программисты и тестеры могут запускать в ней нестабильные версии программ.

⇡#»Песочница» в Kaspersky Internet Security 2010

О том, что работа с приложениями в «песочнице» может пригодиться самому широкому кругу пользователей, говорит хотя бы то, что соответствующая возможность в прошлом году появилась в программе Kaspersky Internet Security. Пользователи этого пакета для обеспечения безопасности могут работать с подозрительными приложениями в изолированной среде, если откроют их посредством пункта контекстного меню Windows «Запустить в безопасной среде». Для наглядности окно программы, запущенной в изолированной среде, будет обведено зеленой рамкой.

Kaspersky Internet Security также позволяет составить список программ, работа с которыми может быть потенциально опасна (в него можно включить, например, браузер). Для этого в настройках приложения необходимо открыть раздел «Контроль программ» и при помощи кнопки «Добавить» внести программу в список. Если после этого открыть программу из окна Kaspersky Internet Security, она будет работать в изолированной среде. Подобную функцию удобно использовать, скажем, в том случае, если во время сессии в браузере вы планируете посещать сайты, которые могут содержать подозрительный код. Кроме этого, такая функция может стать хорошей заменой режиму приватности, который появился в последних версиях популярных браузеров.

Стоит, однако, заметить, что Kaspersky Internet Security предоставляет лишь самые базовые возможности запуска программ в «песочнице». Специализированные приложения имеют гораздо больше возможностей. Рассмотрим некоторые популярные программы, предназначенные для работы в изолированной среде.

⇡#Sandboxie 3.44

  • Разработчик: Ronen Tzur
  • Размер дистрибутива: 1,6 Мб
  • Распространение: shareware
  • Русский интерфейс: есть

Sandboxie это, вне всякого сомнения, самое известное решение для организации «песочницы». В программе используется классический метод защиты указанное пользователем приложение помещается в изолированную среду, в результате чего оно не может влиять на работу системы. Интересно, что Sandboxie была разработана для использования с браузером Internet Explorer, который является одной из самых популярных мишеней кибер-преступников. Однако в настоящее время Sandboxie может работать практически с любым приложением Windows.

Одна из особенностей Sandboxie, которая отличает ее от многих других программ подобной плана, возможность создания неограниченного количества «песочниц». При этом пользователь может составить список приложений, которые будут запускаться в каждой из них. По умолчанию программа сама создает «песочницу» под названием DefaultBox, поэтому можно начинать работу с Sandboxie сразу же после установки. Для открытия программы или документа в изолированной среде нужно выбрать команду «Запустить в песочнице», которая появляется в контекстном меню Windows.

Если в будущем вы создадите дополнительные «песочницы», можно попросить программу открывать файлы и приложения не в DefaultBox, а в другой изолированной среде. Для этого выберите в меню «Пуск» пункт «Начальное меню Sandboxie» и измените «песочницу», которая будет использоваться по умолчанию.

Запускать приложения в изолированной среде можно не только из контекстного меню, но и непосредственно из окна Sandboxie. Для этого нужно щелкнуть правой кнопкой мыши по названию «песочницы» и выбрать соответствующую команду (данное меню доступно и при щелчке по значку Sandboxie в системном трее).


Кстати, для ускорения выбора можно использовать команды «Запустить Web-браузер» и «Запустить почтовый клиент», которые открывают приложения, установленные в системе по умолчанию. Используя контекстное меню «песочниц», можно выполнять и другие команды, например, одним щелчком мыши закрывать все приложения, запущенные в изолированной среде, просматривать содержимое «песочниц» или полностью удалять его.

Для того чтобы быстро идентифицировать программу, которая запущена в изолированной среде, в Sandboxie предусмотрена специальная команда «Окно в песочнице?», при выборе которой на экране появляется специальный прицел, перетащив который на нужное окно, можно получить информацию о статусе программы.

Впрочем, если «песочница» работает с параметрами по умолчанию, то этот инструмент не нужен, так как возле названия приложения в заголовке появляется значок [#]. Если по каким-то причинам показ значка в заголовке нужно отключить, это можно сделать в настройках «песочницы». Кроме этого, можно добавить в заголовок окна название «песочницы», а также нарисовать вокруг окна тонкую рамку любого цвета, которая поможет более наглядно определить принадлежность к ней.

Обратившись к другим параметрам «песочницы», можно гибко настроить разрешения на доступ к разным ресурсам. Так, можно определить, к каким файлам и папкам будет заблокирован доступ, к каким программы смогут обращаться только для чтения, а также настроить взаимодействие с ключами системного реестра.

При необходимости в настройках «песочницы» можно указать приложения, которые будут форсировано запускаться в ней. Иными словами, при запуске указанного файла Sandboxie будет перехватывать приложение и не давать ему работать в обычном режиме. Программа позволяет указать не только отдельные исполняемые файлы, но и папки, при запуске любых приложений из которых они будут открываться в безопасной среде. Последнюю возможность можно, например, использовать для запуска новых программ, которые были скачаны из Интернета в папку Downloads.

⇡#BufferZone Pro 3.31

  • Разработчик: Trustware
  • Размер дистрибутива: 9,2 Мб
  • Распространение: shareware
  • Русский интерфейс: нет

BufferZone Pro – это еще одно хорошее решение для работы с приложениями в изолированной среде. Несмотря на то, что с помощью программы можно запускать в «песочнице» самые разные приложения, она предназначена, прежде всего, для работы с браузерами, IM-клиентами, программами для обмена файлами через пиринговые сети и другим ПО для Интернета. Об этом говорит хотя бы то, что в BufferZone изначально имеется достаточно обширный список приложений, которые по умолчанию запускаются в безопасном режиме. Среди них Mozilla Firefox, Google Chrome, ICQ, BitComet, Skype, GoogleTalk и другие. Пользователь может редактировать этот список по своему усмотрению, добавляя в него дополнительные программы и удаляя ненужные.

Подобно рассмотренной выше утилите, BufferZone может отслеживать все приложения, которые запускаются на компьютере, и перенаправлять их в «песочницу». Также BufferZone может блокировать запуск любых неизвестных программ.

В отличие от Sandboxie, в этой программе не предусмотрено возможности создания нескольких «песочниц». Окна всех программ, которые запущены в «песочнице», обводятся красной рамкой. Увидеть, какие программы в данный момент работают в изолированной среде, можно также в главном окне BufferZone. Тут же отображается краткая статистика о работе программ в изолированной среде. BufferZone не только подсчитывает, сколько действий всего было произведено такими приложениями, но и ведет учет потенциально опасных операций в системе, а также угроз, относящихся к безопасности, которые удалось предотвратить.

В том случае, если программа, работающая в «песочнице», выполнила вредоносный код или другое деструктивное действие, можно быстро удалить все данные, относящиеся к приложениям, запущенным в изолированной среде. Кроме этого, предусмотрена возможность автоматической очистки таких данных согласно составленному пользователем расписанию.

В BufferZone есть и некоторые дополнительные возможности, которые не имеют непосредственного отношения к организации «песочнице», однако помогают повысить общий уровень безопасности компьютера. Так, при помощи программы можно запретить открытие файлов с внешних жестких дисков, DVD-дисков и с USB-накопителей или разрешить работу с такими данными только в изолированной среде.

В заключение отметим, что помимо платной версии BufferZone Pro имеется также бесплатная редакция программы. В ней реализован ряд ограничений, например, нет возможности создания снимка виртуальной среды и восстановления сохраненных в ней данных. Кроме этого, в бесплатной версии меньше приложений, для которых защита включена по умолчанию.

⇡#Заключение

Выбирая специализированную программу для запуска приложений в «песочнице», нужно иметь в виду, что существует два основных подхода к организации изолированной среды. В первом случае «песочница» создается для указанных пользователем приложений, и во время одной сессии работы за компьютером он использует и такие программы, которые запущены в изолированной среде, и такие, которые работают в обычном режиме. Программы, в которых используется такой подход к организации защиты системы, были рассмотрены в этой статье.

Однако такое решение приемлемо не всегда. Существует второй подход к организации работы ПО в изолированной среде, который подразумевает создание «песочницы» размером с целую операционную систему. При этом создается образ работающей системы, после чего пользователь начинает работать именно с ним, а не с реальной средой. Все произведенные им действия сохраняются только до перезагрузки, а после того, как она выполнена, система возвращается в исходное состояние. Такое решение удобно использовать на общественных ПК, например, в интернет-кафе, в компьютерных классах и т.д. О программах, при помощи которых можно организовать такую защиту, мы расскажем во второй части статьи.

Sandbox игры в которых можно программировать

Рекомендуемые сообщения

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

О нас

Проект ComputerCraft.ru основан в 2014 году. Характерной чертой наших игровых серверов всегда было и будет наличие компьютерных и технических модов и аддонов, но иногда можно было встретить у нас и техно-магические сборки. Когда ключевой мод ComputerCraft устарел и больше не отвечал техническим требованиям, ему на замену пришел современный и высокотехнологичный мод OpenComputers. Черепашек сменили ультра современные и высокофункциональные роботы.

ComputerCraft.ru — это площадка для фановой игры в Майнкрафт и лампового общения на форуме, стабильные серверы, это возможность в легкой и игровой форме обучиться программированию на языке Lua и реализовать все свои самые смелые инженерные идеи и решения и поделиться ими с другими игроками. За все время существования проекта сменилось 9 игровых серверов, которые посетили более 7000 игроков. На сайте собрано более 1000 интереснейших программ и библиотек, статей, гайдов, веселых историй и горячих обсуждений, выдвинуто множество идей автоматизации и способов программирования.

У нас играют и пишут программы как новички так и опытные программисты. А самые продвинутые участники нашего коллектива даже разрабатывают собственные авторские моды и аддоны, ресурспаки, репозитории, мощнейшие библиотеки и операционные системы! Эти участники — гордость нашего проекта, которые по праву носят почетное звание Гуру!

Регистрируйтесь прямо сейчас и присоединяйтесь к нашему дружному коллективу фанатов игры Майнкрафт, компьютерных и инженерных модов!

Sandboxie — бесплатная песочница для запуска сомнительных программ в Windows

Sandboxie — наверное, самая популярная «песочница», позволяющая изолировать запускаемые в Windows 10, 8.1 и Windows 7 программы таким образом, чтобы они не могли повлиять на работоспособность системы. Ещё недавно утилита Sandboxie не была в полной мере бесплатной, но через короткое время после того, как в Windows 10 появилась встроенная песочница, стала таковой.

В этом кратком обзоре — об использовании Sandboxie для запуска программ в изолированной среде, что позволит обезопасить вашу систему от потенциально нежелательных изменений, основных настройках и функциях песочницы. И предваряя текст, сразу сообщаю, что рекомендую рассматриваемый продукт к использованию.

Использование Sandboxie

После установки Sandboxie на компьютер или ноутбук вы сразу сможете запускать программы в песочнице с параметрами по умолчанию одним из следующих способов:

  1. Нажать правой кнопкой мыши по ярлыку или исполняемому файлу программы, выбрать пункт «Запустить в песочнице» и указать конкретную песочницу (DefaultBox — песочница с параметрами по умолчанию, можно создать несколько наборов параметров и выбирать в зависимости от того, что именно необходимо).
  2. Запустить программу в песочнице, нажав по значку Sandboxie в области уведомлений Windows правой кнопкой мыши, выбрав имя песочницы, а затем — пункт «Запустить любую программу».
  3. Открыв главное окно «Управление Sandboxie» и выбрав в меню «Песочница» — «Имя песочницы (DefaultBox) — «Запустить в песочнице».


Сама суть запуска программ в песочнице будет объяснена сразу после установки при первом запуске программы на нескольких информационных экранах. Эти же экраны можно вызвать через меню «Помощь» — «Начало работы. Руководство».

При запуске каких-либо программ в песочнице, в главном окне Sandboxie вы будете видеть, что еще они используют для своей работы, а в меню «Файл» — «Монитор доступа к ресурсам» сможете подробно ознакомиться, с какими данными работает запущенная программа: к каким файлам, устройствам и разделам реестра получает доступ.

В целом, для целей простого тестирования каких-то программ, которые у вас вызывают сомнения, параметров по умолчанию может быть достаточно: запускаем что-то в песочнице, после закрытия программы все её данные удаляются. Изменить что-то в системе запущенная таким образом программа не сможет. Однако, в некоторых случаях может иметь смысл изучить и изменить настройки Sandboxie, либо создать новые профили песочницы для каких-либо задач.

Настройка песочницы Sandboxie

Если в главном меню Sandboxie выбрать пункт «Песочница» — «DefaultBox» — «Настройки песочницы» (или в том же меню создать новую песочницу), вы сможете тонко настроить поведение песочницы.

Среди основных и наиболее часто требуемых параметров можно выделить:

  • Восстановление — в этом разделе содержится информация о папках, для которых будет доступно восстановление файлов. Что имеется в виду? Суть в том, что, если вы запустили программу в песочнице, создали или скачали с её помощью какой-то файл, а затем закрыли программу, файлы будут удалены и в системе их не останется. Если же сохранить файлы в одну из указанных папок (их список вы можете менять) и не отключать немедленное восстановление, вам автоматически будет предложено «Восстановить файл» (восстановление можно запустить и вручную), что означает — не удалять его после закрытия программы, а оставить в системе.
  • Форсированные папки и программы в разделе «Запуск программы». Программы из указанных папок или просто указанные исполняемые файлы программ всегда будут запускаться в песочнице.
  • Ограничения — в этом разделе можно предоставить программам, запускаемым в песочнице доступ в Интернет, сетевым папкам и файлам и настроить другие ограничения, например, строго ограничить набор программ, которые могут запускаться в песочнице.
  • Доступ к ресурсам — здесь можно задать программы, которым будет предоставлен тот или иной доступ к папкам и файлам или реестру Windows даже несмотря на их запуск в песочнице.
  • Раздел «Приложения» — здесь вы можете настроить некоторые специфичные параметры для отдельных приложений: к примеру, включить доступ за пределы песочницы для браузеров (может пригодиться для сохранения куки, доступа к паролям и т.д).

Все доступные настройки Sandboxie в достаточной мере понятны и подробно пояснены на русском языке. Если какой-то параметр остается не ясным, можно провести эксперимент, настроив его и протестировав на какой-то гарантированно безопасной программе (например, на любой встроенной стандартной программе Windows наподобие блокнота).

Sandboxie

Sandboxie – это программа, позволяющая запускать приложения в защищённой виртуальной среде (песочнице) и осуществлять полный контроль за их работой.

Как работает Sandboxie

Песочница создаёт особую защищённую оболочку. Любая программа, запущенная через Sandboxie, не будет иметь доступа к системным файлам, реестру Windows, и не сможет никак повлиять на её работоспособность, т.к. выполняется в изолированной среде.

Запуск приложений в песочнице позволяет обезопасить систему от попадания в неё вирусов и различных вредоносных объектов, полностью изолируя Windows от любого нежелательного воздействия.

Кроме того, Sandboxie делает более безопасным и веб-сёрфинг. Запуская любой браузер (Google Chrome, Яндекс.Браузер, и т.д.) в песочнице, можно не опасаться попадания в компьютер вирусов и прочих зловредов из Сети.

Sandboxie защищает и от нежелательных обновлений, умеет следить за электронной почтой, выявляя вирусы, трояны, шпионское ПО и прочие вредоносные объекты.

Скачать Sandboxie

На нашем сайте для загрузки доступна последняя версия песочницы Sandboxie для Windows 32 и 64-бит на русском языке.

Скачать Sandboxie бесплатно, без регистрации.

Версия: Sandboxie 5.31.6

Размер: 2.58 / 3.17 МБ

Дата релиза: 21 октября 2020

Статус программы: Бесплатная

Разработчик: Ronen Tzur

Рейтинг: Пожалуйста, поставьте оценку программе от 1 до 5 баллов

Операционная система: Windows 10, 8.1, 8, 7

Как работает Песочница

Современные кибератаки все чаще ориентированы на конкретную отрасль (банки, ритейл, промышленность, госсектор, интернет-магазины и т.п.) или конкретную компанию. Уникальный характер таких угроз позволяет с легкостью обходить классические средства защиты – антивирусы, межсетевые экраны, IPS, почтовые и веб-шлюзы и т.д. Конечная цель злоумышленников – перевести деньги в свою пользу, осуществить шпионаж, кражу ценной информации, вымогательство, остановить производство и вывести из строя оборудование. Такие средства по обнаружению современных атак, как песочница, а также превентивные меры (аналитика по инцидентам, локализация заражения в сети, действия по предотвращению атаки и исключению повторных инцидентов) помогают эффективно нейтрализовать целевые атаки.

Что такое песочница?

Песочница – механизм для безопасного исполнения программ. Песочницы часто используют для запуска непроверенного кода из неизвестных источников и обнаружения вирусов и закладок. У антивирусных средств простые методы обнаружения, такие как сигнатурный анализ, наличие поведенческого анализа, не позволяют обнаружить тщательно спланированное проникновение. А средства ATP полностью эмулируют запуск в работу файла на обычной ОС с полным анализом происходящего. По факту мы запускаем его на изолированной станции под пристальным наблюдением. Это особенно актуально в тех случаях, когда вредоносная программа выдерживает паузу в начале своей работы.

В песочницу не пойдет известный и заведомо вредоносный код, потому что вердикт и так понятен, межсетевой экран его не пропустит. Только если у межсетевого экрана недостаточно данных для принятия решения, он отправляет его в песочницу.

Песочница может быть облачной, а может работать на стороне заказчика, сути это не меняет. Код запускается, его поведение мониторится. Таким образом можно отследить, что происходит на виртуальной машине и посмотреть, что этот файл мог бы сделать, если бы попал на нашу машину.

Обычно не все межсетевые экраны умеют задерживать файл для получения вердикта от песочницы, требуется еще агент на рабочей станции. А нужен он затем, что после того, как файл скачан, проверка в песочнице не происходит мгновенно (производитель обычно гарантирует в районе 5 минут SLA). В любом случае у пользователя довольно много времени, чтобы этот файл открыть. Часто это целый комплекс технических решений на разных уровнях, который служит для одной задачи.

Вендоры поддерживают специализированные базы знаний, которые позволяют выделять большее число угроз. Есть репутационные проверки, когда, условно, у вас или в облаке проверили какой-то файл, и нет смысла его «гонять» заказчику по всему миру опять в таких же песочницах и выносить вердикт в каждой инфраструктуре. В этом случае используется репутационная модель, единая сеть безопасности. Туда попадает необходимая информация, а затем на ее основании формируется индикатор компрометации. То есть выявляется вредоносный файл, мы понимаем, как он работает, и в этом случае эффективнее разослать информацию о нем по своим клиентам. А в общую базу данных добавить сведения о том, как этот файл работает. Если он обратился к какому-то файлу, сделал переименование, совокупность этих факторов может означать индикатор компрометации, разослав который всем, мы можем быстро обнаруживать уязвимость, не прибегая к возможностям песочницы.

Проверка на вредоносность не должна идти первой в линии защиты. Сначала это могут быть межсетевое экранирование, антиспам, антифишинг, которые внедрены в почтовую систему, прокси-сервера, обнаружение вторжения на сетевом уровне, и только после прохождения файлом этих барьеров идет песочница – крайняя мера защиты. На этом этапе необходимо понимать, что оперативность проверки файла требует больших ресурсов, большой поток таких файлов повлечет за собой дополнительные затраты. Чтобы их сократить, необходимо сперва максимально эффективно использовать существующие средства защиты.

Песочница — всё по этой теме для программистов


Профиль
Группа: Завсегдатай
Сообщений: 1308
Регистрация: 9.10.2006
Где: Matrix

Divide Et Impera

Профиль
Группа: Участник
Сообщений: 983
Регистрация: 7.4.2009
Где: Что, Когда?

jhonyxakep
Дата 31.8.2009, 04:11 (ссылка) | (нет голосов) Загрузка .
Цитата(Rohoss @ 31.8.2009, 03:40 )
нуждается ли Песочница в этой теме
Цитата(Rohoss @ 31.8.2009, 03:40 )
и отпишите название темы

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 31.8.2009, 08:04 (ссылка) | (нет голосов) Загрузка .
Цитата(Rohoss @ 31.8.2009, 04:40 )
Подумайте, нуждается ли Песочница в этой теме

Белый и лохматый

Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

s0lman
Дата 31.8.2009, 14:20 (ссылка) | (голосов:1) Загрузка .
Цитата
Для тех, кто собирается сделать запись в теме «Для тех, кто собирается создать тему в Песочнице»

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 31.8.2009, 16:41 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 31.8.2009, 16:49 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 31.8.2009, 17:41 )
а вдруг если йа напишу а у меня стырят идею? )))))))) неееееееее, нееееееееехочу

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 31.8.2009, 19:16 (ссылка) | (нет голосов) Загрузка .
Цитата(diadiavova @ 31.8.2009, 16:49 )
а то стырят

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 31.8.2009, 20:10 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 31.8.2009, 20:16 )
ну вот и стырил ))))

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 1.9.2009, 00:03 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 1.9.2009, 12:28 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 1.9.2009, 01:03 )
опыт наработаный годами

Профиль
Группа: Участник
Сообщений: 594
Регистрация: 17.2.2008

neweraser
Дата 1.9.2009, 14:48 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина


pycha
Дата 1.9.2009, 16:30 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 1.9.2009, 18:04 (ссылка) | (нет голосов) Загрузка .
Цитата(neweraser @ 1.9.2009, 15:48 )
а я ща тему создавать буду, и никому не скажу какую

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 1.9.2009, 19:32 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 1.9.2009, 21:27 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 1.9.2009, 20:32 )
раньше позже — детский спор . Стырено мной и модифицировано к лудшему )))))0

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 1.9.2009, 21:40 (ссылка) | (нет голосов) Загрузка .
Цитата(diadiavova @ 1.9.2009, 21:27 )
запостишь тему века

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 1.9.2009, 22:48 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 1.9.2009, 22:40 )
я тему глаза значит запостю

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 1.9.2009, 23:00 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 1.9.2009, 23:50 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 2.9.2009, 00:00 )
ну вот ты прокаркал стырить мою идею с темой глаза

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 2.9.2009, 07:16 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 16.9.2009, 21:40 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 2.9.2009, 08:16 )
уже есть

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 18.9.2009, 23:03 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 18.9.2009, 23:06 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 19.9.2009, 00:03 )
а зачем тырить у себя? она у меня есть

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 18.9.2009, 23:26 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 19.9.2009, 00:03 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 19.9.2009, 00:26 )
точно моя, и еще одна моя стыреная

Профиль
Группа: Участник
Сообщений: 712
Регистрация: 8.11.2005
Где: Н.Новгород

localhost
Дата 19.9.2009, 10:42 (ссылка) | (нет голосов) Загрузка .
Цитата(pycha @ 1.9.2009, 19:32 )
детский спор

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

Добавлено через 33 секунды
Не покемон, а библиотека для рисования графиков

diadiavova
Дата 19.9.2009, 12:15 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 712
Регистрация: 8.11.2005
Где: Н.Новгород

localhost
Дата 19.9.2009, 14:18 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 20.9.2009, 01:27 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 20.9.2009, 16:11 (ссылка) | (нет голосов) Загрузка .
Цитата(localhost @ 19.9.2009, 15:18 )
Пора утвердить комитет по фтверждению названий тем для Песочницы.
Цитата(pycha @ 20.9.2009, 02:27 )
это как?
Цитата(pycha @ 20.9.2009, 02:27 )
и ненадо тут гордыню покемоном обзывать

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 21.9.2009, 22:12 (ссылка) | (нет голосов) Загрузка .

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 22.9.2009, 23:01 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Завсегдатай
Сообщений: 1308
Регистрация: 9.10.2006
Где: Matrix

Rohoss
Дата 22.9.2009, 23:05 (ссылка) | (нет голосов) Загрузка .
Цитата(diadiavova @ 22.9.2009, 23:01 )
Нет. К «diadiavova» подходит только один смысл

Ильич
какой-то дядявова
участник форума

Доктор Зло(диагност, настоящий, с лицензией и полномочиями)

Профиль
Группа: Модератор
Сообщений: 5803
Регистрация: 14.8.2008
Где: В Коньфпольте

diadiavova
Дата 23.9.2009, 00:05 (ссылка) | (нет голосов) Загрузка .
Цитата
diadiavova. как много в этом звуке
Для сердца длятехктского слилось,
Как много в нём отозвалось.

Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

pycha
Дата 6.11.2009, 03:48 (ссылка) | (нет голосов) Загрузка .
Google
Дата 10.11.2020, 16:30 (ссылка)

В разделе не действуют многие правила:

  • Можно оффтопить
  • Можно флудить, но не увлекаться
  • Можно общаться на темы, не только связанные с программированием.
  • Если вы поставили здесь адекватный вопрос, не ждите адекватного ответа.
  • Размещать рекламу
  • Обсуждать политику
  • Оскорблять друг-друга и переходить на личности
  • Наезжать
  • Материться
  • Уныло обсуждать унылые вещи

Напоминаем о существовании волшебной кнопочки . Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джинна-модератора, который нашлет порчу на злостного нарушителя. Кстати — счётчик сообщений здесь не растёт.

Лучшее в Камасутре — это введение!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Все кому не лень.

Добавить комментарий
Правила форума «Флейм»
Тут модерируют вообще все кому не лень!