zoukankan      html  css  js  c++  java
  • 13年360举办的某几个逆向题的简单分析

    逆向1:bmp图片修复

    首先有一个坑,winhex搜索key就能找到一个key,不过当然false

    下面就是解题思路:

    094fce+36 = 094f98

    修改1:BM标识,在windows的标识

    修改2:0xA处的大小为固定值0x0036


    逆向2: c#破解
     
    ILlasm或者reflector静态调试软件
    reflector直接就可以反编译出源码,代码没加混淆以及反调试或者壳,
    所以很简单。
     
    reflector反编译结果:
    private void btn_ok_Click(object sender, EventArgs e)
    {
        if (this.textBox_Pass.Text == "")
        {
            MessageBox.Show("请输入密码!");
        }
        else
        {
            char[] array = this.textBox_Pass.Text.Replace(".", "-").Replace("7", "t").Replace("4", "a").Replace("1", "I").Replace("0", "o").Replace("O", "0").ToCharArray();
            Array.Reverse(array);
            string s = new string(array);
            s.ToUpper();
            char[] chArray2 = Convert.ToBase64String(Encoding.GetEncoding("UTF-8").GetBytes(s)).ToCharArray();
            Array.Reverse(chArray2);
            string str2 = new string(chArray2);
            string str3 = new string(Convert.ToBase64String(Encoding.GetEncoding("UTF-8").GetBytes(str2)).ToCharArray());
            if (str3 == "PTBpVGxSM1lqTWtVaE4yU0pOM1J2Qnph")
            {
                MessageBox.Show("密码正确!密码就是Key!", "成功");
            }
            else
            {
                MessageBox.Show("密码错误!", "失败");
            }
        }
    }
    

      

    字符转换:

    小写字母o换成数字0

    数字0换成大写0
    _   .
    t   7
    a   4
    I   1
     
    PTBpVGxSM1lqTWtVaE4yU0pOM1J2Qnph
    解密得到  =0iTlR3YjMkUhN2SJN3RvBza
    逆序       azBvR3NJS2NhUkMjY3RlTi0=
    解密得到  k0oGsIKcaRC#cteN-  
    逆序       -Netc#CRacKIsGo0k  
    最后变换得到key
    key: .Netc#CR4cK1sG0Ok
     

     
     
    逆向3:PE文件修复+异常的构造
     
    经过分析我们只需在4010C2处构造一个异常即可,这里我构造了一个访问异常。
    SetUnhandledExceptionFilter函数设置了一个对异常的处理,参数就是异常处理函数地址。
     
     
    异常处理函数:
     
     key就是MessageBox弹出框的内容。
     
     
  • 相关阅读:
    java生成json字符串的方法
    JSON的三种解析方式
    Android Studio你不知道的调试技巧
    Android 打开URL
    build.gradle中引入jar
    Spark RDD/Core 编程 API入门系列之map、filter、textFile、cache、对Job输出结果进行升和降序、union、groupByKey、join、reduce、lookup(一)
    NovaMind *的安装、和谐破解到永久使用
    小Q书桌的下载、安装和使用
    作业提交过程分析(源码)
    SparkContext的初始化过程分析(源码)
  • 原文地址:https://www.cnblogs.com/Joy7/p/3230653.html
Copyright © 2011-2022 走看看