Как стать автором
Обновить

Portaller

Я пиарюсь
Несколько недель назад у любителей американских онлайн радио- и видео-сервисов случилась беда: замечательный сервис Tunlr, который позволял обходить дискриминацию по IP-адресу, приказал долго жить. О причинах говорится мутно: мол, зарабатывать деньги нам не интересно, а поддерживать качество на должном уровне — обременительно. Проблема понятна — передавать через свои сервера такие объемы трафика весьма накладно.

Под катом подробнее об альтернативе
Читать дальше →
Всего голосов 25: ↑23 и ↓2 +21
Просмотры 15K
Комментарии 34

VPN-расширение Hola продает пользовательский трафик и содержит уязвимости удаленного выполнения кода

Информационная безопасность *Расширения для браузеров
4 дня назад администратор борды 8chan (доска /beast/ которой заблокирована в России) сообщил о DDoS-атаке на сайт, которая выглядела как стократный приток обычных посетителей. Самое большое увеличение нагрузки получил скрипт для постинга post.php (капчи на борде не было); DDoS привел к падению PHP-FPM, под которым выполнялся скрипт. В ходе исследования трафика выяснилось, что для совершения атаки были использованы каналы пользователей с Hola — популярным браузерным расширением для доступа к заблокированным сайтам, пользующееся популярностью как за рубежом, так и в России.

Пользователи расширения, сами того не зная, отдавали свои интернет-каналы дочерней фирме Luminati, которая, по сути, владела более 9 миллионами уникальных выходных нод, за счет расширения и каналов пользователей. Зарабатывают они, судя по всему, очень неплохо: первые 100 гигабайт трафика обходятся клиентам в $20 за гигабайт.

В FAQ проекта не было никаких упоминаний об использовании каналов пользователей, однако в Hola быстро добавили несколько пунктов на этот счет. Теперь, если вы не хотите отдавать свой канал Limunati, вам придется заплатить $5 в месяц.
Архивная версия FAQ
Текущая версия FAQ

После опубликования данной информации администратором 8chan, группа ребят нашла 4 уязвимости в данном расширении:
  • Чтение произвольных файлов до NULL-байта (/file_read.json)
  • Раскрытие уникального идентификатора пользователя (/callback.json)
  • Раскрытие адресов некоторых функций (/procinfo/ps, для последующего обхода ASLR)
  • Удаленное выполнение кода (/vlc_mv.json и /vlc_start.json)
  • Повышение привилегий до SYSTEM под Windows
Читать дальше →
Всего голосов 53: ↑52 и ↓1 +51
Просмотры 171K
Комментарии 64

Hola и Ваша безопасность

Блог компании Hola Информационная безопасность *
В последнее время о продуктах Hola можно прочитать много разного на тему безопасности. От имени компании я попытаюсь ниже отделить правду от домыслов и преувеличений, а в комментариях — ответить на вопросы.

image

Напоминаю, что наши продукты для конечных пользователей позволяют обходить региональные блокировки, установленные как самими веб-сайтами, так и администраторами, провайдерами и государствами.
Читать дальше →
Всего голосов 33: ↑22 и ↓11 +11
Просмотры 17K
Комментарии 11

Итоги летнего конкурса Hola по программированию на JS

Блог компании Hola Спортивное программирование *JavaScript *
Спасибо всем, кто участвовал в нашем конкурсе по программированию! Мы подвели его итоги и наградили победителей.

Задача состояла в том, чтобы улучшить реализацию двусвязного списка из исходников Node.js. Этот код быстрый и эффективный, но он был написан под конкретное применение — хранение списков неактивных таймеров. Поэтому прямо в хранимые объекты там добавляются поля idleNext и idlePrev. Перед участниками конкурса стояла задача сделать код универсальным (так, чтобы один элемент мог принадлежать одновременно нескольким независимым спискам) без потери производительности.

Читать дальше →
Всего голосов 21: ↑13 и ↓8 +5
Просмотры 6.4K
Комментарии 4

Конкурс по программированию на JS: Почтовые фильтры

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
UPDATE: Опубликованы итоги конкурса.

Компания Hola снова объявляет конкурс по программированию на JS с солидным призовым фондом:

  1. Первое место: 1500 USD
  2. Второе место: 1000 USD
  3. Третье место: 500 USD
  4. Возможно, мы решим отметить чьё-то чрезвычайно оригинальное решение специальным призом в 350 USD.
  5. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите такую же сумму, как и он.

Мы ищем талантливых программистов, поэтому авторы интересных решений будут приглашены на собеседования.



Правила


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

Условия конкурса на английском языке размещены на нашем сайте. Ниже — перевод на русский язык.

Читать дальше →
Всего голосов 42: ↑28 и ↓14 +14
Просмотры 47K
Комментарии 189

Итоги конкурса по программированию на JS: Почтовые фильтры

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Объявление: Мы решили пересмотреть итоги конкурса из-за серьёзных недостатков, обнаруженных в тестовой системе. Подробности в новом посте и окончательные результаты.

Спасибо всем участникам нашего последнего конкурса по программированию!

Мы получили 408 решений от 237 различных участников (в конкурсе участвует только одно, последнее из решений от каждого участника, и мы публикуем именно последние варианты). Кроме того, 7 решений было отправлено нам либо после окончания срока приёма работ, либо сотрудниками Hola, и мы рассмотрели их вне конкурса.
Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Просмотры 20K
Комментарии 121

Разбор решения занявшего второе (пока что) место в конкурсе Hola по программированию почтовых фильтров на JavaScript

Спортивное программирование *JavaScript *Алгоритмы *
Из песочницы
В ноябре прошлого (уже) года, Hola объявила конкурс по программированию почтовых фильтров на js, и недавно опубликовала его результаты.

Я разделил второе место с Ильей Макаровым, и сейчас я расскажу…

Как это было

Читать дальше →
Всего голосов 22: ↑21 и ↓1 +20
Просмотры 11K
Комментарии 10

О пересмотре результатов конкурса по программированию на JS

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Спасибо участникам конкурса по программированию за долготерпение. Я пишу этот пост, чтобы признать и исправить серьёзную ошибку, которую мы допустили при подведении итогов.

Мы получили множество замечаний о методике тестирования решений. Ниже наши ответы на эти замечания.

Тесты на корректность неполны


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

Тесты на производительность дают искажённые результаты из-за особенностей методики тестирования


Читать дальше →
Всего голосов 38: ↑25 и ↓13 +12
Просмотры 15K
Комментарии 50

Окончательные итоги конкурса по программированию на JS: Почтовые фильтры

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Спасибо всем участникам нашего последнего конкурса по программированию! Публикуем окончательные, исправленные результаты конкурса.

Мы получили 408 решений от 237 различных участников (в конкурсе участвует только одно, последнее из решений от каждого участника, и мы публикуем именно последние варианты). Кроме того, 14 решений было отправлено нам либо после окончания срока приёма работ, либо сотрудниками Hola, и мы рассмотрели их вне конкурса.

64 решения, или 16% от общего числа, были отправлены в течение последних суток до окончания срока. Из них 15 были отправлены в течение последнего часа, а самое последнее «проскочило» за 34 секунды до дедлайна.

Тесты на корректность прошли 92 программы, что составляет 39% от числа протестированных. Кроме того, корректными признаны 10 из внеконкурсных решений.

Самое короткое решение уместилось ровно в 666 байт, а самое длинное растянулось на 90274 байт.

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

Поздравляем победителей:
Читать дальше →
Всего голосов 18: ↑11 и ↓7 +4
Просмотры 7.7K
Комментарии 16

3 место за 11 шагов в конкурсе по JavaScript от Hola

Спортивное программирование *JavaScript *Алгоритмы *
Из песочницы
Наверняка у многих из вас перед глазами уже мелькали заголовки статей с конкурсом от Hola, который недавно подошел к своему логическому завершению. В окончательных результатах мне посчастливилось быть на 3 месте. По этой причине я позволил себе поделиться описанием своего решения, а также того, как я до него докатился.
Читать дальше →
Всего голосов 28: ↑24 и ↓4 +20
Просмотры 14K
Комментарии 4

Конкурс по программированию на JS: Классификатор слов

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Компания Hola объявляет начало весеннего конкурса по программированию! Призовой фонд увеличен:

  1. Первое место: 3000 USD.
  2. Второе место: 2000 USD.
  3. Третье место: 1000 USD.
  4. Возможно, мы решим отметить чьи-то чрезвычайно оригинальные решения двумя специальными призами в 400 USD.
  5. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите половину суммы приза (разумеется, не в ущерб награде победителя). За одного победителя такую награду может получить только один человек — тот, кто отправил ссылку первым.

Мы ищем талантливых программистов, поэтому авторы интересных решений будут приглашены на собеседования.

Опубликовано дополнение: Тестовая программа, часто задаваемые вопросы, типичные ошибки.
Опубликовано дополнение: О ходе тестирования.


Правила


На этот раз мы решили попробовать что-то новенькое: для разнообразия, этот конкурс — не на производительность кода.

Условия конкурса на английском языке размещены на GitHub. Ниже — перевод на русский язык.

Читать дальше →
Всего голосов 38: ↑34 и ↓4 +30
Просмотры 73K
Комментарии 620

Конкурс по программированию на JS: Классификатор слов (дополнение)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Спасибо всем, кто уже поучаствовал или собирается участвовать в нашем конкурсе по программированию!

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

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

Для отправки работ осталась ещё неделя. Если этот пост помог Вам найти ошибку, ещё есть время её исправить.

Английская версия этого поста размещена на GitHub.

Часто задаваемые вопросы

Читать дальше →
Всего голосов 22: ↑19 и ↓3 +16
Просмотры 18K
Комментарии 75

Конкурс по программированию на JS: Классификатор слов (о ходе тестирования)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Прежде всего, мы приносим всем участникам конкурса по программированию извинения за задержку с результатами. Сегодня мы публикуем все присланные решения и официальные скрипты для генерации тестов и тестирования, а также рассказываем, как идут дела с проверкой решений.

Английская версия этого поста размещена на GitHub.

Протестировать 312 решений


Большое спасибо всем участникам! Мы получили 603 решения от 312 участников. Поскольку мы принимаем к тестированию самое последнее из присланных в срок решений, то протестировать надо 312 решений. Это был неожиданный результат. Надеюсь, это немного объясняет, почему это занимает так много времени.
Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Просмотры 13K
Комментарии 103

Конкурс по программированию на JS: Классификатор слов (предварительные результаты)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Спасибо за ожидание! Публикуем предварительные результаты конкурса по программированию.

Протестировано 312 решений, из них 50 упало или зависло, ещё 3 оказались слишком медленными, чтобы пройти все тесты. Из оставшихся 259 решений 12 по разным причинам были объявлены «вне конкурса»: решения не работали без поправки типа файла данных (авторы забыли галочку «gzip») или были присланы сотрудниками Hola.

Нынешние результаты — предварительные. Мы надеемся, что не допустили ошибок при подведении итогов, и тогда 20 июня 2016 эти результаты станут окончательными. Тогда же вместо идентификаторов решений будут опубликованы имена или псевдонимы их авторов.

Решение победителя конкурса показало результат в 83.67% правильных ответов. Полные списки решений с результатами тестирования находятся в английской версии поста на GitHub.

Там же мы публикуем «сырые» машиночитаемые результаты тестирования каждого из решений, где разнообразной информации больше, чем в сводных таблицах. На основе этих данных Вы можете провести собственный анализ результатов, чему мы будем очень рады.
Читать дальше →
Всего голосов 22: ↑22 и ↓0 +22
Просмотры 9.8K
Комментарии 33

Конкурс по программированию на JS: Классификатор слов (окончательные результаты)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Сегодня мы публикуем окончательные результаты конкурса по программированию и награждаем победителей.

По случайности, все трое призёров предпочли участвовать под псевдонимами. Мне кажется, с такими результатами им нечего стесняться. Если вы хотите представиться в комментариях, милости просим!

Итак, призовые места заняли:
  1. Antelle — 83.67% правильных ответов. Приз 3000 USD.
  2. SHB — 83.11% правильных ответов. Приз 2000 USD.
  3. chianti — 83.00% правильных ответов. Приз 1000 USD.

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

Полную таблицу результатов смотрите в английской версии на GitHub.
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 8.9K
Комментарии 21

Конкурс по программированию на JS: Классификатор слов (специальные призы)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Мы приносим глубочайшие извинения за длинную задержку при подготовке этого поста. Сегодня мы публикуем анализ самообучающихся решений, присланных на конкурс по программированию, и вручаем два специальных приза.

Английская версия этой записи — на GitHub.

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

Чтобы пронаблюдать поведение самообучающихся решений, мы протестировали их на 1 000 000 блоков. Тестировать на таком количестве блоков все решения было бы нереально, но эти девять оказались достаточно быстрыми.

На графике ниже показана зависимость процента правильных ответов от числа обработанных блоков. Обратите внимание, что горизонтальная шкала — логарифмическая.

image

Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Просмотры 6.9K
Комментарии 13

Конкурс по программированию: JSDash

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
UPDATE: Конкурс завершён. Итоги.

Компания Hola объявляет долгожданный летний конкурс по программированию! Победителей ожидают призы:

  1. Первое место: 3000 USD.
  2. Второе место: 2000 USD.
  3. Третье место: 1000 USD.
  4. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите половину суммы приза (разумеется, не в ущерб награде победителя). За одного победителя такую награду может получить только один человек — тот, кто отправил ссылку первым.

Авторы интересных решений будут приглашены на собеседования.



Правила



Условия конкурса на английском языке размещены на GitHub. Ниже — перевод на русский язык.

Читать дальше →
Всего голосов 27: ↑26 и ↓1 +25
Просмотры 21K
Комментарии 70

Конкурс по программированию: JSDash (промежуточные результаты)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Спасибо всем, кто уже принял участие в нашем конкурсе по программированию! Приём решений ещё не окончен, но мы решили протестировать те решения, которые нам уже прислали, и опубликовать промежуточные результаты. Пока что мы получили 11 решений от 10 уникальных участников. Мы надеемся получить ещё много решений, поэтому итоговые результаты могут сильно отличаться от этих. Если нам пришлют достаточно много новых решений, проведём ещё одно промежуточное тестирование.

Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 3.3K
Комментарии 13

Конкурс по программированию: JSDash (промежуточные результаты 2)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Объявление: срок приёма решений продлевается до 17 августа.

Спасибо всем, кто уже принял участие в нашем конкурсе по программированию! Мы получили 39 решений от 26 уникальных участников. Публикуем новые промежуточные результаты.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 2.5K
Комментарии 7

Конкурс по программированию: JSDash (промежуточные результаты 3)

Блог компании Hola Спортивное программирование *Занимательные задачки JavaScript *Алгоритмы *
Спасибо всем, кто уже принял участие в нашем конкурсе по программированию! Мы получили 60 решений от 34 уникальных участников. До конца конкурса осталась одна неделя (до 17 августа 2017, 23:59:59 UTC), и мы публикуем последние предварительные результаты.
Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Просмотры 3.9K
Комментарии 33
1