RSS
Pages: 1 ... 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ... 210
[>] Делаем кастомную прошивку для телефонов Grandstream
habra.14
habrabot(difrex,1) — All
2015-02-06 08:00:03


Наша компания наконец решила перейти на ip телефонию, и мы закупили ip телефоны Grandstream разных моделей, среди них были модели GXP2130 и GXP2160. Всё бы ничего, но BLF клавиши на этих телефонах, в случае свободной линии, светятся жутко ярким зелёным цветом, сильно раздражая. Ниже расскажу, как я решал эту проблему. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/859/85d/628/85985d6285ee436fa3c3a2224ae8c692.png
[2]: http://habrahabr.ru/post/249855/#habracut

[>] Вышел git 2.3
habra.14
habrabot(difrex,1) — All
2015-02-06 10:00:03


![][1] Приветствую вас, коллеги! Сегодня утром гитхаб опубликовал подробную [статью][2] о свежевышедшой версии git. Забрать ее, как обычно, можно на [официальном сайте][3], а под катом — краткий перевод что нового и интересного: push-to-deploy, ручное управление параметрами SSH, способ предотвратить зависание cron скриптов с клиентом git и многое другое. [Читать дальше →][4]

[1]: //habrastorage.org/files/cd2/8d8/511/cd28d8511e7b40339a532748c71e32d2.png
[2]: https://github.com/blog/1957-git-2-3-has-been-released
[3]: http://git-scm.com/
[4]: http://habrahabr.ru/post/249857/#habracut

[>] Microsoft выплатила рекордные $125k за эксплойт
habra.14
habrabot(difrex,1) — All
2015-02-06 13:30:02


Microsoft выплатила $100k security-ресерчерам из группы [Zero Day Initiative (ZDI)][1] за демонстрацию метода успешного обхода новейших механизмов защиты Internet Explorer 11 от уязвимостей. Речь идет о механизмах браузера под общим названием Anti-Use-After-Free (_Anti-UAF_). Еще $25k были выплачены за продемонстрированный механизм защиты от обнаруженной уязвимости. Выплаты производились в рамках поддерживаемой компанией инициативы под названием _[Mitigation Bypass and BlueHat Defense][2]_.

> To collect the main $100,000 prize, the team outlined techniques and steps to attack the
>
> _ Isolated Heap_
>
> and
>
> _MemoryProtection _
>
> functions in the latest version of Microsoft Internet Explorer. Along with this, they describe how an attacker can use MemoryProtection as an oracle to completely bypass ASLR.

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

[1]: http://h30499.www3.hp.com/t5/HP-Security-Research-Blog/HPSR-Microsoft-disclosure-and-the-125-000-bug-bounty/ba-p/6704588
[2]: https://technet.microsoft.com/en-US/security/dn425049
[3]: http://habrastorage.org/getpro/habr/post_images/475/447/2a5/4754472a5249d9a90e508adc21077da0.png
[4]: http://habrahabr.ru/post/249877/#habracut

[>] Оператор мобильной связи не в силах предотвратить выдачу дубликатов сим-карт злоумышленникам
habra.15
habrabot(difrex,1) — All
2015-09-22 15:30:03


![image][1]В интернете набирает обороты [история][2] с многократной выдачей дубликата одной и той же сим-карты злоумышленникам и последующим хищением средств. Вкратце, мошенники, используя подложную доверенность, оформили выдачу дубликата сим-карты жертвы, а затем, используя дубликат, похитили с различных мобильных и банковских счетов солидную сумму денег. Подобные случаи безусловно происходили и раньше. Изюминка же ситуации в том, что на этот раз жертвой мошенников стало известное и высокопоставленное лицо, а дубликат сим-карты выдали несколько раз за сутки в разных офисах оператора ( и разных городах). При этом у абонента уже была установлена «блокировка» выдачи дубликатов на все офисы оператора, кроме одного, да и то по предъявлению паспорта и кодового слова самим абонентом ( но никак не доверенности). Оператор связи показал полную беспомощность в данной ситуации и не способность защитить своего абонента, а руководство компании оператора связи предприняло шаги, результат которых пока не ясен, только после [придания огласки][3] истории широкой аудитории. До этого момента компания ограничилась предоставлением бонусных 2000 рублей на счет пострадавшего абонента. И если финансовые потери пострадавшего еще можно как-то возместить, то **утечка конфиденциальных данных может представлять собой куда большую проблему**. Что же делать простым смертным, не обладающим возможностью подобным образом «достучаться до оператора»? Мошенники действуют быстро и слажено, а операторы крайне медлительны в рассмотрении подобных жалоб. [Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/00f/5b6/f44/00f5b6f442749596861de60587234227.jpg
[2]: https://roem.ru/21-09-2015/207313/beeline-hustling/
[3]: https://www.facebook.com/annaznamenskaya/posts/10207689697860791
[4]: http://habrahabr.ru/post/267447/#habracut

[>] Docker: Полуавтоматическая винтовка с самонаведением на ногу
habra.15
habrabot(difrex,1) — All
2015-09-22 18:00:03




#### Как не надо использовать Docker.

Начало: [habrahabr.ru/post/267441][1] Чтобы понимать эту статью надо знать базовые команды Dockerfile для создания изображений и принципы объектно-ориентированного дизайна. Открываю документацию любого официального образа сервисного ПО — например, Nginx и нахожу раздел «How to use this image». Нам предлагают создать свой образ на базе официального, скопировав в него наши файлы, настроить мапинг порта в мир, и подмонтировать свою папку с конфигами.

FROM ...
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp


Да, нам предлагают унаследовать Model от View в одном звездном классе и заплатить за хранение на Docker Hub образов наших проприетарных приложений. [Читать дальше →][2]

[1]: http://habrahabr.ru/post/267441/
[2]: http://habrahabr.ru/post/267451/#habracut

[>] DevExpress на Go#Moscow – День ASP.NET
habra.14
habrabot(difrex,1) — All
2015-02-06 14:00:02


28 февраля наша компания примет участие в очередной конференции Go#Moscow – «[День ASP.NET][1]». Это первая конференция серии, специализированная на конкретной технологии (ранее мероприятия были посвящены .NET в целом). Все содержательные аспекты конференции сфокусированы на ASP.NET:

* тематика докладов варьируется от кроссплатформенной разработки на ASP.NET vNEXT до примеров использования Dependency Injections/Inversion of Control и решений в архитектуре веб-приложений с использованием Azure;
* спикеры обладают обширным опытом в разработке веб-приложений, а некоторые являются Microsoft MVP и Microsoft Regional Director;
* aудитория составит около 200 человек, так или иначе связанных с ASP.NET.

Так что если вы ASP.NET-разработчик или интересуетесь веб-разработкой на .NET, присоединяйтесь – конференция обещает быть интересной! Организаторы приложат усилия, чтобы доставить спикеров к открытию и не отпускать их до самого конца конференции, чтобы вы могли задать им свои вопросы. ![][2] А сейчас мы расскажем о нашем участии. От DevExpress будет выступать Роман Решетников, ведущий разработчик команды ASP.NET. Он расскажет о нашем опыте разработки сложных клиент-серверных приложений на TypeScript и ASP.NET. [Читать дальше →][3]

[1]: http://www.gosharp.ru/ASPNET2015
[2]: //habrastorage.org/files/eac/534/638/eac53463866443b3802d0a39b15b93a9.jpg
[3]: http://habrahabr.ru/post/249881/#habracut

[>] Эксплоит на миллион
habra.15
habrabot(difrex,1) — All
2015-09-22 18:00:03


Вчера в сети появилась информация, что независимые торговцы эксплоитами в программном обеспечении назначили награду в один миллион долларов США тому, кто предоставит информацию о рабочей уязвимости «нулевого дня» в iOS 9. ![image][1] Награду для специалистов в области безопасности и хакеров, которые смогут найти 0day-уязвимость, [объявил][2] стартап Zerodium в этот понедельник.

> Zerodium заплатит один миллион долларов США (
>
> **$ 1,000,000.00**
>
> ) каждому специалисту или команде, которые предоставят нам эксклюзивную информацию об уязвимости на основе браузера или непривязанного джейлбрейка в последней операционной системе компании Apple — iOS 9.

Предложение действует до 31 октября 2015 года, 18:00 по времени восточного побережья. Программу могут закрыть досрочно, если сумма выплат превысит выделенный на нее бюджет в **$ 3,000,000.00** США. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/c1e/09d/814/c1e09d814cdd5616d86af8ca791135a6.png
[2]: https://www.zerodium.com/ios9.html
[3]: http://habrahabr.ru/post/267465/#habracut

[>] [Перевод] Кодинг — не новая грамотность
habra.14
habrabot(difrex,1) — All
2015-02-06 16:00:02


![image][1] Несмотря на то, что движение по обучению людей программированию имеет благие намерения, основные предпосылки и подход к этому вопросу — ошибочны. Движение основано на идее, что «коддинг — новая грамотность», однако оно имеет узкий взгляд на то, что такое «грамотность» на самом деле. Если вы поищите в Google понятие грамотности, получите механическое определение: _умение читать и писать._ Это, конечно, достаточно точное определение, но ограничивать грамотность лишь формулировкой мыслей и заметками на листке бумаги чрезвычайно некорректно. Чтение и письмо — физические действия, с помощью которых мы создаём внешнее хранилище для мыслей, которым можно поделиться с другими. Быть грамотным — это не умение расставить в правильном порядке слова на бумаге, это значит иметь возможность сформулировать мысль так, чтобы ее можно было записать. Интерпретация и использование мыслей кого-то другого — равнозначно понятию чтения. Познавательные и аналитические способности человека — вот реальная грамотность. [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/216/d5c/72c/216d5c72c7b85da43ae812f2829ba898.jpg
[2]: http://habrahabr.ru/post/249903/#habracut

[>] [Из песочницы] Случайный лабиринт на JS в сами знаете сколько строк
habra.14
habrabot(difrex,1) — All
2015-02-06 17:00:03


Начитавшись статей про [все что угодно] на JavaScript в 30 строк кода, я подумал: чем я хуже? Не найдя в перечне своих недостатков пункт «написание плохого кода», решил сделать что-нибудь интересное. Лабиринты всегда веяли в мою сторону некоторой магией и загадками, поэтому поиск «чего-нибудь интересного» закончился достаточно быстро. К сожалению, создание игры затянулось на долгие часы экспериментов над консолью и моими нервами. Изначально, осознавая размеры праведного гнева адептов непорочного программирования, я не планировал публиковать свои труды, но после того, как игра понравилась коту, паре друзей и моему самолюбию — решил написать статью (благо в нее можно внедрить теоретическую часть). Для сторонников принципа «меньше знаешь — крепче спишь» предлагается [cсылка][1] на JSFiddle (управление стрелочками). [Читать дальше →][2]

[1]: http://jsfiddle.net/universome/YzBL5/embedded/result/
[2]: http://habrahabr.ru/post/249929/#habracut

[>] Adobe исправила очередную опасную уязвимость Flash Player
habra.14
habrabot(difrex,1) — All
2015-02-06 20:30:02


Компания Adobe выпустила очередное внеплановое обновление для Flash Player ([APSB15-04][1]). На этот раз речь идет о 0day уязвимости CVE-2015-0313, которая использовалась атакующими для осуществления атак drive-by download (скрытная установка вредоносного ПО). Это третье обновление Flash Player за последние две недели. Как мы уже писали [ранее][2], Adobe выпускала внеплановые обновления Flash Player для закрытия других Remote Code Execution 0day уязвимостей, находящихся на стадии активной эксплуатации.

> Adobe is aware of reports that CVE-2015-0313 is actively
>
> _being exploited in the wild via drive-by-download attacks against systems running Internet Explorer and Firefox on Windows 8.1_
>
> and below.

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

[1]: http://blogs.adobe.com/psirt/?p=1175
[2]: http://habrahabr.ru/company/eset/blog/249001/
[3]: http://habr.habrastorage.org/post_images/7d0/bd9/84a/7d0bd984afd2bb9901c5014a5b3649c9.jpg
[4]: http://habrahabr.ru/post/249893/#habracut

[>] [Из песочницы] Январское обновление Raspberry Pi, ломающее стример
habra.14
habrabot(difrex,1) — All
2015-02-06 23:00:02


Январские обновление прошивки от Raspberry Pi для Raspbian принесло в себе сюрприз в качестве неработающего потока с камеры, обрабатываемого при помощи MJPG-Streamer. Казалось бы, все происходит как обычно: штатно стартует MJPG-Streamer, работает и доступен веб сервер, но картинки нет. В логах нет ни ошибок, ни предупреждений. В заметке представлено найденное решение подобной ситуации. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/249909/#habracut

[>] XSS уязвимость в Mobli
habra.14
habrabot(difrex,1) — All
2015-02-07 00:00:02


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

> [Mobli][2]
>
> — это социальная сеть для обмена фотографиями и видео. Примерное кол-во пользователей 22 миллиона.

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

[1]: http://habrahabr.ru/post/249589/
[2]: http://en.wikipedia.org/wiki/Mobli
[3]: http://habrastorage.org/getpro/habr/post_images/640/1a6/962/6401a6962b2ea7a2d1540aba9175be82.jpg
[4]: http://habrahabr.ru/post/249891/#habracut

[>] Практическая подготовка в пентест-лабораториях. Часть 3
habra.15
habrabot(difrex,1) — All
2015-09-22 20:00:03


![][1] «[Корпоративные лаборатории][2]» — программа профессиональной подготовки в области информационной безопасности, состоящая из теоретической (курсы-вебинары) и практической подготовки (работа в пентест-лабораториях). В данной статье будет рассмотрено содержание именно практической базы, составляющей порядка 80% от общей программы обучения. [Читать дальше →][3]

[1]: https://habrastorage.org/files/d55/a03/dc8/d55a03dc8b044b2099afc4aefc3e95dd.png
[2]: https://www.pentestit.ru/labs/corp-lab
[3]: http://habrahabr.ru/post/267423/#habracut

[>] Приключения на FOSDEM 2015
habra.14
habrabot(difrex,1) — All
2015-02-07 02:00:02


Странно, что в русскоязычных СМИ об этом никто не пишет, но несколько дней назад в Брюсселе с успехом прошло крупнейшее европейское мероприятие FOSDEM 2015. Я уже посещал его раньше (в 2007 выступал с [докладом про ReactOS][1], в 2009 — [стенд ReactOS][2]). И, по сравнению с тем, что было раньше — популярность FOSDEM'а растёт из года в год. Согласно официальной статистике в 2014 году к сети FOSDEM подключалось 8 тыс. уникальных MAC-адресов, а в 2015 — около 15 тыс! Можете выбрать свой коэффициент устройств на человека, как вариант: 1.5 устройства на человека: **10 тыс. человек**. 0.8 устройств на человека: 18 тыс. человек. И это действительно ощущалось. ![][3] [Читать дальше →][4]

[1]: http://www.youtube.com/watch?v=_6sN9AO4U9I&list=PLjSDyY6BQPVdd4vGNmfbjJuvvTWHK96tQ&index=4
[2]: http://www.youtube.com/watch?v=QX90cUbgS6M&index=8&list=PLjSDyY6BQPVdd4vGNmfbjJuvvTWHK96tQ
[3]: //habrastorage.org/files/901/5af/a2e/9015afa2e13849778e696688cf00b991.jpg
[4]: http://habrahabr.ru/post/249917/#habracut

[>] Как обойти экран блокировки в iOS не зная пароль
habra.15
habrabot(difrex,1) — All
2015-09-23 00:00:03


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




Для тех, кто не хочет смотреть видео или у кого не получилось воспроизвести привожу подробную инструкцию. Главное во втором шаге. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/267475/#habracut

[>] MyTOTP — полностью своя* двухфакторная авторизация по rfc6238
habra.14
habrabot(difrex,1) — All
2015-02-07 04:00:03


![][1] Итак, вы решили внедрить двухфакторную авторизацию для своего проекта, и решили не следовать примеру [Яндекса ][2]и изобретать свой новый стандарт, а воспользоваться существующим, а именно [TOTP по rfc6238][3] Алгоритмы генерации и валидации одноразовых кодов достаточно подробно описаны как в самом RFC, так и многочисленных имплементациях для всех [языков и платформ][4]. Примеры реализации есть как для серверной части, так и для клиентской (в случае если для TOTP используется не аппаратный ключ, а мобильное приложение). К сожалению, очень часто в команде может не оказаться ресурсов для создания своего мобильного приложения для генерации одноразовых паролей (имею ввиду как отсутствие мобильных разработчиков чтобы сделать самим или финансов для outsource). В этом случае наиболее распространенным выходом из положения является использование «чужого» приложения (например того же Google Authenticator-а), но в этом случае решение будет не полностью свое (вот на что намекает звездочка в заголовке). А хотите двухфакторную авторизацию полностью свою и за минимум вложений? Тогда вам под кат [Читать дальше →][5]

[1]: //habrastorage.org/files/b06/d45/729/b06d45729bbe4975bb8a05e385342d77.png
[2]: http://habrahabr.ru/company/yandex/blog/249547/
[3]: https://tools.ietf.org/html/rfc6238
[4]: https://github.com/search?utf8=%E2%9C%93&q=totp
[5]: http://habrahabr.ru/post/249921/#habracut

[>] О безопасности UEFI, часть четвертая
habra.15
habrabot(difrex,1) — All
2015-09-23 02:30:02


![][1] Продолжаем говорить о безопасности UEFI, на этот раз речь пойдет об атаках на NVRAM и защите от них. Неплохая, казалось бы, идея о том, что на микросхеме SPI можно хранить настройки практически вечно, не полагаясь на ненадежную и зависящую от батарейного питания CMOS SRAM, сыграла с разработчиками UEFI весьма злую шутку, теперь NVRAM с каждой новой версией стандарта обрастает все большим количеством костылей и подпорок, и конца этому процессу не видно. Если вам интересно, что именно пытаются подпереть костылем — эта статья для вас. По традиции, всех, кто еще по каким-то причинам не читал [первые][2] [три][3] [части][4] — рекомендую начать с них, остальных с нетерпением жду под катом. [Читать дальше →][5]

[1]: https://habrastorage.org/files/3b1/cfb/1e9/3b1cfb1e9a9241929a2822e25e91def5.jpg
[2]: http://habrahabr.ru/post/266935/
[3]: http://habrahabr.ru/post/267197/
[4]: http://habrahabr.ru/post/267237/
[5]: http://habrahabr.ru/post/267491/#habracut

[>] Еще один способ отключения сбора телеметрии в OC Windows 10
habra.15
habrabot(difrex,1) — All
2015-09-23 11:00:09




> _Микрософт с помощью пасьянса и косынки учила пользователей пользоваться мышью, теперь с помощью windows 10 учит читать лицензионное соглашение._

После выхода windows 10 сразу появились сообщения о сборе информации о действиях пользователей и много обсуждений, что делать. Достаточно быстро пользователи составили список основных серверов, собирающих информацию и попытались их заблокировать через файл localhost. Но скептики сразу выдвинули здравое предположение, что MS мог предусмотреть этот метод и некоторые адреса прописать в коде. Тем более, что MS всегда может актуализировать адреса серверов через windows update. В нашей компании начали появляться первые пользователи windows 10, и мы решили опробовать блокировку передачи телеметрии через встроенный windows firewall. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/267507/#habracut

[>] Школа программистов HeadHunter — открываем набор 2015/16
habra.15
habrabot(difrex,1) — All
2015-09-23 12:30:03


![Школа программистов][1] Сентябрь — начало учебного года не только в школах и университетах. HeadHunter в очередной (уже шестой!) раз объявляет набор в [Школу программистов][2]. В этом году, как и в предыдущем, мы будем готовить full-stack разработчиков, готовых ко всем вызовам современной web-разработки. Обучение будет проходить два раза в неделю в вечернее время в московском офисе HeadHunter рядом с метро Алексеевская. Для поступления в школу необходимо [заполнить анкету][3] на сайте и пройти небольшое тестирование. Прошедшим этот этап кандидатам мы вышлем дополнительные задания, по результатам которых пригласим вас на собеседование. [Что мне даст школа программистов HeadHunter?][4]

[1]: https://habrastorage.org/files/326/7ac/7fe/3267ac7fe9104197a86b61f9564061b2.png
[2]: http://school.hh.ru
[3]: http://school.hh.ru/#form
[4]: http://habrahabr.ru/post/267415/#habracut

[>] [Перевод] Реплицируемый объект. Часть 1: Введение
habra.15
habrabot(difrex,1) — All
2015-09-23 13:00:04


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

## Аннотация



> 1. Есть страдание.
> 2. Есть причина страдания.
> 3. Есть прекращение страдания.
> 4. Есть путь, ведущий к избавлению от страданий.
>
>
>
> _4 благородные истины буддизма_
>
>

Настоящая статья содержит описание раннего прототипа, который вводит понятие _реплицируемого объекта_ (replicated object) или сокращённо _replob_. Такой объект является дальнейшим переосмыслением борьбы со сложностью кода, возникающего при программировании распределённых систем. Replob устраняет зависимость от стороннего сервиса и реализует согласованное изменение любых пользовательских объектов, представляющих соответствующие данные и функциональность. Эта идея основана на использовании выразительности языка C++ и объектно-ориентированного подхода, что позволяет использовать сложную логику внутри распределённых транзакций. Это позволяет значительно упростить разработку отказоустойчивых приложений и сервисов. Последующие статьи будут более детально объяснять развиваемый подход.

## Введение

**ПРЕДУПРЕЖДЕНИЕ**. Почти все методы, указанные в статье, содержат грязные хаки памяти и ненормальное использование языка C++. Так что, если вы не толерантны к таким извращениям, пожалуйста, не читайте эту статью. На текущий момент, тематика, связанная с распределёнными системами, является одной из самых интересных, и привлекают большое количество людей, включая разработчиков и учёных. Популярность объясняется просто: мы должны создавать надежные отказоустойчивые системы, которые обеспечивают безопасную среду для выполнения различных операций и для хранения данных. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/267509/#habracut

[>] Понять Open Source
habra.15
habrabot(difrex,1) — All
2015-09-23 13:00:04






__

Опен сорс заставляет меня чувствовать себя мазохистом.
Я люблю его, однако часто работа с ним – боль.
(c) Мой

Когда-то – может, уже лет 10 назад – было модно предрекать конец опен сорсу. Интернет пестрил заголовками типа «Почему Open Source скоро умрет» или «Почему Open Source никогда не победит платное ПО». Это не точные заголовки. Скорее, впечатление, которое сохранилось с тех пор. Сейчас мы видим, что опен сорс цветет и пахнет. Иногда хорошо пахнет, иногда – не очень. Но в целом по-прежнему набирает популярность и даже как-то эволюционирует. Собственно, об этом и поговорим: о том, что Open Source представляет собой сейчас, и куда будет двигаться дальше. Хотелось бы увидеть в комментариях ваши мнения по этому поводу. Сразу предупрежу, что я не аналитическое агентство. Поэтому не предоставлю масштабной статистики с построенными на ней далеко идущими выводами. Скорее, я ограничусь «далеко идущими выводами», основанными на моей работе с открытым кодом, на общении с людьми, которые тоже этим занимаются, и на наблюдениях за деятельностью различных компаний в этой области. Я запланировал три поста, которые опубликую, если тема покажется интересной:

1. Этот пост, где поговорим о том, как научиться понимать Open Source
2. Модели использования Open Source для достижения бизнес-целей
3. В третьем посте я предложу нестрогую классификацию открытого кода по его профпригодности. По тому, насколько удобно, эффективно и полезно работать с различными сторонними проектами.

[Поехали!][1]

[1]: http://habrahabr.ru/post/267473/#habracut

[>] Классификация знаний в области программирования
habra.14
habrabot(difrex,1) — All
2015-02-07 14:30:02


2 года назад я написал статью о классификации знаний в области программирования. Это было на волне интереса и моей активной деятельности по самообразованию в компьютерных науках. Написал статью и забыл о ней. Публиковать на Хабре не собирался. В конце концов, она базируется на моем личном опыте и знаних, которые могут оказаться весьма субъективны. Недавно, на фоне постоянно поступающих вопросов «как научиться программированию?», я вспомнил про этот материал и перечитал его. Прошло уже 2 года, пополнился опыт, добавились знания, изменились взгляды. Но эта статья для меня не утратила актуальности, и я не нашел почти ничего, что хотел бы в ней изменить. Мне показалось, что она все же достойна публикации. И, возможно, кому-то она поможет в собственном профессиональном развитии. Но прежде, чем «запустить» материал, еще небольшое отступление. О том, почему вообще я все это писал. Дело в том, что у нас в странах бывшего СССР с образованием в области IT очень туго. С одной стороны нет программ обучения, которые подготовят специалистов на должном уровне (наверное, за очень редкими исключениями, которые можно отнести к погрешности). С другой стороны, из-за широких возможностей самообразования, программисты и не спешат учиться в ВУЗах — все стремятся начать практиковать как можно раньше. Часто изучается только одно направление (например PHP+Mysql — самое популярное) и в бой. Причем, на этом все заканчивается. В итоге у нас огромное количество программистов, которые и базовых вещей не знают. Отсюда вытекают проблемы с качеством кода, и с эффекивностью алгоритмов, с велосипедированием. Но программирование — это полноценная область знаний, которая требует в том числе и инженерной подготовки. Точно так же, как строительство или телекоммуникации. Да, построить дом (особняк) можно своими руками и без образования. А поднять большинство сайтов можно прочитав пару книг по PHP и HTML. Но многоэтажку без специальной подготовки не построишь, как и Гугл не напишешь, не зная основ. Возможности для самообразования в компьютерных науках сейчас огромны. Единственное, чего не хватает, — это системности подготовки. Как разобраться, что и в какой последовательности изучать? Мне кажется, что этот материал поможет разложить по полочкам области знаний в компьютерных науках и составить для себя программу изучения по книгам. Выбор книг — тема отдельная, в рамки статьи не входит, но это можно обсудить в комментариях. Поехали. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/249983/#habracut

[>] Как мы ABC анализ для ритейла делали, или «без пол-литра не разберешься»
habra.15
habrabot(difrex,1) — All
2015-09-23 13:00:04


Пословицы сами по себе не появляются… Иногда в такие дебри аналитики залезаешь, что поневоле рука к шкафчику с горячительными тянется (да ладно, мы знаем он есть в каждом офисе). [][1]



Но будем говорить немного о другом. В ритейле, логистике, управлении складом и запасами есть такая вещь как **АВС анализ**. О нем уже написано немало теоретических публикаций. И вроде бы все относительно просто и понятно, но так ли это на самом деле? Когда категорийный менеджер или маркетолог торговой сети вплотную подходит к проведению АВС анализа у него неизбежно возникает целый ворох вопросов, колебаний и сомнений. Именно с ними мы и будем работать в данной статье! Пройдемся по алгоритму действий при АВС-анализе в продуктовых торговых сетях, исключениях из правил, которые обязательно нужно учитывать, покажем пример проведения анализа по товарной группе Алкогольных напитков (да-да, именно те пол-литра). [Читать дальше →][2]

[1]: http://habrahabr.ru/company/datawiz/blog/267175/
[2]: http://habrahabr.ru/post/267175/#habracut

[>] Официальный релиз первого телефона с Ubuntu Phone внутри
habra.14
habrabot(difrex,1) — All
2015-02-07 15:00:02


Дорогие друзья, хочется рассказать вам о том, что состоялся долгожданный и неоднократно откладываемый релиз Ubuntu Phone!

#### Вкратце о новинке

![image][1] Первый телефон выпустила испанская компания BQ, он носит название Aquaris E4.5 Ubuntu Edition (вторая часть которого намекает, что телефон и ранее присутствовал на рынке и просто был адаптирован под UP). Сам по себе телефон имеет довольно скромные характеристики (которые можно увидеть под катом), однако и цена соответствующая — €169.90 (или примерно $190). Из этого несложно сделать вывод, что конкретно эта модель будет в первую очередь бороться за рынок бюджетных устройств (где доминирует Android и уже показывает неплохую конкуренцию Windows, [например][2]). Продажи начнутся в понедельник, 9 февраля. [Подробности][3]

[1]: http://habrastorage.org/getpro/habr/post_images/1ba/63d/48f/1ba63d48f27098025c6af00bdc26f0f7.jpg
[2]: http://www.theverge.com/2015/1/14/7544107/microsoft-lumia-435-532-launch-specs-price-release-date
[3]: http://habrahabr.ru/post/249985/#habracut

[>] STM32 и FreeRTOS. 5. Приносим пользу и добро!
habra.14
habrabot(difrex,1) — All
2015-02-07 15:30:02


_На всякий случай, а то вдруг санкции применят (смаил). Описываемый случай не имеет никакого отношения к реальности и является целиком и полностью выдумкой автора_ Раньше было [про потоки][1], [семафоры][2], [очереди][3] и [HAL][4] Как-то раз попросили меня посмотреть на одно очень дорогостоящее устройство. Проблема была одна: среди использующих это устройство возникло стойкое убеждение, что 99,99% его цены происходит от того факта, что производитель этого устройства монополист в своей сфере и деваться пользователям этого устройства некуда. ![][5] Вооружившись осциллографом, я полез внутрь. [Читать дальше →][6]

[1]: http://habrahabr.ru/post/249273/
[2]: http://habrahabr.ru/post/249283/
[3]: http://habrahabr.ru/post/249381/
[4]: http://habrahabr.ru/post/249395/
[5]: //habrastorage.org/files/eed/a97/e55/eeda97e553ca41cfa4b38b451dd3aae1.jpg
[6]: http://habrahabr.ru/post/249975/#habracut

[>] OpenOCD, ThreadX и ваш процессор
habra.14
habrabot(difrex,1) — All
2015-02-08 04:30:02


Данная заметка может оказаться полезной для людей, который пишут bare-metal код и используют ThreadX в своих задачах (по собственному выбору или по навязыванию SDK). Проблема в том, что что бы эффективно отлаживать код под ThreadX или другую многопоточную операционную систему нужно иметь возможность видеть эти самые потоки, иметь возможность посмотреть стек-трейс, состояние регистров для каждого потока. OpenOCD ([Open On Chip Debugger][1]) [заявляет поддержку ThreadX][2], но не сильно явно оговаривает её широту. А штатно, на момент написания статьи, в версии 0.8.0, это всего два ядра: Cortex M3 и Cortex R4. Мне же, волею судеб, пришлось работать с чипом Cypress FX3 который построен на базе ядра ARM926E-JS. Под катом рассмотрим что нужно сделать, что бы добавить поддержку вашей версии ThreadX для вашего CPU. Акцент делается на ARM, но, чисто теоретически, вполне может подойти и для других процессоров. Кроме того, рассматривается случай, когда доступа к исходникам ThreadX нет и не предвидится. [Читать дальше →][3]

[1]: http://openocd.sourceforge.net/
[2]: http://openocd.sourceforge.net/doc/html/GDB-and-OpenOCD.html#gdbrtossupport
[3]: http://habrahabr.ru/post/249991/#habracut

[>] Ограничение количества попыток ввода пароля в веб-форме авторизации WordPress при помощи Nginx или HAProxy
habra.14
habrabot(difrex,1) — All
2015-02-08 11:00:02


Рассмотрим на примере WordPress способ усиления безопасности при помощи ограничения количества HTTP-запросов к форме ввода пароля. Это позволит оградить опубликованный блог от брутфорса (поиска и взлома пароля путем перебора всех теоретически возможных вариантов из определенного набора символов или подбора по словарю распространенных паролей). Данный способ, в принципе, можно использовать и для защиты других веб-приложений. Задача может быть реализована в Nginx с помощью модуля ngx\_http\_limit\_req\_module [[1][1]], выступающем в роли фронт-энда к Apache или веб-сервера FastCGI, или же с помощью HAProxy [[2][2], [3][3]], выступающем в роли балансировщика нагрузки перед веб-серверами. В обоих случаях алгоритм работы следующий. При аутентификации браузер обращается по адресу, содержащему в себе подстроку "/wp-login.php". Необходимо отследить ее и ограничить количество запросов с одного IP не затрагивая обращения по всем остальным адресам. Параметры блокировки необходимо подобрать таким образом, чтобы не создавать неудобств обычным пользователями. Особенно внимательно следует настраивать блокировки в том случае, когда формой авторизации пользуется большое количество пользователей с одного IP-адреса. [Читать дальше →][4]

[1]: http://nginx.org/ru/docs/http/ngx_http_limit_req_module.html
[2]: http://blog.haproxy.com/2013/04/26/wordpress-cms-brute-force-protection-with-haproxy/
[3]: http://blog.serverfault.com/2010/08/26/1016491873/
[4]: http://habrahabr.ru/post/250023/#habracut

[>] Git game или в поисках Линуса Торвальдса
habra.14
habrabot(difrex,1) — All
2015-02-08 11:30:03


![][1] Наткнулся сегодня на этот замечательный проект. Из файла README.md [репозитория проекта][2]: Это игра для терминала, цель которой проверить ваш уровень знаний Git. Каждый уровень в игре это задание, которое необходимо выполнить в этом репозитарии. Посе выполнения текущего задания вы получите следующее задание. Всего есть 10 уровней, которые возрастают по сложности!

### Поехали!

Склонируйте репозиторий командой:

$ git clone https://github.com/hgarc014/git-game.git


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

[1]: //habrastorage.org/files/876/c08/62d/876c0862d68f483d9ed0883ffd4b0038.png
[2]: https://github.com/hgarc014/git-game
[3]: http://habrahabr.ru/post/250025/#habracut

[>] Под капотом рендеринга навигационных данных в MAPS.ME
habra.15
habrabot(difrex,1) — All
2015-09-23 13:30:03


![][1] Всем привет! Навигация в приложении MAPS.ME является одной из главных особенностей, на которые мы делаем упор. Недавно мы рассказали вам про [пешеходную навигацию][2]. Сегодня я хочу вам рассказать о том, как мы отображаем навигационные данные в MAPS.ME. Под навигационными данными я подразумеваю линии маршрута, стрелочки для отображения маневров и положение пользователя на маршруте. Данный пост не коснется ни алгоритмов построения маршрутов по данным OSM, ни алгоритмов выделения маневров, а исключительно рендеринга. Заинтересовавшихся прошу под кат. [Читать дальше →][3]

[1]: https://habrastorage.org/files/d1e/470/fed/d1e470fed878447db884f67311fd1fce.png
[2]: http://habrahabr.ru/company/mailru/blog/265249/
[3]: http://habrahabr.ru/post/266693/#habracut

[>] Хакатон на школе InterSystems 2015
habra.15
habrabot(difrex,1) — All
2015-09-23 14:00:04


InterSystems никогда раньше не проводила хакатонов. Школы собирали каждый год, тренировали, разбивали на команды, делали задания, различной продолжительности, но так это не называли. Но время идет. Не хотелось в очередной раз повторять одно и тоже. Хотелось чего-то нового. Хакатонов, тех же. Если уж мы собираем полсотни высокопрофессиональных программистов Caché почему бы не попытаться, разбив их на команды, создать нечто новое? Не все, скорее всего, согласятся участвовать и захотят программировать ночи напролет, но даже и малая часть, всего две-три команды вполне могут создать что-то стоящее. Даже если в итоге получится всего пара, но осмысленных проектов, то будем считать эксперимент успешным. (И забегая вперед, мы можем с удовлетворением констатировать, что получили больше чем «пару» достойных проектов) [Читать дальше →][1]

[1]: http://habrahabr.ru/post/267459/#habracut

[>] Современные методы взлома корпоративных сетей и систем на конференции «Secure IT World 2015»
habra.15
habrabot(difrex,1) — All
2015-09-23 15:00:03


![][1] _2 октября 2015 года в Культурно-деловом центре «Club House» состоится конференция по информационной безопасности «Secure IT World 2015», в которой, помимо [основной программы][2], будет доступен специальный стенд, позволяющий участникам мероприятия наблюдать за хакерскими атаками на корпоративную сеть лаборатории «Test lab» в режиме реального времени. Оснащенный большим дисплеем с мировой картой онлайн атак, стенд позволит получить визуальное представление о географической распределенности хакеров и интенсивности взлома, а сотрудники PENTESTIT проконсультируют и ответят на любые интересующие вопросы, связанные с современными ИБ-угрозами. _ [Читать дальше →][3]

[1]: https://habrastorage.org/files/eca/67e/f81/eca67ef818aa4e54b73e662ed95f3aaa.png
[2]: http://www.event-house.ru/content/%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0-secure-it-world
[3]: http://habrahabr.ru/post/267017/#habracut

[>] Brotli — новый алгоритм сжатия данных для веба от Google
habra.15
habrabot(difrex,1) — All
2015-09-23 15:30:04


![image][1] Так как веб-сайты и онлайн-сервисы с каждым годом становятся все «тяжелее», возрастает необходимость и сжатия данных в вебе. По этой причине Google выпустил новый алгоритм сжатия данных для веб-сайтов — Brotli, что в переводе с швейцарского немецкого означает «маленькая булка хлеба». Алгоритм уже доступен широкой аудитории **[на GitHub][2]**. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/72f/5da/7c3/72f5da7c3efa235ad7d6ab685ccbfe4a.jpg
[2]: https://github.com/google/brotli/
[3]: http://habrahabr.ru/post/267533/#habracut

[>] Ограничение количества попыток ввода пароля в веб-форме авторизации при помощи Nginx или HAProxy на примере WordPress
habra.14
habrabot(difrex,1) — All
2015-02-08 12:30:02


Рассмотрим на примере WordPress способ усиления безопасности при помощи ограничения количества HTTP-запросов к форме ввода пароля. Это позволит оградить опубликованный блог от брутфорса (поиска и взлома пароля путем перебора всех теоретически возможных вариантов из определенного набора символов или подбора по словарю распространенных паролей). Данный способ, в принципе, можно использовать и для защиты других веб-приложений. Задача может быть реализована в Nginx с помощью модуля ngx\_http\_limit\_req\_module [[1][1]], выступающем в роли фронт-энда к Apache или веб-сервера FastCGI, или же с помощью HAProxy [[2][2], [3][3]], выступающем в роли балансировщика нагрузки перед веб-серверами. В обоих случаях алгоритм работы следующий. При аутентификации браузер обращается по адресу, содержащему в себе подстроку "/wp-login.php". Необходимо отследить ее и ограничить количество запросов с одного IP не затрагивая обращения по всем остальным адресам. Параметры блокировки необходимо подобрать таким образом, чтобы не создавать неудобств обычным пользователями. Особенно внимательно следует настраивать блокировки в том случае, когда формой авторизации пользуется большое количество пользователей с одного IP-адреса. [Читать дальше →][4]

[1]: http://nginx.org/ru/docs/http/ngx_http_limit_req_module.html
[2]: http://blog.haproxy.com/2013/04/26/wordpress-cms-brute-force-protection-with-haproxy/
[3]: http://blog.serverfault.com/2010/08/26/1016491873/
[4]: http://habrahabr.ru/post/250023/#habracut

[>] [Из песочницы] Делаем доступным все символы ядра Linux. Часть 1
habra.15
habrabot(difrex,1) — All
2015-09-23 15:30:04




# Состояние дел

Это обсуждение относится к ядру операционной системы Linux, и представляет интерес для разработчиков модулей ядра, драйверов под эту операционную систему. Для всех прочих эти заметки вряд ли представляют интерес. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/267535/#habracut

[>] Экспорт Избранного на Хабре в PDF. Версия 2.0
habra.14
habrabot(difrex,1) — All
2015-02-08 17:30:02


Доброго времени суток, хабражители! ![][1] Думаю, многих из вас когда-либо посещала мысль «вот бы сохранить статьи с Хабра». Такая же мысль посетила и меня [чуть больше года назад][2]. Представляю вам новую версию программы закачки статей с Хабра, Гиктаймс и Мегамозг в формате PDF. Новый проект называется [HabraParse][3]. Проект состоит из библиотечки, которая парсит сайты, и скрипта, использующего лишь часть возможностей этой библиотеки. Скрипт написан на python3, для его работы потребуются модули **docopt**, **requests** и **weasyprint** (все их легко можно установить командой **pip install _name_**). На текущий момент в скрипте имеются следующие возможности:

* скачать статью по её ID;
* скачать список URL избранного для заданного пользователя;
* скачать статьи из избранного в папку в формате PDF или HTML (пока реализация HTML не на высоте, поэтому по умолчанию используется формат PDF, но он работает значительно дольше).

Использование опций **--gt**/**--mm** позволяет сохранять статьи с [GeekTimes.ru][4] и [Megamozg.ru][5].

./habraparse.py save_favs_list [--gt|--mm] <username> <out_file>
./habraparse.py save_favs [--gt|--mm] [-cn --save-html --limit=N] <username> <out_dir>
./habraparse.py save_post [--gt|--mm] [-c --save-html] <topic_id> <out_file>
скрипт будет работать с GeekTimes.ru/Megamozg.ru.
Команды: save_favs_list - сохранение в файл <out_file> списка URL избранного для пользователя <username>
save_favs - сохранение в папку <out_dir> статей из избранного для пользователя <username>
save_post - сохранение в файл <out_file> статьи с заданным ID




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

[1]: http://habrastorage.org/getpro/habr/post_images/208/d6d/e7e/208d6de7ef8762b926d4907b655f6ff2.png
[2]: http://habrahabr.ru/post/208802/
[3]: https://github.com/icoz/habraparse
[4]: http://geektimes.ru/
[5]: http://megamozg.ru/
[6]: https://github.com/icoz/habraparse/issues
[7]: http://habrahabr.ru/post/250027/#habracut

[>] Как обойти экран блокировки в iOS, не зная пароль
habra.15
habrabot(difrex,1) — All
2015-09-23 16:00:03


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




Для тех, кто не хочет смотреть видео или у кого не получилось воспроизвести, привожу подробную инструкцию. Главное во втором шаге. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/267475/#habracut

[>] 3 Атаки на TACACS+ от Cisco
habra.15
habrabot(difrex,1) — All
2015-09-23 16:30:04


Мне хотелось бы поведать сегодня итоги своего небольшого исследования, связанного с протоколом TACACS+, причём именно с пентестерской точки зрения. Использовать протокол по прямому мне не приходилось, так что каких-то тонкостей могу не упомянуть.

#### Что такое TACACS+

Terminal Access Controller Access-Control System Plus (TACACS+) — специальный протокол от Cisco для AAA (authentication, authorization, and accounting). То есть это протокол для централизованного управления доступом – чаще всего доступом именно к Cisco, но можно прикрутить что-то еще. Итак, обычно поднимается один-два сервера с TACACS+ сервисом на 49 порту протокола TCP, а на всех устройствах настраивают его использование. Таким образом, когда пользователь хочет аутентифицироваться на свитче, роутере или другом устройстве, устройство пересылает его аутентификационные данные на TACACS+ сервер, где их проверяют, и принимается решение о разрешении доступа, о чём и сообщается в ответных пакетах ![image][1] Удобно, централизовано. Можно настроить различные привилегии для различных пользователей на различных устройствах. Есть логирование доступа и действий на серверной стороне. Можно прикрутить поверх другую централизацию доступа, типа AD или LDAP'а. Есть open source реализации сервера (Cisco когда-то официально выложила код). [Читать дальше →][2]

[1]: https://habrastorage.org/files/a71/80b/696/a7180b696d3a4f0bbb89da8b007fdc2b.png
[2]: http://habrahabr.ru/post/267467/#habracut

[>] Статистика использования imarker (система СОРМ-like веб-аналитики)
habra.14
habrabot(difrex,1) — All
2015-02-08 20:30:02


Прошел ровно месяц с момента публикации о системе [imarker, коммерческой веб-аналитике][1], которая, по заверению самой системы на тот момент, должна была стоять у Акадо, ТТК, Ростелекома, Эр-Телекома, NetByNet и QWERTY, однако, сейчас официальный сайт изменили, и теперь они заявляют, что работают только с МГТС, Акадо, ТТК, Ростелекомом и QWERTY. ![image][2][_Last-Modified: Fri, 30 Jan 2015 12:57:16 GMT_][3] На самом деле, все немного иначе.

### Сухая статистика

Как вы, возможно, помните, я сделал [специальную страницу][4], которая определяет наличие imarker у заходящего на нее посетителя. К сожалению, первые дни она работала не лучшим образом из-за rate limit со стороны imarker, поэтому, чтобы обойти это ограничение, чуть позже я сделал автоматическую генерацию домена нижнего уровня. Также, было незначительное количество ложных срабатываний из-за того, что люди делились сгенерированными уникальными ссылками, а не основной, из-за чего иногда получалось так, что пользователь, у которого нет imarker, дает уникальную ссылку другому пользователю (другу/знакомому/etc), у которого провайдер использует imarker, и, в конечном итоге, заход imarker засчитывается первому. Таких случаев около пары десятков, все они были проверены вручную по логам веб-сервера. [Читать дальше →][5]

[1]: http://habrahabr.ru/post/247465/
[2]: http://habrastorage.org/getpro/habr/post_images/ab7/6f9/5de/ab76f95de6f2fdff04cc2662397190fb.png
[3]: http://www.imarker.ru/templates/imarker/img/p_bl_img_0.png
[4]: http://imarker.valdikss.org.ru/
[5]: http://habrahabr.ru/post/250045/#habracut

[>] Компания D-Link по ошибке опубликовала секретные ключи для подписи прошивок
habra.15
habrabot(difrex,1) — All
2015-09-23 16:30:04


[![][1]][2] Производитель маршрутизаторов и другого оборудования D-Link случайно опубликовал секретные ключи шифрования сертификатов для подписи программного обеспечения, в том числе прошивок устройств. Пользователь под ником [bartvbl][3] приобрел камеру видеонаблюдения D-Link DCS-5020L и скачал обновление прошивки. Данный софт выпускается под свободной лицензией GPL, что дает возможность изучения исходного кода. Пользователь изучил код прошивки для своего устройства и обнаружил в нем четыре «зашитых» ключа шифрования для создания подписи. Некоторые файлы прошивки содержали сами ключи для подписи кода, а в некоторых даже были скрипты с необходимыми командами и паролями. [Читать дальше →][4]

[1]: https://habrastorage.org/files/6be/bf5/65c/6bebf565c3dc486391f9eeb077cf0f5f.png
[2]: http://habrahabr.ru/company/pt/blog/267547/
[3]: http://tweakers.net/gallery/488940
[4]: http://habrahabr.ru/post/267547/#habracut

[>] [Перевод] Разработка микросервисов с использованием Scala, Spray, MongoDB, Docker и Ansible
habra.14
habrabot(difrex,1) — All
2015-02-08 21:00:03


Цель данной статьи — показать возможный подход для построения микросервисов с использованием Scala, RESTful JSON, Spray и Akka. В качестве базы данных мы будем использовать MongoDB. В результате нашей работы мы упакуем наш проект в Docker-контейнер, а Vagrant и Ansible позволит нам управлять конфигурацией приложения. В этой статье вы не найдете подробностей о языке Scala и других технологиях, которые будут использоваться в проекте. В ней вы не найдете руководства, которое ответит на все ваши вопросы. Цель статьи — показать технику, которую можно использовать при разработке микросервисов. На самом деле, большая часть этой статьи не завязана на конкретной технологии. Docker имеет более широкую сферу использования, нежели только микросервисы. Ansible позволяют быстро развернуть любое требуемое окружение, а Vagrant — отличный инструмент для создания виртуальных машин. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/250043/#habracut

[>] WSGI/Rack для PHP
habra.14
habrabot(difrex,1) — All
2015-02-08 22:30:02


Исторически сложилось, что скрипты на PHP запускаются при каждом HTTP-запросе. Запускаясь, скрипт проводит какую-то инициализацию (например, устанавливает соединение с СУБД), после чего анализирует запрос и формирует ответ. Однако, всем прекрасно известно, что в мире Python и Ruby принят другой подход: веб-приложения на этих языках загружаются в память единовременно вместе с веб-сервером (или сервером приложений). Взаимодействие сервера приложений со скриптом осуществляется при помощи стандартных интерфейсов [WSGI][1] и [Rack][2]. Такой подход, безусловно, не лишён недостатков, главный из которых, пожалуй, связан с резким ростом накладных расходов при размещении большого числа сайтов на одном сервере, однако, обладает и важным преимуществом: инициализация производится лишь однократно, затем скрипт лишь отвечает на входящие HTTP-запросы. [Читать дальше →][3]

[1]: https://ru.wikipedia.org/wiki/WSGI
[2]: https://en.wikipedia.org/wiki/Rack_(web_server_interface)
[3]: http://habrahabr.ru/post/250055/#habracut

[>] [recovery mode] Технический способ защиты от неправомерной выдачи дубликатов сим-карт (и вообще персональных данных), реализуемый на уровне оператора
habra.15
habrabot(difrex,1) — All
2015-09-23 18:00:03


Последние пару недель наблюдаю как рунет [шумит][1] на тему мошенничества с дубликатами симок. На хабре вот тоже про это уже [писали][2]. При этом проблема эта совершенно не новая, но всплывает постоянно и все более интенсивно. В связи с этим мне хотелось бы рассказать о том, как справляется Deutsche Telekom (и другие немецкие операторы) с этой ситуацией. Сразу надо заметить, что ситуация с точками продаж в Германии очень похожая: точку может открыть практически любой, т.е. круг лиц, которые могут иметь доступ к данным, заранее достаточно широк. Но применяется очень трезвый **технический** способ защиты. [Читать дальше →][3]

[1]: https://advertising.yandex.ru/contact/agency/
[2]: http://habrahabr.ru/post/267447/
[3]: http://habrahabr.ru/post/267563/#habracut

[>] Проверка Telegram с помощью PVS-Studio и наоборот
habra.15
habrabot(difrex,1) — All
2015-09-23 18:00:03


Проверять проекты интересно, проверять известные проекты интересно вдвойне, особенно если пользуешься ими сам. Ещё интереснее было бы проанализировать проект с высоким качеством кода. Тогда удалось бы одним выстрелом убить двух зайцев — проверить сам проект, подтвердив или опровергнув качество его кода, так и посмотреть, насколько хорошо справился анализатор. Немного поразмыслив, я пришёл к выводу, что для этого отлично подойдёт популярный мессенджер Telegram.



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

[1]: http://habrahabr.ru/post/267567/#habracut

[>] gulpfile в 10 строк? Легко! — упрощаем создание типовых задач
habra.15
habrabot(difrex,1) — All
2015-09-23 18:00:03


Последнее время почти в любом проекте требуется сделать сборку less/sass/css/js/html и т.д. файлов. Gulp является отличным решением для выполнения этих задач, это глоток воздуха после grunt'a, но и он не идеален.



Например, если нужно сделать сборку common js, используя browserify, то нужно подключать с десяток зависимостей и писать почти 50 строчек кода. Вот [один из примеров][1]. **Нужно упрощать gulpfile.js** [Читать дальше →][2]

[1]: https://github.com/gulpjs/gulp/blob/master/docs/recipes/fast-browserify-builds-with-watchify.md
[2]: http://habrahabr.ru/post/267471/#habracut

[>] Паттерн «Стратегия» на C++
habra.14
habrabot(difrex,1) — All
2015-02-08 23:30:02


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

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

Так выглядит схема паттерна: ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/b1e/052/879/b1e052879ada4c38a4c3d027d9f51002.PNG
[2]: http://habrahabr.ru/post/250041/#habracut

[>] Подпольный рынок кардеров. Перевод книги «KingPIN». Глава 7. «Max Vision»
habra.15
habrabot(difrex,1) — All
2015-09-23 18:30:03


![][1]Кевин Поулсен, редактор журнала WIRED, а в детстве blackhat хакер Dark Dante, написал книгу про «[одного своего знакомого][2]». В книге показывается путь от подростка-гика (но при этом качка) до матерого киберпахана, а также некоторые методы работы спецслужб по поимке хакеров и кардеров. Начало и план перевода тут: «[Шкворень: школьники переводят книгу про хакеров][3]». Логика выбора книги для работы со школьниками у меня следующая:

* книг про хакеров на русском языке мало (полторы)
* книг про кардинг на русском нет вообще (**UPD** нашлась [одна][4])
* Кевин Поулсен — редактор WIRED, не глупый товарищ, авторитетный
* приобщить молодежь к переводу и творчеству на Хабре и получить обратную связь от старших
* работать в спайке школьники-студенты-специалисты очень эффективно для обучения и показывает значимость работы
* текст не сильно хардкорный и доступен широкому кругу, но затрагивает вопросы информационной безопасности, уязвимости платежных систем, структуру кардингового подполья, базовые понятия инфраструктуры интернет
* книга иллюстрирует, что «кормиться» на подпольных форумах — плохо заканчивается

**Перевод книги окончен**. Это последний «хвост». Теперь главы будут идти по порядку. Кто хочет помочь с переводами [крутых эссе Пола Грэма][5] — пишите в личку [magisterludi][6].

#### Глава 7. «Max Vision»

_(за помощь с переводом спасибо Валентину Аникееву)_ Когда сотрудничество с правительством прекратилось, Макс, несмотря на гнёт федерального расследования, принялся нарабатывать себе репутацию «белого» хакера. Раскрытие уязвимости в BIND и последовавший за этим успех сайта whitehats.com стали хорошим подспорьем для Макса. Теперь он позиционировал себя в качестве консультанта по компьютерной безопасности и создал сайт, где рекламировал свои услуги. Нанять Макса можно было за сто долларов в час, а некоммерческим организациям он помогал бесплатно. Самым весомым его аргументом было стопроцентное проникновение в исследуемую сеть – осечек не было ни разу. Это было замечательное время для «белых» хакеров: бунтарский дух, который двигал open-source сообщество, проник в сферу информационной безопасности. Выпускники колледжа и отчисленные студенты, бывшие и нынешние «чёрные» хакеры разрушали устои компьютерной безопасности, которые за десятки лет стали привычным делом. [Читать дальше →][7]

[1]: https://habrastorage.org/files/353/64b/a0e/35364ba0e409475fbd05cd11e8132734.jpg
[2]: https://en.wikipedia.org/wiki/Max_Butler
[3]: http://habrahabr.ru/post/261491/
[4]: http://habrahabr.ru/company/piter/blog/204042/
[5]: http://habrahabr.ru/company/tceh/blog/253311/
[6]: http://habrahabr.ru/users/magisterludi/
[7]: http://habrahabr.ru/post/267541/#habracut

[>] Brotli — новый алгоритм сжатия веб-данных от Google
habra.15
habrabot(difrex,1) — All
2015-09-23 18:30:03


![image][1] Так как веб-сайты и онлайн-сервисы с каждым годом становятся все «тяжелее», возрастает необходимость и сжатия данных в вебе. По этой причине Google выпустил новый алгоритм сжатия данных для веб-сайтов — Brotli, что в переводе с швейцарского немецкого означает «маленькая булка хлеба». Алгоритм уже доступен широкой аудитории **[на GitHub][2]**. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/72f/5da/7c3/72f5da7c3efa235ad7d6ab685ccbfe4a.jpg
[2]: https://github.com/google/brotli/
[3]: http://habrahabr.ru/post/267533/#habracut

[>] Moscow Python Meetup в Rambler&Co
habra.15
habrabot(difrex,1) — All
2015-09-23 19:30:03


![][1] 8-го октября (четверг) в Rambler&Co мы ждем в гости Moscow Python Meetup. 1-я встреча нового сезона начнется в 19.00. На встрече нас ждут 3 доклада. [Читать дальше →][2]

[1]: https://habrastorage.org/files/a93/d16/9a0/a93d169a0c134dd8ab4c451925e70547.png
[2]: http://habrahabr.ru/post/267543/#habracut

[>] Python Meetup 28.08.15: полнотекстовый поиск и Europython 2015
habra.15
habrabot(difrex,1) — All
2015-09-23 20:00:03


Всем привет! Спешим поделиться видео с августовского Python Meetup. В этот раз мы прослушали два доклада: один про реализацию полнотекстового поиска при помощи Python, а второй — обзор конференции Europython 2015 из уст очевидца. Приятного просмотра! ![][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/298/ec2/28a/298ec228a8fb4b5bbe8f9b298f5191be.jpg
[2]: http://habrahabr.ru/post/267503/#habracut

[>] Перестаем пользоваться паролями в Plesk’е
habra.14
habrabot(difrex,1) — All
2015-02-09 11:30:03




#### Зачем это нужно?

![image][1]Использование паролей для аутентификации имеет свои нюансы. Сложные пароли трудно запомнить, легкий пароль — могут подобрать. Если паролей нужно несколько десятков, то запоминать их все становится мучительно. Пароли начинают записывать. Хорошо, если это что-то типа программы 1password, а то ведь может быть и “бумажка на монитор/под клавиатуру” или начинают использовать один и тот же пароль для разных сервисов (пускай даже и сложный). Кто-то может справедливо считать, что его пароли не стоят 3-х тысяч рублей за 1password (столько стоит программа в Mac App Store). В итоге возникает мысль как бы сократить количество паролей, которые нужно помнить и, желательно, без особого ущерба безопасности. Начиная с Plesk 12.0 появился ряд опций, которые позволяют не пользоваться паролями, хранящимися непосредственно в продукте. [Читать дальше →][2]

[1]: http://habrastorage.org/files/4e8/6c2/833/4e86c28330704f9f96ada7a3c8f4c4cb.jpg
[2]: http://habrahabr.ru/post/250015/#habracut

Pages: 1 ... 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ... 210