【krpano】加密XML手动解密分析

krpano允许对XML文件进行加密,对XML进行相应的保护。加密分为两种,第一种为公共加密,即允许其他krpano全景读取该XML,而另一种为私有加密,仅允许加密的用户读取XML。两种加密方式的算法是一致的,只是公有加密使用了一个公共的解密密钥,而私有加密则是根据某个用户自己的密钥进行加密的。

不过,由于krpano可以运行于浏览器中,XML会在解析的过程中在内存中出现,所以可以利用浏览器调试技术提取出解密好的XML。

一个典型的加过密的XML文件如下


1

<encrypted>KENCRUBR6XHk18l9V8NcuX33cW/5TK3svI6......</encrypted>

以<encrypted></encrypted>为标签,同时密文前三个字母为KEN

手动解密XML详细步骤



http://vr.pacificparkbrooklyn.com/该网址上的一个全景项目中的密文为例,进行手动解密分析:

1、在Chrome中打开网址,按F12进行打开调试界面,在Network页面可以查看到某个加密的XML

2.打开source标签,找到ppb.js,格式化代码({}按钮),定位到500,499,436行的位置添各加一个断点

3.重新刷新网页,代码会在该位置被中断,继续执行代码,当代码停在436行的eval处时,点击step into按钮进入到该函数中

4.进入到该函数后,对函数进行格式化,按Ctrl+F搜索"ken",可以找到某个函数,该函数即为解密函数

5.在函数的开头和末尾各添加一个断点,多次点击执行,直到出现加密的文件名

6.执行到函数末尾,便可以在内存中看到解密后的xml了,在console窗口中输入变量名n,即可完整得到解密后的XML了,可以把他从console中复制出来,保存在本地。

可见,krpano对XML保护并不够理想,如果想得到更强的保护效果,可以从以下的几个方面进行考虑

1.考虑对KEN这个加密文件头进行处理,可以避免在调试时直接被定位到解密函数

2.考虑修改加密解密算法,防止被软件自动解密

3.考虑分段解密,不在内存中某个位置出现完整的解密后的xml,增加解密的难度

如果你希望使用软件进行自动解密XML文件,可以参考这篇文章http://rentu.azurewebsites.net/post/2016/08/23/krpano-krpano-xml

最新博客地址:http://blog.turenlong.com/

时间: 2024-08-25 18:30:29

【krpano】加密XML手动解密分析的相关文章

使用JAVA调用KRPANO加密XML

KRPano自带的命令行工具krpanotools可以加密XML,具体的参数说明如下语法: krpanotools32.exe encrypt [OPTIONS] inputfiles inputfiles 参数可以是任意个数的文件 (支持*) 选项:-h5 - 使用HTML5兼容的加密方式-bin - 使用仅支持Flash的加密方式-p - 使用公共密钥加密-z - 加密并压缩文件-ow - 覆盖源文件-bk - 覆盖源文件并备份源文件-in=# - 手动设置待加密文件路径-out=# - 手

KRPano资源分析工具使用说明(KRPano XML/JS解密 切片图批量下载 球面图还原 加密混淆JS还原美化)

软件交流群:571171251(软件在群内提供) krpano技术交流群:551278936(软件在群内提供) 软件功能介绍 KRPano资源分析工具具有以下特性: 1.分析保存网站资源,包括查看网站资源树形(平铺)结构,单个资源文件实时打开,整站资源批量保存,资源过滤筛选保存等功能 2.一键解密被KRPano加密的XML文件 3.一键解密被KRPano加密后的JS文件 4.解密/美化被加密或混淆的JS文件 5.KRPano网站切片图批量下载 6.KRPano切片图一键还原球面图 7.批量下载多

芯片加密与芯片解密技术方法的发展史!

芯片加密与芯片解密技术方法的发展史! IC集成电路在早期,除法律和经济外,几乎没有保护措施来防止复制这些设备.例如:ROM 是用低成本的掩模技术制造的,可用EPROM 轻易复制,但后者通常要贵 3-10 倍或更多.或定制掩模ROM,那就需要很长的时间和很大的投资.工业控制器的硬件安全措施与嵌入式系统同时开始发展.40年前的可编程工业控制器是由分离的部件如 CPU,ROM,RAM,I/O 缓冲器,串口和其他通信与控制接口组成的.通用的嵌入式控制器.PCB 上的每个部件很容易辨别且极易被复制.如下图

SQLPROMPT5.3对各种加密对象的解密测试

原文:SQLPROMPT5.3对各种加密对象的解密测试 SQLPROMPT5.3对各种加密对象的解密测试 测试环境: SQL2005个人开发者版 SP4 SQLPROMPT版本:5.3.8.2 视图 1 CREATE VIEW aa 2 WITH ENCRYPTION 3 AS 4 SELECT * FROM [dbo].[Users] 可以解密 存储过程 1 CREATE PROCEDURE bb 2 WITH ENCRYPTION 3 AS 4 SELECT * FROM [dbo].[Us

自定义泪价值器2——加密class文件 解密加载class文件

public class MyClassLoader extends ClassLoader { private String classDir;//自定义类加载器 所查找的目录 MyClassLoader(String classDir){ this.classDir = classDir; } @[email protected]("deprecation") //findClass的主要作用就是 把class文件读取到内存中 那么涉及两个流,,但是class文件被加密 所以需要先

des加密解密——java加密,php解密

最近在做项目中,遇到des加密解密的问题. 场景是安卓app端用des加密,php这边需要解密.之前没有接触过des这种加密解密算法,但想着肯定会有demo.因此百度,搜了代码来用.网上代码也是鱼龙混杂,好不容易测试在php这边测试加密和解密成功了.为确保安卓app端提交过来的加密参数能够解密出来,给定安卓人员一个字符串,让他们把des加密后的字符串给我,在php这边解密.结果一看,加密出来的字符串跟我这边加密出来的结果不一致,自然是解密不出来. 要来java的des算法代码,研究加密的过程,其

实现ios上传加密nodejs后台解密

今天在做项目的时候遇到一个问题,我需要在ios端把上传数据加密,防止中间代理捕获信息内容并修改数据库的信息.把数据传到后台在解码,实现数据安全. 下面介绍我实现的在nodejs的加密和解密的代码希望对需要解决相同问题的有一定的帮助. var assert = require('assert');    var crypto = require('crypto');     function test_des(param) {     var key = new Buffer(param.key)

C# RSA加密、解密、加签、验签、支持JAVA格式公钥私钥、PEM格式公钥私钥、.NET格式公钥私钥 -变态模式【支持私钥加密,公钥解密】(二)

RSA变态模式:[私钥加密,公钥解密] 一般这种写法都是JAVA弄的..NET原生不支持.为啥,我也不清楚,大概是因为安全性问题吧,毕竟公钥是人人都可是持有的.私钥只有自己拥有. 对接注意事项:https://www.cnblogs.com/kevin860/p/9557845.html 一般方法请看:https://www.cnblogs.com/kevin860/p/9557845.html 签名一直都是[私钥加签.公钥验签]只为证明该消息是你发出来的. 这里使用了BouncyCastle1

php简单混淆类加密文件如何解密?

最近在整理单位购买的源码时,发现源码里好多文件都混淆加密了.虽然不解密也不影响使用,但是心里总觉得有些别扭,便试着将加密的文件解密. 首先,百度了一下,看网上是否有现成的混淆类解密工具,搜到了一个http://www.zhaoyuanma.com/.尝试了一下,这个还真是好用,免费的,解密速度挺快.但是当解到一个比较大的文件时,发现文件上传不上去了,网站提示:文件无法上传.开始以为是不是解密次数多了,网站限制了.隔了一天试了一下,还是不行,后来打开了文件一下打算仔细的看看,觉得文件打开的比较迟钝