yifanlu / taiHEN

CFW framework for PS Vita
MIT License
307 stars 46 forks source link

Possibility to "brick" any taihenkaku usage with broken plugin #2

Closed coderobe closed 7 years ago

coderobe commented 7 years ago

Note: This is an untested theory

When a broken plugin is inserted to SceShell and causes it to crash, i assume the device reboots or restarts SceShell (causing an infinite loop of crashes) After a reboot the crash would be fixed temporarily until the user reinstalls taihenkaku - which would load the plugin and cause the crashes again, effectively making taihenkaku unusable on that device.

This means there's no opportunity for the user to disable the broken plugin before causing crashes again.

Cydia Substrate prevents this by temporarily disabling plugin loading when a specific key-combo is held, so maybe that's what tai should do in the future if my theory proves to be true

I can't confirm this theory though because i'd rather not pseudo-brick my device

jdek commented 7 years ago

This is something to think about, maybe taihen could hook the 'rebuild database' button in the safe-mode, and disable all plugins after it's pressed. (I don't know if this is possible though)

coderobe commented 7 years ago

I don't think that's needed, because a reboot will disable taihen anyways. What would be needed may be some kind of switch in the taihenkaku installer that sets taihen to not load any plugins from the config in ux0:data/tai, enabling people to fix their configs & reboot

TheOfficialFloW commented 7 years ago

Yeah, some sort of taiHEN recovery (menu) would be useful.

keats-s13 commented 7 years ago

Maybe formatting the memory stick can be revive

yifanlu commented 7 years ago

If we ever get a boot support, adding a recovery mode is easy. For now, I might add a key combo to disable loading for the config during installation... after I integrate the config stuff.

coderobe commented 7 years ago

Sounds exactly like what i had in mind. Something like holding a trigger whilst installing henkaku maybe

drdaxxy commented 7 years ago

So long as installation isn't persistent across reboots (and personally, both as a user and a dev likely to mess things up, I'd prefer it to stay that way for exactly this reason), one could always just install old HENkaku (or a special taiHENkaku version that doesn't load third-party plugins). Should be enough to provide a safemode.henkaku.xyz installer I reckon.

yifanlu commented 7 years ago

In the latest taiHENkaku beta, holding R1 will reset config.txt allowing recovery from bad plugins. If someone ever makes a boot exploit, they should add a full recovery menu.

Cpasjuste commented 7 years ago

Hi,

On latest henkaku this does not work (holding R1 will not reset config.txt).

yifanlu commented 7 years ago

You have to do it when livearea is entering the bootstrap installer.

Cpasjuste commented 7 years ago

Hi yifanlu,

I finally did it after a lot of tries, I tough I would never be able to do it ! Maybe it would be useful to add a second of delay for convenience, but maybe its not possible ?

Thanks for your reply.

Le 8 avr. 2017 01:09, "Yifan Lu" notifications@github.com a écrit :

You have to do it when livearea is entering the bootstrap installer.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/yifanlu/taiHEN/issues/2#issuecomment-292672626, or mute the thread https://github.com/notifications/unsubscribe-auth/AADHhV8WyEtnyBK-gTJlTxIuvn1yt1lpks5rtsIPgaJpZM4KoKek .

yifanlu commented 7 years ago

I guess, xyz opened a new ticket. Honestly idk when we'll push another update though.