本帖最后由 2714491883MP 于 2018-9-14 13:20 编辑 
原贴:https://ungeek.eu/minecraft-18-file-access/
2014年9月2日,MOJANG发布了1.8版本
并且介绍了在加载世界时使用的内置资源包,包括自定义图像和声音。
这其中包括两个数据包:资源包发送和资源包状态。


在MC的源代码中是这样的:
复制代码很明显,服务器只需要发送一个以level://这个URL开头的资源包数据包,游戏将会尝试从“saves”也就是存档目录加载文件,如果文件存在,则发送状态为ACCEPTED的数据包。 如果不是,则发送数据包FAILED_DOWNLOAD。
如果使用"../"可以遍历整个计算机,从而使整个计算机的文件数据处于可泄露的状态之中。 服务器可以检查是否存在甚至是打开计算机上文件,检举计算机用户名......并且可能更糟。 关于更多,请参阅PHP的file_exists和phar文件问题。
从玩家的角度来看,这种攻击是不可见的,并且可以在游玩服务器上随时触发。通过批量发送数据包可以加速此漏洞利用。而且客户端甚至是可以将一个文件的HASH值发送给服务端,并且可以只是被检查的路径本身。
如果你的Log文件中出现这样的文字,则代表你的服务器正在尝试利用这个BUG
复制代码值得一提的是这个漏洞本身在某些服务器上用于检查玩家电脑内是否有作弊Mod,但是这漏洞本身是一个极大的错误
在2016年2月发布的1.9中,已经不再存在这种问题,如果你因为某种原因不得不使用1.8,又不希望自己的数据泄露,可以去看看这个GitHub项目:https://github.com/Sk1er/Resource-Exploit-Fix 它解决了这个问题
原贴:https://ungeek.eu/minecraft-18-file-access/
2014年9月2日,MOJANG发布了1.8版本
并且介绍了在加载世界时使用的内置资源包,包括自定义图像和声音。
这其中包括两个数据包:资源包发送和资源包状态。


在MC的源代码中是这样的:
- public void handle(S48PacketResourcePackSend packet) {
 
-   String url = packet.getUrl();
 
-   String hash = packet.getHash();
 
-   
 
-   if (url.startsWith("level://")) {
 
-     String urlWithoutPrefix = url.substring("level://".length());
 
-     File savesDirectory = new File(gameController.mcDataDir, "saves");
 
-     File resourceFile = new File(savesDirectory, urlWithoutPrefix);
 
-     
 
-     if (resourceFile.isFile()) {
 
-             netManager.sendPacket(new C19PacketResourcePackStatus(hash, Action.ACCEPTED));
 
-         // snip, loading the resource.
 
-     } else {
 
-             this.netManager.sendPacket(new C19PacketResourcePackStatus(hash, Action.FAILED_DOWNLOAD));
 
-     }
 
-   } else {
 
-     // snip, handling URLs.
 
-   }
 
- }
如果使用"../"可以遍历整个计算机,从而使整个计算机的文件数据处于可泄露的状态之中。 服务器可以检查是否存在甚至是打开计算机上文件,检举计算机用户名......并且可能更糟。 关于更多,请参阅PHP的file_exists和phar文件问题。
从玩家的角度来看,这种攻击是不可见的,并且可以在游玩服务器上随时触发。通过批量发送数据包可以加速此漏洞利用。而且客户端甚至是可以将一个文件的HASH值发送给服务端,并且可以只是被检查的路径本身。
如果你的Log文件中出现这样的文字,则代表你的服务器正在尝试利用这个BUG
- [0913/140810:INFO:GameCallbacks.cpp(199)] game/bns (Client thread) warn Unable to parse metadata section of resourcepack: servers.dat java.util.zip.ZipException: error in opening zip file.
在2016年2月发布的1.9中,已经不再存在这种问题,如果你因为某种原因不得不使用1.8,又不希望自己的数据泄露,可以去看看这个GitHub项目:https://github.com/Sk1er/Resource-Exploit-Fix 它解决了这个问题
第一次新闻帖 如果错区希望版主能告知,因为我实在是不知道这种东西应该放在哪 1.8已经是旧版本但是很多玩家仍旧停留在1.8
哇,这么多年过去了才知道有这个bug...
发布的好晚
这么可怕的吗
哇,那么恐怖?!而且那段Info我感觉特别的熟悉,哪一次崩溃里面看到过
 本帖最后由 zyjking 于 2018-9-14 16:10 编辑 
虽说不是新闻贴,不过这样的东西……发出来也好,应该让大家知道-
看了一下Github上面的文件,安装这个东西是安装mod的方法
虽说不是新闻贴,不过这样的东西……发出来也好,应该让大家知道-
看了一下Github上面的文件,安装这个东西是安装mod的方法
zyjking 发表于 2018-9-14 16:04
虽说不是新闻贴,不过这样的东西……发出来也好,应该让大家知道-
看了一下Github上面的文件,安装这个东西 ...
主要是因为目前PVP仍旧停留在1.8,所以我才发出来
那Hypixel算不算啊?(1.8.9)
还好我没玩过1.8,1.7.2开始玩的,8 9都没玩过之后的都玩过
细思极恐啊.....反作弊被用来做不法勾当了?
2714491883MP 发表于 2018-9-14 13:17
第一次新闻帖 如果错区希望版主能告知,因为我实在是不知道这种东西应该放在哪 1.8已经是旧版本但是很多玩 ...
不仅仅只是玩家,还有大量的服务器......
我爱吃蛤 发表于 2018-9-16 11:02
那Hypixel算不算啊?(1.8.9)
嗨皮出1.13的版本了
感谢提醒
目前我玩hyp还用的1.8的端
目前我玩hyp还用的1.8的端
我的天 必须置顶这个贴啊
版主发布很及时哦
希望版主继续加油吧
版主哪里人啊 要不要加个qq讨论下mc啊
秋风寒心 发表于 2018-9-24 07:45
不仅仅只是玩家,还有大量的服务器......
不止大量吧