Настольная книга компьютерного исследователя


  • Category Archives Операционные системы
  • MenuetOS или еще одна «История Игрушки»

    Опубликовано , admin Комментировать

    Изначально я планировал сделать более-менее подробный обзор этой операционной системы, но так как информации по ней более чем достаточно, то было решено ограничиться небольшим описанием.

    История этой операционки уходит корнями в далёкий 2000 год, когда идея о создании своей ОС пришла в голову и воплотилась руками финского студента по имени Ville Turjanmaa. MenuetOS (далее для простоты MeOS) написана полностью на 32-х битном ассемблере, работает в защищённом режиме (а в каком же ещё), имеет достаточно развитое и, что самое приятное, простое графическое API (тот же MFC отдыхает), поддерживающее VESA v.1.0 и v.2.0. В ядре уже есть дрова для сетевух (rtl преимущественно), всяких мышек, звуковух и тд, короче говоря, MeOS имеет в себе достаточно средств для создания нормальных софтин. Не менее приятный момент состоит в размере MeOS: с большинством приложений вся она легко умещается на 3,5″ дискете. Стоит отметить, что хоть MeOS и написана на чистом асме, проги для неё можно писать не только на нем асме, но и на других языках. (далее…)


  • Маленькое исследование MacOS X

    Опубликовано , admin Комментировать

    intro

    Первым делом стоит сказать, что ядром MacOs X является Darwin. Darwin писался непосредственно Apple для PPC процов, но в настоящее время есть и порт на x86. (Только ядра. Портирования самой MacOs X на x86 в планах Apple нет).Упомянул я об этом потому,как некоторые считают Darwin функциональной осью,в то время как это только лишь кернел, который, кстати сказать, основан на микроядре Mach с взятыми у FreeBSD надстройками (syscalls).

    В роли исполнимых файлов в MacOS X могут использоваться 3 типа исполнимых файлов. Mach-O тип является нативным для macos x. Разбирать их по аналогии с Alpha желания не было,но в связи с тем,что они довольно необычные я все же это мельком сделаю. Необычные они тем, что помимо всего в файле есть load команды: (далее…)


  • Давайте посмотрим на Tru64

    Опубликовано , admin Комментировать

    intro

    В 1990 году как скрещение 3eх ответвлений: Unix System V,4.3BSD Reno и Mach2 — родилась OSF/1. В 1992 году она слегка изменилась, но так и называлась — OSF/1 В июне 1994 смешавшись уже с Mach4,появляется OSF/1.3. И уже в 95ом начинаются неоднозначности — DEC OSF/1 AXP стала называться Digital Unix. В сентябре 96го появилась DEC OSF/1 v4 (тоже digital unix), и в 98ом закрепилось окончательное название — Digital Unix 4.0. 1го февраля 1999 года вышла вновь переименованная версия, которая уже теперь называлась Tru64 Unix V4.0F. Затем, в августе 12го, этого же года выходит Tru64 Unix V5.0,а в августе 2000 — версия 5.1. И,наконец в сентябре 2001 года выходит Tru64 Unix v 5.1a. На нее и будем ориентироваться в нашей статье.

     Escape character is '^]'.
    
     Compaq Tru64 UNIX V5.1 (Rev. 732) (hostname) (pts/3)
    
     login: fun
     Password: 
    
     Last login: Tue Feb 10 13:49:49 KST 2004 from ip
     Compaq Tru64 UNIX V5.1 (Rev. 732); Fri Nov 29 16:11:58 KST 2002
    
     Tru64 UNIX country Support V5.1 (rev. 89)
    
     $ uname -a
    
     OSF1 hostname V5.1 732 alpha

    (далее…)


  • Ох уж эти OpenVMS

    Опубликовано , admin Комментировать

    sysuaf.dat & password hashing algoritms.

    На самых первых версиях vms, алгоритмом хеширования паролей (алгоритм 0) являлся простой crc по нужному пасу. Это был 32х битный AUTODIN-II. Оправдание такой простоты алгоритма было лишь в легкости его реализации и древности самих vms. Через некоторое время (начало 70-тых годов) из Иллинойского университета вылезает некий Dr.George B.Purdy, который предлагает свой алгоритм хеширования (версии которого впоследствии и окрестили Purdy1,2,3).В журнале «communication of the ACM, Volume 17, number 8″ выходит его статья «A high security log-in procedure» в которой он и описывает сей алгоритм:

    PURDY_V1 (Purdy polynomial over salted input).
    PURDY_V2 (Purdy polynomial + variable length username).
    PURDY_V3 (PURDY_V2 + additional bit rotation).

    Файл аккаунтов, это некий sys$sysuaf.dat файлик, который имеет довольно интересную структуру, которая в свою очередь описана в древнем, 32-ом номере фрака (inside the sysuaf.dat). (далее…)


  • Новый взгляд на Novell Netware

    Опубликовано , admin Комментировать

    Начиная с пятой версии, novell netware имеет полноценную поддержку tcp/ip протокола, однако,несмотря на то,что она вышла аж в далеком 1998 году, и имеет достаточное количество разнообразных интернет сервисов, под нее не было написано ни одного эксплоита с выполнением произвольного кода.

    Во многом это связано с тем, что netware изначально создавалась как высокопроизводительный файловый сервер, в принципе она и сейчас является файловым сервером, но уже много более функциональным благодаря поддержке java, Х-сервера,различных сред разработки и тд. Немного о функциональном устройстве. Доступ к netware осуществляется либо как к файловому серверу, по собственному протоколу NCP(netware core protocol) с возможностью доступа к файловой системе create / delete / modify / etc, (также ncp содержит функции для управления пользователями, создания добавления изменения прав, изменения прав в файловой системы). Либо доступ осуществляется к консоли сервера с которой происходит запуск програм\модулей файлового сервера (nlm — newtware loadable module). Доступ к консоли возможен либо с клавиатуры, либо удаленно,если запущен модуль rconsole.nlm (при запуске также устанавливается пароль на удаленный доступ к консоли). В связи с особенностью архитектуры,при администрировании с консоли нет понятия уровней и привилегий доступа,имея доступ к консоли можно запускать и выгружать любые модули. Следовательно, в netware не имеет смысла локальное повышение прав (local root). (далее…)


  • Исследование OS9

    Опубликовано , admin Комментировать

    1. Введение

    Что такое os9 ? os9 является осью реального времени для 68xxx процессоров созданная непосредственно компаниями microware и motorola в 1979 году. Версия которую мы рассмотрим в этой статье — os9 level II, в нашем случае работающую на 68030 процессоре. В настоящее время os9 переродилась в os9000 и работает на ppc и x86 процах, но, как я сказал выше, мы рассмотрим более древнюю os9, которая до сих пор используется для разных нужд, например в GSN (Global Seismograph Network). Сеть эта занимается слежением за изменениями земли, землетрясениями и тд. Для общего образования я положил в бонус ее карту.

    2. Базовая информация

    Для basic info, просто читайте доки. Это unix like ос, и проблем с ее использованием быть не должно. Но вкратце, я скажу, что корневая дира это /h0. cd — chd, pwd — pd, chmod — attr, rm — del, etc. Файл акаунтов в /h0/SYS/: (далее…)


  • digital unix

    Опубликовано , admin Комментировать

    Вышло так, что наткнулся я случайно на dgux портированный на mc88100, что меня особо и заинтересовало. Процессор этот основан на risc технологии, работает на частоте от 25mhz (!) и является первым в своей серии (кстати опять мотороловское изделие). Этот порт dgux зовется AViON, и версий этих портов, как и должно быть, тоже куча: AViON R4.11MU06, AViON 5.4.R4.11, etc. Разработки давно заморожены, но интереса ради ..

    Что слегка удивило в первую очередь, так это непостоянство системных вызовов: (далее…)


  • /dev/* patching на linux

    Опубликовано , admin Комментировать

    Изначальная статья задумывалась как некий довольно крупный туториал по работе с /dev/ ссылками ( => драйверами), но в итоге решив что это довольно простая и распространенная тема, я ограничился лишь небольшой теорией.

    В *nix существует 3 типа драйверов — блочные, символьные и raw. raw является типом интерфейса блочных драйверов, не используются файл-системой через /dev ссылки, и в нашем случае не нужен. Различие же блочных и символьных в том, что блочные предают информацию блоками, и буферизацию блоков обеспечивает ядро, а символьные — передают информацию побайтно и буферизацию данных обеспечивают сами. У каждого /dev файла есть major и minor номера. major указывает на конкретный драйвер, minor указывает на конкретный девайс.В /proc/devices определены major номера блочных и символьных устройств и там-же они добавляются при загрузке новых модулей и соответвенно удаляются при выгрузке. (далее…)


  • amiga вирусы или just for fun

    Опубликовано , admin Комментировать

      — [1] Введение

    Некоторое время назад я написал эту статью для одного из журналов, но решив что статья может быть интересна многим, я немного ее подправил и положил в наш zine.

    — [2] Структура исполнимых файлов

    Для начала рассмотрим структуру стандартных исполнимых файлов в Amiga OS. Изза того, что dos.library была написана в некоторой спешке, причем на BCPL языке, имеются некоторые нюансы. Среди которых и тот, что все данные должны быть выровнены по 32ух битному значению. Поэтому и не удивительно, что в исполнимом файле все поля также 32ух битные. Исполнимый файл можно разделить на 3 логические части: (далее…)


  • Инфицирование на лету

    Опубликовано , admin Комментировать

    Затрагивая тему linux вирусов, зададимся вопросом, а что же может увеличить скорость распространения этого животного? ;) Конечно,наиболее простой путь это активное распространение (сканировать в поисках уязвимых сервисов, ftp с возможностью upload-a файлов итд), но это привилегия червей, а у нас простенький вирус ;). Еще один путь увеличить скорость распространения это инфицировать каждый запускаемый файл в файловой системе чтоб при копировании файла на другую систему он был со 100% вероятностью зараженным. Но эта задача очень ресурсоемкая,и заметная (должен быть активный процесс все это время,увеличение размера файлов и тому подобное). Мы выберем путь попроще ;)

    Инфицировать файлы мы будем прямо «на лету» в момент когда они направляются ядром к сетевой карте. Для того чтобы это реализовать мы должны знать как устроена работа с сетью в ядре linux. Leet ppl читающие фрак уже в курсе (Prack 55, article 12 «Building Into The Linux Network Layer»), а для остальных краткий пересказ : (далее…)




©2013 Журнал Хакера Entries (RSS) and Comments (RSS)