Русский
Русский
English
Статистика
Реклама

Microsoft office

Перевод Созданные с помощью библиотеки .NET документы Excel обходят проверки безопасности

15.04.2021 18:16:38 | Автор: admin

Pedro Tavares

Обнаруженное недавно семейство вредоносного ПО под названием Epic Manchego использует хитрый трюк для создания вредоносных файлов MS Excel с минимальной степенью обнаружения и повышенной вероятностью обхода систем безопасности. Изучая способы обхода систем безопасности, используемые злоумышленниками, можно понять, какие первоочередные меры следует предпринять для защиты систем от атак подобного рода.


Описание угрозы

Семейство вредоносного ПО "работает" с июня 2020 года и атакует организации из разных стран с применением фишинговых сообщений электронной почты, содержащих изменённый файл Excel. Чтобы фишинговые сообщения не попадали в папки со спамом и против них не срабатывали механизмы отсечения нежелательной почты, злоумышленники отправляют свои письма с официальных учётных записей организаций. Учётные данные таких организаций, как правило, попадают в руки злоумышленников в результате взлома. Злоумышленники с помощью сервиса проверки аккаунтов на утечки "Have I Been Pwned?" проверяют, были ли скомпрометированы учётные записи электронной почты, или просто взламывают такие записи до того, как приступить к вредоносной рассылке.

Рис. 1. Пример фишингового электронного письма, рассылаемого вредоносным ПО Epic Manchego.Рис. 1. Пример фишингового электронного письма, рассылаемого вредоносным ПО Epic Manchego.

Согласно данным NVISO, "через VirusTotal было пропущено около 200 вредоносных документов, и был составлен список из 27 стран, ранжированных по количеству отправленных документов. В списке не делалось различие, каким способом загружались такие файлы (возможно, через VPN)".

В ходе исследования выяснилось, что наибольшему риску рассылки вредоносных файлов подвергаются такие страны, как Соединённые Штаты Америки, Чешская Республика, Франция, Германия и Китай.

Рис. 2. Целевые регионы, выявленные в ходе исследования угроз с помощью VirusTotal.Рис. 2. Целевые регионы, выявленные в ходе исследования угроз с помощью VirusTotal.

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

Рис. 3. Другие шаблоны электронных писем, рассылаемых вредоносным ПО Epic Manchego.Рис. 3. Другие шаблоны электронных писем, рассылаемых вредоносным ПО Epic Manchego.

Как работает Epic Manchego

В некоторых рассылаемых документах Office содержатся нарисованные фигуры, например прямоугольники, как это показано на рисунке 4.

Рис. 4. Прямоугольник внутри файла Excel c вредоносной полезной нагрузкой.Рис. 4. Прямоугольник внутри файла Excel c вредоносной полезной нагрузкой.

Вредоносные документы Microsoft Office создаются не через Microsoft Office Excel, а с использованием .NET библиотеки EPPlus. Поскольку такие документы не являются стандартными документами Excel, они могут маскироваться и обходить защитные механизмы.

Документ на рисунке 4 содержит объект drawing1.xml (скруглённый прямоугольник) с именем name="VBASampleRect и создан с использованием исходного кода EPPLUS Wiki (справа), как это показано ниже.

Рис. 5. Код прямоугольника Excel и код прямоугольника EPPlus.Рис. 5. Код прямоугольника Excel и код прямоугольника EPPlus.

Если открыть окно макросов документа, в нём не будет ни одного макроса.

Рис. 6. На первый взгляд никаких макросов в документе нет.Рис. 6. На первый взгляд никаких макросов в документе нет.

Тем не менее вредоносный код существует и к тому же защищён паролем. Интересно отметить, что этот код VBA вообще не зашифрован, а представлен открытым текстом.

При открытии документа с VBA-проектом, защищённым паролем, макросы VBA будут запускаться без пароля. Пароль необходим только для просмотра проекта VBA внутри интегрированной среды разработки (IDE) VBA.

Рис. 7. Пароль необходим только для отображения кода VBA внутри вредоносного кода.Рис. 7. Пароль необходим только для отображения кода VBA внутри вредоносного кода.

Если внести изменения в строку DPB или дешифровать пароль, можно увидеть, что при запуске вредоносного файла Office на компьютере жертвы запускается и выполняется полезная нагрузка PowerShell.

Рис. 8. Строка DPB вредоносного файла .doc.Рис. 8. Строка DPB вредоносного файла .doc.

На приведённом ниже скриншоте продемонстрирован запуск полезной нагрузки PowerShell во время заражения.

Согласно результатам исследования NVISO Labs, чтобы загрузить полезную нагрузку в коде VBA, используются либо объекты PowerShell, либо объекты ActiveX, в зависимости от разновидности исходного вредоносного ПО.

Анализ завершающего этапа работы вредоносного ПО

Через вредоносный код VBA на втором этапе с различных интернет-сайтов загружается полезная нагрузка. Каждый исполняемый файл, создаваемый соответствующим вредоносным документом и запускаемый на втором этапе, выступает для конечной полезной нагрузки как носитель вируса (дроппер). После этого на втором этапе также загружается вредоносный файл DLL. Этот компонент DLL формирует дополнительные параметры и полезную нагрузку для третьего этапа, после чего запускает на выполнение конечную полезную нагрузку, которая, как правило, крадёт информацию.

Рис. 9. Действия Epic Manchego на последнем этапе.Рис. 9. Действия Epic Manchego на последнем этапе.

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

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

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

Чаще всего (более чем в 50% случаев) на компьютер жертвы устанавливается вредоносная программа AZORult, похищающая личные данные пользователей, программы для кражи информации называются инфостилерами. В качестве других полезных нагрузок могут использоваться трояны AgentTesla, Formbook, Matiex и njRat, причем Azorult и njRAT имеют высокий уровень повторного использования.

Рис. 10. Классификация полезной нагрузки на основе словаря и (повторное) использование ПО с усечёнными хэшами.Рис. 10. Классификация полезной нагрузки на основе словаря и (повторное) использование ПО с усечёнными хэшами.

Обнаружение и действия

Для запуска вредоносных программ злоумышленники придумывают новые методы обхода систем обнаружения угроз и реакции на конечных точках (EDR) и антивирусных программ (AV). При использовании нового способа создания вредоносных документов Office механизмы обнаружения угроз не должны позволять вредоносному ПО переходить на следующий этап. Часто на этом этапе запускается скрипт PowerShell, который может выполняться в памяти без обращения к диску.

Обнаружение и блокирование новых способов заражения посредством создания вредоносных документов (maldoc), один из которых описывается в настоящей статье, позволит организациям оперативно реагировать на инциденты. Для предотвращения атак подобного рода рекомендуется принимать следующие меры:

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

  • Регулярно обновлять программное обеспечение, приложения и системы до последних версий.

  • Использовать решения защиты конечных точек (Endpoint Protection) и обновлённое антивирусное ПО для предотвращения заражения вредоносными программами.

  • Использовать системы управления уязвимостями и мониторинга для выявления потенциальных неустранённых уязвимостей и инцидентов в режиме реального времени.

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

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

Узнайте, как прокачаться и в других специальностях или освоить их с нуля:

Другие профессии и курсы

Источники:

Подробнее..

Бархатная перчатка Microsoft

17.07.2020 20:07:39 | Автор: admin
Культурный контекст
Персонажи Люси и Чарли Браун это отсылка к очень популярному на западе, в частности Америке, комиксу Peanuts (оттуда же известен белый пес Snoopy). Люси на протяжении многих лет психологически издевалась над Чарли: призывая его с разбегу пнуть мяч, каждый раз давая иллюзию, но она, в самый последний момент, этот мяч от него забирала.
Всю свою жизнь, Чарли Браун, всю свою жизнь.
обобщительная статья (англ.) об этой шутке из комикса

Это мой первый крупный перевод текста, старался удержать плавный слог на русском языке. Будут пожелания знаете куда писать. Поехали!

Подход бархатной перчатки срабатывал у Microsoft каждый раз. Уже более 30 лет Microsoft-Люси утягивает мяч от разработчика Чарли Брауна. И контроль над GitHub мне абсолютно ясен. Но использовать Ната [Nat Friedman, GH CEO] в роли приманки по-моему чересчур.[1]

За Microsoft стоит удачная история овладевания и контроля над компьютерной платформой с целью контроля над сферой разработки ПО. Та поддержка, которую они оказывали разработчикам на заре Windows, была легендарна. И реальна. Дело в том, что пока люди скучковывались в сообщество разработчиков Windows, изобретая попутно совсем новые категории программ, они и понятия не имели, что все их перспективы и с ними связанные мечты на самом деле принадлежали Microsoft. Конечно, поддержка и маркетинговая помощь от Microsoft были потрясающими. Но оглядываясь назад, мы были идиотами. Точнее, я идиот 0055.
Люси оттягивает мяч перед Чарли, тот промахивается и со всей скорости падает на землю

Стоило лишь определенной категории программ вырасти до прибыльности, а разработчикам и инвесторам начать пускать слюнки, что их день вот, наконец, настал, как вмешивалась Microsoft и отбирала себе целую категорию этого рынка. Иногда это происходило за счет одного только объявления, что Microsoft планировала какую-то программу. Как это случилось с категорией менеджера связей и объявлением Outlook. Инвестиции прекратились. Продажи встали. Должны были пройти три года, прежде чем первая сносная версия Outlook увидела свет. А независимым разработчикам досталось. Те перспективы, о которых они мечтали, всегда были за Microsoft и всегда ей принадлежали.

Вот она сила контроля над платформой.

Платформа контролирует сферу ПО. А программы контролируют цифровую информацию, которую они собирают и производят. Новым разработчикам ПО нужен доступ к тоннам этой программозависимой информации. Но эта информации всё больше и больше принадлежит вычислительным платформам Microsoft Azure и облаку Office 365. Хочешь доступа? Регистрируйся на GitHub. Поцелуй бархатную перчатку. И потом жди, пока Люси не заберет мяч ото всех твоих перспектив, которые ты держал за свои.

Припоминаю я свою первую конференцию JavaONE. Первая продажа акций Netscape в августе 1995-го взбудоражила мир до лихорадки из-за сети Интернет. Java была представлена как способ разработки программ для сети Интернет. Удивительно как много было разработчиков Windows на первой и второй конференциях JavaONE. Выглядело это скорее как конференция по Windows-OS/2 минувших дней. Казалось, что я там всех знаю. Чувствовал себя как дома. На самом деле, я смекал из-за чего мы были там. Интернет был платформой используемой всеми, не принадлежащей никому. Он также стал приютом для сообществ открытого ПО (OSS).

Напряженность между OSS разработчиками и Sun заметно ощущалась. Мы виндузятники смотрели на это с изумлением. Сообщества открытого ПО боялись, что Java была троянским конём, придуманным Sun, дабы завладеть сферой ПО для Интернет. Это как раз то, что случилось с разработчиками Windows и объясняло, с чего мы собрались на JavaONE. Целыми толпами.

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

Все мы знаем те последующие годы, когда бизнес и OSS бились за Интернет. Бархатная перчатка, ту что носит Нат, ни что иное как ещё один вызов, и как всегда: опять всё на кону. Первое Правило Кремниевой Долины: Владелец платформы заправляет её перспективами.

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

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

В 1995-ом я работал с системой видеоконференций Intel ProShare Video Conferencing System, разрабатывая программы для интеграции средств коммуникаций с вычислительной информацией и совместной работой. В ретроспективе это кажется безупречным проектом, на который способен был лишь Интернет. Но тогда не было ни Netscape, ни Java, ни единого устоявшегося взгляда на то, чем Интернет позже станет. Торговля акциями Netscape началась в августе 95-го, скачок Java пришёлся на следующий год. В тот же год случился феномен под названием Windows. К тому времени, Люси уже забрала мяч и сообщество разработчиков под Windows прекрасно понимали, что Microsoft сама заведует всеми перспективами платформы Windows. Теми перспективами, что они могли отобрать в любой момент.

У Intel было много толковых ребят. И я подчеркиваю: очень умных. Та идея, связать коммуникации с вычислительной мощностью, всё это в обертке платформы для совместной работы она была у всех на уму. Вывели и маркетинговую формулу, которая всё это объясняла. Эта формула и объясняет почему бархатная перчатка и в какую сторону устремилась Microsoft.

Она была названа Уравнение Продуктивности Красиво. И звучит примерно так: продуктивность равна интеграции вычислений с коммуникациями, вычислительной информацией (данные, документы, сообщения) и сотрудническим обменом.

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

Несомненно, мы живем в мире животрепечущем о всё более высокой эффективности и инновациях во благо продуктивности. Доступ к вычислительной информации жизненно необходим. Но это и мир где МНОГИМ программам нужно работать с теми же самыми данными. Аспект этого высказывания нужно многим программам и есть причина, по которой мы вновь видим бархатную перчатку.

Давайте разъясню. Данные из уравнения не программозависимы. Данные можно перемещать (спасибо, SQL). Многие программы имеют к ним доступ. Если бы программы для данных имели контроль над их информацией, то Oracle бы рулила облачными вычислениями.

Часть вторая


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

Конечно, Oracle бы с радостью воспользовались их программозависимыми данными, чтобы стать империей облачных вычислений. Но они и близко не стояли по сравнению с Microsoft и их железной хваткой над документами, которые для Office родные.

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

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

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

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

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

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

ИМХО, весь тот прогресс в ИИ, который проделали Google, SalesForce и IBM, каким бы потрясающим он не был, даже близко не стоял с Microsoft. В конце концов вся красота переписки в Slack падет, как только предстанет перед, еле того достойной, версией MS Teams, но которая будет снабжена документами.

Бегемоты Кремниевой Долины могут хоть запридумываться новыми видами программ и их функционалом. Но пока они не дотянутся до миллиардов документов, которые завязаны на программы Microsoft, до тех пор будущее облачных вычислений будет принадлежать Редмонду. И даже сказочное преимущество первопроходца не сможет пошатнуть ту силу, которую представляет из себя контроль над вычислительными данными.

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

Смотрите сами: феномен облачных вычислений, как программная платформа, начал набирать обороты с выходом Google gMail и SalesForce.com. Подумать только, какая у них была фора, сколько времени! И когда iPhone вышел в свет в 2007г., началась гонка в облака. AWS появляется из ниоткуда и предоставляет отдельным разработчикам огромную вычислительную мощь в облаке.

В отчете за 2014г. Gartner Magic Quadrant записали Apple как облачного провайдера 1. Номером два был DropBox, за ним следовали Google, SalesForce, и Box. Баллмер [Steve Ballmer] уходит в феврале 2014-го, после ужасного многомиллиардного приобретения: коммуникационного гиганта Nokia. Тут бархатная перчатка перенимает и Office 365 становится доступным внутри империи iPhone. С Apple всё выглядит хорошо. А Windows не очень. DropBox, SalesForce и Box помчались за лицензией Office 365. Они жаждали сыграть с Люси в её рулетку [русскую рулетку]. И бархатная перчатка приняла их с распростертыми объятиями.

Далее проиcходило невероятное. С выпуском Office 365, вся монополия Microsoft начинает одно из величайших преобразований в компьютерной истории; переход их информации и программ с платформы Windows в Azure облако Office 365. Первым телодвижением бархатная перчатка устанавливает за собой владение над программозависимыми документами, чтобы перевести все столпы монополии с её системами в бизнесах и корпорациях.

2018-й год Magic Quadrant почти полностью закрепляет за двумя компаниями: Amazon и Microsoft. Четыре коротких года и развязка этого действа уже в поле зрения.[2] Google бьется с их классными и многообещающими ИИ, автоматизацией сообщений и бизнеса всё дальше об стену. Но дело не сдвигается с мертвой точки. Они остаются висеть на ниточке облачных вычислений. Остальные же лидеры облачных вычислений без конца изобретают вдохновляющие и фантастические программные возможности и перспективы, между тем Microsoft так же держит железный кулак над теми документами и информацией, которая нужна их конкурентам.

Часть третья


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

В 2018-м рост облака Microsoft оценивали в 18 млрд. долларов в год. Год спустя, оценка роста подписок в год исходила от ошеломляющих 33 млрд. долларов. Всё это и дальше экспоненциально устремляется ввысь.

Понимание сей новости[0] заключается в том, что разработчики c GitHub получат доступ к массивам вычислительной информации из облака Microsoft. А без этого никак, согласен. Но пока не перепрыгул, запомни: Люси тебе не друг. Бархатная перчатка отлично сидит на железной руке. И все перспективы, о которых мечтаешь, в которые вливаешься всеми силами и душою, твоими навыками и деньгами? Что ж, они принадлежат Microsoft. Опять.

Тебя отблагодарят.

~ge~

Конец

Сноски
[0] Microsoft? Oh it's just another partnership, insists GitHub CEO The Register, 24.05.2019

[1] В оригинале: But using Nat as bitch bait is a bit much. Нат, как парень, кто до непристойности легко, втирается в доверие девушкам. В данном случае эту черту эксплуатирует. наверх

[2] and the end game is in sight. End game это устоявшийся сленговое выражение, которое не столько буквальное финал и заключение, а как последняя фаза действия, цель, со стороны возможно непонятной, тактической игры. Перевод названия фильма Avengers: Endgame не воспроизводит всю эту глубину термина. наверх

Исторический контекст и примечание

Об авторе и истории:


Эта статья была оставлена год назад в виде комментария под новостной статьей о том, что несмотря на приобретение GitHub, Microsoft для этой компании останется как и прежде партнером.[0] Но грех бы было пройти мимо этого комментария, для меня он стал тем hidden gem, который случайно находишь в глубинах Интернета.

Интересно не оставляет обычный человек из ниоткуда вот такое вот эссе. Углубившись в поиски перед переводом я выяснил, что Гэри некоторое время состоял в Техническом Коммитете OpenDocument OASIS (как минимум 2002-2005гг.), где ковались в т.ч. форматы используемые OpenOffice в противовес всему Microsoft Office, и был волонтёром OpenOffice.org, далее, как понимаю, у него продолжилась карьера в ИТ-маркетинге (данные из презентации, стр. 3).
В 2005 году разыгралась драма нешуточных масштабов, когда американский штат Массачусеттс выдвинули идею стандартизировать OpenDocument для своего бюрократического аппарата. Разумеется, Microsoft боролась против этой затеи, что, видно, оставило след на памяти всех, кто был за открытый стандарт документов.
Officials in the state have proposed a new policy that mandates that every state technology system use only applications designed around OpenDocument file formats
Fox News, September 2005

В следствие этого конфликта, Microsoft устроили кампанию против этого стандарта/OOo, с тезисом, что формат может быть проприетарным из-за наличия каких-то лицензий или патентов от Sun, сообщение из рассылки (26.09.2005):
ODF Reciprocal License Allegation
Hi Eduardo,

Thanks for responding. Your explanation makes sense, but the shills and lackeys are off and running wild with this new discovery
that Sun has secret patents on ODF. Yes, they went full throttle, zero to sixty in under four seconds.

By next week this latest conspiracy theory will likely go the way of other myths that got some noise, and then into a vast echo
chamber that otherwise intelligent people reference in shamelessly self serving ways to justify the next conspiracy theory. I can
hear the deafening refrain now, There were so many reports that Sun had patents on ODF and that it's not really open, that you have
to stop and think.

I wrote a response to Brian Jones, and sent it to PJ for review. But the truth is, today is the first time i ever had to think
through the licensing issues. The interesting thing is that it's easy to circle false arguments, and set them spinning, even without
having a clue as to what i'm talking about :) At the end of the day they will become the fateful victims of their own wishful and
self serving exuberance. Such is life when you have no sense of integrity, trust and truth. And don't understand that when push
comes to shove, trust and truth are the only things that matter. Push came to shove in Massachusetts, and everyone got to see, up
close and personal, who they really are. Not a pretty sight. +1 Open Standards. +1 Open Source. Transparency rules.

Your arguments though have the truth of being there. Would you mind if PJ published your comments? I know that's asking a lot,
especially since there's far more at stake than needing to respond to the lies and deceits of the MS Office 12 gang. But your
response is clean, clear, and to the point. Groklaw does have one loud and booming voice. And PJ is the kind of do gooder who
doesn't like FUD. She usually does an excellent job of exposing and slamming away lies, deceits and distortions.

There is the distinct probability that things will get worse. I for one am quite surprised by the heavy handed, uncompromising take
no prisoners ferocity Microsoft has shown regarding the Massachusetts decision. ODF though is a silver bullet, and the shot Eric
Kriss and Peter Quinn took at all proprietary, platform and application bound file formats found it's mark. Finally.

The day before the final decision was made, i had a chance to speak at length with Peter Quinn. They were hoping against hope that
Microsoft would respect their decision and make the necessary accommodations to provide OpenDocument files. Sadly it was not to be,
but for sure Microsoft was given every consideration. Deserved or not.

Peter did ask if i would participate in his panel discussion session at the upcoming NACIO conference in San Diego. They expect
excellent attendance from every state. He's trying to get someone from Microsoft, but so far they are refusing to participate. So i
asked him if it would be okay if showed up with a few hundred OpenOffice.org CD's to pass out. He told me i would need more than that
:) Apparently the line behind Massachusetts is both long and ready.

I also asked if he and Eric would kindly autograph my copy of the OASIS OpenDocument v 1.0 specification. He said of course, but then
asked if i could get him a copy autographed by all the engineers and TC members who worked on OpenDocument. That would be a very nice
thing to do Eduardo, but could Sun help me put something like that together?

Thanks for setting things straight,

~ge~


С ссылкой на вот это очень длинное чтиво: Comments on Microsofts Letter to Massachusetts
by David A. Wheeler, October 29, 2005


Ещё есть интервью с GE, приуроченное к выходу OOo 2.0 (ноябрь, 2005): Gary Edwards: OpenOffice.org 2.0 leaping over legacy lockdown with clean XML

На письмо на эл. почту 2002 года (на yahoo) он не ответил :) Другие домены истекли, LinkedIn не пробовал, хотя он там наверняка есть.
Подробнее..

Ведение собственного бюджета в Excel проще чем два файла перебрать

06.02.2021 10:17:52 | Автор: admin
В первой части я описал основные принципы и подходы к своему бюджету. Можно вечно рассуждать много или мало я зарабатываю, на что именно трачу деньги, какие управленческие решения принимаю из таблицы учёта, и удобен ли Excel вообще для этого. Но это все-таки технический блог. Поэтому вторая часть будет посвящена технической стороне моего бюдж учёта финансов.
image

Вкратце напомню, как ведётся учёт сегодня, если уважаемый читатель не ознакомлен с первой частью. После нескольких месяцев проб и ошибок, было решено перейти к системе из трёх основных файлов:
  1. Файл DATA. Сюда вносятся все записи расходов-доходов. По сути, это самый важный файл всей системы, он регулярно бекапится и дублируется. Потому что формулы то я восстановлю, а вот чеки могут выгореть. В этом же файле хранятся категории расходов (ибо вносятся в таблицу расходов), типы счетов, виды расчётов и другая служебная часть. Здесь же считаются остатки по каждому счету, т.к. файл имеет минимум вычислений и загружается мгновенно.
  2. Файл BUDGET. Содержит в себе минимальные вычисления, показывает общий баланс и пару графиков. Используется для быстрой проверки гипотез, имеет небольшой вес, запускается быстро. Аналитики почти не включает, все выводы делаются самостоятельно.
  3. Файл BUDGET PRO. Вот здесь хранятся все вычисления, графики, таблички и прочая интересная математика. Прямо сейчас в книге 11 страниц, 9 сводных таблиц, 8 диаграмм, 17152 формул и много чего еще. VBA все еще не используется.
Каждый файл имеет свои тесты и зеркала. Но об этом чуть ниже.

DATA


Основой DATA является таблица с записями расход-доходов. Таблица состоит из
||Счёт||Категория||Сумма||Тип оплаты||Как оплачено||Дата||Что покупалось||Где покупалось||. Формул в таблице нет, но есть подсказки. Например, Счёт, Тип оплаты и Как оплачено можно выбрать из выпадающего списка. Счета подтягиваются из таблицы счетов, остальное из служебных таблиц. Сумма всегда указывается положительная. Категории не выбираются из списка (т.к. их слишком много) но там есть своя фича. В каждой новой строке категория проверяется на соответствие таблице Категорий и, если такой нет, ругается. На языке Excel это называется Проверка данных и позволяет исключить опечатки, ошибки склонений и другие сюрпризы. В принципе, можно настроить Проверку данных ещё и на Сумму или Дату покупки, но здесь проблем меньше.
Лайфхак
В прошлый раз спрашивали как вносить длинные чеки. Открыл для себя комбинацию клавиш CTRL+D копирует ячейку выше. Нажимаем несколько раз, и на новую запись мне нужно внести только Категорию, Сумму и Что покупалось. Нет ничего проще.

Служебные таблицы и таблицу Категорий расписывать не буду, тут вроде всё понятно. Давайте сразу к таблице счетов. ||Название||Валюта||Вид счёта||Начальный баланс||Текущий остаток|| ничего лишнего, все очень просто. Вид счёта тянется из служебной таблички (Наличные, Валюта, Эл. кошелёк и другие) и выбирается из списка, валюта пока используется как есть. Не исключаю таблицу с валютами при увеличении их количества, но пока не требуется. Было интересно сколько рублей живёт в валюте, начал искать возможность получать курсы автоматом с сайта ЦБ. Пока остановился на формуле
Формула курсов
=ФИЛЬТР.XML(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ВЕБСЛУЖБА("http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1="&ТЕКСТ(СЕГОДНЯ();"ДД.ММ.ГГГГ")&"&date_req2="&ТЕКСТ(СЕГОДНЯ();"ДД.ММ.ГГГГ")&"&VAL_NM_RQ=R01239");".";",");"=""1,0";"=""1.0");"//ValCurs//Record//Value")

Не самое изящное решение, но достаточно простое. Готов к другим вариантам, готов к обсуждению. Хочу простую формулу чтобы получать текущий курс от ЦБ и дальше уже работать с ним, памяти не надо, графиков и вот этого всего тоже. Только курс прямо сейчас.
Текущие остатки считаются тоже очень просто: Доход Расход + Перевод на Перевод с. Ну и плюс Начальный баланс, конечно же.
Формула остатков
=СУММЕСЛИМН(records[Сумма];records[Счет];[@Счёт];records[Тип];"Доход")-СУММЕСЛИМН(records[Сумма];records[Счет];[@Счёт];records[Тип];"Расход")+СУММЕСЛИМН(records[Сумма];records[Счет];[@Счёт];records[Тип];"Перевод на")-СУММЕСЛИМН(records[Сумма];records[Счет];[@Счёт];records[Тип];"Перевод с")+[@[Начальный баланс]]

Благодаря тому что таблица с записями и таблица счетов размечены как таблицы, а не массив данных формула универсальна для любой строки. При добавлении нового счёта, все формулы будут добавлены автоматически, от меня требуется только указать Вид счета и Валюту. Да и то, первый выбираю из готового выпадающего списка.
Лайфхак
Ещё пара слов про валюты и курсы. Так вышло что я очень много перевожу денег между своими счетами. Поэтому, помимо записей типа Расход/Доход существуют ещё Перевод с/Перевод на. Позже, это оказалось весьма эффективным при покупке валюты. Сейчас я сразу вижу сколько валюты купил, сколько на нее потратил и могу даже посчитать свой средний курс.


Недостатки DATA


Самый большой сейчас недостаток курсы валют. По воскресеньям ЦБ не публикует курсы, поэтому формула отдаёт ошибку. Чтобы побороть её надо переписать формулу. В поисках вдохновения или подсказок.
Второе непонятно что делать с закрытыми счетами. Удалять их из таблицы счетов неправильно, тогда и таблица записей сломается. Болтаться им в общей таблице счетов тоже не к месту. Фильтр скрывает их, но не решает проблемы. Создавать отдельную таблицу с закрытыми счетами тоже не очень. В пассивном поиске решения.
Ну и самое странное для меня при операциях с финансами, Excel начинает считать суммы типа 0,999999999999999999999 вместо 1, E-12, -0 и другие. Форматирование как денежный тип данных решает отображение ячеек, но в формулах такие значения ломаются. Например, 0,00-(-2,27374E-13) не считается как равное нулю, хотя и является таковым. И таких ошибок все больше и больше в моих таблицах.
Лайфхак
Вместо тестовых счетов и записей очень эффективно оказалось тестирование пустыми данными. Служебные таблицы остаются не тронутыми, а таблица записей и таблица счетов вычищаются полностью. Такое простое решение позволило мне исправить несколько существенных ошибок.


BUDGET


Как я уже говорил, BUDGET содержит в себе минимальные вычисления. Если не нужна аналитика, но хочется посмотреть какие-то существенные вещи открывается этот файл. Прямо сейчас здесь всего 3 листа: таблица записей, общий баланс (формальный остаток) + распределение денег по счетам и график движения в периоде. Практически весь файл считается и обновляется автоматически, я его только просматриваю. Ну и дорабатываю, но это не относится к финансам.
Изначально, в файл BUDGET через PowerQuery подгружаются таблица Счетов и таблица Записей. При этом, таблица Счетов практически не обрабатывается: сортировкой по сумме остатка можно пренебречь, да и спорное это решение. Чуть ниже расскажу зачем я это сделал. Таблица Записей же обрабатывается сильнее. Для начала, все записи сортируются по дате операции. Потому что записи вносятся не всегда сразу, не в хронологическом порядке, сортировка записей в DATA выполняется от случая к случаю. Поэтому, для контроля, мне проще сортировку выполнять при первичной обработке. Вторым этапом меняется столбец Суммы операции с числового на валютный. Столбец Даты операции сам хорошо распознается как дата, остальные столбцы размечены как текстовые. В третий этап добавляется столбец с индексом записей и в таком виде таблица выгружается на лист. Справедливости ради, к таблице Записей в BUDGET я практически не обращался, в основном работаю с ней в DATA.
Лайфхак
В определённый момент было решено сортировку по индексу делать в обратном порядке. Таким образом, последние операции у меня всегда вверху таблицы, это оказалось банально удобнее.

График движения


График движения тоже максимально прост. Собирается сводная таблица по общему обороту в разрезе типов операции за каждый месяц. На основе этой таблицы строится график. На графике сразу же видно когда расходы превышали доходы, когда покупалось много валюты, какие вообще объёмы движения денег за определённый месяц. При желании, с графика можно убрать переводы и смотреть только на отношение доходов к расходам. Но меня все устраивает.
Лайфхак
В Excel есть обычные горизонтальные графики и графики с накоплениями. Из каждого из них можно делать свои выводы или управленческие решения. Мне ближе оказались обычные графики, здесь каждый может выбрать для себя.

Таблица счетов


Ну и пожалуй самый важный лист в этом файле Счета. Но и здесь не очень много анализа. Как я уже говорил, таблица Счетов практически без изменений подгружается на лист из DATA. Чтобы мне не мешали лишние данные, несколько столбцов сразу же скрываются, например Начальный остаток и Валюта. Казалось бы, зачем их сперва подгружать, а затем прятать? Дело в том, что эти столбцы участвуют в вычислениях. Поэтому, они все равно нужны, хоть я и не хочу их видеть.
Лайфхак
Пока таблица Счетов была статична обозначение валюты стояло приколоченным к каждой ячейке. Но после включения сортировки пришлось искать другой способ. И дело было даже не столько в самом символе валюты, скорее в общем формате. Победить обе проблемы получилось через условное форматирование по формуле. Если валюта в таблице указана как RUR, формат ячейки показывается как 0,00 . Аналогично и для других валют.

На основании Текущих остатков таблицы Счетов строится круговая диаграмма распределения денег. Таким образом, я сразу же вижу на каком счёте какая часть денег находится. Для этого и понадобилось сортировать таблицу Счетов по Текущему остатку части диаграммы тоже отсортированы по возрастанию, а не в хаотичном порядке.
Кроме того, в отдельных ячейках считается весь текущий остаток в разрезе валют. Это нужно для понимания сколько у меня денег вообще в данный момент. Формула максимально простая: =СУММЕСЛИ(accounts[Валюта];"RUR";accounts[Текущий Баланс])
Лайфхак
Когда я начал замечать что где-то расчёты не совпадают, решил сам себя перепроверить. Так, рядом с суммой текущего остатка по таблице Счетов появились суммы текущего остатка по таблице Записей. Сравнить глазами три пару чисел не так сложно. Ну или можно добавить ещё условного форматирования.

Немного аналитики имеется и на этом листе. Здесь считаются Доходы в текущем месяце/году, Расходы в текущем месяце/году и выводятся балансы на начало месяца/года. Это позволяет с первого взгляда понять сколько я заработал за год, сколько я могу потратить чтобы не уйти в минус или сделать другие выводы. Не скажу что я всегда придерживаюсь этих данных, но не зря же они высчитываются :-)
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru