.рубик
911 subscribers
68 photos
63 links
Канал о всяком, от CTF до разработки OC с примесью кеков от @Rubikoid

Чат - https://t.me/joinchat/3KSEUg7bfqE0N2Ey
Мета: t.me/dotrubic_meta
Мемы: t.me/dotrubic_memes
Бложик: t.me/dotrubic_thoughts
Download Telegram
В копилку странных вещей, которые можно делать со вторым WSL'ем: ставить в него DKMS модули.

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

Чтобы вообще это запустить, нужно склонить куда-нибудь WSLное ядро нужной версии (и не забывать обновлять при обновлениях винды):
git clone --branch $(uname -r) --depth 1 https://github.com/microsoft/WSL2-Linux-Kernel.git
Собрать ядро/модули и впихнуть их в систему
make -j N
sudo make -j N modules_install

Поставить dkms
И сделать симлинк на /usr/src/linux:
sudo ln -s /lib/modules/uname -r/build /usr/src/linux

Опять же, симлинк нужно будет обновлять каждое обновление ядра.

После этого все dkms'ные пакеты, например wireguard, заводятся с полпинка.

#wsl
1
Тут вчера с репозиторием PHP беда произошла - в него внезапно вселился бэкдор на RCE.

Сам бэкдор представляет собой просто выполнение всего кода, что встретится в хэдере, похожем на юзерагент после строки "zerodium". Какой-то след зиродиума в этом есть, о чем также свидетельствует строка "REMOVETHIS: sold to zerodium, mid 2017" в вызове eval'a.

Всё бы ничего, но вредоносный коммит получилось откатить только с третьей попытки, сначала его откатили, потом вернули, притом первый откат и возврат сделал один и тот же аккаунт.
А в первом коммите есть приписка <Signed by>, хотя самой подписи на коммите нет.
Как и на всех остальных коммитах в пыху, кстати, там вообще нет подписей.

По мнению мейнтейнеров произошла компрометация их гитового сервака, в связи с чем репозитории на гитхабе становятся из зеркала основными.
Неугомонный Фил выложил (https://darkk.net.ru/2018/whack/) старую (апрель 2018) статистику по тому, какие провайдеры - как пытались блокировать телеграм и облака, через которые он блокировок избегал.
Легенда сайта - "серые кружочки — полная блокировка, кружочки со значком Telegram — блокировка отсутствует, остальное — что-то среднее"

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

Итоговая оценка довольно приблизительна, учитывая ещё и то, что изначальные данные у Фила были довольно грубые, но некоторые выводы позволяет сделать.

Собственно, всего проверялось 12 облак, и исходя из метода оценки - максимальная оценка - 12.
По факту, топ3 сверху занимают Iskratelecom, Flex, и Trivion Networks.
Топ3 снизу - Ufanet, Интерсвязь-2, и MGTS.

Ростелеком, довольно внезапно, в середине списка, бок о бок с Билайном.

Пост Фила.
Первый этап RDS GP - уже в эти выходные.
По сему поводу повторно приглашаю интересующихся в сайдканал, посвященный текстовой трансляции оттуда.
С просторов интернета:
Forwarded from Rubikoid
В свежей бете телеги интересное обновление есть:
теперь можно смешивать жирный, курсив, подчеркнутый?, зачеркнутый? моношир?

Жирный + курсив = жирный курсив.
Жирный + подчеркивание = жирное подчеркивание
Подчеркнутый курсив
...
Жирный подчеркнутый курсив?
Жирный подчеркнутый зачеркнутый курсив!

А вот с моноширом не работает(
Необычный дуалбут: ноутбук с «двойным дном»

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

Хайлайты: ручками дергаем ATA, реверсим, а потом и патчим прошивку контроллера жесткого диска в памяти, отлаживаем UEFI, пишем уефишный драйвер...
Вечерний вопрос от санитара: каким образом надо комментировать атрибуты классов в python, чтобы VSCode+pylance научился рисовать доки к ним?

Имеющиеся варианты:
1)
class Test:
""" class docs """

field: str # docs
2)
class Test:
""" class docs """

field: str
""" docs """
3)
class Test:
""" class docs """

""" docs """
field: str

Все три, очевидно, не работают)
Forwarded from ZeroNights
CTF-команда kks совместно с новостным порталом CTF News предлагают небольшой хакквест, на котором можно почиллить, порешать таски и получить за это подарочки.

Таски готовы, можно решать! Ссылка на квест: zn.kksctf.ru
Прилетел августовский апдейт на VSCode, и извините, я в лёгком ахуе.

Они впилили определение ЯП файла через ML (tenserflow на js, запускаемый локально), потому что, внимание, "некоторые новые пользователи VS Code не знали, как выбрать язык файла".
Прилетела новая бетка десктопной телеги: теперь можно смотреть, кто прочитал твое сообщения в небольших группах.

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

Работает в прошлое, кстати, где-то до 4-5 сентября.

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

Прилетела версия 3.0.5 beta, в которой в дефолтной синей теме поменяли цвет некоторых элементов.

Слева - было; Справа - стало

Вариант вернуть старую синюю тему: t.me/addtheme/h9soEq0wbHH4Co9k. Можно скачать себе файлом и поставить независимую версию)
Yet another WSL2 trick

Если хочется получить доступ к сервису, запущенному во втором весле из локальной сети, а не только с тачки с самим веслом - пригодится https://github.com/CzBiX/WSLHostPatcher.

Суть - когда внутри второго весла открывается listen tcp-порт - небольшой бинарь, маппящий всякие взаимодействия между виндой и веслом - wslhost.exe - начинает слушать этот же порт на 127.0.0.1 в винде, фактически выступая в роли tcp-прокси между виндой и веслом.
В итоге для пользователя появляется прозрачный доступ к порту, открытому в весле, но из локалки он не доступен.

Всё, что делает вышеупомянутая утилита - патчит в памяти этот бинарь, чтобы он открывал соединения не на 127.0.0.1, а на 0.0.0.0, слушая его на всех интерфейсах.

Нашел давно, но думал, что это достаточно узкая и частная проблема, а внезапно оказалось, что это не так)
В продолжение извращений - есть маленький бинарь на rust, который транслируется все вызовы себя в git в весле.

https://github.com/andy-5/wslgit

У него довольно узкий юзкейс, но вдруг кому-то пригодится)
.рубик
Yet another WSL2 trick Если хочется получить доступ к сервису, запущенному во втором весле из локальной сети, а не только с тачки с самим веслом - пригодится https://github.com/CzBiX/WSLHostPatcher. Суть - когда внутри второго весла открывается listen tcp…
Небольшой upd к этому посту.

Как верно заметили в комментариях, этого же эффекта можно достичь через виндовую утилиту netsh:
netsh interface portproxy add v4tov4 listenport=3000 listenaddress=0.0.0.0 connectport=3000 connectaddress=172.18.28.x
Работает на какой-то магии внутри сетевого стека винды. На мой взгляд, не так удобно - это лишние правила непонятно чего, которые непонятно где лежат и непонятно когда появятся/отвалятся. Да и чисто одной командой это обычно не сделать, всё же нужен нормальный скрипт.
Как пример, полный такой скрипт, который достает айпишник весла (он меняется периодически, да, это отдельная головная боль) и создает правила для WFP - тут.

Однако!
Народ придумал ещё аж два способа выпихивать весло бриджем в реальную сетку: раз, два (описание второго).

Собственно, весь тред issue с обсуждением проблемы тут: https://github.com/microsoft/WSL/issues/4150