Привет !
Thursday, July 2, 2015, 1:45:14 PM, Vasiliy P. Melnik basil@vpm.net.ua you wrote:
VPM> Какая из этого практическая польза?
как какая ? ХАКИНГ.
пытаюсь для себя понять насколько все плохо в современных системах, и откуда
может прлитетесь "нежданчик"...
VPM> 2 июля 2015 г., 13:41 пользователь Alexander V Soroka написал:
VPM> К писателям под Линукс и Админам вопрос.
VPM> Вот ниже три куска из одной переписки.
VPM> Хочется комментариев от "практических специалистов".
VPM>
VPM> кусок 1...............
VPM> ...
VPM> Есть такая таблица- GDT - которая и распределяет все привелегии.
VPM> Линуховоды считают что она дана богом. Как есть.
VPM> А обычные системщики знают, что эта таблица создается необычной для линуха програмкой.
VPM> Необычной в том смысле, что она на ассемблере. И создается она когда нет
VPM> никаких пользоваттелей и рутов. Сам процессор ее и создает.
VPM> Если внимательно почитать тот код с wasm.ru то там как раз и показано,
VPM> что проц может создать сам себе таблицу GDT, назначить себе права и делать все что угодно.
VPM> Только после этого можно лезть читать секторы и биосы.
VPM> Непонимание этого момента приводит вот к таким результатам.
VPM> ................................
VPM>
VPM> Кусок 2....................
VPM> ...
VPM> Как известно в процессоре каждый сегментный регистр имеет скрытые или
VPM> теневые (shadow parts) части в которых в защищенном режиме кэшируется
VPM> дескриптор сегмента, для программиста они невидимы. В защищенном
VPM> режиме эти части обновляются всякий раз когда в сегментный регистр
VPM> загружается новое значение, в реальном же режиме обновляются только
VPM> поля базового адреса сегмента. Если в защищенном режиме создать
VPM> сегмент с лимитом в 4Гб и загрузить в сегментный регистр такой
VPM> селектор, после чего переключиться в реальный режим, и, не следуя
VPM> рекомендациям интел, оставить предел равным 4Гб – значение лимита
VPM> сегмента сохранится позволяя использовать 32-битные смещения.
VPM>
VPM> Алгоритм перехода в нереальный режим:
VPM>
VPM> Создать дескриптор с базой равной 0
VPM> Установить предел сегмента в 4Гб
VPM> Переключиться в защищенный режим
VPM> Загрузить селектор сегмента в какой-либо сегментный регистр
VPM> Переключиться в реальный режим
VPM> После этих действий можно в реальном режиме использовать конструкции типа:
VPM>
VPM> мov ax,word ptr fs:[edx
VPM> ...........................................
VPM>
VPM> Кусок 3.................
VPM> ...
VPM> Когда ядро запускает процесс, оно контролирует его полностью.
VPM> Шаг влево-шаг вправо- побег , расстрел на меcте.
VPM> Поэтому делают по другому. Этот процесс должен породить дочерний-
VPM> его система уже не контролирует, только знает о нем и
VPM> контролировать его должен родитель.
VPM> А дочерний процесс порождает внучатый- про него уже и система не знает ничего.
VPM> После этого дочерний должен убить папу, убиться сам, и остается
VPM> внучок- демон, про который система не знает и не контролирует-
VPM> вот он уже может делать что хочет.
VPM> Даже весь линух можно прибить, а он останется в памяти работать. пока питание есть.
VPM> ..................
VPM>
VPM>
VPM>
VPM>
VPM> --
VPM> Best regards,
VPM> Alexander V Soroka http://www.svr.ua/
VPM> AS106-RIPE
VPM> mailto:alex@euro.net.ua
VPM>
VPM>
VPM> В этом сообщении вирусы не обнаружены.
VPM> Проверено AVG - www.avg.com
VPM> Версия: 2015.0.6037 / Вирусная база данных: 4365/10144 - Дата выпуска: 02.07.2015
--
Best regards,
Alexander V Soroka http://www.svr.ua/
AS106-RIPE
mailto:alex@euro.net.ua