美文网首页python_爬虫js
JS逆向:JS 中常见的加密算法及逆向特征

JS逆向:JS 中常见的加密算法及逆向特征

作者: dex0423 | 来源:发表于2021-11-30 00:04 被阅读0次

    1. 取盐算法

    取盐 算法,也叫 摘要算法,是对数据进行一系列运算后,截取一部分关键值进行校验。因此运算过程 不可逆,无法还原出加密前的 初始文本
    取盐算法得到的结果长度一般是固定的,无论输入的消息有多长,计算出来的消息摘要的长度总是固定的。一般地,只要输入的文本不同,对其进行摘要以后产生的摘要消息也必不相同,但相同的文本输入必会产生相同的输出。

    1.1. MD5 逆向特征

    • 字符串为 16 进制,即数字英文组合,而且 英文最大是字母 f 。
    • 位数为 16、32。
    • 搜索关键字:
      -- 关键词:md5MD5
      -- 默认的 key 值:0123456789abcdef、0123456789ABCDEF
      -- 原始MD5的魔法值(16进制):0x67452301、0xefcdab89、0x98badcfe、0x10325476
      -- 原始MD5的魔法值(10进制):1732584193、271733879、1732584194、271733878
    • 123456 计算结果值:
      16 位,结果值 49 开头。
      -- 16位小写计算结果:49ba59abbe56e057
      -- 16位大写计算结果:49BA59ABBE56E057
      32 位,结果值 e10、E10 开头。
      -- 32位小写计算结果:e10adc3949ba59abbe56e057f20f883e
      -- 32位小写计算结果:E10ADC3949BA59ABBE56E057F20F883E

    注意:16位 的结果值是 32位 的结果值的一部分。

    1.2. SHA 逆向特征

    • 字符串为 16 进制,即数字英文组合,而且 英文最大是字母 f 。
    • 位数为 40、64、96、128 等,位数均是 8 的倍数
    • 123456 计算结果值:
      SHA1:40 位7c4a8d09ca3762af61e59520943dc26494f8941b
      SHA256:64 位8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
      SHA384:96 位0a989ebc4a77b56a6e2bb7b19d995d185ce44090c13e2984b7ecc6d446d4b61ea9991b76a4c2f04b1b4d244841449454
      SHA512:128 位
      ba3253876aed6bc22d4a6ff53d8406c6ad864195ed144ab5c87621b6c233b548baeae6956df346ec8c17f5ea10f35ee3cbc514797ed7ddd3145464e2a0bab413

    2. 可还原加密算法

    特征:
    1、字符串为 16 进制,即数字英文组合,而且 英文最大是字母 f
    2、字符串为 base64 编码形式,由数字 0-9、小写字母 a-z、大写字母 A-Z 以及字符 +_= 组成,且最后一个或最后两个字符为 =。通常而言 Base64 的识别特征为索引表,当我们能找到 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/ 这样索引表,再经过简单的分析基本就能判定是 Base64 编码。

    2.1. RSA 逆向特征

    RSA 是典型的 非对称加密,拥有一个公钥和一个私钥。

    其中:
    -- 客户端(浏览器)拥有公钥,服务器同时拥有公钥和私钥
    -- 同一个明文可以生成不同的密文。
    -- 必须先 new JSEncrypt 加密对象,然后 setPublicKey

    • 加密后的数据长度不可能是 8 的倍数。
    • 搜索关键词:new JSEncryptsetpublickeyABCDEFGabcdefg

    2.2. AES 逆向特征

    AES 是 对称加密 的一种。

    • 一般AES加密出来的数据是128 或 256 的整倍数。
    • 搜索关键词:cryptojs.aesencryptedString010001(或类似二进制模值)。

    2.3. DES 逆向特征

    • 搜索关键词:cryptojs.des.encrypt

    其他编码算法

    3.1. Base64 逆向特征

    • 字符串的长度为4的整数倍。
    • 字符串的符号取值只能在 A-Z, a-z, 0-9, +, /, = 共计65个字符中,且 = 如果出现就必须在结尾出现。

    相关文章

      网友评论

        本文标题:JS逆向:JS 中常见的加密算法及逆向特征

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