• 2020/5/19 BUU_[ACTF新生赛2020]usualCrypt


    下载下来,exe扔进去看看有没有壳:

    没有,运行一下看看是干啥的:

    很普通的界面,输入flag。

    扔进IDA分析一波:

    main函数主体也比较简单,输入——处理——判断。

    我们进入sub_401080看看,这个函数是将我们输入的v10进行加密,然后存到v5里面。

    加密主体跟base64差不多,但是注意这里有两个函数,第一个函数:

    这个函数是将base64表处理。就是一个交换位置的函数。他将整个表分成了地址相连的两个数组。把两个数组的第6-14位进行交换。

    交换完毕后是这个样子:ABCDEFQRSTUVWXYPGHIJKLMNOZabcdefghijklmnopqrstuvwxyz0123456789+/

    最后这里还有另一个函数:

    这个函数是大小写转换:

    把原数据zMXHz3TIgnxLxJhFAdtZn2fFk3lYCrtPC2l9转化成:

    ZmxhZ3tiGNXlXjHfaDTzN2FfK3LycRTpc2L9

    那么我们倒退一下,因为base64是将3个8位数据转化成4个6位数据,我们不考虑过程,只看结果即可,将被交换的18个字母代入进去:

    ZmxhZ3tiGNXlXjHfaDTzN2FfK3LycRTpc2L9

    ZmxhZ3tiQXNlNjRfaDJzX2FfU3VycHJpc2V9

    找个在线网站解密一下:

    最后bb两句:

    不学py真的不行了,c语言实现一些功能有些麻烦,需要这种更高效的语言了。

    暗恋了四年的人想跟我在一起,开心!

  • 相关阅读:
    java类实现 指定网站信息采集
    通过jxl.jar 读取、导出excel的小例子
    SQL使用CASE WHEN THEN
    动态查询的实现
    Oracle 查询存储过程 做横向报表
    文本信息 生成二维码 例子
    将对象转换为指定的Map
    eclipse 插件大全
    让人看了舒服的清爽颜色搭配CSS
    spring 定时任务 实现
  • 原文地址:https://www.cnblogs.com/DorinXL/p/12918813.html
Copyright © 2020-2023  润新知