首页
社区
课程
招聘
[求助]某款网游LoginSrv配置文件 求解密
发表于: 2012-7-3 14:26 10005

[求助]某款网游LoginSrv配置文件 求解密

2012-7-3 14:26
10005
【求助】某款网游LoginSrv配置文件 求解密
最好能 推出 加密与解密的 算法 ....

loginserver.7z

加密过的字符串
^`=i`]Tjq_Ua^nSa]`Xi]`Ky_]Tf`]TjqnB_[[Ea^mKo^]Zi]\Ee_]Qv][Ce[a@bboygefQn_]KujgjfqqYoo\XvrqJgqoH]]qMs]^Sz\\Vz]]Wv]pCjp[Ie\rYu

解密后的字符串
driver=sql server;server=(local);database=account;UID=sa;PWD=953f649d93fa99ed3ff0ae7e6c2ceb05

这是我用 OD 追出来的

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (16)
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
PWD……Password么。。。用户SA…
2012-7-3 14:32
0
雪    币: 7
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
干嘛不直接把加密和解密的那个模块给找到。直接调用游戏自带的加解密函数不是更好吗?
2012-7-3 14:34
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
貌似只有解密的 就是没找到 加密的....
我想改下密码 再 加密....
2012-7-3 15:05
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
这个算法逆回去还挺麻烦 直接HOOK读文件吧
2012-7-3 16:05
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
6
一看就是字符串编码,有可能是base64的变形
2012-7-3 16:10
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7


sub     dl, 3B

6bit编码
2012-7-3 16:12
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
8
0040E150 编码函数

0040DFD0  解码函数返回值CString

自己把汇编取出来直接使用就是了,不用逆向成C语言
2012-7-3 16:18
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
9
倒,这东西有些乱,是四字节分组进行编码。
第一字节与四字节进行编码,然后是第二字节与三字节进行编码,编码后加上0x3B成为字符串
2012-7-3 16:28
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
10
弄出来了,费时30多分钟
果然是编码,不过这编码编得有些奇怪,估计是作者乱写的一个编码吧




#include "stdafx.h"
#include "windows.h"

int Decode( const char* input,char* ouput )
{
	int len;
	int out = 0;
	BYTE b0,b1,b2,b3;
	len = lstrlenA(input);
	for( int i = 0;i<len/4;i++)
	{
		b3 = input[i*4+3]-0x3b;
		b2 = input[i*4+2]-0x3b;
		b1 = input[i*4+1]-0x3b;
		b0 = input[i*4+0]-0x3b;

		ouput[out++] = ((b0&3)|((b0&0xfc)<<2)|(b3&0x0c))^0xeb;

		ouput[out++] = (((((b1^b3)&3)^b1)<<2)|(b1&3))^0xeb;

		ouput[out++] = (b2 | (b3&0xf0)<<2)^0xeb;;
	}

	return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
	char lpBuffer[MAX_PATH] = {0};

	Decode( "^`=i`]Tjq_Ua^nSa]`Xi]`Ky_]Tf`]TjqnB_[[Ea^mKo^]Zi]\\Ee_]Qv][Ce[a@bboygefQn_]KujgjfqqYoo\\XvrqJgqoH]]qMs]^Sz\\\\Vz]]Wv]pCjp[Ie\\rYu",lpBuffer);
	return 0;
}



2012-7-3 17:00
0
雪    币: 157
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
太牛了,这得怎么分析呀,有点崇拜的感觉
2012-7-3 17:10
0
雪    币: 192
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
真牛!呵……。学习了
2012-7-3 17:25
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
能帮忙 出个 加密的 就更好 了..
2012-7-3 18:02
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
14
倒,贪心不足,自己写去
2012-7-3 21:06
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
2012-7-4 06:40
0
雪    币: 9
活跃值: (142)
能力值: ( LV12,RANK:200 )
在线值:
发帖
回帖
粉丝
16
私服的登录器而已
2012-9-16 04:49
0
雪    币: 192
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
这个是传奇世界的帐号网关。网上的N多的源代码,里面的加解密函数都可以用。EnCodeString和DeCodeString这两个函数就是了。
2012-9-17 02:41
0
游客
登录 | 注册 方可回帖
返回
//