Инструкция: "Как облажаться с патчем безопасности"
Комментарий pspowner'а - GTA Exploit 1 работал лишь на прошивках 2.00 - 2.60
Нас много раз спрашивали каким образом команда noobz смогла воскресить GTA LCS эксплоит.
Тот самый, который используется для даунгрейда прошивки 3.03.
Ну больше вам гадать не придётся -
GTA эксплоит использует классическую схему атаки - переполнение буфера (buffer overflow).
Его суть такова - Игра не проверяет размер файла сохранённых данных.
Этот самый размер указывается внутри самого файла сохранения.
Так вот, размер указанный внутри сохранения, не проверяется на соответствие фактическому
размеру файла сохранения.В итоге, в буфер памяти предназначенный для сохранения игры,
записывается больший объём, чем собственно размер буфера.
Это позволяет заменить определённые значения регистров памяти и обеспечить
выполнение кода заключённого внутри сохранённой игры GTA.
Есть 2 способа запатчить этот эксплоит.
1) Это было сделано компанией Rockstar.
Они запатчили саму игру таким образом, что она проверяет размер файла сохранения.
Вот почему новые UMD не подходят для эксплоита.
2) Вот, второй путь - самое интересное. Этот путь выбрала компания Sony.
Фирмой Сони были добавлены некоторые логические проверки на уровне прошивки.
Эти самые логические проверки фактически обойти невозможно,
поскольку эти проверки осуществляются при загрузке любой сохранённой игры.
Логика проверок такова -
1. Соответствует ли ID игры "плохой версии" ГТА -> если НЕТ -> ОК! Сейв грузится нормально.
2. Является ли слот сейва одним из тех, что использует ГТА(слоты 0-7) -> если НЕТ -> ОК! Сейв грузится нормально.
3. Является ли размер сохранённой игры больше, чем должен быть для ГТА -> если НЕТ -> ОК! Сейв грузится нормально.
Если все три условия выпоняются, пользователь видит на экране "corrupted data"
Уязвимость в пункте 2. ГТА может сохранять сейвы только в слотах 0-7! Однако, игра с успехом
грузит любые слоты с сейвами, в том числе и 8,9,10 и какие угодно =)
Таким образом, мы просто повесили эксплоит на слот 8 и... мы сумели обойти патч.
Ошибка допущенная Сони заключается в том, что проверки слишком специфичные ... новый патч в прошивке 3.10 исключает пункт 2 полностью.На данный момент нет никакой возможности теперь обойти этот патч. ((
Fur die freiheit zu kampfen um jeden preis
Последний раз редактировалось pspowner; 25.04.2007 в 21:29.
|