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

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

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

Интернет для дачника. Добываем максимальную скорость в сетях 4G. Часть 1. Выбор правильного роутера

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


Всего голосов 35: ↑35 и ↓0+35
Комментарии97

Vulnhub. Прохождение Sunset: dawn

Время на прочтение4 мин
Количество просмотров4.8K
Следующей машиной в нашей серии прохождений будет Sunset: dawn.


Автор: whitecr0wz

Так же как и в первом прохождении нам нужно определить IP-адрес нашей цели. Для этого используем команду

netdiscover

В моем случае IP-адресом будет 192.168.1.165.

Сканирование


Начнем наше сканирование с определения открытых портов

nmap -p- 192.168.1.165



Видим, что у нас открыты 80, 139, 445 и 3306 порты, вот их мы и будем сканировать

nmap -p80,139,445,3306 -sC -sV -oN dawn 192.168.1.165



Поиск точки входа


80 порт используется сайтом, пожалуй, начнем с него.



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

10 шагов к успешному Python-проекту

Время на прочтение9 мин
Количество просмотров35K
Материал, перевод которого мы сегодня публикуем, посвящён инструментам, которые позволяют оснащать Python-проекты средствами форматирования кода, тестирования, непрерывной интеграции и анализа зависимостей. Это помогает ускорить процесс разработки, способствует повышению качества, единообразия и безопасности кода. Предполагается, что у читателя этого материала уже есть некоторый опыт Python-разработки и проект на Python, с которым он, в ходе чтения, будет экспериментировать. Если такого проекта у вас нет — здесь можно узнать о том, как подготовить среду разработки и создать Python-пакет. Примеры, которые будут здесь приводиться, подготовлены с использованием macOS и Python 3.7.


Читать дальше →
Всего голосов 33: ↑30 и ↓3+27
Комментарии4
Перерисовать человека в кота и наоборот, перевести надпись с китайского «на лету» и сделать подборку статей — эти и многие другие сценарии в мобильных приложениях стали возможны благодаря сервисам, использующим технологии искусственного интеллекта и решающим когнитивные задачи. В мобильной экосистеме Huawei они реализуются через сервис ML Kit, который дает доступ к готовым функциям для мобильных приложений: переводу текста в речь и наоборот, распознаванию лиц и движений и многим другим. Под катом мы расскажем, какие AI-решения предоставляет платформа HMS и как на ней можно работать со своими моделями.
Читать дальше
Всего голосов 13: ↑9 и ↓4+18
Комментарии14

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

Время на прочтение70 мин
Количество просмотров384K
В продолжение моего поста про вычислимую Вселенную я хочу представить вам свой перевод статьи Стивена Вольфрама, созданной в рамках его проекта The Wolfram Physics Project.


Неожиданное открытие


За прошедшие несколько веков произошел настоящий прорыв в наших знаниях о принципах работы окружающего нас мира. Но несмотря на это, у нас все еще нет фундаментальной теории физики, и мы все так же не имеем ответа на вопрос о том, как именно работает наша Вселенная. Я занимаюсь этой темой уже порядка 50-и лет, но только в последние несколько месяцев все кусочки пазла наконец-то начали складываться вместе. И получающаяся картина оказалась гораздо прекрасней, чем все, что я только мог себе представить.
Читать дальше →
Всего голосов 243: ↑238 и ↓5+307
Комментарии459

Управление памятью в Python

Время на прочтение13 мин
Количество просмотров55K
Задумывались ли вы когда-нибудь о том, как данные, с которыми вы работаете, выглядят в недрах Python? О том, как переменные создаются и хранятся в памяти? О том, как и когда они удаляются? Материал, перевод которого мы публикуем, посвящён исследованиям глубин Python, в ходе которых мы попытаемся выяснить особенности управления памятью в этом языке. Изучив эту статью, вы разберётесь с тем, как работают низкоуровневые механизмы компьютеров, в особенности те из них, которые связаны с памятью. Вы поймёте то, как Python абстрагирует низкоуровневые операции и познакомитесь с тем, как он управляет памятью.



Знание того, что происходит в Python, позволит вам лучше понимать некоторые особенности поведения этого языка. Это, хочется надеяться, даст вам возможность по достоинству оценить ту огромную работу, которая делается внутри используемой вами реализации этого языка для того, чтобы ваши программы работали именно так, как вам нужно.
Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии11

Что такое *args и **kwargs в Python?

Время на прочтение4 мин
Количество просмотров414K
Функции — это жизнь. Правда? Если вы только начали осваивать Python, неважно — первый ли это ваш язык программирования, или вы пришли в Python из другого языка, то вы уже знаете о том, что количество параметров в объявлении функции соответствует количеству аргументов, которые передают функции при вызове.



Это — основы. Это то, что помогает людям понимать окружающий мир. Но утверждение «количество параметров равно количеству аргументов» закладывает в голову новичка бомбу замедленного действия, которая срабатывает после того, как он увидит в объявлении функции таинственные конструкции *args или **kwargs.

Не позволяйте всяким значкам загонять себя в ступор. Тут нет ничего архисложного. В общем-то, если эти конструкции вам незнакомы — предлагаю с ними разобраться.
Читать дальше →
Всего голосов 39: ↑32 и ↓7+44
Комментарии15

Burp и его друзья

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

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


img

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

Электронная книга своими руками на STM32H750 от А до Э

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


В этой статье я хочу поделиться опытом разработки электронной книги с использованием недорогого контроллера STM32H750VB, распространенных дискретных компонентов и относительно недорогого дисплея E-Ink. Статья будет большой, так как приведены будут все процессы от постановки задачи до получения первой версии устройства, способного выполнять поставленную задачу. Все будет снабжено схемами, трассировками, кодом и комментариями. Почему в названии от «от А до Э»? Потому что нельзя просто так взять и сделать конечный продукт без ошибок и недоделок.

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

Каверзные вопросы по Python

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

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


Читать дальше →
Всего голосов 51: ↑50 и ↓1+59
Комментарии47

HackTheBox. Прохождение Intanse. Flask, атака HLE, SQL инъекция, SNMP to RCE, Ret2Libc

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

Продолжаю публикацию решений, отправленных на дорешивание машин с площадки HackTheBox.

В данной статье получаем секрет Flask с помощью SQL инъекции, проводим криптоатаку удлинения сообщения, получаем RCE с помощью SNMP, и эксплуатируем уязвимость переполнения буфера в приложении с помощью Ret2Libc атаки.

Организационная информация
Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии0

Роль математики в машинном обучении

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

Прямо сейчас OTUS открывает набор на новый поток продвинутого курса "Математика для Data Science", в связи с этим хотим пригласить вас на бесплатный вебинар, в рамках которого наш эксперт - Петр Лукьянченко, подробно расскажет о программе курса, а также ответит на интересующие вас вопросы.

«Так ли необходимо разбираться в математике, лежащей в основе алгоритмов машинного обучения? В Python ведь уже есть масса широко доступных библиотек, которые можно без труда использовать для построения моделей!»

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

Давайте проясним это раз и навсегда - чтобы стать дата-сайентистом, вам нужно понимать математику, стоящую за алгоритмами машинного обучения. Это неотъемлемая часть роли специалиста по работе с данными, и каждый рекрутер и эксперт в области машинного обучения подтвердит это.

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

Простая математическая задача, которую мы все еще не в состоянии решить

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

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

Эта статья идет вместе с предупреждением: не пытайтесь решить эту математическую задачу.

Вы будете испытывать соблазн попробовать сделать это. Эта проблема достаточно просто сформулирована, понятна и слишком заманчива. Просто выберите число, любое число: если число четное, разделите его пополам; если оно нечетные, умножьте его на 3 и прибавьте 1. Возьмите получившееся новое число и повторяйте этот процесс снова и снова. Если вы будете продолжать выполнять эти итерации достаточное количество раз, в конечном итоге вы застрянете в бесконечном цикле. По крайней мере, мы так думаем.

Читать далее
Всего голосов 19: ↑17 и ↓2+24
Комментарии24

Оптимизация работы с PostgreSQL в Go: от 50 до 5000 RPS

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

Привет, меня зовут Иван, и я делаю Авито Доставку. Когда пользователь покупает товар с доставкой, мы показываем ему список отделений служб доставки с ценами. Цена доставки может меняться от отделения к отделению. Мы смотрим на область карты, где покупатель ищет товар и информацию по объявлению, например, координаты продавца, вес и размеры товара. И на выходе показываем человеку список отделений с адресами и ценой доставки в каждое из них.


В ходе разработки калькулятора цены доставки возникла такая задача: есть структура базы данных PostgreSQL и запрос к ней от сервиса на Go. Нужно заставить всё это работать достаточно быстро. В итоге нам удалось поднять пропускную способность сервиса с 50 до 5000 RPS и выявить пару нюансов при общении сервиса с базой. Об этом и пойдёт рассказ.


Читать дальше →
Всего голосов 44: ↑39 и ↓5+42
Комментарии44

Процедурное разрушение в Control: какие уроки можно почерпнуть из опыта Remedy

Время на прочтение11 мин
Количество просмотров9.2K
Этим летом на GDC старший VFX-артист Remedy Йоханнес Рихтер рассказал о том, как реализовано процедурное разрушение в последней игре студии — мистическом экшене Control.

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


Читать дальше →
Всего голосов 32: ↑29 и ↓3+29
Комментарии7

Как избежать ошибок при создании серверной?

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

Источник: getty image

Несмотря на массовую миграцию бизнеса в облака остаются компании, руководство которых следует стратегии «всё своё ношу с собой», по различным причинам не доверяя свои вычислительные мощности сторонним дата-центрам. Однако оборудование собственного серверного помещения — не настолько простая задача, как считают многие лица, принимающие решения. В этом посте мы расскажем об ошибках, которые допускаются при самостоятельном проектировании и реализации серверного помещения.
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии4

Как я в одиночку питчил игру, не имея в этом никакого опыта

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

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

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

Читать далее
Всего голосов 16: ↑13 и ↓3+18
Комментарии10

Как в 30 лет стать старым и никому не нужным на примере разработки квеста

Время на прочтение9 мин
Количество просмотров57K
Всем привет. Хочу поделиться своей историей, а именно — историей немного затянувшейся разработки простенького point‑and‑click квеста.

Всего голосов 165: ↑163 и ↓2+213
Комментарии155

Raspberry Pi, Python и полив комнатных растений

Время на прочтение8 мин
Количество просмотров29K
У меня не складываются отношения с комнатными растениями. Дело в том, что я забываю их поливать. Зная это, я начал размышлять о том, что кто-то, наверняка, уже нашёл способ автоматизации полива. Как оказалось, способов таких существует очень много. А именно, речь идёт о решениях, основанных на Arduino или на Raspberry Pi. В этом материале я хочу рассказать о том, как создал систему, основанную на Raspberry Pi и Python, предназначенную для автоматизации полива растений.


Читать дальше →
Всего голосов 24: ↑21 и ↓3+32
Комментарии73

Защита Linux-сервера. Что сделать в первую очередь

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

Habib M’henni / Wikimedia Commons, CC BY-SA

В наше время поднять сервер на хостинге — дело пары минут и нескольких щелчков мыши. Но сразу после запуска он попадает во враждебную среду, потому что открыт для всего интернета как невинная девушка на рокерской дискотеке. Его быстро нащупают сканеры и обнаружат тысячи автоматически скриптовых ботов, которые рыскают по сети в поисках уязвимостей и неправильных конфигураций. Есть несколько вещей, которые следует сделать сразу после запуска, чтобы обеспечить базовую защиту.
Читать дальше →
Всего голосов 50: ↑43 и ↓7+52
Комментарии100

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность