已知有一个 C#服务会提供一个 WebService 接口,此接口可以将本地压缩(包括像素点混淆)后的 JP2 格式图片还原,并返回正常 JPG 格式的图片 base64 。现在已将这个服务的程序包(.dll 文件)整个拷贝下来,需要通过反编译,提取程序中处理图片的代码逻辑。
图片文件 链接: https://pan.baidu.com/s/1HlFCkc5KBECKY0RYaqUrqg 提取码: 65n5
程序包 (有意向的加我 vx ,我私发给你
绿色聊天软件:d3hpZHRyZXZvcg== (请备注 v 友)
此接口可以将本地压缩(包括像素点混淆)后的 JP2 格式图片还原,并返回正常 JPG 格式的图片 base64 。
实际情况是这个接口接收的是一些业务参数,代码中通过业务参数找到JP2 格式的图片,最终返回正常 JPG 格式的图片内容。之前是为了描述尽量简洁,所以忽略了这个点
1
sunmker 2023-01-11 20:17:42 +08:00
ILSPY 不行嘛?
|
3
a33291 2023-01-11 20:57:01 +08:00 1
一般通过 WebService 提供的接口实现逻辑都在服务端,而不是客户端.他的 dll 应该就是对 wsdl 的一个封装,并不包含真正的实现逻辑
|
4
joooooker21 OP @sunmker 用 ILSPY 能反编译,但是里面调用逻辑比较杂乱,另外对 C#语法不是很熟悉
|
5
joooooker21 OP @god7d 倒没有混淆
|
6
joooooker21 OP @a33291 是已经把整个服务端拷贝下来了
|
7
god7d 2023-01-12 09:15:16 +08:00
OP 加大预算,1K 我估计愿意做的人不多
|
8
joooooker21 OP @god7d 哈哈我也想加,不过要领导批才可以
|
9
sunmker 2023-01-12 10:29:55 +08:00
老哥我有个想法,既然你可以反编译没有混淆,你直接别改代码了,把他的逻辑 copy 一下,生成一个新的类方法不就行了吗,照样可以用,也不用管什么逻辑了
我们公司里面的 WebService 老代码进行改造本地使用,我就是直接完全 copy 的 |
10
joooooker21 OP @sunmker 之前是这么想的,但是里面牵扯的本地方法实在是很多,想要把这个顶层方法单独抽出来运行几乎得把半个项目都 copy 出来
|
11
hhjswf 2023-01-12 10:54:15 +08:00 via Android
合法吗
|
12
a33291 2023-01-12 10:54:16 +08:00
@joooooker21 #6 如果已经有服务端代码且没有混淆的话,按说不会很难.要是没有保密需要的话,可以直接把服务端程序放出来
|
13
a33291 2023-01-12 10:56:20 +08:00
@joooooker21 #10 其实核心代码就是你说的 JP2 格式还原部分,后续补充的说根据业务参数找到 JP2 格式的图片属于另外的逻辑,一旦核心功能抽取后,这部分独立实现也不麻烦,并且业务功能也应该尽量单一.
|
14
yw9381 2023-01-12 12:01:59 +08:00
有意尝试一下,已加 V
|
15
joooooker21 OP @a33291 这是甲方提供的东西,直接放出来可能不太好。核心要做的确实如你 #13 所说,所以难点可以在与要从反编译出来的一团乱麻中找到核心处理逻辑
|
16
a33291 2023-01-12 13:38:32 +08:00
@joooooker21 如果长时间没人解决的话,可以发我邮箱我看一下😊 OTA3NzczMjQyQHFxLmNvbQ==
|
17
joooooker21 OP @a33291 多谢老哥,有朋友已经在努力中了
|
18
hzhhhbb 2023-02-12 15:52:37 +08:00
如未解决,提供一个思路
1 、使用 dotCover 把服务端跑起来后,客户端请求服务端接口 2 、查看 dotCover 的代码覆盖率文件,找出覆盖到的方法调用链 3 、删除未被覆盖到的代码 4 、done |