zoukankan      html  css  js  c++  java
  • BUU-[SUCTF2018]babyre

     给了flag的格式 根据table运算出flag 直接爆破k验证即可

    最开始v186 %= 0x10000 看成了 10000  一直没有跑出来呜呜呜

    /*
    v186 %= 0x10000u;
      v185 = 8;
      while ( v185 )
      {
        --v185;
        for ( j = 22; j; v184[j] |= v189 << v185 )
        {
          v188 = *(&v4 + 22 * v185 + --j);
          v189 = (v188 >> ((v186 >> 2 * v185) & 3)) & 1;
        }
      }
    */
    #include<stdio.h>
    #include<string.h>
    int v[500];
    int v184[100];
    int v188,v189;
    void init();
    int main()
    {
        init();
        for(int v186 = 0;v186 < 0x10000;v186++)
        {
            memset(v184,0,sizeof(v184));
            int v185 = 8;
            while ( v185 )
            {
                --v185;
                for (int j = 22; j; v184[j] |= v189 << v185 )
                {
                v188 = v[22 * v185 + --j + 4];
                v189 = (v188 >> ((v186 >> 2 * v185) & 3)) & 1;
                }
            }
            // SUCTF{xxxxxxxxxxxxxxx}
            if(v184[0] == 'S' &&
            v184[1] == 'U' &&
            v184[2] == 'C' &&
            v184[3] == 'T' &&
            v184[4] == 'F' &&
            v184[5] == '{' &&
             v184[21] == '}')
            {
                printf("key : %d
    ",v186);
                for(int i = 0;i < 22;i++)
                {
                    printf("%c",v184[i]);
                    
                }
                printf("
    ");
            }
        }
    
        return 0;
    }
    void init()
    {
    v[4]= 2;
    v[5]= 3;
    v[6]= 2;
    v[7]= 1;
    v[8]= 4;
    v[9]= 7;
    v[10]= 4;
    v[11]= 5;
    v[12]= 10;
    v[13]= 11;
    v[14]= 10;
    v[15]= 9;
    v[16]= 14;
    v[17]= 15;
    v[18]= 12;
    v[19]= 13;
    v[20]= 16;
    v[21]= 19;
    v[22]= 16;
    v[23]= 17;
    v[24]= 20;
    v[25]= 23;
    v[26]= 22;
    v[27]= 19;
    v[28]= 28;
    v[29]= 25;
    v[30]= 30;
    v[31]= 31;
    v[32]= 28;
    v[33]= 25;
    v[34]= 26;
    v[35]= 31;
    v[36]= 36;
    v[37]= 33;
    v[38]= 34;
    v[39]= 39;
    v[40]= 36;
    v[41]= 33;
    v[42]= 34;
    v[43]= 35;
    v[44]= 40;
    v[45]= 41;
    v[46]= 46;
    v[47]= 43;
    v[48]= 36;
    v[49]= 45;
    v[50]= 38;
    v[51]= 47;
    v[52]= 56;
    v[53]= 49;
    v[54]= 58;
    v[55]= 59;
    v[56]= 52;
    v[57]= 61;
    v[58]= 62;
    v[59]= 55;
    v[60]= 48;
    v[61]= 57;
    v[62]= 50;
    v[63]= 59;
    v[64]= 60;
    v[65]= 53;
    v[66]= 54;
    v[67]= 55;
    v[68]= 72;
    v[69]= 73;
    v[70]= 66;
    v[71]= 66;
    v[72]= 68;
    v[73]= 68;
    v[74]= 70;
    v[75]= 71;
    v[76]= 72;
    v[77]= 73;
    v[78]= 74;
    v[79]= 74;
    v[80]= 77;
    v[81]= 77;
    v[82]= 79;
    v[83]= 78;
    v[84]= 80;
    v[85]= 80;
    v[86]= 82;
    v[87]= 83;
    v[88]= 85;
    v[89]= 84;
    v[90]= 86;
    v[91]= 87;
    v[92]= 89;
    v[93]= 89;
    v[94]= 90;
    v[95]= 91;
    v[96]= 92;
    v[97]= 93;
    v[98]= 94;
    v[99]= 94;
    v[100]= 96;
    v[101]= 96;
    v[102]= 99;
    v[103]= 99;
    v[104]= 100;
    v[105]= 101;
    v[106]= 103;
    v[107]= 103;
    v[108]= 105;
    v[109]= 105;
    v[110]= 107;
    v[111]= 107;
    v[112]= 108;
    v[113]= 109;
    v[114]= 110;
    v[115]= 110;
    v[116]= 112;
    v[117]= 112;
    v[118]= 114;
    v[119]= 115;
    v[120]= 116;
    v[121]= 117;
    v[122]= 119;
    v[123]= 119;
    v[124]= 120;
    v[125]= 121;
    v[126]= 123;
    v[127]= 123;
    v[128]= 125;
    v[129]= 125;
    v[130]= 127;
    v[131]= 127;
    v[132]= -127;
    v[133]= -127;
    v[134]= -125;
    v[135]= -125;
    v[136]= -116;
    v[137]= -115;
    v[138]= -114;
    v[139]= -113;
    v[140]= -120;
    v[141]= -119;
    v[142]= -118;
    v[143]= -117;
    v[144]= -116;
    v[145]= -115;
    v[146]= -114;
    v[147]= -121;
    v[148]= -104;
    v[149]= -111;
    v[150]= -110;
    v[151]= -109;
    v[152]= -108;
    v[153]= -107;
    v[154]= -106;
    v[155]= -105;
    v[156]= -104;
    v[157]= -103;
    v[158]= -102;
    v[159]= -102;
    v[160]= -100;
    v[161]= -100;
    v[162]= -98;
    v[163]= -98;
    v[164]= -96;
    v[165]= -96;
    v[166]= -94;
    v[167]= -94;
    v[168]= -92;
    v[169]= -92;
    v[170]= -90;
    v[171]= -90;
    v[172]= -88;
    v[173]= -88;
    v[174]= -86;
    v[175]= -86;
    v[176]= -84;
    v[177]= -84;
    v[178]= -82;
    v[179]= -82;
    v[180]= -80;
    v[181]= -79;
    v[182]= -78;
    v[183]= -77;
    }
    View Code
  • 相关阅读:
    npm ERR! shasum check failed for
    使用js闭包封装一个原生的模态框
    使用weexplus + vue开发APP的填坑之旅
    weex 中出现 loading无法关闭
    weex create test-app Error: Cannot find module '../package.json'
    flutter 填坑之旅(dart学习笔记篇)
    各种版本的Linux 镜像下载网址
    在vue 项目中嵌入jsp页面
    mahout 推荐引擎的相关介绍,理解,如何应用。(2)
    mahout 推荐引擎的相关介绍,理解,如何应用。(1)
  • 原文地址:https://www.cnblogs.com/lxy8584099/p/13699361.html
Copyright © 2011-2022 走看看