感谢IT168的WJQ135
S60 V3系统权限软件破解方法(不需要刷机)(包括FP1)
[/font]
[/font]
QUOTE:
1、下载PC端python:[/font]http://www.python.org/download/[/font]
pyserial:[/font]http://sourceforge.net/projects/pyserial[/font]
pywin32:[/font]http://sourceforge.net/projects/pywin32[/font]
[/font]安装
网盘下载地址:
[/font][http://www.fs2you.com/zh-cn/files/6f895328-faf6-11dc-a272-0014221f3995/[/font]
安装次序 [/font]:
1.python-2.5.1.msi
2.pyserial-2.2.win32.exe
3.pywin32-210.win32-py2.5.exe[/font]
2、下载破解包
浏览附件fp1.zip
N95等机型用)或者[/font][/color]
浏览附件hack_perms_s60v3.rar
(N73等机型用)[/color]
3、安装破解包里的s60_3_1_app_trk_2_8_5.sisx ,HelloCarbide.sis到C盘,并将HelloCarbide.exe放到C盘根目录
4、插上USB线,选择PC套件模式,手机上运行TRK,询问是否打开蓝牙,否,选项-settings,connection选USB,然后回到主界面选择选项-connect,如果显示connected表示连接成功
5、到设备管理器查看端口(COM和LPT),找到Nokia N95 USB,记下后面的COM破解号。用文本工具编辑破解包里的hack_perms_s60v3_FP1.py文件,找到ser = serial.Serial(18)一行,修改18为之前的端口号-1,比如刚才看到的是COM14,则改18为13。
6、运行该py脚本,如果看到结果里有!!!!!!!!!!!!!!!!!!!!!!!!!!!candidate!!!!!!!!!!!!!!!!!,表示破解成功,恭喜。[/font]
[/font]
[/font]
[font=宋体][/font]
S60 V3系统权限软件破解方法(不需要刷机)(包括FP1)
N95 8G,N95,N82,5700,N81,E90,N73测试成功![/font]
感谢FCA00000[/font]在破解3RD权限后没有忘记广大的FP1用户。
[/font]
[/font]
[/font]
QUOTE:
1、下载PC端python:[/font]http://www.python.org/download/[/font]
pyserial:[/font]http://sourceforge.net/projects/pyserial[/font]
pywin32:[/font]http://sourceforge.net/projects/pywin32[/font]
[/font]安装
网盘下载地址:
[/font][http://www.fs2you.com/zh-cn/files/6f895328-faf6-11dc-a272-0014221f3995/[/font]
安装次序 [/font]:
1.python-2.5.1.msi
2.pyserial-2.2.win32.exe
3.pywin32-210.win32-py2.5.exe[/font]
2、下载破解包
浏览附件fp1.zip
N95等机型用)或者[/font][/color]
浏览附件hack_perms_s60v3.rar
(N73等机型用)[/color]
3、安装破解包里的s60_3_1_app_trk_2_8_5.sisx ,HelloCarbide.sis到C盘,并将HelloCarbide.exe放到C盘根目录
4、插上USB线,选择PC套件模式,手机上运行TRK,询问是否打开蓝牙,否,选项-settings,connection选USB,然后回到主界面选择选项-connect,如果显示connected表示连接成功
5、到设备管理器查看端口(COM和LPT),找到Nokia N95 USB,记下后面的COM破解号。用文本工具编辑破解包里的hack_perms_s60v3_FP1.py文件,找到ser = serial.Serial(18)一行,修改18为之前的端口号-1,比如刚才看到的是COM14,则改18为13。
6、运行该py脚本,如果看到结果里有!!!!!!!!!!!!!!!!!!!!!!!!!!!candidate!!!!!!!!!!!!!!!!!,表示破解成功,恭喜。[/font]
[/font]
注意,机器重启后破解消失。如希望破解不会消失,请期待leftup的更换根证书教程。
[/font]
[/font]感谢Flox 翻译!
5" />[/font]
好消息:我仅使用软件方法设法破解了我的n80,移除了所有的限制。
我可以浏览c:\sys和private文件夹
现在,我希望其他人也能尝试一下
只要你有nokia 3rd的手机,一根USB数据线和时间,请尝试一下。
如果你有CodeWarrior和MetroTRK,那就更好
首先,请下载附件的文件
1.当前状态:
在S60 3rd中,由于symbian的安全机制:安装程序必须签名才能使用手机权限。
开发者可以自签名自己的程序,但是许多关键的权限必须签入更高权限的证书,这样一
来,就不能让所有的用户使用。
比方说:你无法进入c:\sys文件夹新建文件。虽然这不重要,但不少的用户还是希望自己
能够对手机随心所欲的操作。
2.原理:
当你签名和安装程序以后,程序权限储存在内部文件夹中。程序执行后,就会试图访问
手机权限,这个时候就会进行权限检测。如果不匹配,程序就无法执行并提示错误。这
是由一种叫EPOC.ini的文件所控制。如:PlatSecEnforcement 关闭这些在手机中,是
无法直接修改的。高权限一般有:DProcess:oHasCapability(TCapability , char
c***t)
在我的n80中,存在于F80478BC
F8047968 BL log_missing_capabilities (F80458D8)
....
Look at F80458D8:
....
F8045930 LDR R0, =pSuperPage
F8045934 LDR R0, [R0]
F8045938 LDR R0, [R0,#0x148]
F804593C TST R0, #2
F8045940 BEQ loc_F804597C
F8045944 ADR R1, aError
F8045948 MOV R0, R1
....
最主要的数据还在存在于 [pSuperPage+0x148] 并校验。
如果进行设置,任何缺省的权限都将显示错误。
如果没有,就会产生一个log,但是程序将会执行。
所以,你需要做的就是修改这一段数值。
在我的手机中,pSuperPage的数值为0x60000000,所以数据储存在0x60000148
3.破解:
需要用到的程序:
Carbide.c++ v1.2(包括s60_3_0_app_trk_2_7.sisx 这个文件)
同时需要CodeWarrior Pro for Symbian,尽管版本为S60_App_TRK_2_5.sisx
这个文件是一个设备调试器,常用于手机和PC得数据交换。
按照我的经验,CodeWarrior更容易调试。
它主要用于程序注册,手机储存,进程和修改数据。
0x60000148 在储存器的数值保存在0x0000001E,意味着PlatSecEnforcement必须打
开。
所以,修改从0x0000001E 到 0x00000010,你就能够获得最高权限。
4.工具:
需要你有S60 3rd的手机
你最好有多种方式连接电脑,如蓝牙或者USB数据线,但是红外是无法使用的。
下一步就是利用MetroTRK.
如果你有CodeWarrior,那这就是个首选的解决方案。如果没有,你可以使用一个
python程序来效仿它。
如果你有IDA-disassembler,你必须调查清楚是否能够使用。
5.手机:
我的n80已经通过测试,我猜测这个方法适用所有的s60v3手机
我唯一修改了手机内存。这意味着手机关机,这种破解方式就失效了。手机重启后,必
须重复这些步骤。我知道这个方法具有局限性,永久的解决方案不久将会出来。
另一方面,对你的手机来说,至少这个是一个风险很小的破解方法。
当然,所有的风险都由你自己承担,造成的后果一些和我无关。
6.连接:
我使用的数据线是CA-42连接电脑
连接后,手机会询问你选择连接模式:我选择“PC套件模式”
我的操作系统是Windows-XP,连接后会自动搜索驱动并安装,如:'Nokia N80 USB
modem'
如果没有反应,请到http://www.nodevice.es/driver/CA-42/get37496.html 下载CA-
42的驱动。
安装好PC套件后,打开PC套件。但是请一定记得在PC终止PC套件的运行。
你可以选择一个新的串行端口:
控制面板->系统->硬件->设备管理器->端口 应该会显示'Nokia N80 USB (COM6)'
同样也可能显示COM6和COM7,你最好都试一下。
7.Metro TRK:
这个一个安装在手机中的调试器。它的证书权限非常高,允许读取和写入储存。
把s60_3_0_app_trk_2_7.sisx传到手机并安装。
你就能看到一个叫做TRK的新程序,点击运行。
默认的是使用蓝牙,所以可能会显示错误因为端口不可用。
Opti***->Settings->Connection=USB
Opti***->Settings->Port=1
Opti***->Settings->Baud Rate=115200
Opti***->Connect should tell:
Welcome to TRK for Symbian OS
Status: Connected
PDD: NONE
LDD: EUSBC
CSY: ECACM
Port Number: 1
Baud rate: 115200
这是一个比较难步骤,如果你看到'Failed to open port.Error Code: -21' ,表示你的电
脑无法和手机连接,出现这样的情况一般是由于驱动程序没有完全安装。
7.1:你必须有一个叫HelloCarbide的程序。它是一个简单小实例,安装在C盘。
你也可以使用SExplorer等文件管理器传送HelloCarbide.exe到C盘根目录下。
8.破解:
如果你有CodeWarrior,就进入步骤8.2,没有的话继续往下看8.1
8.1我自己写了个py程序hack_perms_s60v3.py,你必须安装python25
没有安装从www.python.org下载
它使用串行端口,所以你必须安装pyserial 下载地址
http://sourceforge.net/projects/pyserial (可选安装pywin32
http://sourceforge.net/projects/pywin32)
下载后运行,如下列操作:
我的程序使用COM6端口 ser = serial.Serial(5)
如果你使用其他端口,请修改 COM6 = port 5
运行我的py程序 hack_perms_s60v3.py
将会产生一个信息日志,如果有问题,请查看. I _might_ try to help.
如果显示serial.serialutil.SerialException: could not open port: 表示系统无法找到文
件清单,意味着端口不存在。
如果显示serial.serialutil.SerialException: could not open port: 表示进程无法访问文
件,因为已被其他进程使用。意味着其他程序正在使用这个端口,请用COM7替换
COM6
如果显示
sendFrame=00
sendFrame=FF
sendFrame=7E
表示手机没有运行Metro TRK
如果上面一切顺利,等待40秒左右你在最下面一行可以看到:
Close
End+Exit
一路看,你可能会看到:
Read Memory 60000148=1E 00 00 00
candidate!!!
好消息,这意味着已经找到并可以进行修改了。
8.2 如果你有CodeWarrior并且知道如何使用,那样更好。
CodeWarrior使用有点难度,有不懂的地方多搜索
然后,你需要用刀Nokia SDK
FP2下载地址:
http://www.forum.nokia.com/info/sw.nokia.com/id/4a7149a5-95a5-4726-913a-
3c6f21eb65a5/S60-SDK-0616-3.0-mr.html
CodeWarrior下载地址
http://www.forum.nokia.com/info/sw.nokia.com/id/204ab18e-410c-4c59-bcd4-
dda936c8a79b/CodeWarrior_On_Device_Debug_Kit_for_Series_60_3rd_Edition.htm
l
启动CodeWarrior,选择从.mmp文件导入工程,然后选择SDK,并载入
hellowrld.mmp
在窗口中选择目标=ARMI并点击"Debug"
你可以载入任何程序并开始用手机调试(最好载入helloworld.mmp)
接下的目标是GCCE UDEB
settings->Remote Debugging->Connection = Symbian Metro TRK
Same window->Edit Connection->Connection Type=Serial ; Port = COM6
Same window->Remote dowload path = c:\
settings->Remote Download-> Remove any file here
请记住,由于安全原因,程序无法下载c:\sys\bin , 所以在这个步骤之前必须手动安装。
更多内容:
http://www.mobilenme.com/content/view/41/26/
http://mikie.iki.fi/wordpress/?p=33#comment-6299
http://www.newlc.com/topic-5398
http://discussion.forum.nokia.com/forum/showthread.php?t=72632
http://discussion.forum.nokia.com/forum/showthread.php?t=80807
现在你可以调试程序了。
你可能在'Metro TRK Communication Log' 中看到更多信息。
选择stack
Menu->Data->View Memory
忽略错误,显示0x60000000
看到0x60000148,很可能出现的数值是0x1E
双击,把0x10输入进去并运行程序,关闭线程窗口。
9.高级步骤:
你可以使用IDA-disassembler,你可以看到实际代码。
这是一个工作量非常大的任务,但是主要文件是ekern.exe
你可以使用Symbian code查找:
RFs fileSession;
fileSession.Connect();
RFile file;
file.Replace(fileSession, _L("e:\\F8000000.bin"), EFileWrite);
TBuf8 buf;
TUint8 *p =(TUint8*)0xF8000000; // (TUint8*)0xF8000000;
TUint8 *pEnd = (TUint8*)0xFA000000; // (TUint8*)0xFA000000;
TUint8 iVal = 0;
for(;p
if(buf.Length() == buf.MaxLength())
{
file.Write(buf);
buf.Zero();
}
}
file.Close();
fileSession.Close();
然后Syminternals使用ROMTool解压文件,如果你没有,我可以提供给你。
10.测试
用任意程序进行测试。我用的是 SExplorer和TrueExplorer,测试通过,我可以访问
C:\sys,但是SExplorer无法进入Z:\sys,TrueExplorer无法查找C:\sys\bin里的文件。
该方法在作者的n80通过测试,同样也期待在其他手机通过测试
你测试成功了吗?请回复告诉我结果。
[font=宋体][/font]