Файл persistent чем открыть
31 окт. 2017 в 12:30 I've been manipulating the save files a little and I've noticed that Act 1 and Act 2 persistent files are different in size. I tried switching between one and another and it actually is responsible for the acts. The lower 19 KB file loads act 1, while the higher 70 KB file loads the act 2. Since it is an unnamed file, could it actually be read or stuff? Opening it with Notepad gives you just gibberish. 31 окт. 2017 в 12:32 It's located in your AppData > Roaming > RenPy > DDLC - (numbers) folder. 31 окт. 2017 в 12:48 It's a binary settings file for renpy engine - it stores game settings as well as some important stuff (like you being eligible for "secret" ending or not). 31 окт. 2017 в 12:55 It's a binary settings file for renpy engine - it stores game settings as well as some important stuff (like you being eligible for "secret" ending or not). 31 окт. 2017 в 13:02 Also, if your persistent file does not match the act of your manual save, trying to load that save will give you a cute little message from Monika. 31 окт. 2017 в 14:40 Also, if your persistent file does not match the act of your manual save, trying to load that save will give you a cute little message from Monika.
/.renpy/ ♥♥♥♥. If I download a portable distribution (PD) of any program, I expect EVERYTHING to stay in the directory I extracted out of the archive it came from, no exceptions. I do not tolerate PDs that write to the registry, or write to an outside directory. That is overstepping the boundaries implied by putting the software in a *portable distribution*. The whole point of a PD is to be able to be moved between different filesystems on different computers and still work as long as the underlying software is compatible (ABI, interpreter). The whole point of standardized config directories (and by extension, the windows registry) is to provide a place for installed programs (IP) (the kind you get from an installer image or package manager) to keep their config regardless of where they are located, to keep things organized. IPs and PDs are two completely different methods for releasing software. I don't care if you're trying to be meta, or clever, or whatever, you do NOT mix these up. That is sloppy practice, and you will piss off every sysadmin who gives a ♥♥♥♥ about keeping their filesystem at a certain standard of cleanliness. Like myself.
Think of it this way. What do I do when I want to remove a PD program? Easy, right? You just delete the directory, and it's gone. That's it. But when a PD writes outside of its directory, you have a problem: it won't clean up after itself. So if I decided to delete the game, the .renpy directory will still be there. This is a huge oversight and a huge problem, and quite frankly qualifies the game as malware in my book.
Ren'Py поддерживает постоянные данные, то есть сохраненные данные, не связанные с определенной точкой в игре. Доступ к постоянным данным осуществляется через поля объекта постоянного хранения, привязанного к переменной persistent.
Все данные, доступные через поля persistent, сохраняются при завершении работы Ren'Py или при вызове renpy.save_persistent(). Постоянные данные загружаются при запуске Ren'Py и когда Ren'Py обнаруживает, что постоянные данные были обновлены на диске.
Особенность объекта постоянного хранения состоит в том, что доступ к неопределённому полю будет иметь значение None, а не вызывать исключение.
Примером применения persistent является создание открываемой галереи изображений. Для этого в постоянных данных сохраняется флаг, который определяет, была ли галерея разблокирована, как в данном коде:
Когда игрок получает концовку, которая приводит к разблокировке галереи, флагу должно быть присвоено значение True.
Поскольку постоянные данные загружаются до запуска блоков init python, они должны содержать данные, которые известны Python или Ren'Py. Или же можно использовать классы, определенные в блоках python early, при условии, что эти классы могут быть выделены и реализовать равенство.
Бывают случаи, когда Ren'Py нужно объединить постоянные данные из двух источников. Например, Ren'Py необходимо объединить постоянные данные, хранящиеся на USB-флеш-накопителе, с постоянными данными с локального компьютера.
Ren'Py осуществляет это слияние по каждому полю, принимая значение полей, которые были обновлены относительно недавно. Если такое поведение нежелательно, воспользуйтесь функцией renpy.register_persistent().
Например, если у нас есть множество увиденных концовок, мы предпочтем объединить это множества при слиянии данных.
renpy.register_persistent (field, func)
Регистрирует функцию, используемую для объединения значений постоянного поля, загруженного с диска, со значениями текущего объекта постоянного хранения. field Имя поля в объекте постоянного хранения. function Функция, вызываемая с тремя параметрами: old, new и current old Значение поля в старом объекте. new Значение поля в новом объекте. current Значение поля в текущем объекте постоянного хранения. Это предусмотрено для случаев, когда идентификация объекта, на который ссылается поле, не может измениться. Предполагается, что функция вернёт новое значение поля в объекте постоянного хранения.
renpy.save_persistent ()
Сохраняет постоянные данные на диск.
Управление данными между несколькими играми – функция, позволяющая обмениваться информацией между играми Ren'Py. Это может быть полезно, если вы планируете создать серию игр и хотите, чтобы они обменивались информацией.
Для использования многопользовательских данных, необходимо создать объект MultiPersistent внутри блока init. Затем пользователь может обновить этот объект и сохранить его на диск, используя метод save. Неопределенным полям по умолчанию имеют значение None. Чтобы гарантировать возможность повторной загрузки объекта, рекомендуем не присваивать экземплярам класса определяемые пользователем типы.
class MultiPersistent (key) Создает новый объект MultiPersistent. Его следует вызывать только внутри блока init и данный класс возвращает новый MultiPersistent с заданным key. key Ключ, используемый для доступа к многопользовательским данным. Игры, использующие один и тот же ключ, получат доступ к одним и тем же многопользовательских данным.
save () Сохраняет многопользовательские данные на диск. Это должно быть вызвано после изменения данных.
В качестве примера возьмем первую часть игры, состоящую из двух частей:
Рано или поздно, но большинство фантастических сюжетов воплощаются в реальную жизнь. В мире информационной безопасности это произошло как только Эдвард Сноуден опубликовал информацию о PRISM — средстве слежения за пользователями сети, разработанного АНБ. В этой статье я опишу самый действенный способ защитить свои данные от любопытных глаз.
· Tails
Первым делом, следует познакомиться с главным героем этой статьи. Без этой ОС можно было бы и не пытаться открыть для себя дверь в мир анонимности. Хвосты используют более 20 000 раз в день, журналисты и правозащитники используют Tails, чтобы осудить правонарушения правительств и корпораций.
· Установка Tails
Ну что же, начнем установку этого чуда. Нам понадобится один USB 8GB (мин.), программа Etcher и полчаса времени.
Первым делом идем сюда и качаем образ напрямую. В моем случае это версия 3.12, далее качаем программу Etcher для установки нашей OS с официального сайта, после чего приступаем к установке. Интерфейс этой программы интуитивно понятен: выбираете образ ОС, флешку и нажимаете старт. Процесс занимает около 5 минут. После того, как загрузка образа завершена, не отключая USB, перезагружаем компьютер, заходим в BIOS и выбираем флешку как загрузочное устройство. Далее загружаемся с нее.
· Предварительная настройка Tails
Теперь вы увидите меню Greeting, оно будет встречать вас при каждом входе в систему и я советую всегда применять следующие настройки. Требуется зайти в дополнительные настройки, там устанавливаем пароль администратора, подмену MAC- адреса, соединение через Tor и мосты.
И снова нам понадобится вкладка «приложения». Идем в папку TAILS и Configure persistent volume.
Мы зашли в Persistent Wizard. Сначала устанавливаем пароль, его потребуется вводить при каждом включении Tails, после видим некоторое количество пунктов с вариантами выбора — те файлы и настройки, которые следует сохранять, поставьте птичку на желаемое.
· Сохранение файлов и настроек Persistent Volume
Перед тем, как прокачивать Хвосты надо научиться сохранять результаты своих улучшений. Tails не рассчитана на сохранение установленных в нее программ, настроек и файлов при выключении. Но разработчики предусмотрели возможность сохранить определенные данные в персистентном разделе, который мы создали ранее. Например, чтобы установить какую-нибудь программу надо зайти в менеджер пакетов Synaptic, указать новый репозиторий программ и выбрать нужную. А чтобы просто сохранить какие-то файлы переместите их в Home/Persistent.
Так что несмотря на то, что сам сеанс работы при выключении компьютера не сохраняется, APT-пакеты (настройки, расширения браузера и т. д.) при правильных настройках сохранятся в персистентном разделе. Это делает возможным развертывание всех необходимых программ в процессе загрузки операционной системы.
· Защита данных в Persistent Volume
Persistent Volume зашифрован по умолчанию, но есть одна проблема — расшифровать можно все что угодно, но не найти. Чтобы наш персистентный раздел было не возможно обнаружить мы используем кое-что по лучше, чем рекомендуют разработчики.
Скрытый раздел не очень удобен в использовании, поэтому только если Вам нужно устанавливайте эту программу, если же Вам не нужен TrueCrypt пропустите этот пункт.
Итак, разработчики Tails советуют пользоваться Сryptsetup, но раздел, созданный этим инструментом скрыт достаточно хорошо. Зачем создавать такой раздел, если его можно найти, так что пользоваться мы будем TrueCrypt, раздел созданный этим инструментом невозможно обнаружить. PS Несмотря на то, что проект TrueCrypt был закрыт еще в 2014 году он нам подходит, так как нашлись люди, продолжившие разработку.
Раздел TrueCrypt скрыт так, что ОС его не найдет, пока вы не введете нужный пароль.
Поэтому во время записи файлов в наш скрытый раздел может быть поврежден.
Для того чтобы не повредить собачкам в скрытом разделе, при создании надо поставить галочку, как на скриншоте ниже.
· Браузер TOR
Этот браузер известен каждому, интересующемуся интернет-безопасностью и тому, кто хоть раз пытался обойти различные блокировки, будь то rutracker, или любые другие заблокированные сервисы.
Первая вкладка, которая нам понадобится это «Приватность браузера». Поставим всегда работать в режиме приватного просмотра, защиту от отслеживания – всегда, поддельное и обманное содержимое — включаем все.
Теперь нажимаем на TorButton, эта кнопка слева от строки поиска. Тут выбираем максимальный уровень защиты.
Самый сильный защитник браузера, это конечно же, «Дополнения», они защититят вас от слежения при серфинге интернета, вредоносные сайты будут заблокированы. Некторые из них уже установлены в TOR заранее, разработчиками, но они необеспечивают полную защиту
Disconnect — Конфиденциальный Блокировщик Рекламы: Блокирует трекеры google analytics/яндекс статистика и т.д. — основные средства слежения за вашей историей посещения сайтов, местонахождению и многих других данных.
Adblock Plus — Блокирует трекеры, майнинг, рекламу, и т.п.
User-Agent Switcher — Автоматически меняет Ваш fingerprint компьютера\браузера.
Man in the Middle — Защищает от перехвата интернет-траффика\MITM атаки. Это расширение можно скрыть с панели расширений.
Disable WebRTC — Протокол WebRTC выдает настоящий ip, цепь соединений TOR и другие данные, даже если Вы используете другие средства защиты, так что отключим этот протокол.
Теперь следует настроить эти расширения.
· Прилагается
Ну вот ты защищен от слежения и можешь начинать бродить по интернету со спокойной душой, но в Tails есть и софт уже идущий в комплекте с ОС, и я о нем расскажу
· Общение
· Шифрование и конфиденциальность
Так как эта ОС ориентирована на анонимность и безопасность команда разработчиков вложила достаточно много интересных инструментов для анонимизации. Например, программа MAT, она стирает метаданные файлов, которые могут раскрыть много личной информации о создателе. Как я сказал ранее, таких программ в Tails много так что вы можете просмотреть их список на сайте разработчика или исследовать самостоятельно
· Другой полезный софт
Не поскупились создатели и на ПО полезное любому юзеру: LibreOffice, Gimp и Inkscape, pdf-redact-tools и некоторые другие.
· Вместо заключения
Теперь Вы узнали о настоящей безопасности в интернете имя которой — Tails, здесь я рассказал не о всех возможностях этой живой ОС, а лишь сделал краткий обзор с установкой.
Устанавливайте, пользуйтесь, изучайте.
Есть разные способы организовать возможность постоянного присутствия, у каждого свои достоинства и недостатки:
записать что‑либо на HDD:
- плюс: переживет перезагрузку;
- минусы: заметно для человека, заметно для антивируса;
внедрить код в RAM:
- плюс: незаметно для человека;
- минусы: не переживет перезагрузку, может быть заметно для антивируса;
изменить конфигурацию ОС:
- плюсы: незаметно для антивируса, переживет перезагрузку;
- минус: может быть заметно для человека.
Чаще всего при закреплении в системе все же приходится обращаться к диску, поскольку это единственный способ не вылететь из‑за случайной перезагрузки. В общем случае успешность такой персистентности зависит от двух факторов:
- насколько скрытно от пользователя прописан запуск бэкдора;
- насколько безобидно для антивируса тело бэкдора.
Очевидно, что с точки зрения закрепления Linux — более приоритетная система. Компьютеры с ним, как правило, редко обслуживаются пользователями и не перезагружаются месяцами. Да и как точка опоры они подходят больше. Хосты под управлением Linux удобны еще и потому, что они редко защищены антивирусом, а антивирус для персистентности — это ощутимая проблема.
В свою очередь, в Windows больше вариантов автозагрузки, что может помочь лучше замаскироваться в ее недрах. Ведь, в отличие от проникновения в Linux, нам почти всегда придется работать рядом с пользователем, опытным или не очень.
Когда имеешь дело не с одной целью, а с целой группой, весьма удобно использовать для машины атакующего доменное имя, а не IP. Тогда для каждой жертвы или группы жертв можно будет задать свое уникальное имя в DNS-зоне атакующего (далее в примерах — attacker.tk). Это позволяет эффективнее управлять жертвами. Выглядит это примерно так.
Если антивирусы не главная проблема, то в качестве reverse shell часто можно использовать простые nc.exe, ncat.exe и socat.exe. Все они обладают возможностями RAT и зачастую нормально проходят антивирус. Поскольку это программы, работающие из командной строки, можно сделать их запуск на машине жертвы незаметным. В Windows для этого достаточно поменять subsystem у исполняемого файла:
pe header → optional header nt fields → subsystem → GUI ( 0x0002 )Описанные далее примеры помогут не только при закреплении на машине жертвы, но и для выявления фактов компрометации.
Анализ элементов автозагрузки — это часто поиск иголки в стоге сена. Обычно приходится судить по названию исполняемого файла, тому, где он находится (в правильных местах или где‑то в профиле пользователя), а также по названию и описанию компании‑разработчика, зашитым внутри файла. Впрочем, ничто не мешает атакующему подделать эти данные.
Антивирусы же, как правило, не удаляют записи в списках автозагрузки, а удаляют сами исполняемые файлы. Поэтому битая ссылка в автозагрузке — тревожный сигнал.
Организовать персистентность можно прямо из командной строки. Чтобы шелл открывался всегда, используем команду с бесконечным циклом, уходящую в фон.
Читайте также: