Pull to refresh
4
0
Ярослав @Nyppy

Frontend разработчик

Send message

Держи свой трафик в тайне. SSL Pinning — ещё раз о том же самом

Reading time25 min
Views53K

Всем привет! Меня зовут Юрий Шабалин, я один из основателей компании Stingray Technologies. Мы разрабатываем платформу анализа защищенности мобильных приложений iOS и Android.

Сегодня я хотел бы снова затронуть тему безопасности сетевого взаимодействия между приложением и его серверной частью. На эту тему написано немало, но комплексной статьи, отвечающей на самые разные вопросы, начиная от того, что же такое SSL, до того, как работает атака MiTM и как от нее можно защититься, я еще не встречал (а может, просто плохо искал). В любом случае, мне бы хотелось поделиться своими мыслями на этот счет и внести свою малую долю в русскоязычный контент на эту тему.

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

Читать далее
Total votes 20: ↑20 and ↓0+20
Comments14

Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-все

Reading time20 min
Views377K

Три месяца назад здесь на Хабре была опубликована статья “Интернет-цензура и обход блокировок: не время расслабляться”, в которой простыми примерами показывалось, что практически все популярные у нас для обхода блокировок VPN- и прокси-протоколы, такие как Wireguard, L2TP/IPSec, и даже SoftEther VPN, SSTP и туннель-через-SSH, могут быть довольно легко детектированы цензорами и заблокированы при должном желании. На фоне слухов о том, что Роскомнадзор активно обменивается опытом блокировок с коллегами из Китая и блокировках популярных VPN-сервисов, у многих людей стали возникать вопросы, что же делать и какие технологии использовать для получения надежного нефильтрованного доступа в глобальный интернет.

Мировым лидером в области интернет-цензуры является Китай, поэтому имеет смысл обратить на технологии, которые разработали энтузиасты из Китая и других стран для борьбы с GFW (“великим китайским файрволом”). Правда, для неподготовленного пользователя это может оказаться нетривиальной задачей: существует огромное количество программ и протоколов с похожими названиями и с разными не всегда совместимыми между собой версиями, огромное количество опций, плагинов, серверов и клиентов для них, хоть какая-то нормальная документация существует нередко только на китайском языке, на английском - куцая и устаревшая, а на русском ее нет вообще.

Поэтому сейчас мы попробуем разобраться, что же это все такое и как это использовать и не сойти с ума.

Читать далее
Total votes 126: ↑124 and ↓2+153
Comments136

Что нужно знать, чтобы быть синьором?

Reading time11 min
Views90K

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

Ну-ка, ну-ка...
Total votes 165: ↑147 and ↓18+151
Comments258

Почему бог ломает симметрии

Reading time9 min
Views52K

Первыми это обнаружили шумеры. Шумеры — это те самые ребята, которые 6 тысяч лет назад изобрели кучу полезного: колесо, плуг, письменность, классовое общество, цветные ткани, бубенчики. В том числе они изобрели календарь. Это сегодня календарь нужен чтобы не пропустить день рождения коллеги или деловую встречу, а праздники — это очередной повод выпить. А тогда нужно было знать, когда сеять пшеницу, когда собирать урожай, когда готовиться к розливу рек, когда высохнут дороги после наводнения, чтобы пойти резать соседей, ну или пойти торговать с ними. Праздники также были сугубо практического назначения, по ним отмерялось начало или окончание очередного этапа сельхоз работ. И выпить на праздники как же без этого (пивоварение тоже они изобрели). Кстати у шумеров была шестидесятеричная система счета и именно они разделили час на 60 минут, а минуты на 60 секунд. Так что теперь вы знаете кого проклинать, когда мучаетесь, переводя километры в час в метры/секунды. 

Читать далее
Total votes 167: ↑149 and ↓18+169
Comments197

Создаем облако на Elixir

Reading time9 min
Views5.1K

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

Прыгайте под кат за подробностями.

*Прыг*
Total votes 6: ↑6 and ↓0+6
Comments0

Как мама хакера проникла в тюрьму и заразила компьютер начальника

Reading time5 min
Views19K


На что вы готовы ради успешного завершения проекта? Не спать ночами, отправить семью в отпуск, чтобы они вас не отвлекали, литрами пить кофе и энергетики? Есть варианты и покруче. Cloud4Y рассказывает удивительную историю аналитика по вопросам кибербезопасности. Джон Стрэнд, получивший контракт на проверку системы защиты исправительных учреждений, выбрал человека, который идеально подходил на роль пентестера: собственную мать.
Читать дальше →
Total votes 17: ↑14 and ↓3+17
Comments19

Как робот Атлас научился делать акробатические трюки, непосильные обычному человеку?

Reading time3 min
Views9.3K
Все восхищаются трюками, которые делает робот Атлас (Atlas): то он делает сальто (ноябрь 2017 года), то делает паркур — прыгает вверх по огромным кубам (октябрь 2018), то танцует вальс — кувырки, прыжки и развороты в воздухе (сентябрь 2019).

Что же будет дальше? Если не видели его трюки, то обязательно посмотрите видео подборку на канале PRO роботов:

Total votes 16: ↑8 and ↓8+4
Comments44

Рубикон пройден: nginx

Reading time3 min
Views22K
11 марта 2019 года американская компания F5 Networks купила российскую компанию Nginx (зарегистрирована на Виргинских островах) за сумму около 670 миллионов долларов.

Судя по информации, которая есть в открытом доступе, компания Nginx с момента основания имела три раунда инвестирования примерно на сумму в 33 миллиона долларов, при этом все или почти все инвестиции шли от не российских компаний, а для продажи услуг была создана американская дочка Nginx Inc. Учитывая специфику российского open-source рынка, я думаю, что почти вся прибыль компании была от не российских клиентов. Таким образом получается, что российской компанию делало только гражданство основателя и территориальное расположение офиса разработчиков (г. Москва).

12 декабря 2019 года в московском офисе компании Nginx прошли обыски.

Скорее всего дело тут не в деньгах, хотя сумма весьма большая.
Читать дальше →
Total votes 65: ↑37 and ↓28+19
Comments92

Операция Calypso: новая APT-группировка атакует госучреждения в разных странах мира

Reading time2 min
Views3.9K
Специалисты экспертного центра безопасности Positive Technologies (PT Expert Security Center) выявили APT-группировку, получившую название Calypso. Группировка действует с 2016 года и нацелена на государственные учреждения. На данный момент она действует на территории шести стран.



Команды, посланные злоумышленниками на веб-шелл в ходе атаки

По данным экспертов, от действий группировки уже пострадали организации из Индии (34% жертв), Бразилии, Казахстана (по 18%), России, Таиланда (по 12%) и Турции (6%). Злоумышленники взламывали сетевой периметр и размещали на нем специальную программу, через которую получали доступ к внутренним сетям скомпрометированных организаций.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments5

Асинхронный Python 3.5 и Mongodb

Reading time4 min
Views36K

Это достаточно вольный перевод статьи об основных новшествах асинхронного драйвера для mongodb используемого в tornado. Основной мотив, который послужил для написания этого перевода — новшества, появившиеся в этой версии, такие как поддержка asyncio, async, await и Python 3.5. Сама статья не сколько перечисление новшеств, сколько лаконичные примеры асинхронной работы с MongoDB.


Введение
asyncio
aggregate
Python 3.5
async and await

Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments22

12 книг, которыми мы зачитались

Reading time3 min
Views15K
Хотите лучше разбираться в людях? Узнать, как укрепить силу воли, повысить личную и профессиональную эффективность, прокачать управление эмоциями? Под катом вы найдете список книг для развития этих и других навыков. Конечно, советы авторов — не лекарство от всех бед, и подходят они не каждому. Но немного поразмыслить, что вы делаете не так (или, напротив, что именно вы делаете правильно), никогда лишним не будет.

Этот список — топ-12 самых востребованных книг в библиотеке Plarium Krasnodar за последний год.

Читать дальше →
Total votes 18: ↑11 and ↓7+4
Comments12

Я в одиночку отрефакторил 15 тысяч строк легаси. Это были худшие две недели в жизни

Reading time10 min
Views103K


Несколько месяцев назад я работал в аутстафе. Это не то место, где нужен энтузиазм и вера в великую цель проекта. Меня вместе с командой просто продавали заказчикам, а на митингах было важно, сколько тикетов я закрыл. Приступы перфекционизма — скорее вредная штука для такого места, но я ничего не мог с ними сделать. За один из них я знатно поплатился, попал в адский кранч и провел худшие две недели в моей жизни.
Читать дальше →
Total votes 427: ↑369 and ↓58+311
Comments401

Век живи — век учись. Часть 5. Самообразование: возьми себя в руки

Reading time11 min
Views68K
А вам слабо в свои 25-30-35-40-45 сесть за обучение? Не корпоративное, не оплаченное по тарифу «контора платит», не вынужденное и когда-то недополученное высшее, а самостоятельное? Сесть за свой стол с выбранными вами книгами и учебниками, перед лицом строгого самого себя и освоить то, что вам нужно или так хотелось освоить, что вот уже просто сил нет жить без этих знаний? Это, пожалуй, один из самых сложных интеллектуальных процессов взрослой жизни: мозги скрипят, времени мало, всё отвлекает, да и мотивация не всегда однозначная. Самообразование — важный элемент жизни абсолютно любого профессионала, но оно сопряжено с определёнными трудностями. Давайте разбираться, как лучше организовать этот процесс, чтобы не загнать себя и получить результат.



Это последняя часть цикла «Век живи — век учись»:

Часть 1. Школа и профориентация
Часть 2. Вуз
Часть 3. Дополнительное образование
Часть 4. Образование внутри работы
Часть 5. Самообразование

Делитесь своим опытом в комментариях — может быть, благодаря стараниям команды RUVDS и читателей Хабра обучение окажется немного осознаннее, правильнее и плодотворнее. 
Читать дальше →
Total votes 49: ↑46 and ↓3+43
Comments27

Подготовка данных в Data Science-проекте: рецепты для молодых хозяек

Reading time10 min
Views22K


В предыдущей статье я рассказывала про структуру Data Science-проекта по материалам методологии IBM: как он устроен, из каких этапов состоит, какие задачи решаются на каждой стадии. Теперь я бы хотела сделать обзор самой трудоемкой стадии, которая может занимать до 90% общего времени проекта: это этапы, связанные с подготовкой данных -сбор, анализ и очистка.

В оригинальном описании методологии Data Science-проект сравнивается с приготовлением блюда, а аналитик - с шеф поваром. Соответственно, этап подготовки данных сравнивается с подготовкой продуктов: после того, как на этапе анализа бизнес-задачи мы определились с рецептом блюда, которое будем готовить, необходимо найти, собрать в одном месте, очистить и нарезать ингредиенты. Соответственно, от того, насколько качественно был выполнен этот этап, будет зависеть вкус блюда (предположим, что с рецептом мы угадали, тем более рецептов в открытом доступе полно). Работа с ингредиентами, то есть подготовка данных - это всегда ювелирное, трудоемкое и ответственное дело: один испорченный или недомытый продукт - и весь труд впустую.
Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments10

Тяжела ли работа программиста — взгляд с точки зрения психофизиологии

Reading time4 min
Views65K
Во первых словах:
— Работа программистом-разработчиком — тяжелый труд, сравнимый с валкой леса топором. И проблематика данного труда сильно недооценена в общественном сознании.
Сейчас я обосную этот тезис с научной точки зрения.


Читать дальше →
Total votes 118: ↑101 and ↓17+84
Comments366

История самого юного программиста ПСБ: хакатон стал дверью в банк

Reading time4 min
Views3.2K
Так получилось, что я являюсь самым молодым разработчиком в ПСБ: когда пришел работать в банк, мне было 20 лет. В преддверии дня программиста хочу поделиться историей о том, как участие в хакатоне может практически в один миг изменить судьбу.

Два года назад я пробовал свои силы на хакатоне Промсвязьбанка в Самаре в качестве участника, а сейчас помогаю c кейсом нашего банка на VK Hackathon, который пройдет 27-29 сентября в Питере. Выступлю там в качестве ментора, буду направлять ребят на новые идеи и помогать в их реализации. Есть в этом что-то волнительное.


Читать дальше →
Total votes 36: ↑17 and ↓19-2
Comments1

Осваиваем компьютерное зрение — 8 основных шагов

Reading time3 min
Views104K
Привет, читатель.

Для тебя уже не является новостью тот факт, что все на себе попробовали маски старения через приложение Face App. В свою очередь для компьютерного зрения есть задачи и поинтереснее этой. Ниже представлю 8 шагов, которые помогут освоить принципы компьютерного зрения.

image

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

Total votes 40: ↑35 and ↓5+30
Comments10

Объяснение задачи на Python с собеседования

Reading time2 min
Views29K
Салют, хабровчане! В преддверии запуска нового потока по курсу «Web-разработчик на Python» хотим поделиться новым полезным переводом. Поехали!



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

def f(x, l=[]):
    for i in range(x):
        l.append(i * i)
    return l
>>> f(2)
>>> f(3, [0, 1, 2])
>>> f(3)


Вопрос: Что выведет этот код?
Читать дальше →
Total votes 38: ↑24 and ↓14+10
Comments117

Век живи — век учись. Часть 1. Школа и профориентация

Reading time15 min
Views32K
У меня есть знакомый из Гренобля, сын русских эмигрантов, — после школы (collège+lycée) он переехал в Бордо и устроился работать в порт, через год перешёл в цветочный магазин SMM-щиком, ещё через год окончил короткие курсы и стал кем-то вроде референта руководителя. После двух лет работы, в свои 23 он ушёл в представительство компании SAP на низшую должность, получил университетское образование и сейчас стал инженером корпоративных систем. На вопрос, не страшно ли было делать такой «gap» в образовании, он ответил, что страшно выйти из вуза в 22 и не знать, кто ты и чего ты хочешь. Знакомо? В общем, если вы родитель или родственник школьника или сам школьник, вам под кат. Впрочем, всем остальным тоже неплохой повод для ностальгии.


Читать дальше →
Total votes 56: ↑52 and ↓4+48
Comments24

Кто такие эйдетики, как работают ложные воспоминания, и три популярных мифа о памяти

Reading time5 min
Views56K
Память — удивительная способность мозга, и несмотря на то, что изучается она довольно давно, существует немало ложных — или, как минимум, не совсем точных представлений о ней.

Расскажем о наиболее популярных из них плюс о том, почему не так-то просто все забыть, что заставляет нас «красть» чужую память и как выдуманные воспоминания влияют на нашу жизнь.


Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments76

Information

Rating
Does not participate
Location
Россия
Registered
Activity

Specialization

Frontend Developer
JavaScript
Vue.js
TypeScript