|
PSP хакинг и девелопмент Взгляд изнутри |
06.11.2012, 08:31
|
Сообщение: #1 (1053856)
|
Модель консоли: Все PSP
Прошивка: 5.00 m33-6
Регистрация: 20.01.2010
Сообщений: 3,415
Вы сказали Спасибо: 2,368
Поблагодарили 1,618 раз(а) в 873 сообщениях
Сила репутации: 1Репутация: 1618 
(обеспечено прекрасное будущее)
|
Я немного неверно изложил суть kxploit'а в шапке.
1-ое что мы должны иметь это возможность поставить любую дрянь в памяти ядра (получить контроль над инструкцией sw (хотя бы вторым аргументом) внутри функции с k-правами).
2-ое это поставить её вот вместо этого (lui $a1, 0x8801 - это взято из функции sceKernelPowerLock):
lui $a1, 0x8801 # вот это ОБЯЗАТЕЛЬНО перетереть какойнибудь хренью, но не этой
lw $v1, 16632($a1) # тут мы загружаем адрес нашего кода, поэтому можно заметить что от 2-го аргумента
# функции sceKernelPowerLock отнимаем 16632 (0x40F8) ну или стоящее там значение.
addiu $sp, $sp, -16
sw $ra, 0($sp)
bnez $v1, 0x8800CBDC # переходим в место с меткой (!!!)
move $v0, $zr
lw $ra, 0($sp)
jr $ra
addiu $sp, $sp, 16
lw $v0, 16($v1) # !!! тут грузим загруженый адрес нашего кода (вот почему отнимаем 16 (0x10) - смотрим любой kxploit)
jalr $v0 # ну и прыгаем на шеллкод
nop
Блин, ребята. Давайте хоть какую-то движуху, а то мне одному ломать скучно. Кому я это всё говорю?! Самое сложное тут - это найти функцию, которая будет иметь контроль над sw, а это не так сложно. Это можно сказать самое главное. Yoti, давай хоть ты подсуетись. Если чё не понятно, вы спрашуйте!
|
|
|
06.11.2012, 08:37
|
Сообщение: #2 (1053858)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 58
Сообщений: 47,704
Вы сказали Спасибо: 27,946
Поблагодарили 43,591 раз(а) в 12,392 сообщениях
Сила репутации: 10Репутация: 42782 
(репутация неоспорима)
|
Сообщение от frostegater
lui $a1, 0x8801 # вот это ОБЯЗАТЕЛЬНО перетереть какойнибудь хренью, но не этой
|
В смысле, это наверное нужно совсем занулить.
Ну я могу подключиться, просто тоже своих проектов навалом. Перепрыгиваешь на новый проект, а старые незаконченные забываются, считай навсегда )))
|
|
|
06.11.2012, 09:49
|
Сообщение: #3 (1053861)
|
Модель консоли: Все PSP
Прошивка: 5.00 m33-6
Регистрация: 20.01.2010
Сообщений: 3,415
Вы сказали Спасибо: 2,368
Поблагодарили 1,618 раз(а) в 873 сообщениях
Сила репутации: 1Репутация: 1618 
(обеспечено прекрасное будущее)
|
ErikPshat, ну лишь бы не взаимодействовало с $a1, т.к. тут a1 задается аргумент инструкцией lui которая равносильна (a1 = 0x8801), а так мы можем задать a1 (второй аргумент функции) извне.
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
Опции темы |
|
Опции просмотра |
Комбинированный вид
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Текущее время: 14:22. Часовой пояс GMT +3.
Powered by vBulletin® Version 3.8.7 Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.
|
|
|