Pull to refresh
32
DmitryA@screwer

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

45
Subscribers
Send message
Спрятать рут вы не можете никак. Есть такая штука как селинукс контекст. Которая никуда не спрячется. И у рута он свой.


Спрячу аж бегом. Тем более при таких вводных

Можете патчить систему как угодно


Вы не понимаете что такое SELinux. Своей контекст у Magisk (и прочих) только потому что все существующие контексты имеют ограничения. Например «всемогущий» kernel не может ничего записать в logcat.

Но что нам мешает исправить БД правил SELinux? У простых приложений нет прав чтобы прочесть эту БД. О исправлениях они не узнают.

Более того, что мешает вообще отказаться от магисков? Можно пропатчить ядро так, чтобы по «волшебному» действию, например вызвав новый syscall или существующий, типа open со «специальным» именем/флагом, процесс тут же получал права рута, полный набор капсов, и для него переставали работать политики SELinux? При этом на уровне системы будет полный Enforcing. Более того, можно вмешаться в код проверки прав доступа. И фактическим рутом у нас будет вполне себе безобидный юзер.

Обычное приложение никогда об этом не узнает. Максимум что ему доступно — признак анлока аппарата. И то, что вернёт TZ в ответ на Hyp вызовы. Их в ядре не подделать. Но в ядре легко подделать само приложение. И оно даже само себя проверить не сможет. Без поддержки в TZ (мне про такую неизвестно).
На рутованном возможно всё. Инструментируем существующие Java классы. В динамике с помощью Xposed. В статике — как угодно. Хоть через декомпиляцию, хоть через сборку из исходников AOSP.
процессоров, тем не менее, остаётся СТОЛЬКО ЖЕ.
G3212:/sys/devices/system/cpu # ls
cpu0        cpu2        cpu4        cpu6        cpufreq     cputopo     kernel_max  offline     possible    present     uevent
cpu1        cpu3        cpu5        cpu7        cpuidle     isolated    modalias    online      power       rq-stats
G3212:/sys/devices/system/cpu # cat online
0
G3212:/sys/devices/system/cpu # cat offline
1-7
G3212:/sys/devices/system/cpu # cat present
0-7
используя уязвимость, злоумышленнику удается передать управление на shell-код


Не удаётся. Куча неисполняемая. Раньше можно было сделать её исполняемой, сформировав ROP/JOP для вызова NtVirtualProtect (и сотоварищи, типа MapViewOfFile). Но современные веянья идут к запрету таких способов. Например exec в SELinux. А полноценный эксплоит на ROP задача, мягко говоря, нетривиальная, и мне неизвестны полные реализации.
придется сканировать память на предмет поиска ELF заголовка. Насколько это сложно, учитывая то, что нужно корректно обработать отсутствующие страницы виртуальной памяти (организовать SEH)


в *nix не так уж сложно: один сисколл создаёт пару пайпов. Затем сканируем память записью в пайп (ещё один сисколл). Если запись вернула ошибку — памяти по этому адресу нет. Если запись прошла без ошибок — содержимое у нас в пайпе, даже если через миллисекунду оно ВДРУГ стало уже недоступным. Если содержимое нас не волнует — всё равно следует время от времени уничтожать содержимое пайпа операцией чтения (ещё один сисколл), чтобы процесс не упёрся в лимиты.
>> Математически, вероятность коллизии настолько мала, что ей можно пренебречь.

как раз математически вероятность ОЧЕНЬ велика. Если входные данные для SHA-256 составят 257 бит — даже при идеально-сферическом хеше будет гарантированная коллизия.

А теперь посчитаем в байтах. 256 бит это 64 байта. Если добавить всего 1 байт — то на сообщениях получим 256 коллизий. Добавив 8 байт получим 18 446 744 073 709 551 616 коллизий. От буфера в 72 байта, да.

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

При литографии таких помощников уже не будет. Поэтому конструкция «из говна и палок», как в CD-приводе, не прокатит.

Вы в курсе, что чугунные станины высокоточных станков должны отлежаться несколько десятков лет, чтобы снять внутренние напряжения? Которые иначе обязательно вылезут, и убьют всю точность. И что современный мировой тренд это станины из гранита. Или из гранитной крошки, склеенной несколькими % полимера, на вибростендах в вакууме. Гранит миллионы лет «отлеживался», и никаких внутренних напряжений в нём не осталось.

Это если мы говорим именно о МИКРОННОЙ точности. Я бы вообще остерегался о ней говорить. Разве что в ключе ДОПУСКОВ. Микронная точность это не просто воздушный фильтр. Это термостабилизированное помещение. Это отвязка вибраций от внешнего мира.Точность обработки поверхностей и механизмов перемещения должна также укладываться в несколько микрон на всю длину.

Или же не надо называть точность в 2 сотки — «микронной».
DLP — это массив микрозеркал, производитель — Texas Instruments, монополист.

По-идее область засветки будет +- совпадать с разрешением DMD матрицы (Digital Micromirror Device), умноженной на размер точки после фокусировки.

Кстати, интересно, как они справляются с областями, превышающими этот размер
1) не поддерживают
2) перемещают подложку
3) перемещают матрицу
4) перемещают картинку оптически (будут огромные сложности с фокусировкой)
Не любого.
Мешает дифракционный предел. Даже в BlueRay приводах с длинной волны лазера 405nm размер лазерной «точки» составляет 580nm (т.е. больше чем полмикрона). Причём для такой острой фокусировки применяются voicecoil с обратной связью по астигматизму отражённого от диска пятна.

Кроме того, при приближении фокусировки к идеальной — начнут проявляться кольца Эйри (Airy disc), засвечивая собой окружающий полимер.

Другое дело что «микронным» здесь называют размер порядка 20 микрон, или 20000нм.

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

Ок, доделаю ремонт в комнате — запилю статью.

Необязательно один. Когда купил 3ккв — самую маленькую комнату сразу же отжал себе, в качестве кабинета. Семья отнеслась с пониманием.
Тут данные по Samsung Electronics именно приведены

Они одной памяти делают больше всех в мире. А по продажам чипов уже обогнали интел.

Тоже делал стол. Но пошёл другим путем. Купил оцинкованный перфорированный профиль в леруа. Нарезал болгаркой и сварил 2 рамы. У каждой рамы снизу подварено 6 гаек для регулируемых ножек. Сверху 2 толстых мебельных щита (2000х600х40). Отлачил в гараже. Если вдруг появятся дефекты на лаке или понадобится другая конфигурация дырок — щит откручивается снизу от рамы, снимается и выкидывается. Цена нового всего 2000 рублей.


Итого 4-х метровый стол, с внутренней полкой и полом (их сделал из 20мм бруса, тоже отлачил). Вес сложно сказать, но весьма солидный, из-та металла в том числе. Кабели убраны внутрь профилей. Для надежности можно еще к стене прикантовать — стол делал из рассвета "во всю стену" своего "кабинета".


Самый главный косяк!!! Неверно выбрал высоту стола. Уже не помню сколько, но прилично больше типичных офисных 70-72см. Не делайте так, если вы ниже 195+ см. роста! Мой 2м сосед уверяет что стол идеален, а моим 180см было некомфортно. Пришлось купить кресло за 30+ тысяч, которое способно подниматься выше типичных значений. Правда кресло очень удобное, так что не жалею.

Разница с STC не такая большая. Сам STM32 контроллер с OLED дисплеем стоит 1000-1300 руб. Запитать его можно от лабораторника. Ручка с T12 жалом нужна обоим паяльникам. БП/корпус дело наживное.
В начале статьи есть ссылка на обзор. Там присутствует и схема контроллера и фото платы.
Значит романтической истории не получилось :)
У контроллера выведены все 4 пина SWD от соотв. ног МК. Юарт не выведен. Аппаратных юартов у чипа 3 штуки. Ноги №2 уже заняты. Остальные не разведены — придётся паяться напрямую к ногам чипа. Это если нужен именно UART.

Выведены пины I2C-1, на эти пины в оригинале вешается оловоотсос.
2.1s, это последняя официальная. Чтобы не нарваться на подделку/перемаркировку — магазин KSGER на али. Сам у них брал. Есть уже собранные станции, в алюминиевом корпусе и с хорошим БП.

Но не ведись на просьбы написать обзор. Будут обещать золотые горы, по-факту максимум пару баксов скидки дадут.
Я только что попробовал. Получилось не очень.

Всего у станции 164 изображения иероглифов. Простое вычисление на базе адресов даёт нам искомые под индексами 1 и 3 (нумерация с нуля, смотрим первый ряд иероглифов на соотв. картинке). Вот их изображения:
image

Кроме того, в прошивке существует таблица перекодировки двухбайтовых кодов (UTF-8 ?) в индекс глифа. Для наших индексов коды будут 0xCBB2 0xC2CE, но переводчик их не знает, а Unicode изображение слабо похоже на графическое из прошивки (я пробовал и с перестановкой байт в коде).

Пробуйте. Может быть у вас получится лучше.
Насколько я знаю, разработка началась в 2013 и завершилась в 2014 году. Автор уже давно потерял интерес. А все эти «версии» это уловки продавцов, я уже и 3.0 видел, причём под видом 3.0 продавалась плата от 2.0

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity