ACTF2020 writeup

ACTF2020 writeup

Pwm

  • 不会

Reverse

  • 题目名称 easyalgorithm

  • FLAG: ACTF{Oolong_milk_tea}

  • 大概就先把文件拖进IDA里面反编译一下,看反编译出来的c代码大概就知道是首先判断输入是否为ACTF{},然后将花括弧中的字符串赋给dest,然后通过4006A6和400792两个函数对dest进行加密,然后将得到的密文和v3后的连续地址上的asc码进行比较

  • 然后进入792函数

  • 发现对密文主要进行加密的就是选中的那一条语句,且发现异或运算的逆运算为异或运算所以将v3后面的先赋给dest然后然dest执行一遍792函数即可

Crypto

  • 题目名称:Column Permutation Cipher

  • FLAG:忘了

  • 好像是矩阵转置吧,大概就把字符串先读入然后依次枚举j,输出str[i%j]=0 1 2 3 4…j;

  • #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e5+10;
    char s[maxn];
    
    
    int main()
    {
        gets(s);
        int t=5;
        for(;t<51;t++){
            int tt=0;
            printf("%d\n",t);
            for(int t1=0;t1<=t;t1++){
                for(int i=0;i<strlen(s);i++){
                    if(i%t==t1){
                        printf("%c",s[i]);
                    }
                }
            }
            puts("");puts("");
        }    
        return 0;
    }
    
  • 题目名称:我的密码本

  • FLAG:忘了

  • emmmm大概替换密码,本来想用字频分析的,但是中间几个连续的太明显了,一看就是I have a dream,接着把每个符号换成对应的字母就行了

  • 题目名称:[bomb or boom](http://actf2020.csuaurora.org/challenges#bomb or boom)

  • FLAG:也忘了

  • emmm5个密码只用破译四个就能拿到最后密码,明显是门限方案,结合题目名称,应该是bloom门限

  • 密码1:培根密码

  • 密码2:盲文

  • 密码3:音符

  • 密码4:放进浏览器f12即可

  • 密码5:beautifulfxxk

  • from Crypto.Util.number import long_to_bytes
    #from Cryptodome.Util.number import *
    a1 =2891369521230520600
    d1 =5539166121540472709
    a2 =5485400237604727152
    d2 =9993590208169240051
    a3 =10305113992248275270
    d3 =23524210813213316809
    a4 =63558232650391605454
    d4 =134070550878039878083
    
    dd = d1*d2*d3*d4
    t1 = pow(dd//d1,d1-2
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值