九游会客户端官网|(最新)点击登录

选择九游会,一切数据都是你的!

办事>###

联系九游会

###陕西 西安)

### >###

###>###

>###

技能文章

怎样打破防收罗战略-数据加密

公布>###

现在罕见的Web反收罗战略大约有以下几种:

  • 1)数据加密;
  • 2)限定拜访频率;
  • 3)数据以非文本情势展示;
  • 4)验证码掩护;
  • 5)Cookie验证;

本文次要探究一下怎样打破“数据加密”:

反收罗战略 - “数据加密”的原理:

  • Web办事器端剧本将HTML文档中的局部数据加密,然后发送给HTTP客户端(欣赏器)。
  • 欣赏器利用JavaScript将密文复原成文明后表现。
     

打破的办法:

依据JavaScrip解密算法源码,完成本人收罗步伐所需复原算法,在吸收到办事器应对数据后,先对数据举行解密,然后再举行提取。

一个实例:

的德律风(手机)号码是如许输入的:

  1. <script type="text/javascript" > <br>  
  2. // <![CDATA[  
  3. document.write(WPOL.Util.rotDecode('(57) 1771 3775'));  
  4. // ]]>  
  5. </script>  

在欣赏器中看到的德律风号>###,而不是”(57) 1771 3775“,如下所示:

在源码中可以找到WPOL.Util.rotDecode的源码如下:

  1. rotDecode: function(C) {  
  2.     var B, A = "";  
  3.     for (B = 0; B < C.length; B++) {  
  4.         var E = C.charAt(B);  
  5.         if (/[a-zA-Z]/.test(E)) {  
  6.             var D = /[A-Z]/.test(E) ? "A""a";  
  7.             A += String.fromCharCode((E.charCodeAt(0) - D.charCodeAt(0) + 39) % 26 + D.charCodeAt(0))  
  8.         } else {  
  9.             if (/[0-9]/.test(E)) {  
  10.                 A += String.fromCharCode((E.charCodeAt(0) - 48 + 15) % 10 + 48)  
  11.             } else {  
  12.                 A += E  
  13.             }  
  14.         }  
  15.     }  
  16.     return A  

九游会的收罗步伐是接纳Python编写的,以是必要依据上述代码完成九游会本人的解密算法,如下:

  1. def phone_decode(phone_en):  
  2.     """Decode whitepages phone number 
  3.     """  
  4.     phone_de = ''  
  5.     for c in phone_en:  
  6.         if re.compile(r'[a-zA-Z]').search(c):  
  7.             if re.compile(r'[A-Z]').search(c):  
  8.                 d = 'A'  
  9.             else:  
  10.                 d = 'a'  
  11.             phone_de += chr((ord(c) - ord(d) + 39) % 26 + ord(d))  
  12.         else:  
  13.             if re.compile(r'[0-9]').search(c):  
  14.                 phone_de += chr((ord(c) - 48 + 15) % 10 + 48)  
  15.             else:  
  16.                 phone_de += c  
  17.     return phone_de  

测试: