美文网首页
某医疗保障网站,js逆向,国有加密

某医疗保障网站,js逆向,国有加密

作者: 八月欢喜 | 来源:发表于2021-11-16 14:29 被阅读0次

前言

  • 可以关注我哟,一起学习,主页有更多练习例子
  • 如果哪个练习我没有写清楚,可以留言我会补充
  • 如果有加密的网站可以留言发给我,一起学习共享学习路程
  • 如侵权,联系我,删
- **国家网站,练练手得了,别作死啊**
-  这个我也是跟着别人学的

网站信息:

网址:

aHR0cHM6Ly9mdXd1Lm5oc2EuZ292LmNuL25hdGlvbmFsSGFsbFN0LyMvc2VhcmNoL21lZGljYWw=

端口:

aHR0cHM6Ly9mdXd1Lm5oc2EuZ292LmNuL2VidXMvZnV3dS9hcGkvbnRobC9hcGkvZml4ZWQvcXVlcnlGaXhlZEhvc3BpdGFs

加密参数:

Request Payload 的 encData 和 signData
Request Headers 的 x-tif-nonce 和 x-tif-signature

逆向过程

抓包分析

在页面中我们输入医院,点击查询会发送一个POST请求,我们可以看到加密参数有如图示所示,主要是 appCodeencDatasignData 参数,同样返回的数据也有这些参数,其加密解密方法是一样的,其中 encType 和 signType 分别为 SM4 和 SM2,这也就是咱们今天要新学的加密方式了

image.png

参数逆向

参数encDatasignData咱直接走全局搜索

image.png

从图中可以看到我们需要的加密参数基本都在这了


image.png

从上往下看,先看x-tif-signature

image.png

参数的a=r+o+r,咱只要吧o弄出来就行,进入的i.a方法中,直接扣取即可


image.png

扣取的代码:

function ia() {
    return function () {
        var t = e(6, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
            , n = e(1, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
            , i = e(1, "0123456789");
        return n + i + t
    }();

    function e(e, t) {
        e = e || 32;
        for (var n = "", i = 0; i < e; i++)
            n += t.charAt(Math.ceil(1e3 * Math.random()) % t.length);
        return n
    }
}

var r = Math.ceil((new Date).getTime() / 1e3)
    , o = ia()
    , a = r + o + r;

console.log(a)

接下来看t,t我们发现后面是一个sha256,咱也懒得扣了,耍一个小聪明,咱用sha256加密万看一下是否和网站加密一样,如果一样就是sha256加密了,咱都懒得看了
原网站加密:


image.png

自己加密:


image.png
结论:
image.png

那咱x-tif-signature的就搞定了,继续

signData解密

signData是一个p函数加密的,e是参数


image.png image.png

烂尾了,待补充

相关文章

网友评论

      本文标题:某医疗保障网站,js逆向,国有加密

      本文链接:https://www.haomeiwen.com/subject/npfhtrtx.html