RSS
Pages: 1 ... 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
[>] [Из песочницы] Настройка шлюза на базе Pfsense. Часть 1
habra.14
habrabot(difrex,1) — All
2015-05-13 18:30:04


Что всегда заметит каждый пользователь? Правильно, отсутствие интернета. Но как? «Вконтакте» не грузится — значит, интернета нет. Но ведь бывает, что директор или бравые богатыри из отдела ИБ хотят что-то запретить, что-то собрать, где-то проконтролировать. И тут администратор начинает танцевать вокруг шлюза в интернет. Если в компании много денег, то танцы могут быть длительными и с галантными кавалерами (мар Checkpoint, мистер PaloAlto, господин SonicWall). А вот что делать, если денег только на железо, функционала хотят много, а делать надо быстро? Pfsense, активно поддерживаемый сообществом бесплатный, гибкий и несложный в настройке межсетевой экран на базе FreeBSD. [Подробности][1]

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

[>] [Перевод] Абстракции без накладных расходов: типажи в Rust
habra.14
habrabot(difrex,1) — All
2015-05-13 20:00:02


В [предыдущем посте][1] ([англ.][2]) мы затронули два столпа дизайна Rust (поскольку во внутренней речи я постоянно склоняю название языка, дальше я буду использовать русскоязычное название «раст», что мне кажется более органичным — прим. перев.):

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

Этот пост начинает рассказ о третьем столпе:

* **абстракции без накладных расходов.**

Одна из мантр C++, которая делает его таким подходящим для системного программирования — принцип абстракции с нулевой стоимостью:

> Реализации C++ подчиняются принципу нулевой стоимости: ты не платишь за то, что не используешь [Страуструп, 1994]. Более того: то, что ты используешь, кодируется наилучшим образом.
>
>
>
>
>
> – Бьёрн Страуструп
>
>

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

[1]: http://habrahabr.ru/post/256211/
[2]: http://blog.rust-lang.org/2015/04/10/Fearless-Concurrency.html
[3]: http://habrahabr.ru/post/257775/#habracut

[>] Выбираем корпоративный интернет-шлюз
habra.14
habrabot(difrex,1) — All
2015-05-13 21:30:02


Корпоративный интернет-шлюз — голова ИТ-инфраструктуры, но в случае любых проблем он мгновенно превращается в другую часть тела… для компании. Выбор интернет-шлюза зависит от множества обстоятельств: выделенного бюджета, квалификации и пристрастий к аппаратным и программным решениям ответственного за сеть админа, размера сети, необходимости наличия сертификатов и т.д. Наверное, эта статья не для, познавших Дао гуру, которые с помощью подручных средств вроде третьего пенька, бубна и какой-то матери играючи могут обеспечить бесперебойный доступ в интернет и контроль трафика для сотен машин. Мы поговорим о вещах более стандартных и приземленных: как выбрать корпоративный интернет-шлюз и что в нем должно быть? [![][1]][2] [Читать дальше →][3]

[1]: //habrastorage.org/files/4a6/c56/d37/4a6c56d3713b415d9759dd60bbaf8d5a.jpg
[2]: http://habrahabr.ru/company/smart_soft/blog/257829/
[3]: http://habrahabr.ru/post/257829/#habracut

[>] [Перевод] Ученые протестировали мозговую активность, чтобы найти угрозу кибербезопасности
habra.14
habrabot(difrex,1) — All
2015-05-13 21:30:02


![image][1] Старая пословица о том, что цепь сильна настолько, насколько сильно её самое слабое звено, безусловно, относится и к риску, с которым компании сталкиваются при защите своей информационной безопасности. Сотрудники создают угрозы, которые могут быть настолько же разрушительными для компании, как и действия хакеров. Исследователи Государственного университета штата Айова работают над тем, чтобы лучше понять эти внутренние угрозы, пытаясь проникнуть в головы сотрудников, которые несут риск для своих компаний. Для этого они измерили мозговую деятельность, чтобы определить, что может спровоцировать сотрудника нарушать политику компании и продать или обменять конфиденциальную информацию. Исследование показало, что самоконтроль является существенным фактором в данном случае. [Читать дальше →][2]

[1]: http://habrastorage.org/files/bfe/761/e5c/bfe761e5c4154531bf07038b9f6c6d3c.jpg
[2]: http://habrahabr.ru/post/257831/#habracut

[>] IBM представляет новое решение для борьбы с кибератаками
habra.14
habrabot(difrex,1) — All
2015-05-13 21:30:02


![][1] Корпорация IBM объявила о том, что ее обширный архив данных об информационной безопасности теперь доступен на облачной платформе IBM X-Force Exchange. Эта платформа коллективного взаимодействия для борьбы с киберпреступностью содержит огромные объемы обобщенной информации об угрозах, рекомендации, практически реализуемые в IBM и других компаниях по всему миру, а также индикаторы атак в режиме реального времени. Сегодня особенно ощущается нехватка надежной информации об угрозах, так как 80% кибератак проводят организованные преступные группы, в распоряжении которых есть вся необходимая информация, инструментарий и практический опыт для осуществления подобных действий. Несмотря на то, что хакеры стали более мобильными, поведение их жертв не изменилось. На данный момент большинство (65%) штатных отделов кибербезопасности используют множество независимых надежных и ненадежных источников информации для борьбы с кибератаками. Платформа X-Force Exchange имеет в своем распоряжении огромный объем обобщенной информации IBM о безопасности, в том числе самый полный портфель исследовательских данных и технологий, таких как QRadar, опыт тысячи глобальных заказчиков, а также знания и навыки аналитиков и экспертов подразделения IBM Managed Security Services. [Читать дальше →][2]

[1]: //habrastorage.org/files/668/414/a6b/668414a6b93a442a94c70ce34594ccc5.jpg
[2]: http://habrahabr.ru/post/257783/#habracut

[>] Как «русские хакеры» пытались узнать о новых санкциях против России: изучаем CVE-2015-1701
habra.14
habrabot(difrex,1) — All
2015-05-13 23:00:02


Об этой уязвимости нулевого дня в Windows стало известно еще 20 апреля, когда компания FireEye и агентство Bloomberg сообщили о неудачной кибератаке на правительственное ведомство зарубежного государства, обсуждавшее с США политику санкций против России. В причастности к содеянному, а также в попытках взлома спецслужб НАТО, госорганов Грузии, Польши, Венгрии в FireEye обвинили «русских хакеров» из группировки APT28. Атака была реализована с помощью ранее неизвестных уязвимостей CVE-2015-3043 в Adobe Flash и CVE-2015-1701 в Windows. Пользователя отправляли по ссылке на зараженный сайт, где скрипт JavaScript с помощью Flash-уязвимости подгружал в компьютер исполняемый файл, который посредством дыры CVE-2015-1701 в Windows повышал привилегии и похищал ключи шифрования. Компания Adobe в течение считанных часов устранила уязвимость во Flash, но в Microsoft не торопились и выпустили [патч][1] только накануне. В этом материале мы расскажем об основных особенностях данного бага.

#### Ценная gSharedInfo

Сначала следует описать некоторые структуры и механизмы, используемые для эксплуатации CVE-2015-1701 уязвимости. Без [печально известной][2] `win32k.sys` не обошлось и на этот раз, поэтому первым делом остановимся на структуре `win32k!tagSHAREDINFO`, которой отвечает символ `win32k!gSharedInfo`, а также на типе данных `HWND`, который с ней очень тесно связан. [![][3]][4] Наша `gSharedInfo` хранит указатели на различные связанные с окнами структуры и, что самое замечательное, многие из этих структур отображены в пользовательское пространство (смаплены в юзер-мод, по-нашему), причём соответствующий символ `user32!gSharedInfo` с некоторых пор (либо с висты, либо с семёрки) стал экспортируемым. [Читать дальше →][5]

[1]: https://technet.microsoft.com/library/security/MS15-051
[2]: http://www.securitylab.ru/news/472188.php
[3]: //habrastorage.org/files/2f9/e01/d11/2f9e01d11ae14fb1968afc035b733cd5.png
[4]: http://habrahabr.ru/company/pt/blog/257879/
[5]: http://habrahabr.ru/post/257879/#habracut

[>] [Из песочницы] Анализ учетных записей одного (не)надежного email-сервиса
habra.14
habrabot(difrex,1) — All
2015-05-13 23:00:02




#### Начало

У меня есть увлечение – коллекционировать слитые в интернет базы и прочий «хлам». Как-то раз решил я пошарить на RGhost в поисках «вкусненького». Часто на файлообменниках обнаруживаю инструкции по подключению к чему угодно с вложенными туда логинами и паролями. В этот раз совершенно случайно наткнулся на 700 MB текстовый файл «dump.txt», в котором красиво лежали пары логин-пароль. Сначала огорчился: «Наверное, это всем доступные, собранные вместе, совсем недавно слитые учетные записи Яндекса, Мейла, Google», — подумал я. Но нет… Немного изучив находку, я обомлел. [Читать дальше →][1]

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

[>] Ночные кошмары Питона: неявный `this`
habra.14
habrabot(difrex,1) — All
2015-05-14 01:30:03


Обсуждение статьи "[Не совсем крутой Ruby][1]" зашло достаточно далеко: недостатки и достоинства Ruby между делом перетекали в обсуждение недостатков и достоинств Python. Не сильно удивило то, что передача `self` в качестве первого аргумента метода класса, некоторым хабравчанам кажется лишней. Ну что ж, не хотите явного `self`, будет вам неявный `this`! Под катом, немного магии на чистом Python. [Читать дальше →][2]

[1]: http://habrahabr.ru/post/257513/
[2]: http://habrahabr.ru/post/257887/#habracut

[>] [Перевод] Введение в функциональное программирование на Python
habra.14
habrabot(difrex,1) — All
2015-05-14 09:00:02


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

a = 0
def increment1():
global a
a += 1


Функциональная функция:

def increment2(a):
return a + 1


Вместо проходов по списку используйте map и reduce [Читать дальше →][1]

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

[>] Курсы практической подготовки в области ИБ: обновленная программа
habra.14
habrabot(difrex,1) — All
2015-05-14 12:00:02


Если вы увлекаетесь информационной безопасностью и хотите усовершенствовать свои навыки в короткое время, то содержание статьи, скорее всего, покажется вам достаточно интересным. Статья носит обзорный характер обновленных программ обучения в области практической ИБ от PENTESTIT. Разрабатывая уникальные по своему формату и методике обучения курсы: «Zero Security: A» и «Корпоративные лаборатории», мы стараемся сделать курсы не только эффективными, но и удобными. Основное отличие программ обучения заключается в том, что первая рассчитана на базовую подготовку в области этичного хакинга, а вторая — на профессиональную подготовку не только этичного хакинга, но и построения эффективных систем ИБ. В любом случае, даже опытные специалисты, посетившие первую программу, открывают для что-то новое, не говоря уже о «Корпоративных лабораториях», включающих материал, по уровню сравнимый с докладами на профессиональных хакерских конференциях. Кроме этого, каждый набор пополняется новым материалом, что позволяет передать специалистам, проходящим обучения, наиболее актуальную на момент обучения информацию. Уникальность программ обучения заключается в симбиозе формата обучения (полностью дистанционное, не требующее отрыва от работы и учебы), качества материала и специализированных ресурсах, на которых производится обучение. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/418/917/8af/4189178afbe04d17944bcc2da6d696c9.png
[2]: http://habrahabr.ru/post/257885/#habracut

[>] Переводы с «Банком Москвы»
habra.14
habrabot(difrex,1) — All
2015-05-14 13:00:03


Если в поисковой строке [AppStore][1] ввести слово «Переводы», то можно удивиться, сколько же существует всевозможных приложений для переводов с карты на карту – заводы стоят, одни переводчики. Вот и Банк Москвы решил обзавестись своим приложением для переводов – посмотрим, что же оно может нам предложить. [Читать далее][2]

[1]: http://ad.adriver.ru/cgi-bin/click.cgi?sid=1&ad=521559&bt=21&pid=1952115&bid=3830790&bn=3830790&rnd=2077731265
[2]: http://habrahabr.ru/post/257525/#habracut

[>] [Из песочницы] Уязвимость «ВКонтакте» позволяла получить прямые ссылки на приватные фотографии
habra.14
habrabot(difrex,1) — All
2015-05-14 16:00:02


![][1]

Была обнаружена уязвимость в закладках ВК, которая позволяла получать прямые ссылки на приватные фотографии из личных сообщений, альбомов любого пользователя/группы. Был написан скрипт, который перебирал фотографии пользователя за определенный период и затем, через эту уязвимость получал прямые ссылки на изображения. Если коротко, то: можно было за 1 минуту получить все ваши вчерашние фотографии, за 7 минут — все фото, загруженные на прошлой неделе, за 20 минут — прошлый месяц, за 2 часа — прошлый год. Уязвимость на данный момент исправлена. Администрация ВКонтакте выплатила вознаграждение в 10к голосов.



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

[1]: //habrastorage.org/files/68c/d2f/5d1/68cd2f5d1f3e47289c3534279d875e88.jpg
[2]: http://habrahabr.ru/post/257951/#habracut

[>] [Из песочницы] О бытовом заблуждении
habra.14
habrabot(difrex,1) — All
2015-05-14 17:30:02


Каждому иногда приходится размышлять над тем, что же происходит в ИТ, как оно будет дальше развиваться, и как потом с этим жить. Хотелось бы этим постом ответить на статью [«Мысли об идеальном языке программирования»][1]. Что мы видим в оригинальной статье? Осведомленный о современных тенденциях языкостроения автор оценивает один из флагманских языков системного программирования, рассуждая, каких еще положительных концепций и архитектурных решений можно воткнуть в современный язык методом наращивания фич силами огромного общемирового сообщества. [А на самом деле...][2]

[1]: http://geektimes.ru/post/250214
[2]: http://habrahabr.ru/post/257953/#habracut

[>] [Из песочницы] Ошибки типовые и не очень
habra.14
habrabot(difrex,1) — All
2015-05-14 17:30:02


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

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

[>] LFS: Темная сторона Силы. Часть 1
habra.14
habrabot(difrex,1) — All
2015-05-14 17:30:02




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

Для того чтобы установить на свой компьютер Linux и начать его использовать для конкретных задач существует масса способов. Выбор дистрибутивов чрезвычайно широк, на любой вкус и цвет — и «для домохозяек» и для продвинутых пользвателей, допускающие любой уровень кастомизации, в том числе и сборку из исходников под конкретное железо. Установка системы в принципе доступна любому, мало-мальски грамотному пользователю ПК. И, если не погружаться в популярные по сей дей холивары на тему «Linux vs Другая ОС», то и спользование данной системы не требует знаний, которые были обязательными для новоиспеченного линуксоида скажем десять лет назад. С моей, глубоко субъективной точки зрения, за более чем десять лет, которые я наблюдаю за развитием этой системы, линукс стал более дружественен к новичкам и избавился от многих проблем, присущих ему в прошлом. И это хорошо. _Пингвины ручной сборки..._ ![][1] На Хабре уже мелькала пара статей на тему LFS, например [эта][2], или [вот эта][3]. Комментарии к последней наводят на закономерную мысль — если набор возможностей для установки Linux и его изучения и так исчерпывающе широк, зачем нужен LFS? Не буду витеивато излагать истории о том «как космические корабли бороздят… и когда Земля была огненным шаром...». Я отвечу на поставленный вопрос исходя из своей позиции — я собираю LFS потому, что мне просто интересно это сделать. Я вижу в этом процессе хорошую возможность заглянуть «под капот» системы. Допускаю, что этот путь сложно назвать оптимальным. Тем не менее, данная статья, и последующие за ней будут посвящены процессу ручной сборки Linux-системы. Данные статьи не будут переводом документации по сборке — в этом нет особой нужды. Акценты будут расставлены на специфике и ньюансах процесса, с которыми пришлось столкнуться автору лично. Будем считать этот цикл чем-то вроде дневника неофита. [Читать дальше →][4]

[1]: //habrastorage.org/files/523/9a2/feb/5239a2febf22468fa4042a832747232e.jpg
[2]: http://habrahabr.ru/post/183714/
[3]: http://habrahabr.ru/post/113615/
[4]: http://habrahabr.ru/post/257663/#habracut

[>] Новые соревнования на PHDays: взлом мобильной связи, электрических подстанций и протоколов маршрутизации
habra.14
habrabot(difrex,1) — All
2015-05-14 17:30:02


[![][1]][2] Форум [Positive Hack Days][3] славится своей разносторонней и оригинальной [конкурсной программой][4]. Соревнования по анализу защищенности систем ДБО, АСУ ТП и банкоматов стали визитной карточкой PHDays. Однако мы не собираемся останавливаться на достигнутом и сегодня представляем вашему вниманию три совершенно новых хакерских конкурса, принять участие в которых сможет любой участник мероприятия. [Читать дальше →][5]

[1]: //habrastorage.org/files/eab/852/a8f/eab852a8f6624888bf9aff388d95c75c.JPG
[2]: http://habrahabr.ru/company/pt/blog/257937/
[3]: http://www.phdays.ru/
[4]: http://habrahabr.ru/company/pt/blog/257753/
[5]: http://habrahabr.ru/post/257937/#habracut

[>] [recovery mode] Как 3CX решает проблемы безопасности (часть 2)
habra.14
habrabot(difrex,1) — All
2015-05-14 17:30:02


[Часть 1][1] **Пассивная безопасность** Модулем пассивной защиты, условно будем считать, те компоненты, которые просто закрывают какие-то возможности и если эти настройки не трогать, то все будет хорошо. Итак, первое – по умолчанию пароли генеряться сложные – 8 знаков, типа 96q1d4h2. Если не лениться и прописывать их, то вероятность подбора (особенно если работает Antihacking описанный в первой части) почти нулевая. Кстати, для тех кто ленится писать пароли есть Autoprovisioning. [Читать дальше →][2]

[1]: http://habrahabr.ru/company/3cx/blog/257377/
[2]: http://habrahabr.ru/post/257673/#habracut

[>] Побег из темницы типов. Реализуем работу с данными, тип которых определяется динамически
habra.14
habrabot(difrex,1) — All
2015-05-14 17:30:02


![][1] Когда результат SQL-запроса влечет бесконечные приведения типов ко всевозможным вариантам типов полей. Когда код заполнен малопонятной логикой с гигантским перебором перегрузок по типам boost::variant. Когда не знаешь, как принять аргумент произвольного типа по RPC-протоколу. Тогда требуется механизм эмуляции динамической типизации в C++. Расширяемый и удобный, создающий понятный API. Такой, что не требует предопределенного списка типов и не заставляет работать с указателями на базовый класс. Такой механизм есть — нам поможет двойная диспетчеризация! [Читать дальше →][2]

[1]: //habrastorage.org/files/594/6f7/981/5946f7981e6844bcb17ba06cfbc0c40c.jpg
[2]: http://habrahabr.ru/post/257891/#habracut

[>] Разработка ММО РПГ – практическое руководство. Сервер (часть 1)
habra.14
habrabot(difrex,1) — All
2015-05-15 01:00:03


















        Сегодня мы продолжим знакомиться с разработкой и проектированием он-лайн игры на примере космической ММО RPG [**«Звездные Призраки»**][1]. В этой статье речь пойдет о backend'е на С++ и она будет насквозь техническая.         В тексте будет много отсылок к функционалу [**«Звездных Призраков»**][2], но я постараюсь излагать материал так, чтобы вам не было нужды вникать (и играть) в наш продукт. Однако, для лучшего понимания материала желательно потратить пару минут и посмотреть, как это все выглядит.         В статье мы сосредотчимся именно на архитектурных решениях применительно к backend'у MMO RPG в реальном времени. Исходного кода будет не много и он точно не будет содержать таких специфических для С++ вещей как множественное наследование или шаблоны. Задача данной статьи помочь в проектировании игрового сервера и ознакомить всех желающих со спецификой игрового backend'а.         Описываемые решения достаточно универсальны и вполне подойдут для многих RPG. В качестве иллюстрации в конце статьи я приведу пример использования описанной архитектуры в игре «про эльфов». [Далее][3]

[1]: http://starghosts.com/index.php?trsrc=108&trclcl=1&tringame=1
[2]: http://starghosts.com/index.php?trsrc=108&trclcl=1&tringame=1
[3]: http://habrahabr.ru/post/257985/#habracut

[>] [Перевод] Искусственный интеллект в Wolfram Language: проект по идентификации изображений
habra.14
habrabot(difrex,1) — All
2015-05-15 05:00:04


_Перевод поста Стивена Вольфрама (Stephen Wolfram) "[Wolfram Language Artificial Intelligence: The Image Identification Project][1]". Выражаю огромную благодарность [Кириллу Гузенко][2] за помощь в переводе._

----

«Что изображено на этой картинке?» Люди практически сразу могут ответить на этот вопрос, и раньше казалось, что это непосильная задача для компьютеров. Последние 40 лет я знал, что компьютеры научатся решать подобные задачи, но не знал, когда это произойдёт. Я создавал системы, которые дают компьютерам разные составляющие интеллекта, и эти составляющие зачастую далеко за пределами человеческих возможностей. С давних про мы интегрируем разработки по искусственному интеллекту в [Wolfram Language][3]. И сейчас я весьма рад сообщить о том, что мы перешли новый рубеж: вышла новая функция Wolfram Language — **[ImageIdentify][4]**, которую можно спросить — «что изображено на картинке?» и получить ответ. Сегодня мы запускаем **[Wolfram Language Image Identification Project][5]** — проект по идентификации изображений, который работает через интернет. Можно отправить туда изображение с камеры телефона, с браузера, или перетащить его посредством drag&drop в соответствующую форму, или просто загрузить файл. После этого **[ImageIdentify][6]** выдаст свой результат: [][7]





## Содержание

[Теперь в Wolfram Language][8] [Личная предыстория][9] [Машинное обучение][10] [Все это связано с аттракторами][11] [Автоматически созданные программы][12] [Почему сейчас?][13] [Вижу только шляпу][14] [Мы потеряли муравьедов!][15] [Назад к природе][16] [Читать дальше →][17]

[1]: http://blog.stephenwolfram.com/2015/05/wolfram-language-artificial-intelligence-the-image-identification-project/
[2]: http://vk.com/ld742
[3]: http://www.wolfram.com/language/
[4]: http://reference.wolfram.com/language/ref/ImageIdentify.html
[5]: https://www.imageidentify.com/
[6]: http://reference.wolfram.com/language/ref/ImageIdentify.html
[7]: https://www.imageidentify.com/
[8]: http://habrahabr.ru/company/wolfram/blog/258003/#NowInTheWolframLanguage
[9]: http://habrahabr.ru/company/wolfram/blog/258003/#PersonalBackstory
[10]: http://habrahabr.ru/company/wolfram/blog/258003/#MachineLearning
[11]: http://habrahabr.ru/company/wolfram/blog/258003/#ItsAllAboutAttractors
[12]: http://habrahabr.ru/company/wolfram/blog/258003/#ProgramsAutomaticallyMade
[13]: http://habrahabr.ru/company/wolfram/blog/258003/#WhyNow
[14]: http://habrahabr.ru/company/wolfram/blog/258003/#AllItSawWasTheHat
[15]: http://habrahabr.ru/company/wolfram/blog/258003/#WeLostTheAnteaters
[16]: http://habrahabr.ru/company/wolfram/blog/258003/#OutIntoTheWild
[17]: http://habrahabr.ru/post/258003/#habracut

[>] Книги и образовательные ресурсы по алгоритмической торговле
habra.14
habrabot(difrex,1) — All
2015-05-15 11:00:03


[![][1]][2] Алгоритмическая торговля — интересная область, которая позволяет ИТ-специалистам применить свои технические знания на фондовом рынке и извлечь из этого ту или иную выгоду. В нашем блоге мы неоднократно рассматривали различные темы, связанные с созданием торговых роботов, но недостаточно внимания уделяли теоретическим вопросам, с которыми сталкиваются начинающие трейдеры. В нашем сегодняшнем материале — подборка книг, которые помогут лучше подготовиться к началу работы на фондовом рынке и написанию механических торговых систем. Для достижения наибольшей эффективности материала, мы приводим советы экспертов, которые занимаются алгоритмической торговлей на российском и зарубежных фондовых рынках. [Читать дальше →][3]

[1]: //habrastorage.org/files/557/06f/1ed/55706f1ed7604f93b535a22533bc4be4.jpg
[2]: http://habrahabr.ru/company/itinvest/blog/257971/
[3]: http://habrahabr.ru/post/257971/#habracut

[>] Курсы этичного хакинга и тестирования на пронивение: обновленная программа
habra.14
habrabot(difrex,1) — All
2015-05-15 13:00:04


Если вы увлекаетесь информационной безопасностью и хотите усовершенствовать свои навыки в короткое время, то содержание статьи, скорее всего, покажется вам достаточно интересным. Статья носит обзорный характер обновленных программ обучения в области практической ИБ от PENTESTIT. Разрабатывая уникальные по своему формату и методике обучения курсы: «Zero Security: A» и «Корпоративные лаборатории», мы стараемся сделать курсы не только эффективными, но и удобными. Основное отличие программ обучения заключается в том, что первая рассчитана на базовую подготовку в области этичного хакинга, а вторая — на профессиональную подготовку не только этичного хакинга, но и построения эффективных систем ИБ. В любом случае, даже опытные специалисты, посетившие первую программу, открывают для себя что-то новое, не говоря уже о «Корпоративных лабораториях», включающих материал, по уровню сравнимый с докладами на профессиональных хакерских конференциях. Кроме этого, каждый набор пополняется новым материалом, что позволяет передать специалистам, проходящим обучения, наиболее актуальную на момент обучения информацию. Уникальность программ обучения заключается в симбиозе формата обучения (полностью дистанционное, не требующее отрыва от работы и учебы), качества материала и специализированных ресурсах, на которых производится обучение. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/418/917/8af/4189178afbe04d17944bcc2da6d696c9.png
[2]: http://habrahabr.ru/post/257885/#habracut

[>] Замок для конструктора
habra.14
habrabot(difrex,1) — All
2015-05-15 13:30:04


[Экспериментируя с кубиками][1] и получая отзывы от тех, кто напечатал и что-то построил уже из наших кубиков (наши — это кубики, которые печатаются без поддержек на обычном 3D принтере), была выявлена проблема, зависящая как от конструкции сооружения, так и от свойств пластика. Проблема заключалась в том, что замок, этот выступ, который печатается сверху и используется для соединения кубиков между собой, после 20-30 неловких движений иногда ломался. Особенно если разъединять кубики не строго по оси замка. ![image][2] Решение пришло после перебора вариантов и понимания того, что кубиков с отломанными лепестками у замков уже много. [Читать дальше →][3]

[1]: http://geektimes.ru/company/dadget/blog/249424/
[2]: http://habrastorage.org/files/f4b/b71/38f/f4bb7138f118465885353f7a9be6ce2f.jpg
[3]: http://habrahabr.ru/post/258009/#habracut

[>] NFC + «Тройка» = «Мой проездной»
habra.14
habrabot(difrex,1) — All
2015-05-15 14:00:03


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

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

[>] Об альтернативном образовании вообще и про C# в частности
habra.14
habrabot(difrex,1) — All
2015-05-15 16:30:04


Сейчас очень часто говорят о том, что нынешняя система образования никуда не годится, она лишает детей творческих способностей, у неё низкая эффективность и нужно что-то срочно менять. Только вот конкретных решений этой проблемы почти не видно — что именно нужно поменять и как следует строить современную систему образования, чтобы она отвечала духу нового времени, помогала развиваться творческим способностям и была при этом эффективной. ![][1] У меня есть некоторые свои собственные соображения и наработки для решения этой проблемы в рамках своей специальности — способа изучения языка программирования C#. [Читать дальше →][2]

[1]: //habrastorage.org/files/c27/98d/a65/c2798da652ed4f28becf6f4566227680.png
[2]: http://habrahabr.ru/post/257957/#habracut

[>] Курсы этичного хакинга и тестирования на проникновение: обновленная программа
habra.14
habrabot(difrex,1) — All
2015-05-15 17:00:04


Если вы увлекаетесь информационной безопасностью и хотите усовершенствовать свои навыки в короткое время, то содержание статьи, скорее всего, покажется вам достаточно интересным. Статья носит обзорный характер обновленных программ обучения в области практической ИБ от PENTESTIT. Разрабатывая уникальные по своему формату и методике обучения курсы: «Zero Security: A» и «Корпоративные лаборатории», мы стараемся сделать курсы не только эффективными, но и удобными. Основное отличие программ обучения заключается в том, что первая рассчитана на базовую подготовку в области этичного хакинга, а вторая — на профессиональную подготовку не только этичного хакинга, но и построения эффективных систем ИБ. В любом случае, даже опытные специалисты, посетившие первую программу, открывают для себя что-то новое, не говоря уже о «Корпоративных лабораториях», включающих материал, по уровню сравнимый с докладами на профессиональных хакерских конференциях. Кроме этого, каждый набор пополняется новым материалом, что позволяет передать специалистам, проходящим обучения, наиболее актуальную на момент обучения информацию. Уникальность программ обучения заключается в симбиозе формата обучения (полностью дистанционное, не требующее отрыва от работы и учебы), качества материала и специализированных ресурсах, на которых производится обучение. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/418/917/8af/4189178afbe04d17944bcc2da6d696c9.png
[2]: http://habrahabr.ru/post/257885/#habracut

[>] Интервью с Эриком Михаельс-Обером, RubyHero-2014
habra.14
habrabot(difrex,1) — All
2015-05-15 18:00:03


Эрик — Ruby-герой 2014 года, популярный ментор среди разных Ruby-сообществ (Ruby Summer of Code, Google Summer of Code и Rails Girls Summer of Code) и просто интересный человек. Изначально интервью должно было выглядеть в стиле «коротко продолжи фразу», но Эрик подошел к делу творчески, поэтому публикую его полностью. [Читать дальше →][1]

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

[>] Проблемы установки CentOS 7 с flash USB
habra.14
habrabot(difrex,1) — All
2015-05-15 18:00:03


В данной статье рассматриваются сложности, с которыми может столкнуться пользователь при установке CentOS 7 с flash USB-накопителя, а также показаны некоторые варианты их решения. Совсем недавно, 1 апреля 2015 года, вышла новая версия операционной системы CentOS, а именно 7 (1503). Имеется несколько возможностей установки данной системы: сетевая установка, а также образы \*.iso в вариантах исполнения от «минимальный набор» и " LiveCD" до «всё включено». Однако при попытке произвести установку можно наткнуться на некоторые сложности. **Сложность первая. Использование UltraISO** Для тех, кто имел дело с предыдущими версиями, например, 6.6, вопрос с установкой данной системы мог и не возникать, потому как процесс достаточно прост: образ записывается при помощи программы UltraISO на флешку и успешно устанавливается. [Читать дальше →][1]

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

[>] Исследование: уязвимости промышленных систем управления в 2014 году
habra.14
habrabot(difrex,1) — All
2015-05-15 18:00:03


[![][1]][2] В ходе эстонских киберучений НАТО в апреле 2015 года [стало][3] известно, что основному киберподразделению Североатлантического Альянса уже не столь интересны устройства на Android или веб-камеры: фокус внимания военных хакеров сместился в сторону систем [Windows][4] и SCADA. Месяц назад исследовали из Dell [отметили][5], что в 2014 году произошел двукратный рост числа зловредов, разработанных для атак на магазинные POS-системы и SCADA-системы, а сегодня и мы расскажем о некоторых цифрах и наблюдениях в сфере АСУ ТП (ISC/SCADA), собранных нашими экспертами за последние три года. [Читать дальше →][6]

[1]: //habrastorage.org/files/54a/039/fd2/54a039fd24784c5d8c2217aa1b409ff3.jpg
[2]: http://habrahabr.ru/company/pt/blog/258039/
[3]: http://www.scmagazineuk.com/nato-cyber-defence-exercise-focuses-on-windows-scada-systems/article/410425/
[4]: http://habrahabr.ru/company/pt/blog/257879/
[5]: https://threatpost.ru/2015/04/16/v-otchete-ob-ugrozah-dell-zayavlyaet-o-stoprotsentnom-roste-atak-na-scada/#sthash.REinoChi.dpuf
[6]: http://habrahabr.ru/post/258039/#habracut

[>] Часть 2 — Синезис. Почему демонстрация видеоаналитики в офисах так сильно отличается от реальной работы в жизни?
habra.14
habrabot(difrex,1) — All
2015-05-15 18:00:03


После [первой публикации][1] в обсуждении статьи появилась [вопросительная ссылка][2], на которую я хотел бы ответить другой развернутой статьей. Ее автор – под ником «psazhin» – попал просто в точку, приведя пример классической «жесткой» видеоаналитики — как мы помним, разработанной и похороненной Интелом, реинкарнированной рекламным хайтеком. Хотя, промазать здесь сложно, потому что 90% всего рынка видеонаналитики – как капли воды повторяют интеловскую библиотеку Open CV. Ну, раз выбор пал на фирму Синезис, то проведем конкретный анализ её «интеллектуальных» алгоритмов на базе уже выработанной методики. Мы лишь немного вдумчивей прочитаем то, что написано на рекламном сайте этой фирмы. Берем первую самую главную настройку. ![image][3] [Читать дальше →][4]

[1]: http://habrahabr.ru/company/synesis/blog/257219/
[2]: http://habrahabr.ru/company/synesis/blog/257219
[3]: http://habrastorage.org/files/dea/7b2/b30/dea7b2b30a0f4405aade9954ce39a867.jpg
[4]: http://habrahabr.ru/post/258025/#habracut

[>] [Из песочницы] Sublime Text 3 — пользовательская подсветка синтаксиса
habra.14
habrabot(difrex,1) — All
2015-05-15 20:30:03


Расширяемость Sublime Text не знает границ. Для тех, кому мало стандартных функций, на Хабре уже рассказывали о том, [как создать сниппет][1], [как написать простой плагин][2], [как написать сложный плагин][3] и еще много много чего. Про ручную настройку подсветки синтаксиса толком ничего не смог найти: для кого-то слишком очевидно, кому-то просто не нужна, а кому-то и наверняка же пригодится. Итак, задача: имея какие-нибудь абстрактные логи доступа в wonder-net:

!->14/02 16:44:22 [134.249.51.251:39951>80] (t1 19) >HTTP in:504 out:34 Time:156
GET /5168742330521893/ HTTP/1.1 SCOD=00
!->14/02 16:44:24 [134.249.51.251:49507>80] (t1 20)
GET /4405885823409377/ HTTP/1.1 SCOD=00
!->14/02 16:54:11 [195.18.13.107:1721>80] (t2 22)
GET /4149437701562173/ HTTP/1.1 SCOD=00
!->14/02 16:54:11 [195.18.13.107:1721>80] (t2 23) >HTTP in:385 out:10138 Time:156
GET /5211537451172048/ HTTP/1.1 SCOD=00
!->14/02 16:54:24 [195.18.13.107:1727>80] (t1 30) >HTTP in:423 out:1220 Time:187
GET /5211537446447554/ HTTP/1.1 SCOD=23
!->14/02 18:07:24 [82.145.208.159:43634>80] (t2 52)
GET /4149437838265377/ HTTP/1.1 SCOD=00
!->14/02 18:09:41 [82.145.208.174:41708>80] (t2 61)
GET /4149497815750155 / HTTP/1.1 SCOD=00
!->14/02 18:51:39 [82.145.210.33:55210>80] (t1 66) >HTTP in:543 out:34 Time:0
GET /5168757259478487/ HTTP/1.1 SCOD=00
!->14/02 18:51:40 [82.145.210.33:55332>80] (t1 68) >HTTP in:544 out:1243 Time:141
GET /4149497800456701 / HTTP/1.1 SCOD=00
!->14/02 18:51:46 [82.145.210.33:57345>80] (t1 73) >HTTP in:544 out:1243 Time:125
GET /5168742330521893/ HTTP/1.1 SCOD=00


выделить: Дату-время — фиолетовым курсивом; Номер карты — желтым курсивом, если не в черном списке или красным, если иначе; ip-адрес — темно-зеленым, если не в черном списке или красным, если иначе; scod=хх — темно-зеленым если 00 или красным, если иначе. [Приступим][4]

[1]: http://habrahabr.ru/post/148324/
[2]: http://habrahabr.ru/post/136529/
[3]: http://habrahabr.ru/post/148842/
[4]: http://habrahabr.ru/post/258053/#habracut

[>] Безопасность сетевой инфраструктуры. Расширенные методы взлома и защиты. Видео
habra.14
habrabot(difrex,1) — All
2015-05-15 23:30:03






Мы решили продолжить нашу традицию публиковать записи наших предыдущих вебинаров для всех желающих с целью повышения уровня осведомленности в ИБ. Не лишним будет отметить, что вебинары составляют примерно 20% от нашей программы обучения, основной упор делается на практику. Проверить свои знания вы всегда можете в наших лабораториях тестирования на проникновение, например сейчас для всех желающих открыта бесплатная лаборатория тестирования на проникновение [Test lab v.7][1]. Программа курса: Первое занятие — «Инструментарий пентестера» Это занятие представляет из себя небольшой обзор истории появления и развития дистрибутива BackTrack и превращением его в Kali Linux.




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

[1]: https://lab.pentestit.ru/pentestlabs/3
[2]: http://habrahabr.ru/post/258071/#habracut

[>] [Перевод] Анонс Rust 1.0
habra.14
habrabot(difrex,1) — All
2015-05-15 23:30:03


Сегодня мы с гордостью представляем [релиз Rust версии 1.0][1], нового языка программирования для создания более надёжных и эффективных систем. **Раст объединяет в себе низкоуровневый контроль над производительностью с удобством и гарантиями безопасности языков высокого уровня.** Лучше того, он при этом не требует сборщика мусора или среду выполнения, так что библиотеками на Расте [можно безболезненно заменять библиотеки на C][2] ([англ.][3]). Если вы хотите поэкспериментировать с Растом, лучше всего начать с [раздела «Getting Started» книги Rust Book][4] (если вы предпочитаете читать с электронных книг, Паскаль Хертлиф (Pascal Hertleif) поддерживает [неофициальные версии этой книги в электронном виде][5]). [Читать дальше →][6]

[1]: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-100-may-2015
[2]: http://habrahabr.ru/post/257687/
[3]: http://blog.rust-lang.org/2015/04/24/Rust-Once-Run-Everywhere.html
[4]: http://doc.rust-lang.org/1.0.0-beta.5/book/getting-started.html
[5]: http://killercup.github.io/trpl-ebook/
[6]: http://habrahabr.ru/post/258069/#habracut

[>] Язык программирования Crystal
habra.14
habrabot(difrex,1) — All
2015-05-16 07:00:02


Читая статью [Интервью с Эриком Михаельс-Обером, RubyHero-2014][1] наткнулся на упоминание ЯП Crystal. «Что за зверь?» — подумал я и полез искать информацию. То, что я нашел, меня, признаюсь, впечатлило. [Читать дальше →][2]

[1]: http://habrahabr.ru/post/258027
[2]: http://habrahabr.ru/post/258083/#habracut

[>] Отменено решение Невьянского суда о блокировке Bitcoin сайтов
habra.14
habrabot(difrex,1) — All
2015-05-16 11:00:02


![][1] В Свердловском областном суде состоялось второе, оно же последнее, заседание по поводу решения Невьянского суда о признании информации на сайтах криптовалютной тематики запрещенной к распространению на территории Российской федерации. Суд отменил решение о блокировках. Напомним, что с 13 января семь сайтов, связанных с тематикой Bitcoin, были [заблокированы][2] Роскомнадзором по решению Невьянского городского суда. В свою очередь суд принял его после обращения Невьянского городского прокурора с заявлением в защиту неопределенного круга лиц. Кому интересно, вот более подробный [таймлайн][3] событий. [Подробности][4]

[1]: //habrastorage.org/files/95f/67b/697/95f67b6979a34bdd8e1146bfcd1c1e99.jpg
[2]: http://geektimes.ru/post/244151/
[3]: http://bits.media/news/blokirovka-roskomnadzorom-bitcoin-saytov/
[4]: http://habrahabr.ru/post/258085/#habracut

[>] Отменено решение Невьянского суда о блокировке Bitcoin-сайтов
habra.14
habrabot(difrex,1) — All
2015-05-16 12:30:02


![][1] В Свердловском областном суде состоялось второе, оно же последнее, заседание по поводу решения Невьянского суда о признании информации на сайтах криптовалютной тематики запрещенной к распространению на территории Российской федерации. Суд отменил решение о блокировках. Напомним, что с 13 января семь сайтов, связанных с тематикой Bitcoin, были [заблокированы][2] Роскомнадзором по решению Невьянского городского суда. В свою очередь суд принял его после обращения Невьянского городского прокурора с заявлением в защиту неопределенного круга лиц. Кому интересно, вот более подробный [таймлайн][3] событий. [Подробности][4]

[1]: //habrastorage.org/files/95f/67b/697/95f67b6979a34bdd8e1146bfcd1c1e99.jpg
[2]: http://geektimes.ru/post/244151/
[3]: http://bits.media/news/blokirovka-roskomnadzorom-bitcoin-saytov/
[4]: http://habrahabr.ru/post/258085/#habracut

[>] [Из песочницы] Обход CloudFlare ScrapeShield в Java (Android)
habra.14
habrabot(difrex,1) — All
2015-05-17 00:30:03


[][1] В некоторый момент времени мне пришлось решить проблему, описанную в заголовке. Долго размышлял, писать ли очевидное, в итоге решил, что кому-то это может пригодиться. Причина достаточно тривиальна — являясь автором Android-клиента к [весьма нишевому сайту][2], я в то же время не вхожу ни в число его администраторов, ни в число соучредителей. Таки образом ни о каких решениях руководства сайта я не осведомлён до момента их фактического вступления в силу. Не так давно на этот сайт началась DDoS-атака, и администрация включила DDoS-защиту от CloudFlare. Соответственно, приложение-клиент, использовавшее до этого стандартные механизмы авторизации через POST+Cookie, перестало авторизовывать пользователей. Общение с администрацией ни к чему не привело — «что мы можем сделать, лучше уж без мобильных клиентов, чем вообще никак». Естественно, всё это начало отражаться на рейтингах и породило весьма нелестные отзывы. [Читать дальше →][3]

[1]: http://habrastorage.org/files/628/163/0e2/6281630e29884e0e9db761167faa4f7f.png
[2]: http://www.diary.ru
[3]: http://habrahabr.ru/post/258101/#habracut

[>] [Перевод] Что такого особенного в Nim?
habra.14
habrabot(difrex,1) — All
2015-05-17 14:30:02






Язык программирования [Nim][1] (ранее именовался Nimrod) — захватывающий! В то время как [официальная документация с примерами][2] плавно знакомит с языком, я хочу быстро показать вам что можно сделать с Nim, что было бы труднее или невозможно сделать на других языках. Я открыл для себя Nim, когда искал правильный инструмент для написания игры, HoorRace, преемник моей текущей DDNet игры/мода Teeworlds. _(прим. пер. На синтаксис Nim имели влияние Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon.)_

# Запускаем!

Да, эта часть всё ещё не захватывает, но просто следите за продолжением поста:

for i in 0..10:
echo "Hello World"[0..i]


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

[1]: http://nim-lang.org/
[2]: http://nim-lang.org/docs/tut1.html
[3]: http://habrahabr.ru/post/258119/#habracut

[>] Модифицированный драйвер из ReactOS упрощает жизнь под Windows на Chromebook
habra.14
habrabot(difrex,1) — All
2015-05-17 20:00:03


![image][1] Многие обладатели хромобуков приобрели их исключительно для того, чтобы использовать их вместе с Windows. Установка данной ОС на хромобук сопряжена с рядом трудностей, например, с неработоспособностью встроенной клавиатуры и тачпада. В хромобуках используется Google embedded controller, спецификации для которого еще не открыты и не существует свободных драйверов или драйверов под другие платформы. Участник [сообщества][2] по «портированию» Windows на Acer C720, скрывающийся под ником_ coolstar_, нашел оригинальное решение указанной проблемы. Он создал необходимый драйвер, взяв за основу исходные коды i8042prt из ReactOS.

> Thanks to some code from [@reactos][3] & some patches I made, I have the Acer C720's keyboard working everywhere in Windows; with no kbdhelper :)
>
> — CoolStar (@coolstarorg)
>
> [16 мая 2015][4]

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

[1]: http://habrastorage.org/getpro/habr/post_images/4e5/afa/0e2/4e5afa0e20710ebb1fe4a1e2170857d1.png
[2]: http://community.acer.com/t5/Chromebook/GUIDE-Install-Windows-8-on-the-Acer-C720/td-p/217491
[3]: https://twitter.com/reactos
[4]: https://twitter.com/coolstarorg/status/599494255837478912
[5]: http://habrahabr.ru/post/258135/#habracut

[>] Поверхностный реверс инжиниринг IronPython
habra.14
habrabot(difrex,1) — All
2015-05-18 00:30:02


Привет, хабрахабр! Столкнулся я с необходимостью модифицировать поведение одной чужой программы, написанной на языке Python. Казалось бы что сложного, Python ведь, бери исходник да модифицируй сколько влезет. Но не тут-то было. Дело осложнялось тем, что программа не просто была написана на Python, она была ещё и откомпилирована при помощи [IronPython][1] и никаких исходников не имелось. Для обычного, так скажем, канонического CPython существует Over 9000 различных декомпайлеров байткода из файлов .pyc обратно в .py, например [мой любимый] [uncompyle2][2] и другие, а для IronPython ничего подобного я не нашёл. То ли плохо искал, то ли таковых действительно не существует. Пришлось разбираться самому. Говорю сразу, процесс я не автоматизировал, всё так сказать hand made. [Кому интересно -- прошу под кат][3]

[1]: http://ironpython.net/
[2]: https://github.com/Mysterie/uncompyle2
[3]: http://habrahabr.ru/post/258123/#habracut

[>] Как я проходил первый хак квест CTF Ratazana
habra.14
habrabot(difrex,1) — All
2015-05-18 02:30:06


![][1]

#### Введение

В качестве введения я расскажу кратко о хак квесте Ratazana CTF. Его организовали специалисты из ЦИС (Центр Информационной Безопасности), представительство которого располагается в г. Бишкек Киргизия. Это первый отлично организованный хак квест. Он был прост и интересен и скорее всего служил так называемой отправной точкой (так сказать организаторы хотели прощупать уровень участников).

#### Коротко о квесте

По легенде квеста компания VideoCorp столкнулась с утечкой исходных кодов ее продукта, в результате чего EvilCorp выпустила очень похожу версию ПО, раньше чем компания VideoCorp, что привело к убыткам компании и потере хороших клиентов. Нужно было найти крота и собрать доказательства. На весь квест отводилось 7 дней. В квесте 8 миссий. И так приступим! [Читать дальше →][2]

[1]: //habrastorage.org/files/46f/04c/d8b/46f04cd8b90145f4a590746fafa6d3b1.png
[2]: http://habrahabr.ru/post/258065/#habracut

[>] Размещай и властвуй! Используем размещающий new для оптимизации кода на C++
habra.14
habrabot(difrex,1) — All
2015-05-18 12:00:15


![][1] Создавая объект за объектом, мы часто не обращаем внимания на такую «мелочь», как динамическое выделение памяти. Наравне с копированием и сериализацией, выделение памяти из кучи через new постепенно сводит на нет преимущества C++ в скорости. Чем интенсивнее мы пользуемся заветным new, тем сложнее становится приложению, поскольку память кончается, фрагментируется и всячески стремится утекать. Эта участь уже постигла удобные, но неявно опасные для производительности контейнеры STL: vector, string, deque, map. Особенно обидно терять скорость на выделении небольших объектов в больших количествах. Но есть способ обработать размещение памяти таких объектов на стеке, при этом скрывая детали реализации в специальный класс данных. В этом нам поможет механизм размещающего new — непревзойденный способ оптимизации приложения, полного частых и мелких выделений памяти из кучи. [Читать дальше →][2]

[1]: //habrastorage.org/files/d0d/4e3/6bf/d0d4e36bf0624c7b881fce6125434c2b.jpg
[2]: http://habrahabr.ru/post/257893/#habracut

[>] Автоматическое тестирование JavaFX приложений
habra.14
habrabot(difrex,1) — All
2015-05-18 12:30:12


![][1] Добрый день! В мире, в котором стоимость ошибки на этапе внедрения превышает в сотни и тысячи раз стоимость исправления на этапе разработки, нужно всегда искать ответ на вопрос: «а как это тестировать автоматически?» Вопросы автоматизации тестирования JavaFX приложений глобальная паутина практически не освещает. Но всё же удалось найти несколько интересных идей, и я хочу поделиться с вами своими наблюдениями. В статье я расскажу как находить компоненты на JavaFX форме, как проверять их свойства, как кликать на них и так далее. Это минимально необходимый набор входных точек в автоматизацию тестирования JavaFX приложений. [Читать дальше →][2]

[1]: //habrastorage.org/files/864/62a/07a/86462a07a43947d49b2226fd453807c1.jpg
[2]: http://habrahabr.ru/post/257981/#habracut

[>] [Перевод] Майним Bitcoin с помощью бумаги и ручки
habra.14
habrabot(difrex,1) — All
2015-05-18 13:00:08


В один прекрасный момент мне захотелось прикинуть, насколько быстро можно майнить биткойны вручную. Оказалось, что для майнинга используется хеширование SHA-256, а оно достаточно простое и может быть вычислено даже без компьютера. Само собой, процесс очень небыстрый и совершенно непрактичный. Но, пройдя все шаги на бумажке, можно хорошо разобраться в деталях работы алгоритма. ![][1] _Один криптографический раунд_ [Читать дальше →][2]

[1]: //habrastorage.org/files/6d2/378/cd6/6d2378cd68ea4d2e8d717a952fa83726.png
[2]: http://habrahabr.ru/post/258181/#habracut

[>] Введение в KDF на примере решения криптографического ребуса
habra.14
habrabot(difrex,1) — All
2015-06-01 11:28:09


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

[1]: https://habrastorage.org/files/5fd/590/331/5fd5903316584521900e8d95a08670ed.jpg
[2]: http://habrahabr.ru/post/259199/#habracut

[>] Лекции Технопарка. 2 семестр. Java
habra.14
habrabot(difrex,1) — All
2015-06-01 11:28:09







В эфире очередной выпуск материалов рубрики «Лекции Технопарка». На этот раз вы можете изучить лекции курса, посвящённого углублённому программированию на Java. Цель курса — получение студентами практических навыков создания клиент-серверного приложения на примере разработки сервера простой многопользовательской online-игры в малых группах (4-6 человек). [Читать дальше →][1]

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

[>] Новости проекта Qucs: подготовка к релизу 0.0.19
habra.14
habrabot(difrex,1) — All
2015-06-01 11:28:09


![][1] [ Qucs ][2] — это симулятор электронных схем с открытым кодом. О нём рассказывает моя предыдущая [ статья на Хабре][3]. Сейчас наш проект готовится к следующему релизу 0.0.19, который выйдет до 1 сентября текущего года. За время с предыдущего релиза (1 сентября 2014) 6 разработчиков совершили более 700 коммитов. Данная заметка содержит краткий обзор ожидаемых новшеств. Скачать снапшоты предрелизной версии можно здесь:

* Исходный код (все платформы Linux, MacOS, Windows): [sourceforge.net/projects/qucs/files/qucs/0.0.19-snapshots][4]
* Инсталлятор для Windows: [sourceforge.net/projects/qucs/files/qucs-binary/0.0.19-snapshots][5]

**Снапшоты не рекомендованы для использования в повседневной работе! Это тестовая версия! Для работы используйте стабильную версию 0.0.18** О найденных багах сообщать в наш багтрекер: [github.com/Qucs/qucs/issues][6] Под катом краткий обзор изменений [Читать дальше →][7]

[1]: https://habrastorage.org/getpro/habr/post_images/4db/83b/0ff/4db83b0ffb894726173680d6e3206469.png
[2]: http://qucs.sourceforge.net/
[3]: http://habrahabr.ru/post/248005/
[4]: http://sourceforge.net/projects/qucs/files/qucs/0.0.19-snapshots/
[5]: http://sourceforge.net/projects/qucs/files/qucs-binary/0.0.19-snapshots/
[6]: https://github.com/Qucs/qucs/issues
[7]: http://habrahabr.ru/post/259193/#habracut

[>] VPN-расширение Hola продает пользовательский трафик и содержит уязвимости удаленного выполнения кода
habra.14
habrabot(difrex,1) — All
2015-06-01 11:28:09


4 дня назад администратор борды [8chan][1] (доска /beast/ которой заблокирована в России) сообщил о DDoS-атаке на сайт, которая выглядела как стократный приток обычных посетителей. Самое большое увеличение нагрузки получил скрипт для постинга post.php (капчи на борде не было); DDoS привел к падению PHP-FPM, под которым выполнялся скрипт. В ходе исследования трафика выяснилось, что для совершения атаки были использованы каналы пользователей с [Hola][2] — популярным браузерным расширением для доступа к заблокированным сайтам, пользующееся популярностью как за рубежом, так и в России. Пользователи расширения, сами того не зная, отдавали свои интернет-каналы дочерней фирме [Luminati][3], которая, по сути, владела более 9 миллионами уникальных выходных нод, за счет расширения и каналов пользователей. Зарабатывают они, судя по всему, очень неплохо: первые 100 гигабайт трафика обходятся клиентам в $20 за гигабайт. В FAQ проекта не было никаких упоминаний об использовании каналов пользователей, однако в Hola быстро добавили несколько пунктов на этот счет. Теперь, если вы не хотите отдавать свой канал Limunati, вам придется заплатить $5 в месяц. [Архивная версия FAQ][4] [Текущая версия FAQ][5] После опубликования данной информации администратором 8chan, [группа ребят нашла 4 уязвимости в данном расширении][6]:

* Чтение произвольных файлов до NULL-байта (/file\_read.json)
* Раскрытие уникального идентификатора пользователя (/callback.json)
* Раскрытие адресов некоторых функций (/procinfo/ps, для последующего обхода ASLR)
* Удаленное выполнение кода (/vlc\_mv.json и /vlc\_start.json)
* Повышение привилегий до SYSTEM под Windows

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

[1]: http://8ch.net/
[2]: http://hola.org/
[3]: https://luminati.io/
[4]: https://archive.is/tgujS
[5]: http://hola.org/faq
[6]: http://adios-hola.org/
[7]: http://habrahabr.ru/post/259177/#habracut

[>] DevConf 2015: Интервью с автором — PHP6 не будет! Встречаем PHP7
habra.14
habrabot(difrex,1) — All
2015-06-01 11:28:09


![][1] На вопросы оргкомитета [DevConf 2015 ][2] отвечает Дмитрий Стогов -[ лидер проекта PHPNG][3] и один из основных разработчиков PHP; ведущий инженер в Zend Technologies. ** — Расскажите пару слов о себе. ** _Последние лет 10 работаю в Zend, где 2/3 времени занимаюсь развитием Open Source PHP, и, в основном, усовершенствованиями связанными с производительностью. Собственно, почти все что связано с производительностью в PHP-7 (да и в PHP-5) придумано или заимствовано и реализовано мной._ [Читать дальше →][4]

[1]: https://habrastorage.org/files/f57/8e8/672/f578e8672e4741a5b98de5cea056f137.jpg
[2]: http://devconf.ru/
[3]: http://habrahabr.ru/company/devconf/blog/223579/
[4]: http://habrahabr.ru/post/259163/#habracut

[>] Sexy primes, «медленный питон» или как я бился о стену непонимания
habra.14
habrabot(difrex,1) — All
2015-06-01 11:28:09


Многие разработчики, особенно принимающие активное участие в проектировании системы, наверняка сталкивались с подобной ситуацией: приходит коллега (разраб, проектлид или продажник не суть важно) с очередной идеей-фикс: давай перепишем все на java, scala и т.д. (любимое подставить). Вот и мне в очередной раз «спустили» такую идею в немаленьком-таком legacy проекте. Не совсем переписать, не совсем все (ну в перспективе). В общем перейти с питона (а у нас там еще и тикль модульно присутствует) на scala. Речь пока шла о разработке новых модулей и сервисов, т.е. начинать с наименее привязанных к middle-level и front-nearby API's. Как я понял в перспективе возможно совсем. Человек — не разработчик, типа нач-проекта и немного продажник (для конкретного клиента) в одном лице. Я не то, чтобы против. И скалу уважаю и по-своему люблю. Обычно я вообще открыт ко всему новому. Так, например, местами кроме тикля и питона у нас появляются сервисы или модули на других языках. Так, например, мы переехали с cvs на svn, а затем на git (а раньше, давно-давно, вообще MS-VSS был). Примеров на самом деле масса, объединяет их один момент — так решили или как минимум одобрили сами разработчики (коллективно ли, или была группа инициаторов — не суть важно). Да и дело в общем в аргументах за и против. Проблема в том, что иногда для аргументированной дискуссии «Developer vs. Anybody-Else» у последнего не дотягивает уровень знаний «материи» или просто невероятно сложно донести мысль — т.е. как-бы разговор на разных языках. И хорошо если это кто-нибудь типа software architect. Хуже, если имеем «беседу» например с чистым «продажником», огласившим например внезапные «требования» заказчика. Ну почему никто не предписывает, например, плиточнику — каким шпателем ему работать (типа с зубцами 10мм клея же больше уйдет, давайте может все же 5мм. А то что там полы-стены кривущие никого не волнует). И шуруп теоретически тоже можно «закручивать» молотком, но для этого же есть отвертка, а позже был придуман шуруповёрт. Утрирую конечно, но иногда действительно напоминает такой вот абсурд. Это я к тому, что инструмент в идеале должен выбирать сам разработчик или иметь в этом как минимум последнее слово — ему с этим инструментом работать . Но что-то я отвлекся. В моей конкретной истории аргументов — за scala, у человека как всегда почти никаких. Хотя я мог бы долго говорить про вещи, типа наличие разрабов, готовые наработки, отточенную и отлаженную систему и т.д. и т.п. Но зацепился за его «Питон очень медленный». В качестве примера он в меня кинул ссылкой на [Interpreting a benchmark in C, Clojure, Python, Ruby, Scala and others — Stack Overflow][1], которую он даже до конца не прочитал (ибо там почти прямым текстом есть — не так плохо все с питоном). Имелось ввиду именно вот это (время указано в секундах):

Sexy primes up to: 10k 20k 30k 100k
---------------------------------------------------------
Python2.7 1.49 5.20 11.00 119
Scala2.9.2 0.93 1.41 2.73 20.84
Scala2.9.2 (optimized) 0.32 0.79 1.46 12.01


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

[1]: http://stackoverflow.com/questions/11641098/interpreting-a-benchmark-in-c-clojure-python-ruby-scala-and-others
[2]: http://habrahabr.ru/post/259095/#habracut

Pages: 1 ... 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41