» Материалы за Июль 2019 года

 

Неслучайный генератор случайных одноразовых кодов Тинькофф банка

Автор: admin от 31-07-2019, 18:35, посмотрело: 40

Совершая очередную транзакцию в моем любимом банке Тинькофф, получил уже привычное сообщение:



Никому не говорите код: 3131! Перевод с карты ****. Сумма ***.00 RUB


Если будут спрашивать — я вам его не говорил.



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

Категория: Информационная безопасность

 

Cascadeur: будущее игровой анимации

Автор: admin от 31-07-2019, 17:20, посмотрело: 32

Cascadeur: будущее игровой анимации



Всем привет! Мы — студия разработки Banzai Games. Рады наконец открыть здесь свой блог. Будем писать о наших технологиях, проектах и делиться историями из жизни компании. Первый материал — перевод интервью с основателем студии Евгением Дябиным, которое он дал коллегам из издания 80lv. В нем он рассказал о нашей программе для создания physics-based анимации Cascadeur и ее преимуществах перед mocap-анимацией.

Категория: Game Development

 

Еще одно мнение о разнице между bin, sbin, usr/bin, usr/sbin

Автор: admin от 31-07-2019, 16:35, посмотрело: 34

Недавно я обнаружил вот такую статью: Разница между bin, sbin, usr/bin, usr/sbin. Хотелось бы поделиться своим взглядом на стандарт.



/bin



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



Там ожидается присутствие таких команд:



cat, chgrp, chmod, chown, cp, date, dd, df, dmesg, echo, false, hostname, kill, ln, login, ls, mkdir, mknod, more, mount, mv, ps, pwd, rm, rmdir, sed, sh, stty, su, sync, true, umount, uname.



Можно сделать симлинки на /usr, но хотя во времена systemd /usr на отдельном устройстве не встречается, его еще можно встретить на встраиваемой системе, светофоре, кофемолке и PDP-11 обслуживающем важный прибор в одной из лабораторий Академии Наук.



/sbin



Утилиты, используемые для системного администрирования (и другие команды только для root), /sbin содержит двоичные файлы, необходимые для загрузки, восстановления, восстановления и/или восстановления системы в дополнение к двоичным файлам в /bin. Программы, выполняемые после того, как /usr монтируется (когда проблем нет), обычно помещаются в /usr/sbin. Локально установленные программы системного администрирования должны быть помещены в /usr/local/sbin.



Ожидаются:



fastboot, fasthalt, fdisk, fsck, getty, halt, ifconfig, init, mkfs, mkswap, reboot, route, swapon, swapoff, update.



Один из способов защиты системы от шаловливых рук юзеров — это запрет запуска этих утилит кому-попало, утсановкой атрибута x.

К тому же, замена /bin и /sbin на копии из архива (одинакового для всех однотипных систем) является быстрым способом починки систем без пакетного менеджера.

Категория: Linux

 

Как приоритеты pod'ов в Kubernetes стали причиной простоя в Grafana Labs

Автор: admin от 31-07-2019, 12:25, посмотрело: 38

Прим. перев.: Представляем вашему вниманию технические подробности о причинах недавнего простоя в работе облачного сервиса, обслуживаемого создателями Grafana. Это классический пример того, как новая и, казалось бы, исключительно полезная возможность, призванная улучшить качество инфраструктуры… может навредить, если не предусмотреть многочисленные нюансы её применения в реалиях production. Замечательно, когда появляются такие материалы, позволяющие учиться не только на своих ошибках. Подробности — в переводе этого текста от вице-президента по продукту из Grafana Labs.



Как приоритеты pod'ов в Kubernetes стали причиной простоя в Grafana Labs


В пятницу, 19 июля, сервис Hosted Prometheus в Grafana Cloud перестал функционировать примерно на 30 минут. Приношу извинения всем клиентам, пострадавшим от сбоя. Наша задача — предоставлять нужные инструменты для мониторинга, и мы понимаем, что их недоступность усложняет вашу жизнь. Мы крайне серьезно относимся к этому инциденту. В этой заметке объясняется, что произошло, как мы на это отреагировали и что делаем для того, чтобы подобное больше не повторялось.

Категория: Программирование

 

Разработка надёжных Python-скриптов

Автор: admin от 31-07-2019, 12:20, посмотрело: 33

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



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



Разработка надёжных Python-скриптов



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



Автор материала, перевод которого мы сегодня публикуем, собирается продемонстрировать подобное «превращение» на примере классической задачи «Fizz Buzz Test
». Эта задача заключается в том, чтобы вывести список чисел от 1 до 100, заменив некоторые из них особыми строками. Так, если число кратно 3 — вместо него нужно вывести строку codev_0.

Категория: Веб-разработка

 

Вся правда об ОСРВ. Статья #30. Инициализация и процедуры запуска Nucleus SE

Автор: admin от 31-07-2019, 12:15, посмотрело: 28

Вся правда об ОСРВ. Статья #30. Инициализация и процедуры запуска Nucleus SE


У любой операционной системы есть определенный механизм запуска. Принцип работы этого механизма у каждой системы свой. Обычно говорят, что система загружается (англ. boot), это сокращение от «bootstrap», которое отсылает к выражению «pull oneself over a fence by one’s bootstraps» (перебраться через ограду, потянув себя за ремешки на обуви), что примерно описывает, как система самостоятельно переходит из состояния, в котором память заполнена пустотой (прим. переводчика: если совсем точно, то мусором) к стабильному выполнению программ. Традиционно в память загружается небольшая часть программы, она может храниться в ПЗУ. В прошлом она могла вводиться при помощи переключателей на передней панели компьютера. Этот начальный загрузчик считывал более сложную программу загрузки, которая уже загружала операционную систему. Сегодня настольный компьютер загружается следующим образом: код в BIOS ищет устройства (жесткие диски, CD-ROM, USB-флешки), с которых можно загрузиться, после чего загружается операционная система.



ОС для встраиваемых систем также может инициализироваться подобным образом. И в самом деле, встраиваемые операционные системы, разработанные на основе настольных операционных систем, так и загружаются. Но в большинстве «классических» ОСРВ используется гораздо более простой (а, следовательно, более быстрый) способ.

Категория: Статьи

 

Как использовать резидентные прокси для маркетинга и продвижения сайтов

Автор: admin от 31-07-2019, 12:00, посмотрело: 43

Как использовать резидентные прокси для маркетинга и продвижения сайтов



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



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



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

Категория: Windows

 

Windows Notification Facility: cамая недокументированная поверхность атаки

Автор: admin от 31-07-2019, 12:00, посмотрело: 43

Под катом представлен перевод презентации "The Windows Notification Facility: The Most Undocumented Kernel Attack Surface Yet", представленной Alex Ionescu и Gabrielle Viala на конференции BlackHat 2018.



Windows Notification Facility: cамая недокументированная поверхность атаки



Категория: Windows

 

Обзор бесплатного инструмента SQLIndexManager

Автор: admin от 31-07-2019, 11:45, посмотрело: 37

Как известно индексы играют важную роль в СУБД, предоставляя быстрый поиск к нужным записям. Потому так важно их своевременно обслуживать. Об анализе и оптимизации написано достаточно много материала, в том числе и в Интернете. Например, недавно делался обзор данной темы в этой публикации.



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



Далее рассмотрим бесплатную утилиту SQLIndexManager, автором которой является AlanDenton.

Категория: Программирование, Системное администрирование

 

Как мы дорабатываем продукт под конкретного клиента

Автор: admin от 31-07-2019, 10:40, посмотрело: 48

Как мы дорабатываем продукт под конкретного клиента




Итак, мы продали клиенту программный B2B продукт.



На презентации ему все нравилось, но в ходе внедрения выяснилось, что кое-что все-таки не подходит. Можно конечно сказать что нужно следовать “best practice”, и изменить себя под продукт, а не наоборот. Это может сработать, если у вас есть сильный бренд (например, из трех больших букв, и вы можете послать всех на три маленькие буквы). В противном случае, вам быстро объяснят, что заказчик добился всего благодаря своим уникальным бизнес-процессам, и давайте-ка, лучше меняйте свой продукт, или ничего не получится. Есть вариант отказаться и сослаться на то, что лицензии уже куплены, и с подводной лодки деваться уже некуда. Но на относительно узких рынках такая стратегия долго работать не будет.



Приходится дорабатывать.

Категория: Веб-разработка

 
Назад Вперед