RSS
Pages: 1 ... 197 198 199 200 201 202 203 204 205 206 207 208 209 210
[>] Докеризация nginx и php на сокетах с ротацией логов
habra.16
habrabot(difrex,1) — All
2018-01-29 18:15:13


В [статье на Хабре][1] обсуждался «docker way»(TM), который гласит: один контейнер — один процесс.**one process per container**
Each container should have only one concern

Decoupling applications into multiple containers makes it much easier to scale horizontally and reuse containers. For instance, a web application stack might consist of three separate containers, each with its own unique image, to manage the web application, database, and an in-memory cache in a decoupled manner.

You may have heard that there should be “one process per container”. While this mantra has good intentions, it is not necessarily true that there should be only one operating system process per container. In addition to the fact that containers can now be spawned with an init process, some programs might spawn additional processes of their own accord. For instance, Celery can spawn multiple worker processes, or Apache might create a process per request. While “one process per container” is frequently a good rule of thumb, it is not a hard and fast rule. Use your best judgment to keep containers as clean and modular as possible.

If containers depend on each other, you can use Docker container networks to ensure that these containers can communicate.
Следование этому принципу при докеризации nginx чревато двумя последствиями. Настроить взаимодействие nginx и php-fpm в разных процессах через unix сокет [немного сложнее][2], чем может показаться. И [ротация логов][3], которая при обычной установке идет «из коробки», не может осуществляться в принципе, т.к. требует отправки сигнала USR1 nginx, для чего нужен ещё один процесс.
[Читать дальше →][4]

[1]: https://habrahabr.ru/post/346634/
[2]: https://medium.com/@shrikeh/setting-up-nginx-and-php-fpm-in-docker-with-unix-sockets-6fdfbdc19f91
[3]: https://blog.amartynov.ru/docker-logrotate/
[4]: https://habrahabr.ru/post/347662/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347662#habracut

[>] MentorHack: тиндер для поиска ментора, AI Boss и немного HRTech
habra.16
habrabot(difrex,1) — All
2018-01-29 20:30:14


![][1]

С 13 по 15 февраля в Москве пройдет [MentorHack][2] – хакатон по созданию сервисов для наставничества в корпоративной среде, предпринимательстве и образовании. Приглашаем всех с опытом в разработке, машинном обучении, product-менеджменте или HR и желанием получить 500 000 рублей, подарки и интересные данные от партнеров.

Под катом – подробности участия и примеры идей для проектов: от [запускающихся сервисов][3] по подбору ментора Facebook и LinkedIn до концепций AI Boss.
[Читать дальше →][4]

[1]: https://habrastorage.org/webt/fg/tc/7p/fgtc7pbfrt5d7h296n89cla0ucm.jpeg
[2]: https://mentorhack.ru/
[3]: https://techcrunch.com/2017/09/11/facebook-is-testing-a-feature-for-mentorships-between-users/
[4]: https://habrahabr.ru/post/347772/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347772#habracut

[>] Исследование защиты программы VoiceAttack
habra.16
habrabot(difrex,1) — All
2018-01-29 22:30:14


![][1]

Которая в итоге подкинула несколько приятных неожиданностей. Осторожно, под катом много скринов в хайрезе и не хайрезе, которые не убраны под спойлер ввиду их невероятной важности. А, ну и ещё там есть шутка про половые органы кентавров, но она тоже включена исключительно ради контекста.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/j0/j3/9d/j0j39dklli68enonvxtuvftnugc.png
[2]: https://habrahabr.ru/post/347800/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347800#habracut

[>] Неслучайная случайность, или Атака на ГПСЧ в .NET
habra.16
habrabot(difrex,1) — All
2018-01-30 09:15:14


> _Random numbers should not be generated with a method chosen at random._
> _— Donald Knuth_



Копаясь как-то в исходниках одного сервиса в поисках уязвимостей, я наткнулся на генерацию одноразового кода для аутентификации через SMS. Обработчик запросов на отправку кода упрощённо выглядел так:


class AuthenticateByPhoneHandler
{
/* ... */

static string GenerateCode() => rnd.Next(100000, 1000000).ToString();

readonly static Random rnd = new Random();
}

Проблема видна невооруженным глазом: для генерации 6-тизначного кода используется класс Random — простой некриптографический генератор псевдослучайных чисел (ГПСЧ). Займёмся им вплотную: научимся предсказывать последовательность случайных чисел и прикинем возможный сценарий атаки на сервис.



# Потокобезопасность {#potokobezopasnost}



Кстати, заметим, что в приведённом фрагменте кода доступ к статическому экземпляру `rnd` класса Random из нескольких потоков не синхронизирован. Это может привести к неприятному казусу, который можно часто встретить в вопросах и ответах на StackOverflow:



![][1]

[Читать дальше →][2]

[1]: https://habrastorage.org/webt/jw/fd/gv/jwfdgvotcjwt1wct-mz93tdkhnq.png
[2]: https://habrahabr.ru/post/347758/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347758#habracut

[>] Chromium: опечатки
habra.16
habrabot(difrex,1) — All
2018-01-30 10:45:14


![Опечатки][1]

Предлагаем вашему вниманию цикл статей, посвященных рекомендациям по написанию качественного кода на примере ошибок, найденных в проекте Chromium. Это четвёртая часть, которая будет посвящена проблеме опечаток и написанию кода с помощью «Copy-Paste метода».

От опечаток в коде никто не застрахован. Опечатки можно встретить в коде самых квалифицированных программистов. Квалификация и опыт, к сожалению, не защищают от того, чтобы перепутать название переменной или забыть что-то написать. Поэтому опечатки были, есть и будут.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/cb3/fa0/fef/cb3fa0fef11cb4706f5ce52d238363da.png
[2]: https://habrahabr.ru/post/347826/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347826#habracut

[>] Делаем свою прошивку для IP-камеры на Rust и боремся с фродом
habra.16
habrabot(difrex,1) — All
2018-01-30 13:30:14


Это продолжение рассказа о лучших ([по мнению участников][1]) докладах HighLoad++ 2017. В предыдущей статье я [писал][2] о двух лидерах рейтинга. Идем дальше. В этом материале — доклад Вадима Антонюка о фродах и Макса Лапшина  - о прошивке для IP-камеры на Rust.

![][3]
[Читать дальше →][4]

[1]: https://www.facebook.com/oleg.bunin/posts/1808061875902162
[2]: https://habrahabr.ru/company/oleg-bunin/blog/346934/
[3]: https://habrastorage.org/webt/i-/ut/cq/i-utcqb7jmlix3362tlolzd50bm.jpeg
[4]: https://habrahabr.ru/post/347794/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347794#habracut

[>] Старые-новые дыры Электронного правительства Казахстана
habra.16
habrabot(difrex,1) — All
2018-01-30 14:00:14


DISCLAMER!
Описанная в статье уязвимость исправлена и не несет в себе никакой опасности. Публикация написана в целях академического просвещения читателей и демонстрации важности вопросов ИБ. Описанная уязвимость присутствовала на E-GOV несколько лет и позволяла получить доступ к паролям пользователей электронного правительства Казахстана.

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

Те, кто всегда пользуется web-сервисами через прокси, чтобы контролировать обмен данными, могли заметить в мобильной версии сайта egov.kz передаваемые на сервер запросы в виде XML. Многие исследователи пробовали подгрузить в запрос сущность, или, простым языком, провести атаку типа XXE.

[Читать дальше →][1]

[1]: https://habrahabr.ru/post/347842/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347842#habracut

[>] [Перевод] Машинное обучение и шоколадные конфеты
habra.16
habrabot(difrex,1) — All
2018-01-30 14:00:14


Говорят, что у мерчендайзеров есть негласное правило: никогда не класть рядом батончики Nesquik и Snickers. Кто знает, миф это или нет, но технологии, которые позволяют проверить условия хранения и выкладки шоколадных конфет на витрины — существуют. В этой статье мы углубимся в них и расскажем о модели машинного обучения, предназначенной как раз для этих целей.

![][1] [Читать дальше →][2]

[1]: https://habrastorage.org/webt/8d/7k/jk/8d7kjky21xn-qa8jpe49k9ahhmq.png
[2]: https://habrahabr.ru/post/345452/?utm_source=habrahabr&utm_medium=rss&utm_campaign=345452#habracut

[>] Как работают многоканальные телефонные номера
habra.16
habrabot(difrex,1) — All
2018-01-30 14:45:13


![][1]


Недавно на Хабре была [статья][2] про «необычные» DEF-номера. Под необычностью скрывалась «многоканальность» — возможность принимать на номер несколько параллельных звонков (а разговаривать по ним будут операторы колл-центра). Целых пять одновременных разговоров и восклицательный знак в конце фразы! Под катом я расскажу про многоканальность не с маркетинговой, а с технической точки зрения. Как операторы «принимают» звонки, чем «необычный DEF-номер» отличается от «обычного ABC-номера», и много это или мало — целых пять параллельных звонков? Кстати, почему именно пять, а не двадцать или сто?
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/u_/rl/9g/u_rl9gg4twjv980jyabtqr6aem4.jpeg
[2]: https://habrahabr.ru/company/iptelefon/blog/347190/
[3]: https://habrahabr.ru/post/347832/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347832#habracut

[>] DCShadow — новая техника атаки на Active Directory
habra.16
habrabot(difrex,1) — All
2018-01-30 14:45:13


![][1]
 
24 января 2018 года на конференции безопасности Microsoft BlueHat исследователями Benjamin Delpy и Vincent Le Toux была продемонстрирована новая технология атаки против инфраструктуры Active Directory.

Название новой техники атаки — DCShadow. Такая атака позволяет злоумышленнику создать поддельный контроллер домена в среде Active Directory для репликации вредоносных объектов в рабочую инфраструктуру Active Directory.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/on/pc/kr/onpckrtegrzfdzprye1ctpx0y3y.png
[2]: https://habrahabr.ru/post/347844/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347844#habracut

[>] Подвалы Вавилонской башни, или Об интернационализации баз данных с доступом через ORM
habra.16
habrabot(difrex,1) — All
2018-01-30 15:00:14


![Гравюра М. Эшера "Относительность"][1]
[_Гравюра М. Эшера «Относительность», 1953_][2]



# Введение



В [предыдущей статье][3] на примере доменной сущности товара мы рассмотрели собственные типы данных для многоязычных приложений. Мы научились описывать и использовать атрибуты сущностей, имеющие значения на различных языках. Но вопросы хранения и обработки в реляционной СУБД, а также проблемы эффективной работы в коде приложения до сих пор актуальны.



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



Однако в индустрии все еще нет решения _Database Internationalization for Dummies_. Вместе с вами мы попробуем немного заполнить этот пробел: опишем возможные способы, оценим их преимущества и недостатки, выберем эффективные. Мы не собираемся изобретать серебряную пулю, но сценарий, который будем рассматривать, довольно типичен для корпоративных приложений. Надеемся, многим он окажется полезен.



Приведенные в статье фрагменты кода — на языке C#. На GitHub можно найти [примеры реализации][4] механизмов интернационализации с использованием двух различных связок ORM и СУБД: [NHibernate][5] + [Oracle Database][6] и [Entity Framework Core][7] + [SQL Server][8]. Разработчикам, использующим упомянутые ORM, будет интересно узнать конкретные приемы и трудности работы с многоязычными данными, а также блокирующие дефекты фреймворков и перспективы их устранения. Изложенные ниже принципы и примеры работы с многоязычными данными легко перенести и на другие языки и технологии.


[Читать дальше →][9]

[1]: https://habrastorage.org/webt/59/cb/d4/59cbd400d6b90552886277.jpeg
[2]: https://ru.wikipedia.org/wiki/%D0%9E%D1%82%D0%BD%D0%BE%D1%81%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(%D0%BB%D0%B8%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%8F)
[3]: https://habrahabr.ru/company/custis/blog/313284/
[4]: https://github.com/CUSTIS-public/CUSTIS.i18n.DAL
[5]: http://nhibernate.info/
[6]: http://www.oracle.com/technetwork/database/enterprise-edition/overview/index.html
[7]: https://docs.microsoft.com/en-us/ef/#pivot=efcore
[8]: https://www.microsoft.com/en-us/sql-server/developer-get-started/
[9]: https://habrahabr.ru/post/313690/?utm_source=habrahabr&utm_medium=rss&utm_campaign=313690#habracut

[>] Лень пораБОТила instagram
habra.16
habrabot(difrex,1) — All
2018-01-30 15:00:14


![][1]




## Предисловие


Сейчас многие используют инстаграм (далее инста): кто-то там собирает альбомы, кто-то продает, кто-то покупает, а я там ленюсь. Мне всегда было интересно как там поживают мои друзья, одноклассники, коллеги и инста в этом помогала. Захотел узнать, что там нового — зашел, полистал ленту, увидел все, что интересовало ушел… НО! Мне почему-то всегда нужно было лайкнуть каждый пост (не могу обьяснить зачем, но такие вот дела). И вот представьте, неделю туда не заходил, сидишь, лайкаешь недельный пул, а когда у тебя 200+ подписок — это вообще ад.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/gf/yu/da/gfyuda9fmcd6xyopusaaumuy_wm.png
[2]: https://habrahabr.ru/post/347774/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347774#habracut

[>] Опыт веб-разработки при создании игры «Составь слова»
habra.16
habrabot(difrex,1) — All
2018-01-30 16:00:14


![image][1]

Хочу поделиться своим опытом работы над веб-проектом: реализацией игры «Составь слова». Игра представляет собой известную головоломку, в которой нужно составлять разные слова из одного длинного слова.

Суть статьи — в том, как именно и что конкретно пришлось сделать, чтобы довести всю задумку от идеи до реализации.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/aq/0a/sf/aq0asfkt89omn_4pgccyolyk3ri.jpeg
[2]: https://habrahabr.ru/post/347852/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347852#habracut

[>] [Перевод] Абсурдно быстрое кодирование и декодирование base64
habra.16
habrabot(difrex,1) — All
2018-01-30 16:15:14


Об авторе: Дэниель Лемер — профессор компьютерных наук в Университете Квебека (Канада). Его исследования затрагивают производительность программного обеспечения и инженерию данных

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

Однако мы часто используем текстовые форматы; например, веб-страницы и электронные письма должны быть в текстовом формате. Как же мы отправляем изображения по электронной почте? Как внедряем картинки на веб-страницы? Один из вариантов — поставить ссылку на реальный бинарный файл. Другой типичный подход — встроить бинарный файл непосредственно в тело письма или веб-страницы с помощью [base64][1]. Base64 — это просто стандартный текстовый формат, который можно использовать для кодирования любых бинарных данных. Если быть точным, то код base64 — всегда валидный текст ASCII (и поэтому также валидный UTF-8). Каждый байт кода base64 содержит 6 бит данных. То есть мы «теряем» примерно 2 бита на байт. Поэтому эквивалент base64 бинарного файла будет примерно на 33% больше. На практике такое увеличение размера редко становится проблемой. Насколько я знаю, приложения к электронным письмам почти всегда кодируются в base64.

При написании HTML я нашёл удобным внедрять изображения напрямую в HTML-код с помощью схемы [data URI][2]. Например, в [недавней статье][3] я таким образом закодировал файл PNG. Крупнейшие веб-сайты вроде Google постоянно используют эту схему. Небольшим недостатком становится то, что веб-страницы чуть увеличиваются в размере (что очевидно) и нельзя воспользоваться преимуществами кэширования изображений. Но зато браузер экономит один сетевой запрос.
[Читать дальше →][4]

[1]: https://en.wikipedia.org/wiki/Base64
[2]: https://en.wikipedia.org/wiki/Data_URI_scheme
[3]: https://lemire.me/blog/2018/01/16/microbenchmarking-calls-for-idealized-conditions/
[4]: https://habrahabr.ru/post/347864/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347864#habracut

[>] [Перевод] Пришло время для открытых и свободных процессоров?
habra.16
habrabot(difrex,1) — All
2018-01-30 16:15:14


![][1]Раскрытие [уязвимостей Meltdown и Spectre][2] снова привлекло внимание к багам на аппаратном уровне. Многое сделано для улучшения (всё ещё слабой) безопасности нашего программного обеспечения, но всё напрасно, если оборудование даёт сбой. Процессоры в наших системах по-прежнему, в основном, проприетарные и уже преподнесли ряд неприятных сюрпризов (например, в движке Intel Management Engine). Поэтому встаёт естественный вопрос о переходе на железо open-source, как мы сделали с нашим программным обеспечением. Такой переход вполне возможен и даёт ряд преимуществ, хотя и не является панацеей.

Учитывая сложность современных процессоров и свирепый рынок, где они продаются, их разработка по принципам open-source может показаться необычной идеей. Но в этой области уже есть серьёзные инициативы; так что идея свободного дизайна CPU — не просто фантазия. Небольшое исследование темы выявляет несколько проектов; хотя дальнейший список явно не полон.
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/m-/dn/tz/m-dntzd3ujsrlevbsycnxbitqyi.png
[2]: https://lwn.net/Articles/742702/
[3]: https://habrahabr.ru/post/347874/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347874#habracut

[>] Тринадцатая конференция «Свободное программное обеспечение в высшей школе»
habra.16
habrabot(difrex,1) — All
2018-01-30 20:00:14


![][1]

Побывал я тут в славном городе Переславле-Залесском на [13-й конференции “Открытое программное обеспечение в высшей школе”][2], организованной [Базальт СПО][3] и [ИПС РАН][4]. И показалось мне, что на данной конференции поднимались вопросы, которые могут быть интересны читателям Хабра.
[Читать дальше →][5]

[1]: https://habrastorage.org/webt/fj/he/aj/fjheaj6ndcbmzq8zjf5pluke654.jpeg
[2]: https://www.basealt.ru/about/news/archive/view/trinadcataja-konferencija-svobodnoe-programmnoe-obesp/
[3]: https://www.basealt.ru/
[4]: http://www.botik.ru/PSI/
[5]: https://habrahabr.ru/post/347898/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347898#habracut

[>] [Из песочницы] Майнер на сайте — зло (но может стать и добром)
habra.16
habrabot(difrex,1) — All
2018-01-30 20:30:14


Часто на Хабре можно встретить комменты в духе «Майнер — хороша замена/дополнение к рекламе на сайте» или «Я лучше отдам 10-40% CPU». Данная статья приведёт аргументы, почему такие утверждения в корне неверны. Также статья выдвинет предположение, как можно решить приведённые проблемы, позволив майнерам стать дополнительным источником монетизации, что может положительно сказаться на вебе.

Справка: майнер — это программа для майнинга криптовалюты. Может встраиваться в сайты, принося автору сайта прибыль. Майнинг может использовать как мощности процессора, так и видеокарты (javascript может запускать шейдеры с помощью WebGL).
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/347868/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347868#habracut

[>] [Перевод] Все о переопределении в Java
habra.16
habrabot(difrex,1) — All
2018-01-30 20:30:14


Всем доброго!

У нас на этой недели практически юбилей — стартует пятая группа "[Разработчик Java][1]", а это значит, что мы снова делимся всякими полезностями :)

Поехали.

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

Дочерний класс может переопределить методы экземпляра своего родительского класса. Это называется переопределением метода. Сигнатура (тип возврата, тип параметров, количество параметров и порядок параметров) должна быть такой же, какой была определена в родительском классе. Переопределение метода выполняется для достижения полиморфизма во время выполнения программы.

![][2]
[Читать дальше →][3]

[1]: https://otus.pw/G0b3/
[2]: https://habrastorage.org/webt/il/qr/js/ilqrjsk7psk9levrbov77lvlylk.jpeg
[3]: https://habrahabr.ru/post/347900/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347900#habracut

[>] Объект в футляре или Optional в Java 8 и Java 9. Часть 4: «Футляр с двойным дном»
habra.16
habrabot(difrex,1) — All
2018-01-30 20:45:14


[![Объект в футляре][1]][2]

Это четвёртая статья серии, посвящённая использованию класса Optional при обработке объектов с динамической структурой. В [первой статье][3] было рассказано о способах избежания NullPointerException в ситуациях, когда вы не можете или не хотите использовать Optional. [Вторая статья][4] посвящена описанию методов класса Optional в том виде, как он появился в Java 8. [Третья][5] — методам, добавленным в класс в Java 9.

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

Если сервис возвращает Optional, о причине мы ничего не узнаем. Значит надо использовать что-то похожее на Optional, но содержащее информацию об ошибке в случае неуспеха. [Читать дальше →][6]

[1]: https://habrastorage.org/webt/ys/0h/kg/ys0hkgszo0x804sxkfr0q6svqcm.jpeg
[2]: https://habrahabr.ru/post/347836/
[3]: https://habrahabr.ru/post/347480/
[4]: https://habrahabr.ru/post/347576/
[5]: https://habrahabr.ru/post/347748/
[6]: https://habrahabr.ru/post/347836/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347836#habracut

[>] “Cтрашилка” о GDPR
habra.16
habrabot(difrex,1) — All
2018-01-31 00:00:14


[![][1]][2]В мае 2018 года в Европе вступают в силу обновлённые правила обработки персональных данных, установленные Общим регламентом по защите данных ([Регламент ЕС 2016/679 от 27 апреля 2016 г. или GDPR][3] — General Data Protection Regulation).

Все компании, которые обрабатывают (как внутри, так и за пределами ЕС) персональные данные граждан европейских стран, обязаны соблюдать требования этого документа. Сфера действия новых правил GDPR распространяется на все 28 стран ЕС. Этот документ заменит существующие законы о защите персональных данных в европейских странах. С учетом того, что новые правила GDPR будут применяться экстерриториально, их соблюдение будет обязательным для российских компаний, имеющих присутствие в ЕС. То есть для любого российского бизнеса, собирающему и обрабатывающему персональные данные **хотя бы одного** гражданина страны-члена ЕС. [Читать дальше →][4]

[1]: https://habrastorage.org/webt/qy/kp/8x/qykp8xy0kjxc88lu4hqwisrqmgs.png
[2]: https://habrahabr.ru/company/cloud4y/blog/347870/
[3]: http://ec.europa.eu/justice/data-protection/reform/files/regulation_oj_en.pdf
[4]: https://habrahabr.ru/post/347870/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347870#habracut

[>] Как поймать программиста на списывании и стоит ли этим заниматься?
habra.16
habrabot(difrex,1) — All
2018-01-31 00:15:13


![][1]

Побывал я тут в славном городе Переславле-Залесском на [13-й конференции “Открытое программное обеспечение в высшей школе”][2], организованной [Базальт СПО][3] и [ИПС РАН][4]. И показалось мне, что на данной конференции поднимались вопросы, которые могут быть интересны читателям Хабра. Среди них:
* Как построить более эффективную систему высшего образования?
* Как, и стоит ли вообще, контролировать списывание при обучении программированию?
* Можно ли внести вклад в открытый проект не изменяя его исходный код?
[Читать дальше →][5]

[1]: https://habrastorage.org/webt/fj/he/aj/fjheaj6ndcbmzq8zjf5pluke654.jpeg
[2]: https://www.basealt.ru/about/news/archive/view/trinadcataja-konferencija-svobodnoe-programmnoe-obesp/
[3]: https://www.basealt.ru/
[4]: http://www.botik.ru/PSI/
[5]: https://habrahabr.ru/post/347898/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347898#habracut

[>] ArcSight Forwarder Connector. Пошлём куда захотим
habra.16
habrabot(difrex,1) — All
2018-01-31 00:45:13


Добрый день, хабрасообщество!

В данной статье я поделюсь своим практическим опытом по выгрузке событий из ArcSight ESM. Детально рассмотрю функциональность и предоставлю пошаговую инструкцию по настройке ArcSight Forwarder Connector, а так же опишу интересные лайфхаки.

![][1]
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/hb/ak/cj/hbakcjrchgvgnjl3jhmfl8habey.jpeg
[2]: https://habrahabr.ru/post/347642/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347642#habracut

[>] Wireshark для просмотра трафика в реальном времени
habra.16
habrabot(difrex,1) — All
2018-01-31 00:45:13


Иногда мне необходимо было залезть на linux-сервера и иметь возможность просматривать текущий трафик в реальном времени. Как я делал до этого? На целевом сервере устанавливался tcpdump, выхлоп которого писался в файлик. Далее файл через scp тянулся на локальный компьютер под Windows и открывался в Wireshark.

В определенный момент мне захотелось более удобного решения и я, нашев возможность запустить Wireshark на винде (локально) в связке с tcpdump-ом на сервере (удаленно) на просторах интернета, и немного подпилив эту реализацию, решил поделиться с Вами. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/347888/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347888#habracut

[>] [recovery mode] Как угнать любой сайт в Яндексе имея только вебмастер?
habra.16
habrabot(difrex,1) — All
2018-01-31 01:00:13



Я сейчас опубликую способ угона любого сайта с помощью Яндекса за 5 минут без никаких знаний при наличии доступа к одному только Яндекс Вебмастеру. К сожалению, от этого могут пострадать владельцы сайтов, но я просто не вижу другого выхода. На данный момент техподдержка Яндекса просто закрывает глаза на проблему. Я не уверен, что о проблеме вообще известно менеджменту и идет ли информация дальше «Платонов» и потому я вынужден опубликовать эту уязвимость чтоб привлечь к ней внимание Яндекса как можно скорее и спасти как можно больше сайтов.
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/347894/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347894#habracut

[>] fx — алтернатива jq для обработки JSON из командной строки
habra.16
habrabot(difrex,1) — All
2018-01-31 01:00:13


![][1]



[jq][2] — самая популярная утилита для обработки JSON из командной строки, написана на C и имеет свой собственный синтаксис для работы с JSON.



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



Так и появилась идея написать [fx][3] с простым и понятным синтаксисом, который никогда не забудешь. А какой язык программирования знают все? Правильно — JavaScript.

[Читать дальше →][4]

[1]: https://habrastorage.org/webt/mx/hn/vx/mxhnvxbqzs2pwh58td8ea1sauhe.png
[2]: https://stedolan.github.io/jq/
[3]: https://github.com/antonmedv/fx
[4]: https://habrahabr.ru/post/347808/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347808#habracut

[>] [Перевод] Что действительно случилось с Vista: инсайдерская ретроспектива
habra.16
habrabot(difrex,1) — All
2018-01-31 01:15:09


![][1]
_Традиционно группа разработчиков Windows подписывает постер (в данном случае изображение DVD) с выпуском новой версии Windows. Ко времени окончания вечеринки по поводу релиза на нём будут сотни или тысячи подписей_

> _«Опыт — это то, что ты получаешь только после того, как он тебе понадобится» — Стивен Райт_
Мне понравился содержательный блог Терри Кроули («[Что действительно случилось с Vista][2]»). Терри работал в группе Office и проделал фантастическую работу, описывая сложные козни вокруг Windows Vista и связаного, но заброшенного проекта Longhorn — с точки зрения внешнего наблюдателя.

Он верно подметил многие из проблем, которые преследовали проект, и я не хочу повторять о них снова. Я только подумал, что будет честно изложить инсайдерский взгляд на те же события. Не рассчитываю на такое же красноречивое или исчерпывающее изложение, как у Терри, но надеюсь пролить некоторый свет на то, что пошло не так. Прошло десять лет с момента выхода первой версии Windows Vista, но эти уроки сейчас кажутся актуальными как никогда.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/765/a7e/1be/765a7e1be80ff3f92703d15c88a80fb4.jpg
[2]: https://hackernoon.com/what-really-happened-with-vista-4ca7ffb5a1a
[3]: https://habrahabr.ru/post/347922/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347922#habracut

[>] Chromium: использование недостоверных данных
habra.16
habrabot(difrex,1) — All
2018-01-31 11:30:06


![PVS-Studio, Common Weakness Enumeration][1]Предлагаем вашему вниманию цикл статей, посвященных рекомендациям по написанию качественного кода на примере ошибок, найденных в проекте Chromium. Это пятая часть, которая будет посвящена ошибкам использования непроверенных или неправильно проверенных данных. Очень большое количество уязвимостей существуют благодаря как раз использованию непроверенных данных, что делает данную тему интересной и актуальной.

На самом деле, причиной уязвимости может стать ошибка почти любого типа, даже обыкновенная опечатка. Собственно, если найденная ошибка классифицируется согласно [Common Weakness Enumeration][2], то значит она является потенциальной уязвимостью.

Анализатор PVS-Studio, начиная с версии 6.21, научился классифицировать найденные ошибки согласно Common Weakness Enumeration и назначать им соответствующий CWE ID.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/58c/b89/aaf/58cb89aafeb3e2044966c86c66ef7090.png
[2]: https://cwe.mitre.org/
[3]: https://habrahabr.ru/post/347938/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347938#habracut

[>] Identity Management: новый инструмент в ServiceNow для управления учетными данными
habra.16
habrabot(difrex,1) — All
2018-01-31 13:30:14


Согласно [исследованию][1] Ponemon Institute, в среднем один случай утечки данных обходится компаниям в 3 миллиона долларов. При этом, как [отмечают][2] в Verizon, 90% краж данных выполняются с помощью фишинга. Поэтому проблемы идентификации пользователей для выявления деятельности злоумышленников выходят на первое место.

В связи с этим компания ServiceNow [объединилась][3] с компанией Okta для создания приложения, которое позволит клиентам облачного сервиса выявлять «дыры» в безопасности, связанные с идентификационными данными, и оперативно «закрывать» их. О подробностях этого решения расскажем далее.

[![][4]][5] [Читать дальше →][6]

[1]: https://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htmlfid=SEL03130WWEN
[2]: https://iapp.org/news/a/verizon-study-90-percent-of-breaches-involve-phasing-social-engineering/
[3]: https://techcrunch.com/2018/01/18/okta-teams-up-with-servicenow-to-bring-identity-layer-to-breach-containment/
[4]: https://habrastorage.org/webt/z-/ld/qd/z-ldqdpcj6adfe6f2vpmigilmyk.jpeg
[5]: https://habrahabr.ru/company/it-guild/blog/345624/
[6]: https://habrahabr.ru/post/345624/?utm_source=habrahabr&utm_medium=rss&utm_campaign=345624#habracut

[>] Интеграция Google Pay
habra.16
habrabot(difrex,1) — All
2018-01-31 13:45:14


Привет, Хабр!

Меня зовут Игорь, я Android-разработчик в команде Trinity Digital. Сегодня я хочу рассказать о классном инструменте — **Google Pay API**.

[![изображение с сайта https://developers.google.com/payments/][1]][2]

**Итак**, если в вашем приложении можно совершать покупки, и при этом вы используете не In-app Billing (за процессинг отвечает не Google Play), то скорее всего среди вариантов оплаты у вас есть и “Оплата картой”. А это значит, что вам каждый раз приходится отправлять пользователя вводить данные карты или на красиво сверстанные экраны с картой, или на веб-сайт вашего провайдера платежных сервисов (далее — payment processor). Уже посчитали сколько действий придется совершить пользователю, чтобы оплатить заветный заказ? Ага, а теперь представьте, что он сможет выполнить то же целевое действие всего в два тапа. Мы тоже представили и подумали, а почему бы не дать пользователям такую возможность? Основные условия успеха — продавец быть [зарегистрирован в Google][3] и payment processor должен сотрудничать с Google.
[Читать дальше →][4]

[1]: https://habrastorage.org/webt/zp/oz/tm/zpoztmk3kbzmwajqwi6hcaplwwe.png
[2]: https://habrastorage.org/webt/zp/oz/tm/zpoztmk3kbzmwajqwi6hcaplwwe.png
[3]: https://payments.developers.google.com/signup
[4]: https://habrahabr.ru/post/347460/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347460#habracut

[>] [Перевод] Рассказ о том, как не дать мне украсть номера кредиток и пароли у посетителей ваших сайтов
habra.16
habrabot(difrex,1) — All
2018-01-31 14:00:14


Недавно мы опубликовали [перевод][1] истории программиста, придумавшего способ распространения вредоносного кода, который собирает данные банковских карт и пароли с тысяч сайтов, оставаясь при этом незамеченным.

[![][2]][3]
Тот пост вызвал живой и эмоциональный отклик аудитории. Кто-то говорил о том, что всё пропало, и теперь он не сможет спокойно спать, кто-то утверждал, что уж его-то проектов это точно не коснётся, кто-то задавал вопросы о том, как от такого защититься… К проблеме, поднятой в предыдущем материале, можно относиться по-разному, но она вполне реальна, поэтому сегодня мы публикуем продолжение истории того, кто ворует номера кредиток. Сегодня он расскажет о методах защиты веб-проектов от потенциально опасного кода.
[Читать дальше →][4]

[1]: https://habrahabr.ru/company/ruvds/blog/346442/
[2]: https://habrastorage.org/webt/4k/xv/io/4kxvio7tyoiwfj9poibufj6dtss.jpeg
[3]: https://habrahabr.ru/company/ruvds/blog/347958/
[4]: https://habrahabr.ru/post/347958/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347958#habracut

[>] Статья о том, как мы попробовали применить современные нейросетевые технологии, чтобы находить каски на головах людей
habra.16
habrabot(difrex,1) — All
2018-01-31 15:30:07


![][1]

Раньше все свои интеллектуальные модули мы строили на традиционных алгоритмах видеоанализа (далее мы будем называть их «классическими»). О нейросетях мы, конечно, знали, и пробовали их применять еще в далеком 2008. В частности, сравнивать изображения людей по кластерам. Но результаты не были выдающимися (в том числе из-за невысокого уровня развития нейросетей). И мы на многие годы стали приверженцами «классики» машинного зрения. А все нейросети были у нас в головах :) [Читать дальше →][2]

[1]: https://habrastorage.org/webt/t6/mj/p3/t6mjp3uzko8kfh7f3cnsnsh7fyc.png
[2]: https://habrahabr.ru/post/347956/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347956#habracut

[>] [Перевод] Я разработчик с 9 до 17 (и ты можешь стать таким)
habra.16
habrabot(difrex,1) — All
2018-01-31 19:00:14


[Этот конкретный твит][1] от Сафьи Адбалла сподвиг меня на некоторые размышления:

> _Пожалуй, непопулярное мнение (и тут немного иронии от меня).
>
> Чтобы быть способным и отличным инженером, вам не нужно писать статьи в блоге, участвовать в проектах open source, выступать с техническими лекциями или делать что-нибудь ещё.
>
> Можете оставить свой код в офисе — и это вполне нормально._
Такая позиция близка и мила моему сердцу, хотя я тоже понимаю иронию. Одна из вещей, которые я говорю потенциальным работодателям с тех пор как [меня уволили за отказ оставаться программировать после работы][2] — это то, что [я не согласен на овертайм][3]. По крайней мере, не на регулярной основе. Я могу иногда поучаствовать в авралах, когда критически важно срочно накатить конкретное изменение или исправить баг, но за исключением таких случаев я буду [появляться, вкалывать — и пойду домой][4].
[Читать дальше →][5]

[1]: https://twitter.com/captainsafia/status/952282930960887808
[2]: https://www.exceptionnotfound.net/be-like-us-or-else-desperation-failure-and-new-job-regret/
[3]: https://exceptionnotfound.net/the-toxic-glorification-of-working-hard/
[4]: https://www.exceptionnotfound.net/show-up-kick-ass-go-home/
[5]: https://habrahabr.ru/post/347960/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347960#habracut

[>] Код проверяли буквально по строчкам: как наш межсетевой экран проходил сертификацию ФСТЭК
habra.16
habrabot(difrex,1) — All
2018-01-31 19:30:11


_9 декабря 2016 года вступили в силу Требования к межсетевым экранам, утвержденные в [Информационном сообщении ФСТЭК от 28 апреля 2016 года][1]. Все МЭ – производимые, поставляемые и разрабатываемые – к моменту вступления Требований в силу должны быть сертифицированы. _

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

![surprise attack][2][Читать дальше →][3]

[1]: http://fstec.ru/component/attachments/download/913
[2]: https://habrastorage.org/webt/zf/cx/bu/zfcxbuqr5yp75un9ruwrbimzhj0.jpeg
[3]: https://habrahabr.ru/post/347666/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347666#habracut

[>] [Из песочницы] Парсинг сайтов или долгострои Московской области
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


Ознакомившись с рынком первичного жилья в Московской области, мы, конечно же, столкнулись с наличием обманутых дольщиков и проблемных объектов, так называемых «долгостроев». Естественно, встал вопрос, насколько вероятна такая ситуация.



Была поставлена цель выполнить классификацию объектов первичного строительства по всеобъемлющему набору признаков: сведений об объекте, застройщике и т.д. Однако общедоступные данные оказались довольно скудными. Все же некоторую дескриптивную статистику собрать удалось…

[Читать дальше →][1]

[1]: https://habrahabr.ru/post/347996/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347996#habracut

[>] [Перевод] Learn OpenGL. Урок 4.6 — Кубические карты
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


# Кубические карты


До сих пор нам приходилось пользоваться лишь двухмерными текстурами, однако, OpenGL поддерживает гораздо больше типов текстур. И в этом уроке мы рассмотрим тип текстурной карты, на самом деле, представляющий собой комбинацию нескольких отдельных текстур – это кубическая карта (_cubemap_).

Кубическая карта, по сути, является одним текстурным объектом, содержащим 6 отдельных двухмерных текстур, каждая из которых соотносится со стороной оттекстурированного куба. Зачем может пригодиться такой куб? Зачем сшивать шесть отдельных текстур в одну карту вместо использования отдельных текстурных объектов? Суть в том, что выборки из кубической карты можно совершать используя вектор направления.
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/347750/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347750#habracut

[>] Мега-Учебник Flask, Часть IX: разбиение на страницы (издание 2018)
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


### _Miguel Grinberg_ {#miguel-grinberg}


----


[<<< предыдущая][1] [следующая >>>][2]



Это девятый выпуск серии Mega-Tutorial Flask, в котором я расскажу вам, как разбивать списки в базе данных.

[Читать дальше →][3]

[1]: https://habrahabr.ru/post/347450/
[2]: https://habrahabr.ru/post/347926/
[3]: https://habrahabr.ru/post/347926/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347926#habracut

[>] Безопасность сторонних зависимостей — проверяем при помощи snyk
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


Недавно была прекрасная публикация [“Рассказ о том, как я ворую номера кредиток и пароли у посетителей ваших сайтов”][1], на которую я [переводил][2] ответ. Автор недавно опубликовал [вторую часть][3], но, подозреваю, что перевода не будет — там предлагается решать проблему прекрасными способами вроде перевода важных элементов ввода «в отдельный iframe» или «на особые страницы без стороннего javascript». На этом месте те, кто повёлся на первую статью, должны бы усомниться в адекватности автора — и низкий (относительно предыдущей) рейтинг новой статьи это показывает.

**UPD**: [перевели таки][4].

Тем не менее, проблема сторонних зависимостей есть, и решать её как-то нужно. Причём стоит она в равной степени в любой экосистеме, где используются сторонние зависимости. В комментариях к прошлому посту уже запрашивали какой-нибудь вариант решения, и я хочу представить один из них — инструмент под названием snyk.

![image][5][Читать дальше →][6]

[1]: https://habrahabr.ru/post/346442/
[2]: https://habrahabr.ru/post/346492/
[3]: https://hackernoon.com/part-2-how-to-stop-me-harvesting-credit-card-numbers-and-passwords-from-your-site-844f739659b9
[4]: https://habrahabr.ru/post/347958/
[5]: https://habrastorage.org/getpro/habr/post_images/17b/8fd/b7d/17b8fdb7d07fd9ca8e04ad61c243df0a.png
[6]: https://habrahabr.ru/post/347934/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347934#habracut

[>] [Перевод] Как создать действительно случайный пароль
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


[![][1]][2]

Менеджеры паролей, такие как KeePass, 1Password и множество других, в значительной степени решают эту проблему. С их помощью вы можете генерировать уникальный и безопасный пароль для каждого сайта, который вы посещаете. Но такой менеджер защищен ровно настолько, насколько безопасен главный пароль, который вы используете для доступа к нему. Вы должны быть уверены, что его достаточная случайность и неугадываемость подтверждена количественными измерениями, а не только тем, что вы воспринимаете его случайным по причине наличия нескольких цифр или восклицательных знаков. Если нам требуется истинная случайность, нам понадобится кое-что специальное.

К счастью, есть возможность купить что-то недорогое, с достаточной энтропией набора вероятностей и способное генерировать 3 бита информации за раз. Без электричества и достаточно надежно, позволяя сотням миллионов долларов ежедневно менять владельцев, основываясь на непогрешимости этой случайности. [Читать дальше →][3]

[1]: https://habrastorage.org/webt/ns/lf/wg/nslfwgj6j8ahv0cdi0g1p0w2xr4.png
[2]: https://habrahabr.ru/company/cloud4y/blog/347952/
[3]: https://habrahabr.ru/post/347952/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347952#habracut

[>] [Из песочницы] Фишинг на криптовалютах
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


Сейчас наверняка все слышали о таком понятии, как криптовалюта или Биткоин. Эта тема является одной из самых популярных и обсуждаемых на сегодняшний день. Про «крипту» говорят везде: в интернете, на телевидении, по радио, в кругу семьи и друзей и т.д. Естественно, злоумышленники также положили глаз на эту область, и вновь приходится говорить о способах атак хакеров. Одним из этих способов является фишинг криптовалют.
![][1]

Фишинг сам по себе является интернет атакой, сутью которой является обман получателя с целью с целью обретения личных данных, таких как имя пользователя, пароли, банковские данные и т.д. Организатор подобной атаки составляет правдоподобное письмо, которое должно убедить цель, что отправитель является надежной организацией или личностью, и отправляет его с помощью интернет-почты или социальных сетей.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/2a/ts/ri/2atsrijanvechhfle5xsprekoim.jpeg
[2]: https://habrahabr.ru/post/348006/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348006#habracut

[>] Как работает блокировка доступа к страницам, распространяющим запрещенный контент (теперь РКН проверяет и поисковики)
habra.16
habrabot(difrex,1) — All
2018-01-31 20:30:14


[![][1]][2]

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

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

[Соответствующий приказ][3] Роскомнадзора от 7 ноября 2017 года № 229 зарегистрирован в Министерстве юстиции России. [Читать дальше →][4]

[1]: https://habrastorage.org/webt/-z/8j/rq/-z8jrqsydmpzsgtqvpp8l1xrxri.png
[2]: https://habrahabr.ru/company/cloud4y/blog/347964/
[3]: http://publication.pravo.gov.ru/Document/View/0001201801160014
[4]: https://habrahabr.ru/post/347964/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347964#habracut

[>] Блокчейн: организация сети, проверка подписи и задание для студента, часть 2
habra.16
habrabot(difrex,1) — All
2018-01-31 21:15:10


## Предисловие


[В первой части][1] было рассказано про возможности блокчейна, структуру и ЭЦП, в этой части будет рассказано про: проверку подписи, майнинг и примерную организацию сети. Отмечу, что не являюсь специалистом по распределенным системам (организация сети может быть не верной).


## Одноранговая сеть (P2P)


Одноранговая (равноправная) сеть – это сеть, основанная на равноправии участников. Часто в такой сети отсутствуют выделенные серверы, а каждый узел (peer) является как клиентом, так и выполняет функции сервера. В отличие от архитектуры клиент-сервера, такая организация позволяет сохранять работоспособность сети при любом количестве и любом сочетании доступных узлов. Участники сети называются пиры.
[Читать дальше →][2]

[1]: https://habrahabr.ru/post/348014/
[2]: https://habrahabr.ru/post/348020/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348020#habracut

[>] Олимпиада «ИТМО ВКонтакте»: выходные в Санкт-Петербурге и +10 баллов к ЕГЭ
habra.16
habrabot(difrex,1) — All
2018-01-31 21:15:10


Учебный год перевалил за экватор, а это значит, что для выпускников школ все более остро встает вопрос об экзаменах и поступлении в вузы. Конечно, самый надежный вариант стать студентом любого российского университета — получить максимум баллов ЕГЭ. Однако баллы — не всегда лучший показатель успеваемости и способностей. Пример тому — [история][1] Ильи Глебова, который сейчас изучает технологии защиты информации в Университете ИТМО.

Конечно, произошедшее с Ильей — уникальный кейс, однако в Университете ИТМО есть [более 20 проектов][2], которые позволяют выпускнику гарантированно получить дополнительные баллы к ЕГЭ. Один из них — олимпиада «ИТМО ВКонтакте», которая стартует совсем скоро — в феврале. Подробнее о ней расскажем под катом.

[][3]
[Читать дальше →][4]

[1]: https://habrahabr.ru/company/spbifmo/blog/334232/
[2]: https://abit.ifmo.ru/page/69/
[3]: https://habrahabr.ru/company/spbifmo/blog/347936/
[4]: https://habrahabr.ru/post/347936/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347936#habracut

[>] Блокчейн: возможности, структура, ЭЦП и задание для студента, часть 1
habra.16
habrabot(difrex,1) — All
2018-01-31 21:15:10


## Предисловие


Работаю ассистентом в вузе (как хобби), решил написать несколько лабораторных для студентов по дисциплине «распределенные системы». В первой части будет рассказано про возможности, структуру и ЭЦП, а во [второй части][1] про: проверку подписи, майнинг и примерную организацию сети. Отмечу, что не являюсь специалистом по распределенным системам (организация сети может быть не верной).
[Читать дальше →][2]

[1]: https://habrahabr.ru/post/348020/
[2]: https://habrahabr.ru/post/348014/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348014#habracut

[>] [Из песочницы] Установка Linux без .ISO и виртуализации
habra.16
habrabot(difrex,1) — All
2018-01-31 23:15:14


# Установка Linux без .ISO и виртуализации



Создание файловой системы, установка и клонирование Debian и Ubuntu с помощью скриптов radish.



# 1\. Назначение и возможности скриптов radish



Обычно установка системы Linux производится путём запуска какой-либо программы-установщика, поставляемой разработчиками дистрибутива. Это производится либо непосредственно на компьютере, на котором производится установка, либо в какой-либо изолированной среде, например, используя виртуализацию. Описываемые ниже процедуры следуют этим принципам только в самом минимально необходимом виде. При создании образа системы какие-либо установщики сводятся к генератору минимальной системы debootstrap и интерфейсу менеджера пакетов apt (оба поверх менеджера пакетов dpkg), а вместо виртуализации используется chroot.



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



Скрипты находятся на сервере Github и доступны [по ссылке][1].

[Читать дальше →][2]

[1]: https://github.com/abelits/radish
[2]: https://habrahabr.ru/post/348026/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348026#habracut

[>] И так сойдёт… или Дыра как средство защиты
habra.16
habrabot(difrex,1) — All
2018-01-31 23:30:14


![][1]



По мотивам "[И так сойдёт… или как данные 14 миллионов россиян оказались у меня в руках][2]"...



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



И чтобы расставить все точки над E, — я вовсе не пытаюсь оценить или как-то обелить "ответственные" лица, что с одной, что с другой стороны.
Я скорее просто попробую объяснить другой (возможно новый для некоторых читателей) концептуальный подход на примерах, в том числе и касающихся той статьи.



Кстати, то что в ней не всё или скорей всего возможно не совсем всё правда, "реальному хакеру" видно невооруженным глазом.
Например прочитав "_Утащил базу весом 5 Гб… сколько времени это качалось. Вы думаете, кто-то заметил?_" я лишь усмехнулся и продолжил чтение (ибо ИМХО некоторое преувеличение допускается в такого рода статьях).



Хотя автор и сам признал что он немного лгунишка апдейтом в конце статьи.


> конечно же, никакой базы у меня нет, на протяжении 3-х дней я эмулировал скачивание ...

Теперь почему это очевидно/вероятно (даже не принимая другие типовые ограничения во внимание):

[Читать дальше →][3]

[1]: https://habrastorage.org/webt/pl/vo/j8/plvoj8fkeijg-crcgtd_jhokvg8.jpeg
[2]: /post/347760/
[3]: https://habrahabr.ru/post/348016/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348016#habracut

[>] [Перевод] Как создать действительно случайный и доказуемо безопасный пароль
habra.16
habrabot(difrex,1) — All
2018-02-01 09:00:13


[![][1]][2]

Менеджеры паролей, такие как KeePass, 1Password и множество других, в значительной степени решают эту проблему. С их помощью вы можете генерировать уникальный и безопасный пароль для каждого сайта, который вы посещаете. Но такой менеджер защищен ровно настолько, насколько безопасен главный пароль, который вы используете для доступа к нему. Вы должны быть уверены, что его достаточная случайность и неугадываемость подтверждена количественными измерениями, а не только тем, что вы воспринимаете его случайным по причине наличия нескольких цифр или восклицательных знаков. Если нам требуется истинная случайность, нам понадобится кое-что специальное.

К счастью, есть возможность купить что-то недорогое, с достаточной энтропией набора вероятностей и способное генерировать 3 бита информации за раз. Без электричества и достаточно надежно, позволяя сотням миллионов долларов ежедневно менять владельцев, основываясь на непогрешимости этой случайности. [Читать дальше →][3]

[1]: https://habrastorage.org/webt/ns/lf/wg/nslfwgj6j8ahv0cdi0g1p0w2xr4.png
[2]: https://habrahabr.ru/company/cloud4y/blog/347952/
[3]: https://habrahabr.ru/post/347952/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347952#habracut

[>] SecurityWeek 2: армия клонов, Google охотится на привидений, Blizzard патчится
habra.16
habrabot(difrex,1) — All
2018-02-01 09:45:13


[Новость][1]
Судьба зловреда Exobot, с помощью которого злоумышленники добывали данные банковских карт пользователей еще с 2013 года, сложилась интереснее, чем у большинства подобных троянов — но весьма проблематично для экспертов безопасности. Авторы бота охотно сдавали его в аренду на любой срок, причем сервис оказался столь успешен коммерчески, что появилась даже вторая версия, переработанная практически с нуля. Что характерно, заказчики могли по своему желанию модифицировать троян с помощью контрольной панели, выбирая нужные им функции. Практически фабрика клонов со спецификациями на любой вкус.

А в прошедшем декабре организаторы этого центра клонирования во всеуслышание заявили, что собираются продать исходный код ограниченному кругу покупателей. Якобы они уже срубили с Exobot достаточно и выходят из бизнеса. Заявление звучит не очень логично, но может быть отчасти правдой: если им удалось сорвать большой куш, теперь добыча и собственная свобода перевешивают возможные выгоды. Но скорее всего, операторы Exobot постарались таким образом замаскировать желание уйти в тень и скрыться от пристального внимания. Как бы то ни было, после первых же продаж неприятности не заставили себя ждать: зловред пошел в серию.
[Читать дальше →][2]

[1]: https://threatpost.ru/exobots-source-code-got-sold/24183/
[2]: https://habrahabr.ru/post/348024/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348024#habracut

[>] Программный синтез звука на ранних персональных компьютерах. Часть 1
habra.16
habrabot(difrex,1) — All
2018-02-01 10:30:14


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


[Читать дальше →][1]

[1]: https://habrahabr.ru/post/348036/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348036#habracut

[>] Что, собственно, такое персональные данные?
habra.16
habrabot(difrex,1) — All
2018-02-01 12:30:15


![image][1]


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

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

Ответ, как это ни странно, — да.

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

Ранее в законодательном определении содержалось указание на конкретные примеры, которые каждый в отдельности или в совокупности с другой информацией составляли персональные данные. В текущей же редакции ст. 3 Федерального закона № 152-ФЗ примеров персональных данных не приводится, т. к. законодатель сделал упор на «духе закона», прямо оговорив, что к таким данным относится «любая информация, относящаяся к прямо или косвенно определённому или определяемому физическому лицу», отдав решение этого вопроса на откуп судебной практике.

Поэтому давайте разбирать на примерах, что есть ПДн, а что — нет.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/p6/r7/50/p6r750sppnx6agiefbmlypxqgyy.jpeg
[2]: https://habrahabr.ru/post/348046/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348046#habracut

[>] Разработка драйвера PCI устройства под Linux
habra.16
habrabot(difrex,1) — All
2018-02-01 12:45:14


![][1]
В данной статье я рассматриваю процесс написания простого драйвера PCI устройства под OC Linux. Будет кратко изучено устройство программной модели PCI, написание собственно драйвера, тестовой пользовательской программы и запуск всей этой системы.

В качестве подопытного выступит интерфейс датчиков перемещения ЛИР940/941. Это устройство, отечественного производства, обеспечивает подключение до 4 энкодеров с помощью последовательного протокола SSI поверх физического интерфейса RS-422.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/sf/xk/il/sfxkiltkrv6i--clz-dlrmgjrsw.jpeg
[2]: https://habrahabr.ru/post/348042/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348042#habracut

Pages: 1 ... 197 198 199 200 201 202 203 204 205 206 207 208 209 210