某斗PDF转换器破解网络验证
本帖最后由 Culaccino 于 2020-2-17 13:42 编辑这是接着我第一篇帖子继续发的https://www.52pojie.cn/thread-994441-1-1.html ,最近刚好要用到pdf的软件,就想起我上次破解的那个软件是不是还可以用,结果安装之后发现已经换了验证方式,变成了网络验证,由于没找到注册的函数,所以试着破解了一下网络验证
虽然软件不怎么样,但是还是发一下破解思路吧
首先点开注册框弹出了这个窗口,就直接注册一个账号看看是什么情况
发现是网络验证,查一下壳发现是没加密的.NET,进dnspy先把源码给提取出来
把exe拖进dnspy,点击文件 -> 导出到工程,这样就方便搜索字符串了
直接打开wireshark抓点击注册之后发送的包看看,筛选出http的流量包
可以看到请求的url里面包含了计算出来的机器码以及返回的用户信息的url,直接在导出来的源码里面用 filelocator 搜索字符串,发现有 savemachinecode 和 index.html这两个字符串,可以推断出像getuserinfo这类的应该是index.html访问后才请求到的
点开"GET /index/pdfplay/index.html?md=*************&userid=***** HTTP/1.1 "这个流量包的url
最下面有一串url双击进浏览器
发现就是原来的那个界面,可以看到有未激活的字样
在浏览器里面按F12分析一下流量请求的情况,找到getuserinfo里面返回的信息,应该这个才是最主要的信息了,去html里面再看看
点击激活VIP的时候会弹出来下面这个信息,但是在此期间未发送任何包,说明是js直接判断的,直接把整个页面包括css,js,图片等东西都一次性搞下来,自己开个本地网页服务器,进行本地验证
开启phpstudy服务,把保存下来的文件放到phpstudy的文件夹下面,并且把index.html里面的url替换一下,这样就可以请求到自己服务器的内容了
在本地创建两个php文件, * 号填你自己获取到的值
getuserinfo.php
<?php
header("content-type:application/json");
$arr = array("issuccess"=>"1","data"=>["vid"=>****,"machinecode"=>"******","id"=>"****","loginname"=>"**********","viptype"=>"","endtime"=>""]);
exit(json_encode($arr))
?>
active.php
<?php
header("content-type:application/json");
$arr = array("issuccess"=>"1","data"=>"1");
exit(json_encode($arr))
?>
这样本地一模一样的服务就搭出来了,接下来就是激活VIP
通过选择器找到激活VIP的按钮的className是user-jhvip,于是去js里面找到对应的click函数,对应的代码在index.html里面,发现是由viptype控制的,直接把viptype改成true
再往下找发送active.php的函数,他居然把生成注册码的代码写到了js里面
转到generate那个函数,把整个函数复制到浏览器的console里面,填入自己的机器码(就是getuserinfo.php里面的machinecode),就可以算出注册码了
把返回值填到原来的js里面
接下来就是要把软件里面的url定位到自己的服务器上了,由于在dnspy里面修改url报错,我选择直接在winhex里面改二进制
直接在winhex里面搜索16进制70006400660070006C0061007900,定位到url,把它修改成自己的url,问号后面的东西不用管它,因为返回的值都是一样的,只要把多余的“ / ” 和 “ ?”给替换掉
最后一步,进软件点击激活,如果没成功就把软件重启一下再试,注册成功后还是会返回未激活的界面,这是因为getuserinfo里面的内容还没改,只要把getuserinfo里面的加上"viptype"=>"永久","endtime"=>"3681865903" 就可以了
写的匆忙可能有些地方没讲清楚还请谅解 本帖最后由 zhangxc1989 于 2020-3-4 00:23 编辑
LZ的方法非常之屌........
我这种小菜鸟还是暴力破解比较靠谱~~~~这个鬼某斗pdf是个剽窃软件,完完整整剽窃了某捷PDF
所以暴力破起来,我丝毫没有负罪感~~说一下心得吧:keai
用dnspy载入 exe文件,然后等待 PDFConvert.bllBase.dll这个文件 出现在左边的框框里,如下图
这个东西是重点~~~表一下。然后找到这个函数 Is_Reg,这个东西是判断你的软件是否已经注册。
我们先看原始代码↓
差不多就是比来比去~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~,好了,下面简单暴力的东西来了。
我们把里面的代码改成,如下图!
意思就是这个Is_Reg函数,永远返回为真,也就是你随便注册个号,都会显示为vip~{:1_926:}
最后我们保存一下。
打开软件看看效果!!!
{:1_926:}好了,玩完了,我也顺手联系了某捷PDF举报了一下这个某斗的剽窃行为~
最后感谢LZ的教程,十分感谢
我这方法目前还不知道有没有bug....请各位大佬指正 我今年28了,初中文化,干了3年厨房,进论坛是为了少花点钱买软件!看那么多技术贴都样样想学!但自己又没专业知识,现在只记得英文字母是26个!我只能羡慕你们了。 高级 但是不懂哈哈哈 学习到了
学习到了 小白学习思路来了,感谢分享 学习到了,准备自己试一下,嘻嘻 给楼主点赞,步骤很详细,就是搭建本地服务器比较麻烦点,能直接出破解的软件就更好。 高级高级一知半解 支持,佩服!!! 高级 但是不懂哈哈哈{:1_908:}