Pull to refresh
40
0.1
kmeaw @kmeaw

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

Send message
#!/bin/bash

display=${DISPLAY%.*}

byte_order='6c'
noop='00'
major_ver='0b00'
minor_ver='0000'
auth_proto_len='1200'
auth_data_len='1000'
auth_proto=$(echo -n 'MIT-MAGIC-COOKIE-1' | xxd -p)
auth_data="$(xauth list | grep "$(hostname)/unix$display " | awk '{print $3}')"

message="${byte_order}${noop}${major_ver}${minor_ver}${auth_proto_len}${auth_data_len}0000${auth_proto}0000${auth_data}"

u=$(mktemp -u)
v=$(mktemp -u)
mkfifo $u
mkfifo $v

nc -U /tmp/.X11-unix/X0 <$u >$v & pid=$!
trap "rm -f $u $v; kill $pid" EXIT

xxd -r -p <<<$message >$u
hexdump -C $v

И так появился HDCP. :)

Вставить аппаратный mitm в провод или случайно воткнуть ноутбук в монитор злоумышленника часто сложнее, чем провести атаку на что-то из ARP, IP, DNS или опечататься при вводе DISPLAY=.

Но постепенно изобретаются способы аутентифицировать оборудование. На предприятиях решаются проблемы BadUSB, неавторизованные флешки блокируются. Док-станции с Thunderbolt требуют явного разрешения от пользователя для работы.

Клиент может это сделать в результате ошибки пользователя (опечатка или не тот конфиг используется) или целенаправленной атаки злоумышленника (DNS или ARP poisoning).

Если пофантазировать, то можно представить себе такой сценарий - в секретном бункере состоялась встреча шпионов, и ведущий встречи достал свой ноутбук (с правильным ~/.Xauthority), и ввёл команду: DISPLAY=bigscreen.spy.corp:0 xmessage $(cat meeting.notes), чтобы его соседи увидели файл на большом экране в той же комнате. А контрразведка соседней страны знает, что так начинается каждая встреча, и хочет этот meeting.notes прочитать.

SSH же, например, пытается не дать пользователю подключиться к "не тому" хосту даже в том случае, когда для аутентификации клиента на сервере используется ключ. При этом никто не задаёт вопрос "А зачем клиенту это делать?".

Но ведь клиент X11 не аутентифицирует сервер - если подменный сервер, например, запустить с флагом "-ac", то клиент без проблем подключится.

Но ведь для корректной работы антиспама как раз нужна невозможность подделки номера. Или там какой-то другой критерий вместо номера вызывающей стороны используется?

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

А какой "правильный" ответ ожидается на такой вопрос?

А в чём преимущества использования Service Worker в данном случае? Не проще ли просто подменить реализацию fetch?

Делает ли программа что-то кроме того, что написано в файле https://github.com/alananisimov/OptimizeScript/blob/main/clearSystem.cpp ?

Прошу прощения за некропостинг, но загрузчик на Pixel 6 вполне успешно блокируется. Для этого нужно прошить раздел vbmeta. Если boot.img подвергался какой-либо модификации (как, например, рекомендованный этим постом Magisk), то его нужно пересчитать - проще всего это сделать с помощью avbroot. Ключи при этом придётся сгенерировать свои - приватные ключи разработчиков LOS нам недоступны.

Важно перед блокировкой загрузчика убедиться, что опция "OEM unlocking" не выключена - иначе загрузчик будет невозможно разблокировать обратно. Заблокированный загрузчик не даст загрузить произвольный boot и прошить раздел, не проходящий верификацию против уже прошитой vbmeta, а при попытке снять блокировку сотрёт userdata.

А печатные платы можно такой штукой делать, выжигая из меди площадь вокруг дорожек?

Тогда придётся заплатить ICANN около 185000$ за evaluation и ещё 5000$ в год. Причём домен должен использоваться.

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

Или речь про конфиденциальные вычисления, как у AMD SEV-NVP и Intel TME-MK?

У меня не получилось заставить mirror.init7.net использовать RC4, но можно повторить экспереимент с вот такой командой:

openssl s_client -security_debug_verbose -ign_eof -connect mirror.init7.net:443 < <(echo -ne "GET /ubuntu-releases/22.04.3/ubuntu-22.04.3-desktop-amd64.iso HTTP/1.0\r\nHost: mirror.init7.net\r\n\r\n") | pv > /dev/null

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

к-во перестановок – не физическая величина

А положение шариков в пространстве - уже вполне физическая. И угол поворота стрелки прибора - тоже. Такой прибор будет показывать своей стрелкой меру свободы системы из N шариков, выложенных в ряд в коробке размером 1xN, которые мы можем переставлять.

Или весь смысл этой ветки сводится к обсуждению классического определения "измерительный прибор - средство измерений, предназначенное для получения значений измеряемой физической величины в установленном диапазоне"?

Шарики в коробке же.

Робот откроет коробку, попереставляет в ней шарики, а потом закроет её обратно.

 ограничением будет время жизни вселенной примерно

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

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

Как у любого измерительного прибора, у него будет ограничения на число шариков, обусловленные производительностью манипуляторов робота и объёмом его памяти.

Если ящик с прибором чёрный, то никто и не узнает, что прибор жульничает. :)

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

Набор манипуляторов, которые переставляют предметы и датчиков, которые позволяют отличить предметы от друга. Пытаемся изменить состояние предметов внутри прибора, прикидываем их число, повторяем процесс до сходимости их количества. Затем считаем факториал и выдаём результат наружу.

Information

Rating
2,714-th
Registered
Activity