Как стать автором
Обновить
15
0
Александр Красов @xsash

IT специалист

Отправить сообщение

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров337K

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

Но кое о чем мы не поговорили. Во второй статье я вскользь упомянул самую передовую и недетектируемую технологию обхода блокировок под названием XTLS-Reality, и пришло время рассказать о ней поподробнее, а именно - как настроить клиент и сервер для нее.

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

Читать далее
Всего голосов 37: ↑37 и ↓0+37
Комментарии304

Dart: Асинхронность

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров5.3K

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

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

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии3

8 правил, которые пригодятся при описании Git-коммитов

Время на прочтение9 мин
Количество просмотров21K

Иногда системы контроля версий напоминают групповые чаты: вроде бы все тут собрались по какому-то поводу и пишут о чём-то одном, но что именно пишут ― разобраться порой просто невозможно. Как и в чате, где на одно грамотное и полное сообщение наберётся сотня «гыгы, лол» и «))))))», в Git-коммитах на несколько внятных описаний приходится втрое больше чего-то такого:

c63b59c ЛОГИКА РАБОТЫ File[] filesList; (ВНИМАНИЕ!)

3775079 Правки самые последние NEW

71acc53 Правка последняя

Особенно это становится заметно во времена крупных доработок. Когда у разработчика много задач и горящих дедлайнов, есть соблазн плюнуть на написание нормальных комментариев к коммитам (commit messages) и применить золотое антиправило экономии времени «Разберусь потом». Но когда наступает это «потом», комментарии типа «03.03 – 04.03» или «последняя правка» не дают ничего, кроме чувства досады на себя в прошлом.

В этой статье мы решили напомнить про правила хорошего тона при написании комментариев к коммитам, чтобы позаботиться о себе и своих коллегах.

Читать далее
Всего голосов 12: ↑9 и ↓3+6
Комментарии42

Простая аутентификация на PHP

Время на прочтение7 мин
Количество просмотров64K

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

Disclaimer: статья рассчитана на совершенных новичков. Умудрённые опытом разработчики ничего нового здесь не найдут, но могут указать на возможные недочёты =).

Читать далее
Всего голосов 28: ↑23 и ↓5+18
Комментарии115

Отправка SMS кириллицей с AT-модема

Время на прочтение3 мин
Количество просмотров6.6K

Оперативное информирование клиентов, когда их достаточно много для ручного обзвона, но недостаточно много для подключения массового сервиса, вроде sms.ru (на самом деле сервис хорош, но недавняя политика некоторых мобильных операторов создала определённые финансовые сложности ввиду заградительных тарифов на использование услуг sms-рассылок с/без использования имён, для относительно не крупных рассылок), что породило потребность в применении независимого инструмента.

Путем продолжительных скитаний по просторам сети, был изучен ряд материалов и некоторые готовые решения. Спасибо dos999 (Ссылка на пост) за отправную точку, но хотелось бы реализовать это "модном" на python3.

Была предпринята попытка адаптировать изложенную логику на основе полученных знаний, но уперся в кириллическую кодировку, т.к. готового кодера в UCS-2 python не имеет, а варианты на основе utf-16 приводили к какому-то такому результату "PÉQ@P>Q£Q$P>P9".

Но, кто ищет - то находит. Попалась мне на задворках сети готовая реализация на python2 от huh-muh (Ссылка на пост). И тут пазл сложился, а адаптировать под python3 труда не составило:

Читать далее
Всего голосов 12: ↑10 и ↓2+8
Комментарии10

Как я чуть не выкинул 150к на ветер или история установки приточной вентиляции в квартире

Время на прочтение19 мин
Количество просмотров623K

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


Читать дальше →
Всего голосов 375: ↑370 и ↓5+365
Комментарии595

Регулярные выражения для самых маленьких

Время на прочтение11 мин
Количество просмотров224K
Привет, Хабр.

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

Некоторые из них для наглядности будут показаны на примере языков программирования PHP или JavaScript, но в целом они работают независимо от ЯП.

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

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

Поехали!


Читать дальше →
Всего голосов 67: ↑64 и ↓3+61
Комментарии55

Отчет по пентесту: краткое руководство и шаблон

Время на прочтение4 мин
Количество просмотров19K

Во вчерашней статье мы подробно разобрали методологию комплексного тестирования защищенности и соответствующий инструментарий этичного хакера. Даже если мы с вами в совершенстве овладеем методикой взлома и проведем тестирование на самом высоком уровне, но не сможем грамотно представить результаты заказчику, то проект будет «так себе». Как написать грамотный отчет по тестированию защищенности – об этом мы и поговорим сегодня.


Читать дальше →
Всего голосов 12: ↑10 и ↓2+8
Комментарии4

Музыка для ваших проектов: 12 тематических ресурсов с треками по лицензии Creative Commons

Время на прочтение7 мин
Количество просмотров118K
Подборка пригодится разработчикам, дизайнерам, видеорежиссерам и контент-мейкерам, которые ищут музыку для своих проектов — приложений, игр или видеороликов.

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

Всего голосов 57: ↑56 и ↓1+55
Комментарии9

Курс MIT «Безопасность компьютерных систем». Лекция 14: «SSL и HTTPS», часть 1

Время на прочтение16 мин
Количество просмотров12K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3
Лекция 11: «Язык программирования Ur/Web» Часть 1 / Часть 2 / Часть 3
Лекция 12: «Сетевая безопасность» Часть 1 / Часть 2 / Часть 3
Лекция 13: «Сетевые протоколы» Часть 1 / Часть 2 / Часть 3
Лекция 14: «SSL и HTTPS» Часть 1 / Часть 2 / Часть 3
Всего голосов 17: ↑16 и ↓1+15
Комментарии2

SSLH: Прячем SSH/HTTPS/OpenVPN/Telegram за единым портом 443

Время на прочтение3 мин
Количество просмотров117K
image

SSH/HTTPS/OpenVPN/Telegram и всё на одном порту?! Что?!
— Да!
  • Хотите скрыть наличее у вас некоторых сервисов?
  • В публичной wi-fi сети блокируется всё кроме 443 (https) порта?
  • Настроили Telegram Proxy/OpenVPN и не хотите его «светить» ?
  • SSH подключение к своему серверу из стран с цензурой?

На все эти вопросы ответ один — Мультиплексирование SSL/TLS соединений, или SSLH.

В посте мы рассмотрим как в 1 команду спрятать кучу сервисов за 1 портом.
Читать дальше →
Всего голосов 83: ↑79 и ↓4+75
Комментарии100

Еще один рюкзак-антивор к новому сезону прогулок в городе

Время на прочтение3 мин
Количество просмотров18K
Рюкзаки с защитой от карманников все еще тренд, заданный Bobby в прошлом сезоне. Логично, что и в этом году мы должны были бы получить от разных брендов новую продукцию «под запрос». И получили.



Один из таких рюкзаков продается в России под брендом «Okira».
Читать дальше →
Всего голосов 34: ↑25 и ↓9+16
Комментарии18

Полезные нагрузки для тестирования веб-приложений

Время на прочтение3 мин
Количество просмотров17K
image
 
Использование полезных нагрузок (пейлоадов) позволяет проводить фаззинг веб-приложения, для выявления аномалий/признаков уязвимостей. В этой статье я рассмотрю несколько вариантов пейлоадов для тестирования веб-приложений.
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии0

Как восстановить утерянный пароль к архиву с помощью видеокарты

Время на прочтение6 мин
Количество просмотров87K
image

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


Случилось так, что мне потребовалось подобрать утерянный пароль к архиву 7zip, который содержал резервную копию нескольких файлов со старого диска. Пароль я давно потерял, а процесс его восстановления потребовал определенных усилий и оказался довольно занятным делом. Подробнее об этом и расскажу в статье.
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии38

WhiteList vs BlackList: как реализовать проверку расширений файлов и не стать жертвой хакеров

Время на прочтение4 мин
Количество просмотров8.5K
image

Нередко, во время анализа защищенности веб-приложений мы сталкиваемся с загрузкой каких-либо файлов на сервер – это могут быть и фотографии учетной записи, и какие-то текстовые документы, и что угодно другое. Существуют расширения файлов, с которыми многие работали и знают, почему нужно запретить их загрузку на сервер (например, при использовании веб-сервера apache в связке с PHP, наверное, лучше избегать загрузку файлов с расширением «.php» от пользователей). Однако, мне показалось, что остались еще некоторые малоизвестные форматы, которые по-разному воспринимаются различными веб-серверами.

При написании кода, который отвечает за загрузку файлов, разработчики веб-приложений, могут прибегнуть к проверке расширения загружаемого файла либо по WhiteList (и тогда можно загружать только файлы с определенным расширением), либо по BlackList (и тогда можно загружать любые файлы, которые не описаны в списке). Если все-таки используется второй вариант, то это нередко может выливаться в уязвимость (например, XSS или даже RCE).

Как правило, программисты вносят в BlackList уже известные и очевидные расширения. В статье же будут рассмотрены не самые распространенные типы файлов.
Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии5

Бухгалтерский учет для программистов

Время на прочтение16 мин
Количество просмотров81K

Введение


Занимаюсь автоматизацией бухгалтерского учета 17 лет. После универа поработал как программист бухгалтерской программы. Выяснилось, что есть спрос на программистов этой программы. Поменял одну работу, вторую. Начал брать заказы на стороне. Выяснилось (или показалось), что выполнять заказы выгоднее, чем получать зарплату. Стал частным предпринимателем. Выяснилось (или опять показалось), что продавать программу выгоднее, чем программировать. Стал дилером. Оказалось, что выгоднее всего – подписка на обновления и обслуживание. Возможно, еще выгоднее сделать веб-сервис для онлайн-бухгалтерии…

В ходе работы приходилось нанимать программистов и обучать основам бухгалтерского учета. Когда обучал программистов бухучету, мне нравилось за час рассказать им всю базовую теорию. Приятно срывать покровы сложности и таинственности. Оказывается, курсы бухгалтеров никому не нужны. Нет такой науки. Разве что набор терминов, в которых путаются сами бухгалтера…
Читать дальше →
Всего голосов 51: ↑51 и ↓0+51
Комментарии182

7 бесплатных курсов по Data Science для начинающих

Время на прочтение2 мин
Количество просмотров125K
Большие данные перестали быть просто модным словом и теперь применяются в сферах от IT до ритейла. Самое время начать разбираться в моделях анализа данных, погрузиться в массивы информации и получить опыт в интересном направлении — Data Scientist. Держите курсы, в которых изучите теорию и наберетесь практики. Профи не станете, но первый шаг сделаете.


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

Тест на проникновение с помощью Metasploit Framework: базовое руководство для системного администратора

Время на прочтение13 мин
Количество просмотров99K

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


Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии12

Подборка бесплатных утилит компьютерной криминалистики (форензики)

Время на прочтение3 мин
Количество просмотров97K
image

В этой статье представлены бесплатные инструменты для проведения расследования инцидентов информационной безопасности.
Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии18

Многозадачная Ардуина: таймеры без боли

Время на прочтение7 мин
Количество просмотров116K
Не каждый ардуинщик знает о том, что помимо стартового кода в setup и бесконечного цикла в loop, в прошивку робота можно добавлять такие кусочки кода, которые будут останавливать ход основного цикла в строго определенное заранее запланированное время, выполнять свои дела, затем аккуратно передавать управление в основную программу так, что она вообще ничего не заметит. Такая возможность обеспечена механизмом прерываний по таймеру (обычное дело для любого микроконтроллера), с её помощью в прошивку можно вносить элементы реального времени и многозадачности.

Еще меньше используют такую возможность на практике, т.к. в стандартном не слишком богатом API Arduino она не предусмотрена. И, хотя, доступ ко всем богатствам внутренних возможностей микроконтроллера лежит на расстоянии вытянутой руки через подключение одного-двух системных заголовочных файлов, не каждый пожелает добавить в свой аккуратный маленький скетч пару-тройку экранов довольно специфического настроечного кода (попутно потеряв с ним остатки переносимости между разными платами). Совсем единицы (тем более, среди аудитории Ардуино) решатся и смогут в нем разобраться.

Сегодня я избавлю вас от страданий.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии24
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность