Как стать автором
Обновить
108
0
Николай @gorl

Пользователь

Отправить сообщение

Прекратите клепать базы данных

Время на прочтение15 мин
Количество просмотров62K

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

Эти фичи явственно смахивают на внутренние механизмы баз данных. Действительно, в любом достаточно сложном клиентском приложении программисту непременно придётся реализовывать такое множество фич для управления данными, что эта работа будет напоминать построение предметно-ориентированной базы данных. Такая дополнительная сложность удваивается в каждом проекте, над которым мы работаем, поэтому приходится тратить время на решение бизнес-проблем, а радовать пользователя – уже как успеем.

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

Читать далее
Всего голосов 49: ↑43 и ↓6+37
Комментарии45

Простыми словами о преобразовании Фурье

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров1M
Я полагаю что все в общих чертах знают о существовании такого замечательного математического инструмента как преобразование Фурье. Однако в ВУЗах его почему-то преподают настолько плохо, что понимают как это преобразование работает и как им правильно следует пользоваться сравнительно немного людей. Между тем математика данного преобразования на удивление красива, проста и изящна. Я предлагаю всем желающим узнать немного больше о преобразовании Фурье и близкой ему теме того как аналоговые сигналы удается эффективно превращать для вычислительной обработки в цифровые.

image (с) xkcd

Без использования сложных формул и матлаба я постараюсь ответить на следующие вопросы:
  • FT, DTF, DTFT — в чем отличия и как совершенно разные казалось бы формулы дают столь концептуально похожие результаты?
  • Как правильно интерпретировать результаты быстрого преобразования Фурье (FFT)
  • Что делать если дан сигнал из 179 сэмплов а БПФ требует на вход последовательность по длине равную степени двойки
  • Почему при попытке получить с помощью Фурье спектр синусоиды вместо ожидаемой одиночной “палки” на графике вылезает странная загогулина и что с этим можно сделать
  • Зачем перед АЦП и после ЦАП ставят аналоговые фильтры
  • Можно ли оцифровать АЦП сигнал с частотой выше половины частоты дискретизации (школьный ответ неверен, правильный ответ — можно)
  • Как по цифровой последовательности восстанавливают исходный сигнал


Я буду исходить из предположения что читатель понимает что такое интеграл, комплексное число (а так же его модуль и аргумент), свертка функций, плюс хотя бы “на пальцах” представляет себе что такое дельта-функция Дирака. Не знаете — не беда, прочитайте вышеприведенные ссылки. Под “произведением функций” в данном тексте я везде буду понимать “поточечное умножение”

Итак, приступим?
Всего голосов 203: ↑192 и ↓11+181
Комментарии188

Насколько круто иметь свой сервер в комнате

Время на прочтение6 мин
Количество просмотров111K

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

Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Читать дальше →
Всего голосов 148: ↑147 и ↓1+146
Комментарии313

SOHO UPS в маленьком корпусе и своими руками. Менее чем за 1500 руб

Время на прочтение6 мин
Количество просмотров58K

Хотите обеспечить бесперебойное питание своим устройствам, но при этом не сильно потратиться? Именно такой своей разработкой я и хотел с вами поделиться.

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

А что если сделать такой источник бесперебойного питания, который можно поставить прямо рядом с защищаемым устройством – лёгкое, компактное, недорогое?
Читать дальше →
Всего голосов 121: ↑119 и ↓2+117
Комментарии172

Анастасия Тихонова: «Нам крупно повезло, что атаки APT пока еще не привели к массовым человеческим жертвам»

Время на прочтение13 мин
Количество просмотров16K


У нас новый проект: начиная с этого поста мы будем знакомить вас с профессиями и ведущими специалистами Group-IB, расскажем об их работе, исследованиях и кейсах, о том, как и где можно пройти обучение и, конечно, дадим ссылку на актуальные вакансии. Первый гость — Анастасия Тихонова, ее интервью мы даем прямой речью и, что называется, без купюр.
Читать дальше →
Всего голосов 22: ↑16 и ↓6+10
Комментарии31

Тайны файла подкачки pagefile.sys: полезные артефакты для компьютерного криминалиста

Время на прочтение8 мин
Количество просмотров77K


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

В этой статье Павел Зевахин, специалист Лаборатории компьютерной криминалистики Group-IB, рассказывает о том, какие данные можно обнаружить в ходе криминалистического исследования в файлах подкачки Windows.
Читать дальше →
Всего голосов 35: ↑35 и ↓0+35
Комментарии21

1. Group-IB. Комплексная защита сети. Архитектура TDS

Время на прочтение7 мин
Количество просмотров8K


Добрый день, коллеги! Сегодня начинаем новый цикл статей, посвященный решениям информационной безопасности от компании Group-IB. Компания работает на рынке информационной безопасности уже более 17 лет и за это время обросла весьма существенными компетенциями, выполняя проекты не только на территории России и стран СНГ, но и на международном рынке. Направление по защите инфраструктуры от сложных целевых атак закрывает комплекс Group-IB Threat Detection System (TDS), состоящий из нескольких различных модулей. Решение специализируется на защите корпоративной и технологической сетей и, главным образом, нацелено именно на противодействие современным атакам. В данной статье рассмотрим архитектуру и функциональные возможности всего комплекса.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии1

Попытки начать обучение ребенка программированию с Minecraft pocket edition

Время на прочтение5 мин
Количество просмотров57K


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

Всего голосов 59: ↑56 и ↓3+53
Комментарии103

Схемы хищений в системах ДБО и пять уровней противодействия им

Время на прочтение12 мин
Количество просмотров13K
image

В мае этого года Управлением «К» МВД России при содействии компании Group-IB был задержан 32-летний житель Волгоградской области, обвиняемый в хищениях денежных средств у клиентов российских банков при помощи фальшивого приложения для интернет-банкинга, на деле оказавшегося вредоносной программой — Android-трояном. Ежедневно с его помощью у пользователей похищали от 100 000 до 500 000 руб., часть украденных денег для дальнейшего обналичивания и сокрытия мошеннической деятельности переводилась в криптовалюту.

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

Заинтересовавшись возможностями финансового агрегатора, клиенты банков скачивали приложение «Банки на ладони» и вводили данные своих карт. Запущенный троян отправлял данные банковских карт или логины/пароли для входа в интернет-банк на сервер злоумышленникам. После этого преступники переводили деньги на заранее подготовленные банковские счета суммами от 12 000 до 30 000 руб. за один перевод, вводя SMS-код подтверждения операции, перехваченный с телефона жертвы. Сами пользователи не подозревали, что стали жертвами киберпреступников, — все SMS-подтверждения транзакций блокировались.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии21

Безопасность Microsoft Office: форматы документов

Время на прочтение14 мин
Количество просмотров13K
Всем привет!
Этой статьей мы открываем цикл, посвященный исследованию безопасности компонентов Microsoft Office. Речь в материале пойдет о форматах данных, шифровании и получении символов.
Когда в компании Microsoft задумывался и разрабатывался масштабный пакет офисных программ Microsoft Office, вероятно, создатели надеялись на успех. Сложно сказать, могли ли они рассчитывать на его триумфальное шествие по миру впоследствии, на то, что продукт станет фактическим стандартом, а существование его растянется на десятилетия. Однако можно уверенно утверждать, что массивность приложений, количество человеко-часов, затраченных на создание, развитие, поддержку обратной совместимости компонентов продукта способствовали появлению «тяжелого наследия» в виде устаревшего, написанного десятилетия назад программного кода, составляющего ядро приложений даже в последних версиях пакета. Требования, которые предъявлялись к коду двадцать лет назад, изменились. Сегодня во главу угла ставится кроссплатформенность, масштабируемость и безопасность. При этом, расходы на значительные изменения в продукте таковы, что Microsoft предпочитает подход «не сломано – не трогай», и старательно обеспечивает обратную совместимость с самыми древними форматами документов. Не обходится и без определенного давления со стороны коммерческих и государственных структур, которые также медленно и неохотно обновляют свои технологические парки, предпочитая привычные средства в ущерб развитию и безопасности.

Покопавшись в дебрях обработчиков файлов Microsoft Office, мы готовы представить вам это небольшое исследование.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии12

Баг компилятора? Линкера? Нет, баг ядра Windows

Время на прочтение8 мин
Количество просмотров38K
imageГейзенбаг — это худшее, что может произойти. В описанном ниже исследовании, которое растянулось на 20 месяцев, мы уже дошли до того, что начали искать аппаратные проблемы, ошибки в компиляторах, линкерах и делать другие вещи, которые стоит делать в самую последнюю очередь. Обычно переводить стрелки подобным образом не нужно (баг скорее всего у вас в коде), но в данном случае нам наоборот — не хватило глобальности виденья проблемы. Да, мы действительно нашли баг в линкере, но кроме него мы ещё нашли и баг в ядре Windows.

В сентябре 2016 года мы стали замечать случайно происходящие ошибки при сборке Хрома — 3 билда из 200 провалились из-за крэша процесса protoc.exe. Это один из бинарников, который при сборке Хрома сначала собирается сам, а затем запускается для генерации заголовочных файлов других компонентов. Но вместо этого он падал с ошибкой «access violation».
Читать дальше →
Всего голосов 146: ↑145 и ↓1+144
Комментарии32

По следам CyberCrimeCon 2017: Тенденции и развитие высокотехнологичной преступности

Время на прочтение9 мин
Количество просмотров9.5K
Десятого октября в Москве прошла ежегодная конференция Group-IB CyberCrimeCon 2017. В этом году эксперты отрасли — специалисты по кибербезопасности из банковской сферы, Интерпола, полиции Европы — обсуждали новые цели хакеров, говорили об эволюции атак и изучали практические кейсы.

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

Всего голосов 18: ↑17 и ↓1+16
Комментарии2

По следу Cobalt: тактика логической атаки на банкоматы в расследовании Group-IB

Время на прочтение13 мин
Количество просмотров42K
image

В июле 2016 года работа First Bank, одного из крупнейших банков Тайваня, была парализована. Банк столкнулся с масштабной атакой: люди в масках одновременно опустошили три десятка банкоматов на $2 млн. Полиция терялась в догадках: на корпусах банкоматов не было ни следов взлома, ни накладных устройств — скиммеров. Злоумышленники даже не использовали банковские карты.

Как все происходило, зафиксировали видеокамеры: люди в масках подходили к банкоматам, звонили по мобильному — банкомат выдавал деньги, преступники складывали их в рюкзаки и убегали. После такого масштабного налета восемь крупнейших банков страны приостановили выдачу наличных в 900 банкоматах.

То, с чем столкнулся First Bank, называется логической атакой. Ее суть в том, что киберпреступники получают доступ к локальной сети банка и из нее устанавливают полный контроль над банкоматами. Удаленно они получают команду на выдачу денег. Сообщники взломщиков — “мулы” — забирают деньги и передают их организаторам атаки. Таким образом Cobalt — самая активная и опасная преступная группа — меньше чем за год атаковала банки в двух десятках стран мира.
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии17

Аппаратные или программные блокираторы записи — что надежнее?

Время на прочтение14 мин
Количество просмотров14K

Являются ли аппаратные блокираторы записи более надежными по сравнению с программными?


Предисловие


Проведение криминалистических исследований при расследовании инцидентов информационной безопасности, производство судебных экспертиз и многие другие направления деятельности, связанные с компьютерной криминалистикой, требуют максимально возможного сохранения целостности исследуемых данных. Для этого используются блокираторы записи — программы или устройства, не позволяющие записать что-либо на исследуемый накопитель. Необходимость применения таких средств происходит как из требований процессуального законодательства (например, УПК РФ), так и из различных рекомендаций методического и иного характера, а также из стандартов (например, СТО БР ИББС-1.3-2016). Некоторые аспекты функционирования блокираторов записи и будут рассмотрены в настоящей статье.


Один из ранних аппаратных блокираторов записи (2002 год)
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии9

Недокументированные возможности Windows: точки остановки для ключей реестра

Время на прочтение3 мин
Количество просмотров13K
Иногда в процессе обратной разработки какой-либо программы (в том числе драйвера) может потребоваться прервать ее исполнение в момент совершения некоторого действия с определенным ключом реестра, в такой ситуации можно воспользоваться недокументированной функциональностью точек остановки для ключей реестра.

Впервые точки остановки для ключей реестра появились в Windows XP, где была реализована возможность исполнения ядром инструкции int 3 при открытии ключа реестра с пометкой (отладочным флагом) BREAK_ON_OPEN или при создании подключа в составе такого ключа.
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии4

Недокументированные возможности Windows: скрываем изменения в реестре от программ, работающих с неактивным реестром

Время на прочтение6 мин
Количество просмотров19K
Можно ли создать такой ключ реестра, который будет виден в Windows в составе активного (подключенного) реестра, но не будет виден программам, работающим с неактивным (отключенным) реестром? Оказывается, если у вас есть возможность изменить лишь одну переменную ядра (например, с помощью драйвера), то да, способ есть.
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии10

Безопасность средств безопасности: СКУД

Время на прочтение42 мин
Количество просмотров50K

Дисклеймер


Материалы, приведенные ниже, несут исключительно научно-исследовательский характер. Данное исследование проводилось автором исключительно в научно-исследовательских целях, его результаты не являются и не могут признаваться руководством к совершению каких-либо противоправных действий. При проведении исследования автор действовал в рамках законодательства Российской Федерации. Использование результатов исследования допускается исключительно в научно-ознакомительных целях. Использование результатов исследования для достижения противоправного или любого иного от научной деятельности результата может повлечь за собой уголовную, административную и (или) гражданско-правовую ответственность. Автор не несет ответственность за инциденты в сфере информационной безопасности, имеющие отношение к тематике исследования.

Вступление


Все привыкли выделять деньги на обеспечение безопасности компании, внедрять готовые решения и считать, что эти готовые решения полностью закрыли те или иные риски. Рынок предлагает комплекс различных решений от разных компаний-производителей, поэтому у покупателя есть широкий выбор аппаратных средств безопасности и ПО для управления ими. Вот именно об информационной безопасности такого ПО и пойдёт речь. Сегодня поговорим о системах контроля и управления доступом (СКУД).


Читать дальше →
Всего голосов 26: ↑21 и ↓5+16
Комментарии5

Как крадут деньги, которых нет. Или кое-что новенькое о криптовалютах

Время на прочтение7 мин
Количество просмотров44K
Привет, Хабр!

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

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

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

Кстати, финансовые регуляторы считают биткойн и всех его друзей валютными суррогатами, и мы ни в коем случае не пропагандируем их использование, а наоборот, призываем пользоваться фиатными деньгами как надёжным и стабильным платёжным инструментом. (Тут мог бы быть смайл)
Читать дальше →
Всего голосов 23: ↑19 и ↓4+15
Комментарии30

Технический отчет о деятельности преступной группы, занимающейся целевыми атаками — Anunak

Время на прочтение17 мин
Количество просмотров63K
Во второй половине 2014 года мы уже неоднократно упоминали про целевые атаки на крупные финансовые учреждения как новую ступень мошенничества. Ведь теперь денежные средства похищают не у «мелких юрлиц», а у крупных финансовых компаний, в которых, казалось бы безопасность должна быть на высшем уровне и сложность совершения преступления приближается к «Hell». Однако, учитывая не стихающий поток подобных преступлений, а также особую актуальность на фоне текущего финансового состояния страны, мы решили обновить пост и добавить новых подробностей касательно группы Anunak, которая использует одноименного трояна, также известного как Carbanak. Название Carbanak происходит от склейки двух слов Anunak+Carberp.

Краткий экскурс


После задержаний членов группы Carberp в России, некоторые участники остались без работы, однако, полученный за долгие годы работы опыт позволил им занять новую нишу. Один из участников быстро понял, что можно украсть тысячу раз по $2 000 и заработать 2 миллиона долларов, а можно украсть всего лишь один раз и сразу всю сумму.

С 2013г. активизировалась организованная преступная группа, нацеленная на банки и электронные платежные системы России и пост советского пространства. Особенностью является то, что мошенничество происходит внутри корпоративной сети, с использованием внутренних платежных шлюзов и банковских систем. Таким образом денежные средства похищаются не у клиентов, а у самих банков и платежных систем. Если доступ был получен злоумышленниками в сеть государственного предприятия, то целью злоумышленников является промышленный шпионаж.

Основной костяк преступной группы составляют граждане России и Украины, однако есть лица, оказывающие им поддержку из Белоруссии.
Читать дальше →
Всего голосов 81: ↑71 и ↓10+61
Комментарии20

Чтобы распознавать картинки, не нужно распознавать картинки

Время на прочтение18 мин
Количество просмотров236K
Посмотрите на это фото.



Это совершенно обычная фотография, найденная в Гугле по запросу «железная дорога». И сама дорога тоже ничем особенным не отличается.

Что будет, если убрать это фото и попросить вас нарисовать железную дорогу по памяти?

Если вы ребенок лет семи, и никогда раньше не учились рисовать, то очень может быть, что у вас получится что-то такое:
Осторожно, тяжелые гифки
Всего голосов 263: ↑258 и ↓5+253
Комментарии104

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность