zoukankan      html  css  js  c++  java
  • BUU re xor

            

    从13行和18行的0x21(c规定十六进制必须用0x**表示)可以知道这个字符串就是33个字符

    shift+e来提取出数组中的字符:  

          

    设这个数组是global数组

    global[] =

    {

    102, 10, 107, 12, 119, 38, 79, 46, 64, 17,

    120, 13, 90, 59, 85, 17, 112, 25, 70, 31,

    118, 34, 77, 35, 68, 14, 103, 6, 104, 15,

    71, 50, 79, 0

    };

    我们已知:0^0=0 0^1=1 则对于任意x有0^x=x

    还已知 若 a^b=c b=a^c=a^(a^b)=(a^a)^b=0^b=b  

    按题目中的运算规则:
    global[1] = v6[1] ^ v6[0]

    global[2] = v6[2] ^ global[1] = v6[2] ^  v6[1] ^ v6[0]

    v6[1] = global[1] ^ global[0] = v6[1] ^ v6[0]  ^ v6[0] =  v6[1]

    v6[2] = global[2] ^global[1] = v6[2] ^ global[1] ^ global[1] =v6[2] 

    …………

    v6[i] = global[i] ^ global[i-1] = v6[i] ^ global[i-1] ^ global[i-1] = v6[i]

    即 v6[i] = global[i] ^ global[i-1] 

    那么脚本:

    x=""
    a = [102, 10, 107, 12, 119, 38, 79, 46, 64, 17, 120, 13, 90, 59, 85, 17, 112, 25, 70, 31, 118, 34, 77, 35, 68, 14, 103, 6, 104, 15, 71, 50, 79 ,0]
    for i in range(len(a)-1):
    x += chr(a[i]^a[i-1])
    print(x)

     

  • 相关阅读:
    cookie,session,django中间件,csrf回顾
    CSRF
    django中间件
    cookie与session
    form组件简单回顾
    分页器组件与form组件
    ajax回顾
    AJAX
    python魔法方法详解
    python静态方法类方法属性方法
  • 原文地址:https://www.cnblogs.com/DuWA/p/12331981.html
Copyright © 2011-2022 走看看