Pull to refresh
4
0

Пользователь

Send message

Лучшие новые библиотеки Python за 2022 год

Reading time10 min
Views35K

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

Читать далее

Как выжить, если вы падаете со скоростью 190 км/ч с высоты 10 000 метров, и у вас в запасе есть три минуты

Reading time8 min
Views204K


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

6:59:00, высота 10 000 м




Вчера вы рано легли, а сегодня у вас был ранний рейс. Вскоре после взлёта вы засыпаете. И вдруг вы резко просыпаетесь – вокруг вас свистит холодный воздух и раздаётся шум. Ужасный и громкий. Где я? – думаете вы. Где самолёт?

Вы на высоте 10 км. Один. И вы падаете.
Читать дальше →

10 удивительно полезных базовых функций Python

Reading time7 min
Views34K
image

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

В качестве примера можно привести NumPy. Инструменты работы с матрицами хороши и в базовом Python, но использование NumPy улучшает все во много раз. Кроме того, у этого языка есть несколько крутых возможностей, которые делают его еще более функциональным. Используя эти возможности, вы можете уменьшить количество зависимостей, освободить время и упростить сам процесс разработки. Давайте посмотрим, что это за возможности.
Читать дальше →

Как я искал нормальный RDP-клиент и нашел целых три

Reading time5 min
Views247K


Remote Desktop Protocol — один из самых распространенных протоколов для удаленного управления, потому что он используется для работы с операционными системами Windows, которые часто незаменимы в корпоративной среде. Естественно, самый распространенный способ подключения к удаленной системе — использование средств встроенных в саму систему, но он не единственный и, более того, совершенно неприменимый, если используется другая ОС или сильно устаревшая Windows.

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

ZeroTier, WireGuard и «LAN» от RuVDS. Сравнение возможностей и области применения

Reading time12 min
Views25K


В предыдущих статьях, от RSagittarius, посвящённых ZeroTier было подробно рассмотрено практическое применение данного инструмента и его настройка. Настало время сравнить его с таким, набирающим популярность, решением как WireGuard, что бы понять — в каких случаях лучше выбрать ZeroTier, а в каких WireGuard. Так же, «на закуску», рассмотрим такую штуку как локалка RuVDS.
Поехали!

IKEv2 туннель между MikroTik и StrongSwan: EAP ms-chapv2 и доступ к сайтам

Reading time3 min
Views42K

Идея статьи возникла желании пропускать определенные сайты через VPN-туннель напрямую через маршрутизатор. Так как количество устройств дома велико, а пускать весь трафик через VPN неудобно в связи с низкой пропускной способностью туннеля. Статья написана сразу после создания конфигурации. Настройка будет проходить в Winbox MikroTik.

Читать далее

Релиз ruleguard v0.3.0

Reading time8 min
Views2.7K

Релиз ruleguard v0.3.0


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


func alwaysTrue(m dsl.Matcher) {
    m.Match(`strings.Count($_, $_) >= 0`).Report(`always evaluates to true`)
    m.Match(`bytes.Count($_, $_) >= 0`).Report(`always evaluates to true`)
}

func replaceAll() {
    m.Match(`strings.Replace($s, $d, $w, $n)`).
        Where(m["n"].Value.Int() <= 0).
        Suggest(`strings.ReplaceAll($s, $d, $w)`)
}

Год назад я уже рассказывал об утилите ruleguard. Сегодня хотелось бы поделиться тем, что нового появилось за это время.


Основные нововведения:



Читать дальше →

Большая игра на понижение крипты. Механизм финансовой катастрофы

Reading time17 min
Views278K


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

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

Бенчмарки PHP 8.0 и 7.4 на Symfony: повышение производительности JIT до +9% вместе с предварительной загрузкой OPCache

Reading time4 min
Views7.5K

PHP 8.0 должен увидеть свет 26 ноября 2020 года, а вскоре за ним и последняя версия фреймворка Symfony 5.2. Здесь представлена серия бенчмарков, выполненных на последних версиях обоих проектов. Это чистый hello world сценарий, и его следует воспринимать как таковой. Имеет значение только относительная производительность. В реальном мире YMMV (ваши результаты могут отличаться от приведенных).

Читать далее

Как два студента колледжа заработали $600000 за 24 часа

Reading time5 min
Views22K
В 2017 году студенты Университета Аризоны Алан Алчалел и Брэди Сильвервуд разработали стратегию продвижения своей линии купальников Sunny Co Clothing. Они обещали всем, кто сделает репост поста с «бесплатным» купальником, товар бесплатно, необходимо лишь заплатить за доставку $12 (розничная стоимость купальника без акции $64,99). Предложение действовало 24 часа.

image
Фотография, с которой все начиналось. @sunnycoclothing

За ночь число подписчиков в Instagram выросло с 7 000 до 784 000. Более 346 000 человек приняли участие в акции, что заставило ребят ограничить предложение в 50 000 единиц. Давайте посчитаем: 50 000 единиц x 12 = $600000. Нет, это не опечатка. Кампания собрала более $600000 за 24 часа. Это было настолько неожиданно, что ребятам пришлось вернуть почти $73000, так как они не могли удовлетворить спрос. Это создало кучу споров и разговоров, называющих рекламную кампанию провальной. Один писатель даже подумал, что она принадлежит к той же категории, что и печально известный фестиваль Fyre. Не все смогли оценить полную картину происходящего.
Читать дальше →

Используем tcpdump для анализа и перехвата сетевого трафика

Reading time7 min
Views348K


Утилита tcpdump — отличный инструмент командной, который способен перехватывать и анализировать сетевой трафик. Может оказаться большим подспорьем при решении сетевых проблем. Пакеты можно сохранить в файл и анализировать позже. Рекомендуется время от времени запускать эту утилиту, чтобы следить за своей сетью.


Содержание:


  • Вывод tcpdump
  • Установка tcpdump
  • Опции tcpdump
  • Фильтры tcpdump:
    • Фильтр выражений
    • Фильтр портов
    • Фильтр хостов
    • Комбинирование фильтров
  • Сохранение заголовков в файл
  • Просмотр сведений о пакете
  • Вывод

Вывод tcpdump


Утилита tcpdump позволяет проверять заголовки пакетов TCP/IP и выводить одну строку для каждого из пакетов. Она будет делать это до тех пор, пока не нажать Ctrl + C.


Давайте рассмотрим одну строку из примера вывода:


20:58:26.765637 IP 10.0.0.50.80 > 10.0.0.1.53181: Flags [F.], seq 1, ack 2, win 453, options [nop,nop,TS val 3822939 ecr 249100129], length 0

Каждая строка включает:


  • Метка времени Unix (20: 58: 26.765637)
  • протокол (IP)
  • имя или IP-адрес исходного хоста и номер порта (10.0.0.50.80)
  • имя хоста или IP-адрес назначения и номер порта (10.0.0.1.53181)
  • Флаги TCP (Flags [F.]). Указывают на состояние соединения и могут содержать более одного значения:
    • o S — SYN. Первый шаг в установлении соединения
    • F — FIN. Прекращение соединения
    • — ACK. Пакет подтверждения принят успешно
    • P — PUSH. Указывает получателю обрабатывать пакеты вместо их буферизации
    • R — RST. Связь прервалась
  • Порядковый номер данных в пакете. (seq 1)
  • Номер подтверждения. (ack 2)
  • Размер окна (win 453). Количество байтов, доступных в приемном буфере. Далее следуют параметры TCP
  • Длина полезной нагрузки данных. (length 0)
Читать дальше →

5 приемов и хитростей для работы с SSH и кое-что ещё

Reading time8 min
Views25K
image

В этой статье мы поговорим о полезных приемах и командах при работе с SSH. А именно:

  • Как использовать двухфакторную аутентификацию для SSH-подключений.
  • Безопасное использование «проброса ключа» (agent forwarding).
  • Завершение зависшей сессии.
  • Оставляем терминал открытым при выходе или разрыве связи.
  • Расшариваем удаленный терминал с другом (без Zoom!).
Читать дальше →

Кунг-фу стиля Linux: упрощение работы с awk

Reading time8 min
Views14K
Утилита awk — это нечто вроде швейцарского ножа для обработки текстовых файлов. Но некоторые ограничения awk порой доставляют неудобства тем, кто этой утилитой пользуется. Я, для того чтобы упростить работу с awk, создал несколько функций. Но сразу хочу сказать о том, что для работы этих функций нужны возможности GNU-версии awk. Поэтому для того чтобы воспроизвести то, о чём я буду рассказывать, вам совершенно необходимо использовать gawk и ничего другого. Возможно, в вашей системе настроено сопоставление /usr/bin/awk с чем-то, и это «что-то» может представлять собой gawk. Но это может быть и mawk, и какая-то другая разновидность awk. Если вы используете дистрибутив Linux, основанный на Debian, то знайте, что команда update-alternatives — это ваш хороший друг. В данном материале я буду исходить из предположения о том, что его читатель использует gawk.



После того, как вы прочитаете эту статью, вы узнаете о том, как пользоваться моей библиотекой дополнительных функций для awk. А именно, речь идёт о разделении строки на поля даже в условиях, когда не существует единого символа, используемого для разделения полей. Кроме того, вы сможете обращаться к полям, используя выбранные вами имена. Например, вам не придётся помнить о том, что $2 — это поле, содержащее сведения о времени. Вместо этого можно будет просто воспользоваться конструкцией наподобие Fields_fields[«time»].
Читать дальше →

57 отборных репозиториев для всех разработчиков Python

Reading time8 min
Views27K
Специально к старту нового потока курса «Python для веб-разработки» представляем подборку из 57 репозиториев, которые будут полезны как начинающему, так и опытному разработчику: это репозитории с ответами на вопросы собеседований, репозитории с книгами, небольшие, но полезные консольные инструменты и проекты, которые вдохновят вас написать красивый, работающий и полезный код.


Приятного чтения!

Различные методы брутфорс атак WordPress

Reading time5 min
Views23K


В этой статье вы узнаете о том, как взламывать учетные данные сайтов на WordPress с помощью различных брутфорс атак.


Содержание:


  • Предварительные требования
  • WPscan
  • Metasploit
  • Люкс Burp
  • Как обезопасить сайт от брутфорса?

Предварительные требования


  • Сайт на WordPress. Здесь мы будем использовать собственную лабораторию для пентеста, о созданию которой был посвящен наш предыдущий пост.
  • Kali Linux (WPscan). Более подробно о WPScan и его возможностях мы уже писали, а вместо Kali Linux можно использовать любую другую из ОС для белого хакинга.
  • Burp Suite (Intruder). Более подробно о данном инструменте можно узнать здесь.

WPscan


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


Здесь мы будем использовать WordPress, размещенный на локальном хосте.



Во время перебора можно использовать:


  • Собственные общие списки логинов и паролей
  • Базы логинов и паролей, которые уже есть в Kali Linux
Читать дальше →

CIFS over SSH штатными средствами Windows 10

Reading time6 min
Views18K

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


Однажды потребовалось мне организовать доступ к серверу по протоколу SMB и в поиске решения я наткнулся на следующую статью: Mounting your Nikhef home directory using SSH for Windows 8. Это было простое и удобное решение, которое использовало Putty. Чуть позже мне пришлось настраивать это решение на другом компьютере и я понял, что Putty тут лишний с тех пор как в Windows 10 появился встроенный ssh-клиент на основе OpenSSH.


Под катом — идентичная схема, только с использованием OpenSSH под Windows 10.

Читать дальше →

Создание шаблона VDS с Zabbix 5 на CentOS 8

Reading time8 min
Views6.8K


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

С 5-ой версией в Zabbix пришло множество улучшений, среди которых множество новых шаблонов и плагинов для различных сервисов, новые интеграции с системами оповещений и уведомлений, улучшена визуализация, а так же улучшена безопасность, за счет добавления пользовательских секретных макросов для хранения такой чувствительной информации как пароли и API-ключи и возможности включить шифрование между компонентами Zabbix с использованием TLS.
Читать дальше →

Внедряем оплату BTC куда угодно (Python)

Reading time7 min
Views49K

Внедряем оплату BTC куда угодно (Python)

- генерация кошелька на основе seed фразы

- проверка баланса и транзакций

- отправка BTC на другие кошельки

- создаем телеграм бота для выполнения операций с BTC

- исходники бота (github)

Читать далее

Python-пакеты для Data Science

Reading time8 min
Views39K
Python — это один из самых распространённых языков программирования. Хотя стандартные возможности Python достаточно скромны, существует огромное количество пакетов, которые позволяют решать с помощью этого языка самые разные задачи. Пожалуй, именно поэтому Python и пользуется такой популярностью среди программистов. Можно наугад назвать какую-нибудь сферу деятельности и в экосистеме Python, почти гарантированно, найдутся отличные инструменты для решения специфических задач из этой сферы. В наше время весьма востребованы наука о данных (Data Science, DS) и машинное обучение (Machine Learning, ML). И там и там Python показывает себя наилучшим образом.

Помимо Python в DS-проектах часто используют язык программирования R. R быстрее Python и имеет больше статистических и вычислительных библиотек. Но в этом материале мы будем говорить исключительно о библиотеках (пакетах) для Python, о которых стоит знать каждому, кто хочет добраться до профессиональных вершин Data Science.



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

Маленькие хитрости SSH

Reading time6 min
Views43K
В этой статье собраны наши лучшие приемы для более эффективного использования SSH. Из нее вы узнаете как:

  • Добавить второй фактор к логину SSH
  • Безопасно пользоваться agent forwarding
  • Выйти из вставшей SSH сессии
  • Сохранить постоянный терминал открытым
  • Поделиться удаленной сессией терминала с другом (без Zoom!)

Добавление второго фактора к своему SSH


Второй фактор аутентификации к своим SSH соединениям можно добавить пятью разными способами:

  1. Обновить свой OpenSSH и использовать ключ шифрования. В феврале 2020 года в OpenSSH была добавлена поддержка ключей шифрования FIDO U2F (Universal Second Factor). Это отличная новая функция, но есть нюанс: только те клиенты и серверы, которые обновились до версии OpenSSH 8.2 и выше смогут пользоваться ключами шифрования, так как февральское обновление вводит для них новые типы ключей. Командой ssh –V можно проверить клиентскую версию SSH, а серверную — командой nc [servername] 22
Читать дальше →

Information

Rating
Does not participate
Registered
Activity