Меню

Прошивка съемного жесткого диска



Faq: Делаем жесткий диск HDD для xbox 360 Slim! С картинками!

#1 rtm72

Тайный агент Microsoft

  • 1295 Сообщений
  • Регистрация: 26.11.2009
    • Из: Белгород
    • Другие приставки:
      Dendy, паяльник, HTC 7 Mozart

    Делаем сами винчестер на 320 gb для xbox 360 slim/s
    жесткий диск для xbox 360

    Недавно заказал себе бандл xbox 360 slim 4gb + kinect! Но не хочется что бы бокс был без жесткого диска, поэтому полазив по зарубежным сайтам я решил написать FAQ по прошивке обычного винта в винт на Xbox!

    Прошивать будем с помощью hddhackr.

    hddhackr работает на жестких дисках компании Wester Digital следующих моделей:
    — WD Scorpio Series BEVS/BEAS
    — WD Scorpio Blue Series BEVS/BEVT/BPVT
    — WD Scorpio Black Series BEKT/BJKT
    — WD VelociRaptor Series
    — WD AV-25 Series BUDT
    — WD Series BMVS

    Я купил 320GB WD Scorpio Blue (WD3200BEVT) — его средняя цена 1500 рублей
    Так же можно устанавливать эти жесткие диски, но других объемов, т.е. 1000gb, 500gb, но будет доступно только 320.

    Первым делом необходимо создать загрузочную флешку (подойдет любая USB флешка)
    Для этого необходим этот архив.
    З.Ы. Он теперь на русском! Перевод: rtm72

    1)Распакуйте и запустите программу (от имени администратора).
    2)Выберите свою флешку
    3)в строке «Файловая система» выберите FAT (FAT32)
    4)поставьте галочку напротив «Быстрое форматирование» и «Создать загрузочное устройство»
    5) В строке которая находится ниже укажите путь к папке с MS-DOS (папка находится в архиве с программой Bootable USB Drive Creator Tool или же в папке с XboxHDD)
    6)Жмем «Поехали» и за несколько секунд получаем загрузочную флешку

    Скачайте файлы необходимые для прошивки жесткого диска:
    Если вы прошиваете жесткий диск на 320 GB то вам нужен этот файл
    Если на 250, то этот
    Если на 20 gb то этот
    На 60 gb этот
    На 120 gb этот

    Не забудьте переименовать HDDSS_320GB.BIN в HDDSS.BIN

    Ещё необходимо скачать сам hddhackr 1.30.

    Распакуйте HDDSS.BIN и hddhackr на загрузочную флешку которую мы только что сделали.

    ВНИМАНИЕ! НЕ ВСЕ НОУТБУКИ ПОДДЕРЖИВАЮТ ПРОШИВКУ ЖЕСТКИХ ДИСКОВ!

    Выключите ваш компьютер и подключите прошиваемый жесткий диск (в моем случае это WD Scorpio Blue WD2500BEVT) в sata порт «master». Я бы посоветовал отключить другие жесткие диски— дабы не прошить не тот)))
    Включите компьютер, зайдите в bios и убедитесь что прошиваемый жесткий диск правильно подключен и работоспособен!
    Установите в меню биос загрузку с флешки которую мы подготовили ранее, сохраните настройки и перезагрузите компьютер.
    После перезагрузки вы окажетесь в dosprompt, введите hddhackr и нажмите enter; после этого программа запросит файл UNDO.BIN, просто введите UNDO.BIN

    Если всё сделано правильно то перед вами появится список жестких дисков вашего компьютера, в моем случае прошиваемый жесткий диск находится под номером 5
    У вас не отобразился список жестких дисков? или вообще вместо HDDhackr мигающий курсор?
    тогда вам необходимо:
    проверить настройки биос;
    правильно ли вы подготовили флешку;
    Если все это не помогло, то выход один-«шейтесь» на другом пк

    После ввода номера прошиваемого винта вам будет предложено сделать резервную копию или прошивку, нажмите на клавиатуре кнопку F для прошивки.
    Введите имя файла (сектора безопасности) HDDSS.BIN
    Вы получите сообщение о том что эта прошивка для жесткого диска xbox 360 и она не совпадает с прошивкой вашего жесткого диска
    Выберите YES

    Вам будет предложено создать разделы 0\2\3\
    и снова жмем Yes

    Поздравляю! Ваш жесткий диск взломан!

    Установка жесткого диска в Xbox 360 slim

    Жесткий диск который мы только что пере прошили можно установить в корпус жесткого диска обычного xbox 360, но так как гайдов на эту тему достаточно то я напишу про установку в Xbox 360 slim!
    Его даже не надо устанавливать в корпус для жесткого диска!




    Как видно из последнего изображения жесткий диск успешно установлен и работоспособен!

    Восстановление жесткого диска в начальное состояние

    Если у вас отпала необходимость использовать прошитый жесткий диск для xbox 360, то его можно восстановить!
    Процесс восстановления мало чем отличается от процесса прошивки:
    1) Найти у себя на носителе с которого осуществлялась прошивка файл UNDO.BIN

    Внимание! Попытка восстановления при помощи не родного UNDO.BIN ведет к поломке винчестера!

    2) Подготовить флешку или другой носитель к прошивке (процесс описан выше) и скинуть на нее файл UNDO.BIN для вашей модели жесткого диска.
    3) Приступаем к прошивке (процесс описан выше) и после шага когда мы вводили номер прошиваемого винта нажать кнопку «R»
    4) Программа запросит файл UNDO.BIN, необходимо просто написать UNDO.BIN

    Все! теперь жесткий диск будет работать в компе

    Список материнских плат на которых прошивка успешно завершилась:

    Asus M2N-SLI
    Asus P5B
    Asus P5N-MX NForce 610i
    Asus M3A
    asrock g41m-gs
    НОУТБУК Acer5720
    Gigabyte 8IPE1000-G
    Gigabyte GA-M720-US3
    MSI 7392
    MSI P45 Neo2
    НЕТБУК ASUS Eee PC 1000H

    Источник

    Расширяем стандартные возможности жесткого диска

    Содержание статьи

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

    Читайте также:  Как сделать установить виндовс 7 с жесткого диска

    WARNING

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

    Электроника HDD

    Конструкция винчестера в какой-то степени наверняка известна каждому. По сути, это несколько пластин, которые вращаются со скоростью 15 000 об/мин, устройство позиционирования и блок управляющей электроники. Добавим к этому систему самоконтроля S.M.A.R.T. и другие интеллектуальные атрибуты. Короче, без пол-литра не разберешься, тем более технология отдельных элементов составляет коммерческую тайну.

    Высокой точности позиционирования, плотности записи и прочим тонкостям современных HDD можно посвятить не один десяток статей, но мы, не углубляясь в механику диска и физику процессов, рассмотрим наиболее интересную для нас часть — электронику.

    Рис. 1. Плата жесткого диска

    Хакер #185. Докажи баг!

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

    Пациент

    Итак, перед нами плата типичного жесткого диска Western Digital WD5000AAKX объемом в 500 Гб (рис. 1). Что мы имеем:

    1. Микросхема DRAM. Интереса как такового не представляет, мануал легко можно найти в Сети. Память этих чипов колеблется от 8 до 64 Мб и соответствуют размеру кеша жесткого диска.
    2. Контроллер двигателя шпинделя. Отвечает за управление механикой, регулирует мощность и имеет некоторые аналоговые/цифровые каналы. На чип Smooth L7251 3.1 мануалы отсутствуют, но можно попробовать поискать похожие микросхемы.
    3. Флеш-память. На некоторых винчестерах микросхема отсутствует, но флеш-память бывает встроена в чип контроллера диска. Обычно имеет размер в пределах от 64 до 256 Кб. Используется для хранения программы, от которой загружается контроллер жесткого диска.
    4. И самая любопытная для нас вещь — контроллер жесткого диска. Их производят компании Marvell, ST, LSI и другие. Некоторые компании, производящие винчестеры, делают свои собственные контроллеры, как, например, Samsung и Western Digital.

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

    Копнем глубже

    Наш зарубежный коллега Джероен «Sprite_tm» Домбург нашел интересный выход из данной ситуации — для исследования контроллера он использовал интерфейс JTAG (от англ. Joint Test Action Group). Этот интерфейс предназначен для тестирования и отладки печатных плат. То есть с помощью JTAG мы можем спокойно подключиться к интересующему нас устройству, поддерживающему стандарт IEEE 1149. В микросхему интегрируется порт тестирования (TAP — Test Access Port), состоящий из четырех или пяти выводов: TDI, TDO, TMS, TCK и, возможно, TRST. Расположение этих выводов для контроллера Marvell нашел некий dex, любезно поделившийся результатами на форуме HDDGURU.

    Джероен выяснил, что у контроллеров Western Digital есть ARM-ядро, доступное через JTAG-порт. А также последовательный порт, который обычно не используется, но может быть полезен для наших целей.

    Для исследования контроллера жесткого диска использовалась плата FT2232H, которую можно заказать в интернете за 30 евро. Она поддерживает JTAG, связь через последовательный порт, а также SPI. Для работы с ней использовалась программа OpenOCD.

    В результате оказалось, что у микросхемы есть целых три ядра. Два Feroceon, которые являются довольно сильными ARM9-подобными ядрами, и Cortex-M3, которое немного слабее. У всех ядер разное предназначение:

    • Feroceon 1 обрабатывает физические чтение/запись на жесткий диск;
    • Feroceon 2 -обрабатывает SATA-интерфейс, кеш и преобразует LBA в CHS;
    • Cortex-M3 — предназначение неизвестно. Можно просто остановить его, но жесткий диск будет продолжать работать.

    Добро пожаловать, или Посторонним вход воспрещен

    Так как мы ставили перед собой цель использовать жесткий диск для своих коварных целей, то самое время подумать о модернизации его прошивки. Самый простой и, вероятно, сложный в обнаружении способ — изменять данные на лету. Чтобы сделать это, нужно найти подходящее ядро — ядро, которое имеет доступ к данным, путешествующим между диском и SATA-кабелем.

    Для доступа к ядру можно использовать режим DMA (Direct Memory Access). Это такой режим, когда обмен данных происходит непосредственно с головки считывания в память, без активного участия процессора. То же самое относится и к SATA-порту: процессору нужно только указать, где данные, и логика DMA позаботится о чтении информации непосредственно из памяти.

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

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

    Читайте также:  Скульптуры из жесткого диска

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

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

    Меняем прошивку

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

    У компании Western Digital есть специальные программные утилиты для работы с жестким диском — это инструменты, работающие под DOS, которые могут загрузить новую прошивку контроллера, микросхемы флеш-памяти или сервисного раздела. Инструменты используют так называемые Vendor Specific Commands (VSC), впрочем, об этом чуть позже.

    Также есть набор инструментов под названием idle3-tools, которые можно взять на вооружение для модификации прошивки жесткого диска. Он также использует VSC, применяя Linux SCSI PassThrough IOCTLs. Джероен взял этот код, изменил его и интегрировал в fwtool. После этой модификации fwtool научился читать и писать на микросхему флеш-памяти.

    Теперь если хакер каким-то образом сможет воспользоваться fwtool на удаленной машине, то получит возможность сбросить флеш-память диска, изменить ее и «зашить» обратно. Правда, в конце концов владелец узнает о взломе и, вероятно, переустановит систему, но злоумышленник может внедрить что-нибудь, что проявит себя и после переустановки. Например, подождать, пока машина зачитывает из файла /etc/shadow/ , где хранятся все пароли в системах UNIX/Linux, и изменить содержимое. После чего можно будет просто войти под своим паролем.

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

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

    Терминальный режим жесткого диска

    При работе в терминальном режиме пользователь может взаимодействовать с жестким диском посредством диагностических команд. Этот метод применяется для диагностики и ремонта накопителей Seagate и Toshiba, в Western Digital такая возможность отсутствует из-за сложности подключения. Терминальный режим фактически предоставляет полный root — управление механикой и логикой устройства. С его помощью можно также обновить или перезагрузить прошивку винчестера. Список команд для большинства накопителей можно посмотреть в интернете. А на плате жесткого диска имеется специальный разъем для подключения через последовательный порт.

    Рис. 2. Разъем для подключения через последовательный порт. Одной тайной меньше

    Для доступа в терминальный режим понадобится устройство-адаптер, необходимое для преобразования уровней сигналов RS-232 в уровни TTL (такие адаптеры имеются в продаже, но можно собрать и самому — все необходимые схемы находятся в свободном доступе, а в качестве основы можно взять некоторые модели Arduino). Мы же возьмем готовый чип FTDI, который преобразует USB в последовательный интерфейс для микроконтроллера Atmega. Нужно соединить GND и RESET, а для подключения использовать контакты RX и TX.

    Рис. 3. Arduino Nano в качестве адаптера

    Для работы с COM-портом используем любую понравившуюся программу — например, PuTTY или Hiperterminal. Выбираем тип подключения, вводим номер COM-порта и другие настройки:

    Рис. 4. Окно настроек PuTTY

    Для проверки работоспособности схемы нужно замкнуть RX и TX между собой. В результате все набираемые символы отобразятся в двойном количестве. Это происходит из-за того, что введенные данные будут передаваться по линии TX, а затем они же вернутся по линии RX. Делается это так: отключив SATA-кабель, соединяем выход TX диска с входом RX адаптера, и наоборот — RX адаптера с TX диска. Подключаем питание. После нажатия клавиш , получаем приглашение Т> (или F> для неисправных HDD) и вводим команды. Для получения списка команд вводим /C , а затем Q.

    Из-за большого количества команд инженеры Seagate разделили их структуру на уровни. Такие команды, как чтение, запись, поиск, лог ошибок, доступны сразу на нескольких различных уровнях. Чтобы переключить жесткий диск для работы на другом уровне, надо воспользоваться командой /x .

    Рис. 5. Обнуление S.M.A.R.T.

    Кроме этих девяти уровней, есть еще два дополнительных набора команд: сетевые и общие. Основной целью сетевых команд является отображение изменения текущего состояния системы. Общие команды используются для доступа к регистрам, буферной памяти и данным.

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

    Читайте также:  Что такое мастер славе на жестком диске

    Запись информации в сервисные разделы HDD

    В любом жестком диске присутствуют сервисные разделы. Они предназначены для хранения служебных программ винчестера, таких как S.M.A.R.T., модули раннего обнаружения ошибок, модули самодиагностики и так далее. К счастью, все эти данные не занимают выделенное место полностью, а значит, при правильном подходе мы можем использовать это бонусное пространство. Сервисные разделы не следует путать с DCO или HPA, которые могут быть легко обнаружены и доступны через стандартные ATA-команды.

    В отличие от остальных методов скрытия информации запись в сервисный раздел не оставляет за собой никаких следов и незаметна для специальных программ поиска, которыми пользуются правоохранительные органы. Одним словом, это место идеально подойдет для хранения текстовых файлов с адресами, паролями, явками и прочего.

    Для доступа к информации из сервисных разделов не подойдут стандартные ATA-команды, вместо этого для записи и чтения используются специальные команды VSC (Vendor Specific Commands). Как правило, производители держат в секрете эти команды, но порой выпускают утилиты для работы с сервисными разделами — например, программа wdidle3.exe от компании Western Digital и ее опенсорсный аналог idle3-tools. Еще один пример для WD — программа HDDHackr, меняющая записи в системных разделах HD.

    WARNING

    Данные в сервисных разделах очень важны для правильной работы винчестера. Повреждение записанной информации ведет к потере работоспособности диска. Восстановить ее будет не так уж и просто — для перезаписи данных в сервисных разделах понадобятся специализированные программы (например, Ace Laboratory PC3000).

    Объем сервисного раздела зависит от модели винчестера. Например, в диске WD2500KS-00MJB0 семейства Hawk объемом 250 Гб (прошивка 02AEC) в сервисный раздел записывается две копии файлов, около 6 Мб каждая. Размер зоны на каждой поверхности составляет около 23 Mб (64 трека по 720 секторов на каждом). Поскольку этот диск имеет шесть поверхностей (головки от 0 до 5), модули сервисных разделов располагаются на месте, сопоставленном с головками 0 и 1, а место, закрепленное за головками со 2 по 5, зарезервировано, но не используется. Таким образом, зарезервированный раздел занимает около 141 Мб, из которых 12 Мб находится в использовании.

    Для сравнения: модель WD10EACS-00ZJB0, емкостью в терабайт и с восемью поверхностями, имеет зарезервированное пространство 450 Мб, из которых занято 52 Мб. Ариэль Беркман (Ariel Berkman) из компании Recover Information Technologies LTD написал статью о работе с сервисными отделами HDD, а также выложил PoC-код для записи 94 Мб информации в сервисный отдел диска Western Digital 250GB Hawk. Делается это следующим образом:

    • Узнаем свой SATA IO адрес, используя lspci -v .
    • Для компиляции используем команду gcc -Wall -O -g -o SA-cover-poc SA-cover-poc.c .
    • Создаем рандомный файл (94 Мб в размере) и вычисляем его MD5-хеш.
    • Записываем файл в сервисный раздел.
    • Очищаем винчестер с помощью команды dd-ing /dev/zero , которую следует распространить на весь жесткий диск (или на отдельную часть, предварительно заблокировав доступ к остальному). Достаточно один раз прогнать этот код, чтобы уничтожить данные безвозвратно.
    • Читаем содержимое сервисного раздела, вычисляем его хеш и убеждаемся в целостности данных.

    Автор предупреждает, что его код может привести к потере данных и выходу из строя жесткого диска, так что использовать этот метод можно только на свой страх и риск.

    Программы для восстановления HDD

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

    1. TestDisk — самая простая и эффективная программа для восстановления HDD. Предназначена для поиска и реконструкции потерянных разделов, загрузочного сектора, удаленных файлов; исправляет таблицу разделов. Работает с большим количеством файловых систем. Работает в консольном режиме, чем достигается высокая скорость.
    2. Acronis Disk Director — целый программный пакет, в который включено немалое количество инструментов для работы с HDD. Содержит в себе утилиту Acronis Recovery Expert, которая служит для реконструкции файлов и разделов. В отличие от предыдущей программы имеет графический интерфейс, но работает с меньшим количеством файловых систем.
    3. Paragon Partition Manager — бесплатная программа от отечественных разработчиков, умеет почти все то же самое, что и Acronis, но ужасно медленная.

    Рис. 6. Восстанавливаем поврежденные разделы с помощью TestDisk

    Заключение

    Однако настало время закругляться. В этой статье я попытался показать неизведанные уголки и возможности жесткого диска. Не углубляясь в код, мы рассмотрели способ слива информации с накопителя. Если даже слегка приподнять этот занавес, открывается огромное поле для полета фантазии. Можно, например, перепрошить контроллер, чтобы скрыть от посторонних глаз особо важный раздел. Или портить данные при попытке клонировать жесткий диск, обезопасив себя таким образом от криминалистических утилит. Одним словом, вариантов много, так что каким образом использовать жесткий диск — выбор за тобой.

    Источник