Наверняка вы замечали, что в Python есть удобная функция для получения переменной окружения
os.getenv(NAME)
И её "сестра" для создания или изменения переменных окружения
os.putenv(NAME, VALUE)
Но почему-то putenv() не работает как должно. Энвайромент не обновляется!
os.putenv('MYVAR', '1')
print(os.getenv('MYVAR'))
... и ничего 😴
Почему так?
На самом деле энвайромент обновляется, но это значение не добавляется в словарь os.environ.
Откройте исходник функции os.getenv(). Это просто шорткат для os.environ.get()
В то время как putenv() это built-in С-функция.
Словарь os.environ (или точней класс из MutableMapping) создаётся из энвайромента в момент инициализации. Функция putenv() самостоятельно его не изменяет.
В тоже время, когда вы создаёте или изменяете ключ в os.environ, автоматически вызывается putenv() в методе __setitem__().
То есть, технически putenv() всё делает верно, но в os.environ это не отражается. Можно проверить так:
>>> os.putenv('MYVAR', '123')
>>> os.system('python -c "import os;print(os.getenv(\'MYVAR\'))"')
123
Я объявил переменную в текущем процессе и вызвал дочерний процесс, который её унаследовал и получил в составе os.environ.
Аналогично при удалении переменной вызывается еще одна built-in функция unsetenv(), удаляющая переменную из системы.
Итого
▫️ Удобней всего явно обновлять переменные через os.environ
▫️ Есть способ неявно создать/удалить переменную через putenv/unsetenv, что не повлияет на os.environ но изменит энвайромент и передаст изменения сабпроцессам. Но так лучше не делать!
▫️os.environ это просто обертка для built-in функций putenv() и unsetenv().
#basic
📶 Принципы сетевых атак и работа сетей.
• Ресурс https://netsim.erinn.io предлагает ряд интерактивных уроков, в которых от тебя потребуется только следить за тем, как пакеты перемещаются между узлами сети, с возможностью создавать свои пакеты, прописывая им заголовки и пытаться таким образом провести успешную атаку.
• Ресурс требует простейшей регистрации (без указания почты и прочей информации, достаточно придумать логин и пароль). После регистрации для нас откроются уроки разбитые на 4 части:
- Первая часть (Basics) — обучит тебя работе с симулятором и объясняет базовые понятия: пакеты, заголовки и т.д.
- Вторая часть (Spoofs) — рассказывает о принципах спуфинга;
- Третья часть (Denial of Service) — в трех уроках объясняет, как работает атака типа «отказ в обслуживании»;
- Четвертая часть (Attacks) — описывает, принцип работы traceroute, #MITM атаки и обход блокировки ресурсов.
• Код ресурса открыт и доступен на github: https://github.com/errorinn/netsim
#Сети
• У автора книги"Сети глазами хакера" есть тулза для проведения MITM-атак в сетях IPv6. Если кто не читал статью с актуальными методами атак на IPv6 и способах защиты, то рекомендую к прочтению (eng & ru). Что касается инструмента, то возможности следующие:
➡RA Spoofing и RDNSS-инъекции;
➡Интерактивная CLI с автокомплитом;
➡Полная автоматизация NAT64 и DNS64;
➡Анализ NDP трафика для сбора информации о сети;
➡Автотюнинг сетевых параметров и маршрутизации;
➡Обход RA Guard c помощью Hop-by-Hop фрагментации;
➡Killswitch для аварийной остановки и восстановления сети.
➡️https://github.com/casterbyte/Ibex
#Пентест#Mitm#Сети
• Многие из вас уже слышали о такой тулзе как Bettercap - это интерактивный фреймворк для автоматизации сетевых атак, который активно используется пентестерами и ИБ специалистами. Один из многочисленных плюсов Bettercap - кроссплатформенность, которая позволяет использовать весь функционал на различных ОС, включая Android.
• Для настройки и использования Bettercap на Android существует очень объемное руководство, которое содержит информацию по настройке и поможет разобраться с функционалом данного инструмента. Содержание следующее:
- Why Use Bettercap on Android?
➡Bettercap on Android.
- Prerequisites;
- Installing Bettercap in Termux;
➡Installing Termux.
- Bettercap Usage and Interface:
➡Web UI;
➡Interactive Mode;
➡Eval;
➡Caplets;
➡Scripting.
- Modules:
➡Wi-fi;
➡PMKID attack without connected clients;
➡Rogue Access Point;
➡Fake Access Point;
➡Evil Twin Access Point.
- Bluetooth Low Energy scanning:
➡Enable Bluetooth.
- Bettercap on local network:
➡Wake On Lan.
- HTTP/HTTPS sniffing;
- DNS spoofing:
➡Enable DNS Spoofing;
➡Set the DNS Spoofing Domain;
➡Start the DNS Spoofing Attack.
- HID Attacks on 2.4GHz;
- CAN-Bus;
- Disconnect a device on network with ARP Ban;
- Recap of Key Features;
- How to Use Bettercap to Elevate Your Network Security;
- Final Thoughts;
- Keep Learning & Stay Ethical!
➡https://www.mobile-hacker.com/2025/02/21/bettercap
#Mitm#Tools#Пентест