zoukankan      html  css  js  c++  java
  • BUUCTF Re部分wp(九)

    [INSHack2017]secure-garden-shed-v1

    给了两个文件sgs-exec-release,lock.sgsc

    尝试一下发现使用方法

    ./sgs-exec-release lock.sgsc

    看了下ida,逻辑应该是在lock.sgsc里,直接动调搜索字符串

    [INSHack2018]Tricky-Part2

    main开头是个

    这个abort_trap才是要分析的函数

    flag在check里

    [INSHack2017]proprietary-cctv-software

    pyc,运行显示

    RuntimeError: Bad magic number in .pyc file

    不过现在uncompyle6可以直接逆,逆完发现使用了PyQt5,先下载

    pip3 install PyQt5

    看里面代码,成功会运行

    def activation_passed(self):
            self.lab_result.setText('Activation is a success !
    %s' % self.finalize())
            self.show()

    所以改成

    def activation_failed(self):
            self.lab_result.setText('Activation is a success !
    %s' % self.finalize())
            self.show()

    运行后直接点取消就行了

    [FBCTF2019]go_get_the_flag

    go逆向,去了符号表

    动调一直跟,找到一处判断长度为18

    往下找,当经过一个函数时,会输出Wrong

    这里rdx的值挺奇怪,感觉像是字符串,就去找了找赋给rdx值的地方

    这里就是要输入的值,输入得flag

    [watevrCTF 2019]Hacking For Vodka

    简单题,main有处反调

    关键函数是下面这个,找到比对处,发现是明文比对

    直接patch,输出flag

    [watevrCTF 2019]Watshell

    可以看到输入由空格分离的数字组成,跟进去发现关键部分是个递归,由此直接爆破 

    #include<stdio.h>
    
    __int64_t sub(__int64_t a1, __int64_t a2, __int64_t a3)
    {
      __int64_t result; 
      __int64_t v4; 
    
      v4 = a1 % a3;
      if ( !a2 )
        return 1LL;
      if ( a2 == 1 )
        return a1 % a3;
      if ( !(a2 & 1) )
        return sub(v4 * v4 % a3, a2 / 2, a3) % a3;
      result = a2 % 2;
      if ( a2 % 2 == 1 )
        result = v4 * sub(v4, a2 - 1, a3) % a3;
      return result;
    }
    
    int main(void){
        __int64_t result = 0;
        char c[25]="give_me_the_flag_please";
        for(int j=0;j<23;j++){
            for(int i=0;i<200;i++){
                result = sub(i,0x71,0x8f);
                if(result == c[j]){
                    printf("%d ",i);
                    break;
                }
            }
        }
        return 0;
    }

     

  • 相关阅读:
    Delphi 拖动
    Unknown picture file extension
    鼠标指针形状
    C_FD_PhysRDBMSKinds
    delphichromiumembedded
    delphi使用 DockForm DesignEditors F2613 Unit 'DockForm' not found
    TBitConverter
    sql 存储过程返回值 变量名
    XE7 数据库独立运行需要的文件
    C++Builder 内存泄露检测
  • 原文地址:https://www.cnblogs.com/harmonica11/p/13545052.html
Copyright © 2011-2022 走看看