Как стать автором
Обновить
51.64
Дата-центр «Миран»
Решения для аренды и размещения ИТ-инфраструктуры
Сначала показывать

Что такое SDLC? Этапы, методология и процессы жизненного цикла программного обеспечения

Время на прочтение7 мин
Количество просмотров298K
Цитируя автора книги Managing Information Technology Projects Джеймса Тейлора, «жизненный цикл проекта охватывает всю деятельность проекта». Задачей же разработки ПО является выполнение требований продукта. Если вы хотите научиться создавать и выпускать высококачественное ПО, вам придется следовать плану. Со слов Тейлора, вашей целью должен стать всесторонний анализ деятельности проекта и контроля каждого этапа его разработки. Вот только с чего именно начать?

Ответить можно так: направить ваш рабочий процесс в верном направлении поможет подходящий фреймворк. В наши дни довольно сильным и популярным фреймворком является SDLC – жизненный цикл программного обеспечения.

Принципы работы SDLC и почему им пользуются


На диаграмме ниже можно ознакомиться с шестью основными этапами SDLC.



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

GitHub запустил статический анализ кода на уязвимости

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


После обширного тестирования GitHub открыл в открытом доступе функцию сканирования кода на уязвимости. Любой желающий может запустить сканер на собственном репозитории и найти уязвимости до того, как они пойдут в продакшн. Сканер действует для репозиториев на C, C++, C#, JavaScript, TypeScript, Python и Go.

Я был неправ. Будущее за CRDT

Время на прочтение8 мин
Количество просмотров8.2K
Несколько недель назад я посмотрел презентацию Мартина Клеппмана про его подход к редактированию в реальном времени через CRDT и ощутил жгучее отчаяние. Его подход хорош настолько, что превосходит всю мою работу за последнее десятилетие, и места в будущем ей уже не видать.

Но начнем сначала.

В 2010 году я работал в Google Wave, где мы пробовали создать совместные редактируемые пространства для замены электронной почты, Google Docks, форумов, мгновенных сообщений и многих других однозадачных приложений. Среди моих инструментов мне особенно нравится среда общего назначения, нигде более как в Wave не сформулированный в то время функционал. В отличие от большинства других инструментов, среда общего назначения не навязывает собственный рабочий процесс, благодаря чему через нее можно планировать праздники, создавать вики-проекты, играть с друзьями в настольные игры, назначать рабочие собрания и много чего еще.
Читать дальше →

Как рендерится кадр DOOM Ethernal

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


Вступление


Doom Eternal не нуждается в отдельном представлении: это прямой преемник Doom 2016, разработанный благодаря седьмой итерации id Tech, внутреннего движка студии id Software. В свое время меня поразило и высокое качество визуальной составляющей Doom 2016, и простота и элегантность технических решений. В этом отношении Doom Eternal превосходит своего предшественника во многих областях, и некоторые из них достойны детального разбора. В этой аналитической статье я постараюсь обсудить их все.

Мой анализ вдохновлен трудом Adrian Courrèges про Doom 2016 (перевод). Я считаю, что подобные работы позволяют взглянуть на подходы к решению некоторых проблем рендеринга AAA-проектов и тем самым становятся превосходными обучающими материалами. В этом анализе я планирую обсудить общие особенности и не погружаться слишком глубоко в тонкости каждого способа и прохода рендеринга. Кроме того, некоторые проходы в Doom Eternal почти не отличаются от своих аналогов в Doom 2016 и уже были разобраны в труде Adrian Courrèges, поэтому я могу их пропустить.

Хочу особым образом отметить строго обучающий характер текущей статьи. Я никоим образом не поддерживаю реверс-инжиниринг продуктов с целью кражи интеллектуальной собственности или иного злого умысла. Если вы еще не успели сыграть в Doom Eternal, можете не беспокоиться: я разбирал лишь самое начало игры, поэтому спойлеры вам не грозят.

Итак, приступим.
Читать дальше →

FritzFrog — новое поколение ботнетов

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

Краткое содержание


  • Guardicore обнаружили сложный ботнет пиринговой (P2P) сети FritzFrog, который еще с января 2020 года активно взламывал SSH серверы.
  • Вредоносное ПО на Golang: FritzFrog исполняет модульный, мультипоточный и безфайловый вредоносный код на Golang, который не оставляет следов на жестком диске зараженного устройства.
  • Активное таргетирование государственных, образовательных, финансовых и прочих ресурсов: FritzFrog пытался брутфорсить и распространяться на десятках миллионов IP адресов правительственных офисов, образовательных учреждений, медицинских центров, банков и множества телекоммуникационных компаний. Среди них успешно подвержены атаке оказались более чем 500 серверов, включая известные университеты США и Европы, и одну железнодорожную компанию.
  • Сложность: FritzFrog полностью проприетарен, его имплементация P2P написана с нуля, что говорит о высоком уровне профессионализма его создателей в области разработки ПО.
  • Перехват: Guardcore Labs разработали клиентскую программу на Golang, способную перехватывать P2P соединения FritzFrog и подключаться к сети как пир.
  • Принадлежность: мы не смогли определить конкретную группу, ответственную за создание FritzFrog, однако текущий ботнет частично похож на ранее известный ботнет Rakos.

Введение


FritzFrog это очень изощренный пиринговый ботнет, который активно взламывает SSH серверы по всему миру. Благодаря своей децентрализованной структуре он распределяет контроль по всем своим узлам. В этой сети нет единой точки отказа, и пиры постоянно общаются друг с другом, чтобы поддерживать ее в устойчивом, обновляемом и постоянно активном состоянии. P2P соединение проводится через зашифрованный канал с использованием AES для симметричного шифрования и протокола Диффи-Хеллмана для обмена ключами.
Читать дальше →

Мониторинг вашей инфраструктуры с помощью Grafana, InfluxDB и CollectD

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


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

Для каждой компании значимой частью рабочего процесса является мониторинг инфраструктурных узлов, особенно при отсутствии прямого доступа для решения возникающих проблем. Более того, интенсивное использование некоторых ресурсов может быть индикатором неисправностей и перегрузок инфраструктуры. Однако мониторинг может использоваться не только для профилактики, но и для оценки возможных последствий использования нового ПО в продакшне. Сейчас для отслеживания потребляемых ресурсов на рынке существует несколько готовых к использованию решений, но с ними, тем не менее, возникают две ключевые проблемы: дороговизна установки и настройки и связанные со сторонним ПО вопросы безопасности.
Читать дальше →

IBM открыла инструмент полностью гомоморфного шифрования для Linux

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

Компания IBM опубликовала на GitHub исходный код набора инструментов FHE для Linux. Утилиты работают на платформах IBM Z и x86, поддерживаются Ubuntu, Fedora и CentOS.

Полностью гомоморфное шифрование (FHE) долгое время считалось чем-то вроде чаши святого Грааля в криптографии. Задача действительно казалась нереальной. Тип шифрования FHE предполагает манипуляции зашифрованными данными третьей стороной без возможности расшифровки самих данных или результата манипуляций.

Как такое возможно?

Intel застряла. Техпроцесс 7 нм откладывается до конца 2021 — начала 2022 года

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

Исполнительный директор Intel Боб Свон

Корпорация Intel опубликовала финансовый отчёт за II кв. 2020 года, в котором объявила об очередной задержке с переходом на техпроцесс 7 нм. Планы отложили ещё на шесть месяцев, так что теперь внедрение 7 нм планируется не раньше конца 2021-го — начала 2022 года. В сумме отставание от внутренней дорожной карты Intel выросло до 12 месяцев.

Любопытно, что Intel планировала быстро перейти на 7 нм, потому что испытывала проблемы с внедрением техпроцесса 10 нм. Некоторые аналитики высказывают мнение, что в такой ситуации можно думать о переходе сразу на 5 нм.
Читать дальше →

AMD представила 18 новых процессоров для настольных ПК

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

Процессоры 4-го поколения значительно производительнее аналогичных моделей AMD 3-го поколения, а также процессоров Intel Core (бенчмарки под катом)

Компания AMD, которая сегодня практически безраздельно владеет рынком настольных компьютеров, выпустила две новых линейки процессоров для десктопов. Это долгожданная 4000-я серия на архитектуре Zen2 (7 нм) со встроенной графикой Vega, для стандартного сокета AM4:

  • шесть AMD Ryzen 4000 G-Series
    • + три новых Athlon 3000 G-Series
  • шесть AMD Ryzen 4000 Pro
    • + три новых Athlon 3000 Pro

Читать дальше →

Опубликованы спецификации памяти DDR5

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

DDR5: по четыре чипа памяти на банк, пятый для встроенной проверки ECC (on-die-ECC)

Отмечая важную веху в развитии компьютерной памяти, ассоциация JEDEC выпустила окончательную спецификацию следующего основного стандарта памяти DDR5 SDRAM. Последняя итерация стандарта DDR4 была основой развития ПК и серверов с конца 00-х. DDR5 ещё раз расширяет возможности памяти, удваивая и пиковую скорость, и объём памяти. Железо на новом стандарте ожидается в 2021 году, причем внедрение начнется на уровне серверов, а затем просочится на клиентские ПК и другие устройства.
Читать дальше →

AMD представила серверные процессоры Ryzen Threadripper Pro, но они не будут продаваться в розницу

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


Кроме десктопного рынка, AMD всерьёз рассчитывает захватить и серверный рынок. И вот вчера компания впервые анонсировала линейку процессоров для рабочих станций под новым брендом Ryzen Threadripper Pro. Однако следует отметить, что эти процессоры будут доступны только в составе готовых систем, и соответствующие потребительские материнские платы не будут выпускаться.

Набор продуктов от AMD в течение нескольких поколений включал процессоры Ryzen Pro и Ryzen Mobile Pro, в том числе варианты с поддержкой ECC. Можно было предположить, что в то время как у Ryzen был вариант Ryzen Pro, наиболее естественным вариантом для Threadripper будет линейка EPYC. Рынок серверов и рынок высокопроизводительных настольных компьютеров/рабочих станций всегда частично перекрывались, и до этого момента, если покупателю нужен был «серверный» дизайн, с ECC и проверкой программного обеспечения, он обращался к EPYC.

Сейчас AMD меняет положение вещей, выпуская Ryzen Threadripper Pro.
Читать дальше →

Как работает первый гибридный процессор x86

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

Диаграмма вычислительной микросхемы в процессоре Intel Lakefield: одно ядро Core (Sunny Cove) и четыре ядра Atom (Tremont)

Десять лет назад ARM представила гетерогенную архитектуру многоядерных процессоров big.LITTLE с разными ядрами: одни были высокопроизводительными, а другие — энергоэффективными. Такая гибридная система позволила значительно уменьшить энергопотребление CPU во время фоновой работа приложений (то есть почти всегда). Следствием стало увеличение времени работы устройств.

В 2019 году гетерогенную архитектуру наконец-то впервые применила Intel в процессорах x86. В 2020 году на рынок выйдут два процессора Lakefield с конфигурацией 1+4 (одно ядро Core и четыре ядра Atom), пишет AnandTech.
Читать дальше →

Разбираемся в моделях кода архитектуры x64

Время на прочтение19 мин
Количество просмотров10K
«Какой моделью кода мне воспользоваться?» — часто возникающий, но нечасто разбираемый вопрос при написании кода для архитектуры х64. Тем не менее, это довольно интересная проблема, и для понимания генерируемого компиляторами машинного кода х64 полезно иметь представление о моделях кода. Кроме того, для тех, кто беспокоится о производительности вплоть до мельчайших команд, выбор модели кода влияет и на оптимизацию.

Информация по этой теме в сети, или где бы то ни было еще, встречается редко. Самым важным из доступных ресурсов является официальный х64 ABI, скачать его можно по ссылке (далее по тексту он будет упоминаться как «ABI»). Часть информации также можно найти на man-страницах gcc. Задача данной статьи — предоставить доступные рекомендации по теме, обсудить связанные с ней вопросы, а так же хорошими примерами через используемый в работе код продемонстрировать некоторые концепты.

Важное замечание: эта статья не является обучающим материалом для начинающих. Перед ознакомлением рекомендуется уверенное владение C и ассемблером, а так же базовое знакомство с архитектурой х64.
Читать дальше →

Как x86_x64 адресует память

Время на прочтение8 мин
Количество просмотров25K
Сегодня я собираюсь поговорить про адресацию памяти: один, казалось бы, небольшой, и тем не менее удивительно непростой элемент семантики команд архитектуры х86_64. В особенности хочется поговорить про команду mov и то, как через только одну эту команду х86_64 пользователю становятся доступны различные методы адресации памяти.

Я не буду говорить про остальные затрагивающие память команды (то есть, благодаря CISC, почти все остальные), команды которые пишут массивные фрагменты памяти (это о тебе, fxsave), или иные касающиеся темы вопросы (модели кода, независящий от адреса код, и бинарная релокация). Я также не буду затрагивать исторические режимы адресации или режимы, которые активны при работе процессора x86_64 не в 64-битном режиме (т.е. любые отличные от long mode с 64-битным кодом).

Некоторые ограничения


Несмотря на кошмарное наследие кодирования команд х86_64, а может и благодаря ему, у адресации памяти есть некоторые ограничения.

Начнем с хорошего:

  • На достаточно высоком уровне в архитектуре х86_64 есть всего два режима адресации.
  • Все регистры в обоих режимах адресации должны быть строго одинакового размера. Другими словами, мы не можем странным образом смешивать 64, 32 и 16-битные регистры и получать актуальный адрес — в кодировании х86_64 для подобного маневра попросту нет места.
Читать дальше →

Ближайшие события

Проблема устаревших корневых сертификатов. На очереди Let's Encrypt и умные телевизоры

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


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

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

Специалист по безопасности Скотт Хельме (Scott Helme) пишет, что основные проблемы возникнут у центра сертификации Let's Encrypt, потому что сегодня это самый популярный ЦС в интернете, а его корневой сертификат скоро «протухнет». Смена корня Let's Encrypt назначена на 8 июля 2020 года.
Читать дальше →

Зачем принтеры ставят невидимые точки на документах

Время на прочтение4 мин
Количество просмотров131K
3 июня 2017 года агенты ФБР нагрянули в дом 25-летней Реалити Леи Уиннер, которая работала в компании Pluribus International Corporation, подрядчике АНБ в штате Джорджия. Девушку (на фото) арестовали по обвинению в разглашении секретной информации, предположительно просочившейся в прессу. И действительно, к тому времени документ уже был в распоряжении онлайн-издания The intercept, а 5 июня 2017 года его опубликовали в открытом доступе.

В этой истории есть интересный момент. Агенты ФБР утверждали, что для вычисления источника утечки они тщательно изучили копии документа, предоставленные The Intercept, и якобы «заметили складки, свидетельствующие о том, что страницы были напечатаны и вручную вынесены из защищённого пространства».

Но анализ независимых специалистов из компании Errata Security показал истинную картину. Дело в том, что документ PDF из утечки содержал отсканированные копии бумажных документов очень хорошего качества. Включая точки-маркеры, которые скрыто проставляют принтеры на каждую отпечатанную страницу. Судя по всему, по этим точкам и вычислили Уиннер.

Опасный алгоритм SHA-1 убирают из библиотек SSH

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

Сложность атак на SHA-1. Стоимость указана из расчёта стоимости аренды одного GTX 1060 в 35 долларов/месяц

Намного позже всех остальных, но разработчики библиотек для SSH приняли решение наконец-то отключить по умолчанию устаревшую криптофункцию SHA-1. Сегодня подбор серверного ключа аутентификации SHA-1, то есть коллизия с выбранным префиксом, на арендованном кластере GPU обойдётся в $45 тыс., как указано в таблице вверху. Это делает атаку доступной не только для государственных спецслужб, но и для коммерческих клиентов.

Об отключении SHA-1 по умолчанию одновременно объявили разработчики опенсорсных библиотек OpenSSH (release notes) и libssh (изменение кода).
Читать дальше →

Как Microsoft убила AppGet

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


На прошлой неделе Microsoft выпустила пакетный менеджер WinGet в рамках анонсов на конференции Build 2020. Многие посчитали это ещё одним доказательством сближения Microsoft с движением Open Source. Но только не канадский разработчик Кейван Бейги (Keivan Beigi), автор свободного менеджера пакетов AppGet. Сейчас он силится понять, что произошло за последние 12 месяцев, в течение которых он общался с представителями Microsoft.

В любом случае, теперь Кейван прекращает разработку AppGet. Клиентские и серверные службы переходят в режим технического обслуживания немедленно до 1 августа 2020 года, после чего будут закрыты навсегда.
Читать дальше →

История о пропавших DNS-пакетах от техподдержки Google Cloud

Время на прочтение8 мин
Количество просмотров6.5K
От редактора блога Google: Интересовались ли вы когда-нибудь тем, как инженеры Google Cloud Technical Solutions (TSE) занимаются вашими обращениями в техподдержку? В сфере ответственности инженеров технической поддержки TSE лежит обнаружение и устранение указанных пользователями источников проблем. Некоторые из этих проблем довольно просты, но иногда попадается обращение, требующее внимания сразу нескольких инженеров. В этой статье один из сотрудников TSE расскажет нам про одну очень заковыристую проблему из своей недавней практики — случай с пропадающими пакетами DNS. В ходе этого рассказа мы увидим, каким образом инженерам удалось разрешить ситуацию, и что нового они узнали в ходе устранения ошибки. Мы надеемся, что эта история не только расскажет вам о глубоко укоренившемся баге, но и даст понимание процессов, проходящих при подаче обращения в поддержку Google Cloud.



Устранение неполадок это одновременно и наука, и искусство. Все начинается с построения гипотезы о причине нестандартного поведения системы, после чего она проверяется на прочность. Однако, прежде чем сформулировать гипотезу, мы должны четко определить и точно сформулировать проблему. Если вопрос звучит слишком расплывчато то вам придется как следует все проанализировать; в этом и заключается «искусство» устранения неполадок.
Читать дальше →

Лучшие вопросы средней сложности по SQL на собеседовании аналитика данных

Время на прочтение14 мин
Количество просмотров95K
Первые 70% курса по SQL кажутся довольно простыми. Сложности начинаются на остальных 30%.

С 2015 по 2019 годы я прошёл четыре цикла собеседований на должность аналитика данных и специалиста по анализу данных в более чем десятке компаний. После очередного неудачного интервью в 2017 году — когда я запутался в сложных вопросах по SQL — я начал составлять задачник с вопросами по SQL средней и высокой сложности, чтобы лучше готовиться к собеседованиям. Этот справочник очень пригодился в последнем цикле собеседований 2019 года. За последний год я поделился этим руководством с парой друзей, а благодаря дополнительному свободному времени из-за пандемии отшлифовал его — и составил этот документ.

Есть множество отличных руководств по SQL для начинающих. Мои любимые — это интерактивные курсы Codecademy по SQL и Select Star SQL от Цзы Чон Као. Но в реальности первые 70% из курса SQL довольно просты, а настоящие сложности начинаются в остальных 30%, которые не освещаются в руководствах для начинающих. Так вот, на собеседованиях для аналитиков данных и специалистов по анализу данных в технологических компаниях часто задают вопросы именно по этим 30%.

Удивительно, но я не нашёл исчерпывающего источника по таким вопросам среднего уровня сложности, поэтому составил данное руководство.
Читать дальше →

Информация

Сайт
miran.ru
Дата регистрации
Дата основания
Численность
51–100 человек
Местоположение
Россия