Сетевик Джонни // Network Admin
5.95K subscribers
513 photos
61 videos
386 links
Я Сетевик Джонни, моя цель в телеграме рассказать все о сетях в доступной форме!

Сотрудничество: @stein_media
Download Telegram
🌐Компьютерные сети от А до Я: классификация, стандарты и уровни

Компьютерные сети классифицируются по:

▫️Типу коммутации.
▫️Технологии передачи.
▫️Протяженности.

По типу коммутации сети бывают:

▫️с коммутацией каналов;
▫️пакетов.

Разделение по технологии передачи:

▫️широковещательные сети (данные, переданные в сеть, ▫️доступны всем устройствам этой сети);
▫️точка-точка (передача от одного устройства к другому, иногда с наличием промежуточных узлов).

По протяженности компьютерные сети делятся на:

▫️персональные;
▫️локальные;
▫️муниципальные;
▫️глобальные;
▫️объединение сетей (пример – сеть Интернет).

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

Используется 2 типа стандартов:
▫️De jure (юридические, формальные стандарты).
▫️De Facto (стандарты фактические)

Самыми важными стандартами являются:

▫️ISO (Международная организация по стандартизации) приняла стандарт на эталонную модель взаимодействия открытых систем.
▫️Консорциум W3C (World Wide Web Consortium) – веб-стандарты.
▫️IAB (Совет по архитектуре Интернета) – протоколы Интернет.
▫️IEEE (Институт инженеров по электронике и электротехнике) – технологии передачи информации.

IAB состоит из нескольких частей:

▫️IRTF (Группа исследователей Интернет) – долгосрочные исследования на перспективу;
▫️IETF (Группа проектирования Интернет) – занимается выпуском стандартов на сетевые протоколы;
▫️RFC (запрос комментариев) – документы, описывающие работу различных протоколов (формально это не стандарты).

#сети | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
🔆 Основы компьютерных сетей

Виды топологии:

▫️Топология с общей шиной (англ. Bus Topology)
Одна из первых физических топологий. Суть состояла в том, что к одному длинному кабелю подсоединяли все устройства и организовывали локальную сеть. На концах кабеля требовались терминаторы.

▫️Кольцевая топология (англ. Ring Topology)
В данной топологии каждое устройство подключается к 2-ум соседним. Создавая, таким образом, кольцо. Здесь логика такова, что с одного конца компьютер только принимает, а с другого только отправляет. То есть, получается передача по кольцу и следующий компьютер играет роль ретранслятора сигнала

▫️Топология звезда (англ. Star Topology)
Все устройства подключаются к центральному узлу, который уже является ретранслятором. В наше время данная модель используется в локальных сетях, когда к одному коммутатору подключаются несколько устройств, и он является посредником в передаче.

▫️Полносвязная топология (англ. Full-Mesh Topology)
Все устройства связаны напрямую друг с другом. То есть с каждого на каждый. Данная модель является, пожалуй, самой отказоустойчивой, так как не зависит от других. Но строить сети на такой модели сложно и дорого.

▫️Неполносвязная топология (англ. Partial-Mesh Topology)
Как правило, вариантов ее несколько. Она похожа по строению на полносвязную топологию. Однако соединение построено не с каждого на каждый, а через дополнительные узлы. То есть узел A, связан напрямую только с узлом B, а узел B связан и с узлом A, и с узлом C.

▫️Смешанная топология (англ. Hybrid Topology) - представлена на фото
Самая популярная топология, которая объединила все топологии выше в себя. Представляет собой древовидную структуру, которая объединяет все топологии. Одна из самых отказоустойчивых топологий.

#Topology | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101🔥1
🧭Протоколы верхнего уровня

Модель OSI в нынешнее время служит только в качестве обучения ролям каждого уровня. Работают же сети по стеку протоколов TCP/IP. Хоть TCP/IP состоит из 4 уровней, он вполне реализует все функциональные возможности, реализуемые в модели OSI. На картинке приведены сравнения уровней и их ролей.

Протокол HTTP (англ. HyperText Transport Protocol)
Протокол передачи данных, используемый обычно для получения информации с веб-сайтов. С каждым годом этот протокол становится все популярнее, и возможностей для его применения становится все больше. Использует он «клиент-серверную» модель.

DNS (Domain Name System)
Система доменных имен. Если говорить в целом, то она хранит информацию о доменах. Например, какому IP адресу соответствует определенное имя. Приведу пример: когда вы открываете свой любимый сайт, то обращаетесь к нему по имени. Но в поля Source Address и Destination Address, которые работают на сетевом уровне, нельзя вставить имя.

DHCP (Dynamic Host Configuration Protocol)
Протокол динамической настройки узла. Он позволяет узлам динамически получать IP адреса и другие параметры для корректной работы в сети (основной шлюз, маску подсети, адреса DNS-серверов).

POP3 (англ. Post Office Protocol Version 3)
Протокол почтового отделения версии 3. Протокол, который используют клиенты для получения почтовых писем с сервера. Версии 1-ая и 2-ая устарели и в нынешнее время не используются. Работает он по принципу «загрузи и удали». Что это значит? Это значит, что клиент заходит на сервер и смотрит, есть ли для него письмо.

SMTP (англ. Simple Mail Transfer Protocol)
Простой протокол передачи почты. Используется он, как вы поняли, для передачи почты на почтовый сервер. Вот почему мы изучаем POP3 и SMTP параллельно. Использует он 25 порт.

Telnet (от англ. terminal network)
Применяется он для отображения текстового интерфейса, а также для управления ОС. Очень полезный протокол, и каждый сетевой инженер обязан уметь работать с ним.

#OSI #TCP/IP | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍1
🛰 Четыре уровня кэширования в сети: клиентский, сетевой, серверный и уровень приложения

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

▫️клиентский;
▫️сетевой;
▫️серверный;
▫️уровень приложения.

Заголовки HTTP отвечают за определение возможности кэширования ответа и за определение срока хранения данных. Следующий пример заголовка Cache-control указывает, что ответ может находиться в кэше в течение 7 дней. Браузер отправит повторный запрос на хранение данных, если срок хранения истечёт или пользователь целенаправленно обновит страницу.

Сеть Доставки Контента (CDN) — географически распределённая сетевая инфраструктура, позволяющая оптимизировать доставку и дистрибуцию контента конечным пользователям в сети Интернет. Иначе говоря, CDN — это распределённое хранение и использование кэша.

Такие инструменты, как Varnish, Squid и nginx кэшируют изображения, скрипты и прочее содержимое, которое требуется пользователям.

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

💬 Подробнее тут

#CDN | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤔2
Forwarded from STEIN: ИБ, OSINT
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Сетевая разведка: методика и набор инструментов

— Поиск уязвимостей на хосте, начинается со сбора базовой информации.

Эта информация включает в себя:
1. Обнаружение хостов (если мы исследуем подсеть); 
2. Cканирование портов для поиска открытых;
3. Oпределение запущенных служб на этих портах;
4. Oпределение версий служб и поиск уязвимостей для данных версий;
5. Проверка на использование слабых паролей(брут);
6. Запуск доп. сканирований различными инструментами (в зависимости от обнаруженных сетевых служб.)

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

OWASP Amass — инструмент, используемый для составления сетевых карт поверхностей атак, а также для обнаружения внешних активов.

passivedns — инструмент для пассивного сбора DNS для облегчения обработки инцидентов, сетевого мониторинга.

CloudFail — инструмент обнаружения реального IP-адреса серверов, скрытых за Cloudflare, путем поиска старых записей базы данных и обнаружения неправильно настроенного DNS.

#Network #Recon
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83
💖WebSocket: особенности протокола и пример использования на React - 1 часть

Интернет — основа сети, техническая инфраструктура, благодаря которой и существует World Wide Web, или Всемирная паутина. По своей сути интернет — гигантская сеть компьютеров, которые могут взаимодействовать друг с другом.

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

Наиболее известные:

▫️HTTP (Hyper Text Transfer Protocol) — протокол передачи гипертекста, используется при пересылке веб-страниц между компьютерами;
▫️FTP (File Transfer Protocol) — протокол передачи файлов со специального файлового сервера на компьютер пользователя;
▫️POP3 (Post Office Protocol) — протокол почтового соединения получения клиентской почты. Серверы POP обрабатывают входящую почту, а протокол POP необходим для обработки запросов на получение почты от пользователей;
▫️SMTP (Simple Mail Transfer Protocol) — протокол, который задает набор правил для передачи электронной почты в сети. Сервер SMTP возвращает ответ при отправке;
▫️Telnet — протокол удаленного доступа, дает возможность пользователю работать на любой ЭВМ, находящейся с ним в одной сети.

WebSocket обеспечивает обмен данными между браузером и сервером через постоянное соединение. Это двунаправленный, полнодуплексный протокол, который используется в сценарии взаимодействия «Клиент-сервер». Он начинается с ws:// или wss:// в случае безопасного соединения.

#WebSocket | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
📣WebSocket: особенности протокола и пример использования на React - 2 часть

Принцип веб-сокета — соединение между клиентом и сервером остается активным до тех пор, пока оно не будет разорвано любой из сторон.

Соединение WebSocket устанавливается посредством HTTP-запроса:

▫️клиент, который поддерживает веб-сокеты и хочет установить постоянное соединение, отправляет HTTP-запрос, содержащий набор необходимых заголовков (headers);
▫️в ответ он должен получить ответ сервера: HTTP 101 Switching Protocols. Ответ 101 указывает, что сервер переключается на протокол, запрошенный клиентом в заголовке запроса на обновление;
▫️клиент получает ответ сервера, и WebSocket-соединение открывается для начала обмена данными.

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

Где используется WebSocket:

▫️трейдерские приложения;
▫️игровые приложения;
чаты;
▫️социальные сети;
▫️управление IoT.

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

#WebSocket | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
🖥️ IPv6: что это и зачем

Многие слышали про IPv4 и IPv6, но не понимают, в чём их разница. Исправляем это упущение в нашем разборе.

Многие слышали про последнюю версию протокола IP — IPv6, которая должна заменить IPv4. Однако зачем нужна эта замена? Разбираемся в вопросе, попутно рассматривая разницу между обеими версиями и преимущества новой.

IP-уровень стека протоколов TCP/IP — наиболее важная часть всей архитектуры Интернета. Тем не менее вскоре после запуска IPv4 стали очевидны его ограничения в плане масштабируемости и возможностей. IPv4 для работы необходимо несколько надстроек вроде ICMP и ARP. К середине 1990-х разработали замену IPv4 — IPv6. Требований к Интернету становилось всё больше, а IPv6 отвечал им лучше, чем предыдущая версия.

Cамые очевидные отличия IPv4 и IPv6?

▫️128 бит в IPv6-адресе представляют собой восемь 16-битных шестнадцатеричных блоков, разделённых двоеточиями.
▫️В IPv4 для мультивещания зарезервирована подсеть 224.0.0.0/4. ▫️IPv6 для этой цели использует встроенное адресное пространство FF00::/8;
▫️IPv4 использует широковещательные адреса для передачи широковещательных пакетов, IPv6 — многоадресные группы;
▫️IPv4 использует 0.0.0.0 в качестве неопределённого адреса, а 127.0.0.1 для создания адреса обратной связи (loopback). В IPv6 используются :: и ::1 соответственно;
▫️IPv4 использует глобально уникальные публичные адреса для трафика и «частные» адреса, IPv6 — глобально уникальные юникаст-адреса и локальные адреса (FD00::/8).

Преимущества IPv6 перед IPv4:

▫️Более эффективная маршрутизация без фрагментации пакетов;
▫️Встроенная технология Quality of Service (QoS), которая определяет чувствительные к задержке пакеты;
▫️Устранение NAT для расширения адресного пространства с 32 до 128 бит;
▫️Встроенная поддержка IPsec (использование IPsec опционально);
▫️Автоконфигурация адресов для упрощения администрирования сети;
▫️Улучшенная структура заголовка с меньшими затратами на обработку.

💬 Подробнее тут

#IPv6 | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍4🔥2
Что такое REST?

REST (от англ. Representational State Transfer — «передача репрезентативного состояния» или «передачасамоописываемогосостояния») — архитектурный стиль взаимодействия компонентов распределённого приложения в сети.

В широком смысле компоненты в REST взаимодействуют наподобие взаимодействия клиентов и серверов во Всемирной паутине. REST является альтернативой RPC

REST представляет собой стиль архитектуры ПО для распределенных систем вроде World Wide Web. Используется, как правило, для построения веб-служб. Именно Рой Филдинг, один из авторов HTTP, ввел термин REST в 2000 году.

Это очень простой интерфейс управления данными, в котором не предусмотрены дополнительные внутренние «прослойки». Такой механизм означает передачу информации в точно том же виде, что и сама информация. Грубо говоря, мы не заворачиваем ее в XML, что присуще SOAP, не юзаем AMF, как Flash, etc.

Управление информацией основано на протоколе передачи данных. Наиболее распространенный - HTTP, о котором мы говорили ранее. В этом случае операции над информацией выполняются с помощью GET, PUT, POST, DELETE.

#REST | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍114
«Основы локальных компьютерных сетей»

Автор: Сергеев А. Н.
Год: 2016
Язык: русский

Если ты думаешь, что, как разработчику или инженеру, тебе не нужно понимать принципы работы HTTPS и сетевых служб, то это не так. Необязательно, но очень желательно разбираться в сетевых мелочах, протоколах, уметь строить и налаживать локальную сеть. Кстати, эти знания часто оказываются большими помощниками при устройстве на работу в сферах разных направлений IT.

Книга поможет разобраться во всем детально, подтянуть азы и сделать из тебя крутого настройщика WiFi-роутеров.


#books | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
⚠️ Как разобраться в Computer Science самостоятельно

Раскладываем по полочкам процесс освоения Computer Science. Книги, лекции зарубежных вузов и ресурсы для практики, которые помогут новичку последовательно разобраться в основных дисциплинах компьютерных наук.

Для большинства программистов Computer Science — факультет в зарубежных вузах, целиком и полностью посвящённый программированию, математике и всему, что связано с разработкой программного обеспечения. К счастью, в современном мире необязательно инвестировать тысячи долларов и 4 года своей жизни в образование, ведь существует бесчисленное множество онлайн-курсов, книг и других ресурсов для изучения компьютерных наук.

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

▫️Какие дисциплины следует изучать и почему?
▫️Какие из доступных ресурсов, книг, серий лекций для конкретной дисциплины имеет смысл посмотреть?

В качестве ответа приведём список материалов, опубликованный Озаном Онай (Ozan Onay) и Майлзом Бёрном (Myles Byrne) — инструкторами в школе компьютерных наук Брэдфилда в Сан-Франциско.

Данная подборка литературы и курсов основана на личном опыте обучения сотен программистов-самоучек.

💬 Подробнее тут

#ComputerScience | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🖕1
🖥 Генерируем SSL-сертификаты для Windows и Android

Что такое SSL-сертификат, как его сгенерировать и использовать для локальной разработки и для тестирования на мобильных устройствах.

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

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

Приложения, требующие наличие валидного сертификата при локальной разработке:

▫️PWA-приложения,
▫️приложения, использующие WebRTC.

Есть два способа выполнить эту задачу:

▫️Сгенерировать самоподписанный сертификат и добавить его в список доверенных корневых центров сертификации; таким образом устройство будет считать его валидным. Как следует из названия, это сертификат, который подписан закрытым ключом его самого же.

▫️Сгенерировать корневой сертификат и добавить его в список доверенных корневых центров сертификации, далее сгенерировать сертификат сервера и подписать его ранее созданным корневым сертификатом.

💬 Подробнее тут

#SSL | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
🌐 Форматы Ehternet фреймов.

Ethernet frame
- является блоком данных протокола канального уровня и использует базовые транспортные механизмы физического уровня Ethernet. Другими словами, блок данных по каналу Ethernet транспортирует фрейм Ethernet в качестве своей полезной нагрузки.

Ethernet II

Preamble – последовательность бит, по сути, не являющаяся частью ETH заголовка определяющая начало Ethernet фрейма.

DA (Destination Address) – MAC адрес назначения, может быть юникастом, мультикастом, бродкастом.

SA (Source Address) – MAC адрес отправителя. Всегда юникаст.

E-TYPE (EtherType) – Идентифицирует L3 протокол (к примеру 0x0800 – Ipv4, 0x86DD – IPv6, 0x8100- указывает что фрейм тегирован заголовком 802.1q, и т.д. Список всех EtherType — тут

Payload – L3 пакет размером от 46 до 1500 байт

FCS (Frame Check Sequences) – 4 байтное значение CRC используемое для выявления ошибок передачи. Вычисляется отправляющей стороной, и помещается в поле FCS. Принимающая сторона вычисляет данное значение самостоятельно и сравнивает с полученным.

Данный формат был создан в сотрудничестве 3-х компаний – DEC, Intel и Xerox. В связи с этим, стандарт также носит название DIX Ethernet standard. Данная версия стандарта была опубликована в 1982г (первая версия, Ehernet I – в 1980г. Различия в версиях небольшие, формат в целом остался неизменным). В 1997г. году данный стандарт был добавлен IEEE к стандарту 802.3, и на данный момент, подавляющее большинство пакетов в Ethernet сетях инкапсулированы согласно этого стандарта.

#Frame | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
FAQ по Shadowsocks/XRay/XTLS/Reality/Nekobox/etc. для обхода блокировок

Классических способов выявить прокси/VPN не так много, самые известные:

▫️разница между часовыми поясами у клиента в браузере и в локации IP-адреса с которого он подключается (например, в браузере московский часовой пояс, а сервер в Лондоне и там пояс другой) - обойти элементарно;

▫️выявление по MTU - ненадежно, актуально для OpenVPN/L2TP/Wireguard/SSTP, для XRay и подобных прокси не актуально, т.к. они работают на другом уровне;

▫️сканирование IP клиента на предмет открытых стандартных портов (например, 443) - можно обойти цепочкой из двух серверов с туннелем между ними;

Два важных отличия от других технологий:

▫️в отличие от VPN, где подключение к VPN-серверу устанавливается один раз и все, в случае с прокси, на каждое исходящее подключение из клиентского софта устанавливается новое подключение к прокси-серверу (если только не используется мультиплексирование)

▫️поскольку через прокси невозможно послать ICMP-пинг, большинство клиентов меряют задержку не пингом, а выполнением HTTP-запроса.

Вот и считайте: когда вы запускаете тест, сначала устанавливается TCP-соединение с прокси-сервером (уже как минимум один, а то и два round-trip). Потом поверх него происходит TLS-хендшейк (ещё один round-trip), и в процессе него прокси-сервер ещё устанавливает TCP-соединение с reality-dest сервером и запрашивает у него сертификат. Потом прокси посылает запрос на установление TCP-соединения с тем сервером, который используется для теста. Потом, если URL указан как HTTPS, происходит ещё TLS-хендшейк с ним. Потом клиент делает HTTP-запрос и ждёт получения ответа. И только после ответа вы видите результат теста, и "задержка" - это суммарное время всего вышеописанного процесса.

💬 Подробнее тут

#FAQ | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
⌨️ Как использовать Python для работы с протоколами сети

Сокеты являются основным механизмом для работы с сетевыми протоколами в Python. Библиотека socket позволяет создавать и управлять сокетами, а также отправлять и получать данные через сеть.

Для создания сокета в Python используется функция socket.socket(). В качестве аргументов вы можете указать тип сокета и используемый протокол. Например, для создания сокета с использованием протокола TCP/IP:

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

Для установки соединения с сервером используйте метод connect() сокета. В качестве аргумента передайте кортеж, содержащий адрес сервера и номер порта:

s.connect(("example.com", 80))

Для отправки данных на сервер используйте метод send() сокета, а для получения данных — метод recv():

s.send(b"GET / HTTP/1.1\r\nHost: example.com\r\n\r\n")
response = s.recv(1024)
print(response)

После завершения работы с сокетом обязательно закройте его с помощью метода close():

s.close()

Python предоставляет библиотеки для работы с высокоуровневыми протоколами, такими как HTTP, FTP и SMTP. Например, для отправки HTTP-запроса вы можете использовать библиотеку requests:

import requests

response = requests.get("http://example.com")
print(response.text)

#Python | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
💻 Что такое TCP?

Протокол управления передачей (англ. TCP - Transmission Control Protocol) обеспечивает надежную доставку данных. Сервис TCP так и называется: reliable byte stream (надежная передача потока байт). Этот протокол отвечает за доставку данных и сохранение порядка передаваемых сообщений.

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

Чтобы обеспечить гарантию доставки данных, TCP использует подтверждение получения сообщений. Как это работает?

▫️От отправителя к получателю "уходит" некий сегмент данных.
▫️Приняв этот сегмент, получатель посылает отправителю подтверждение (ACK или Acknowledgement).
▫️Данный процесс повторяется, пока передаются данные.

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

В протоколе TCP также предусмотрена защита от дублирования и нарушения порядка сообщений (сообщения нумеруются).

#TCP | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
9
⚙️ Устанавливаем и настраиваем прокси-сервер Marzban

В данной статье рассмотрим установку и настройку (VPN) сервера Marzban, настройка конфигураций клиентов и настройка дополнительных нод (масштабирование)

Marzban (Персидское слово "Пограничник" - произносится /mærz'ban/) — это инструмент управления прокси-серверами, который предоставляет простой и удобный пользовательский интерфейс для управления сотнями учетных записей прокси на базе Xray-core и созданный с использованием Python и ReactJS. Проект имеет русскоязычную документацию.

Marzban Node - это приложение на Python, предоставляющее сервис для управления экземпляром ядра Xray. Оно использует RPyC для удаленных вызовов процедур и Docker для контейнеризации. Приложение разработано с учетом требований безопасности и использует самоподписанные SSL-сертификаты для связи между сервисом и его клиентами.

Функции:

▫️Готовый Web UI
▫️REST API бэкэнд
▫️Поддержка [множества узлов] (для распределения инфраструктуры и масштабируемости)
▫️Поддержка протоколов Vmess, VLESS, Trojan и Shadowsocks
▫️Возможность активации нескольких протоколов для каждого пользователя
▫️Несколько пользователей на одном inbound
▫️Несколько inbound на одном порту (поддержка fallbacks)
▫️Ограничения на основе количества трафика и срока действия

💬 Подробнее тут

#Marzban | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
🕸 Кладём сети, создаём фейковые точки, блокируем доступ — ESP8266 Deauther

ESP8266 — это не только заурядные смарт-розетки. Благодаря этому микроконтроллеру можно совершать настоящие киберпреступления.

Deauther — это прошивка для Wi-Fi модуля ESP8266. Благодаря ей вы получаете устройство, которое может сканировать сети и точки доступа, производить атаки на сети и отключать от них клиентов. Чтобы предотвратить деаутентификацию, нужно как минимум использовать стандарт 802.11w. Он распространён среди устройств, но не так популярен среди точек доступа.

Управлять устройством можно 3 способами:


▫️Через встроенные элементы ввода. В этом случае на плате должны размещаться несколько кнопок (или хотя бы энкодер) и миниатюрный экран;
▫️Удалённо через браузер. Вы подключаетесь к созданной устройством точке доступа, и в браузере открываете панель управления. Кроме базовых возможностей, тут есть гибкая настройка устройства и сетевых параметров;
▫️Через последовательный порт. Модуль подключается по USB к любому устройству с serial-монитором (телефон, планшет, ПК).

Алгоритм использования устройства такой:

▫️Сканируете сеть или клиентов. В первом случае будут найдены точки доступа, во втором — устройства с Wi-Fi;
▫️Выбираете необходимые найденные сети/устройства;
▫️В меню выбираете желаемый тип атаки;
▫️Устройство самостоятельно производит атаку.

Deauther может производить 3 типа атаки:

▫️Deauth: атака деаутентификацией. Устройство посылает поддельные пакеты на точку доступа для отсоединения клиента от сети. Так как канал не зашифрован, точка доступа думает, что клиент действительно хочет отключиться от сети и закрывает соединение;
▫️Beacon: при этом режиме атаки создаётся большое количество поддельных точек доступа-пустышек, которые могут дублировать целевую сеть;
▫️Probe: запутывает Wi-Fi трекеры.

#ESP8266 #Deauther | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍133
📣 Разбираем TLS по байтам. Кто такой этот HTTPS?

HTTPS — это не протокол, а схема URI, то есть инструкция для браузера (или любой программы-клиента), как подключаться к серверу. Схема http:// значит, что браузер должен открыть TCP-соединение и отправлять по нему HTTP-сообщения. Схема https:// значит, что надо открыть TCP-соединение, затем TLS-соединение, и отправлять HTTP-сообщения по нему. Про схему HTTPS говорить не очень интересно, поэтому будем обсуждать именно протокол, который обеспечивает защиту соединения — TLS.

Протоколы HTTP, TCP, IP (которые используются в схеме http) никак не скрывают передаваемые данные. Поэтому нужно как-то «защитить» соединение, то есть сделать так, чтобы мать не могла ни читать, ни изменять сообщения (по крайней мере, оставаясь незамеченной).

Свойство протокола, что никакие сообщения нельзя расшифровать в будущем, даже зная долгосрочные ключи, которые использовались во время соединения, называется прямой секретностью (forward secrecy). Соответственно, если ключи RSA долговременные, прямая секретность не достигается — meh.

Два основных способа защиты от изменений — электронная подпись и MAC (Message Authentication Code, он же имитовстáвка).

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

Очень похоже на разницу между асимметричным и симметричным шифрованием. Похоже ещё и тем, что MAC производительнее ЭП, соответственно раз уж мы всё равно решили, что шифрование будет симметричным, то и смысла использовать ЭП вместо MAC особого нет — поэтому да будет MAC.

💬 Подробнее тут

#TLS | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥61👍1
⌨️ Форматы Ehternet фреймов

Ethernet_802.3/802.2 (802.3 with LLC header)

Определяемый спецификацией 802.3 формат кадра практически идентичен своему предшественнику за исключением того, что поле типа протокола имеет смысл длины кадра. На первый взгляд это неизбежно должно привести к путанице, когда кадры Ethernet_II и Ethernet_802.3 передаются между станциями в одном сегменте. Однако на практике эти кадры не представляет труда отличить друг от друга.

Как мы уже говорили, длина поля данных не превышает 1500 байт, поэтому, в соответствии с принятыми соглашениями, тип высокоуровневого протокола задается большим, чем 0х05FE (1518 в шестнадцатеричной системе счисления - полная длина кадра), благо двухбайтное поле может принимать 65 536 разных значений.
Таким образом, если значение поля между адресом отправителя и данными меньше или равно 1518, то это кадр 802.3, в противном случае - это кадр Ethernet_II.

Другое небольшое отличие между Ethernet и 802.3 состоит в классификации групповых адресов. В отличие от Ethernet, спецификация 802.3 подразделяет групповые адреса на имеющие глобальное и локальное значение. Однако это разделение редко используется на практике. (О третьем незначительном отличии - в преамбуле - мы говорили выше.)

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

#Frame | 🌐 Сетевик Джонни
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Достаточно интересное чтиво из сегмента GEOINT разведки, особенно в формате реального кейса, однозначно, recommend 📖
Please open Telegram to view this post
VIEW IN TELEGRAM