首页 > 其他分享 >[SWPUCTF 2021 新生赛]re2

[SWPUCTF 2021 新生赛]re2

时间:2023-05-09 12:55:26浏览次数:34  
标签:string SWPUCTF re2 Des ++ break int flag 2021

查个壳:

64位,运行:

进IDA看看:

简单加密函数,不多赘述上脚本就好:

int main(){
    string Des = "ylqq]aycqyp{";
    string flag = "";
    for (int i = 0; i < Des.size(); i++) {
        for (int j = 32; j < 127; j++) {
            if ((Des[i] <= 96 || Des[i] > 98) && (Des[i] <= 64 || Des[i] > 66)) {
                if (j - 2 == Des[i])flag += j;
            } else {
                if (j + 24 == Des[i])flag += j;
            }
        }
    }
    cout << flag << endl;
    return 0;
}

得到一个a{nss_ca{esa{r},看着明显就不对,(不信的话就交一下看),看到每个‘{’前边都有一个a,会不会是多解?(因为我没加break,所以如果多解的话是会出现多一个字符出来)我们把break加上。

int main(){
    string Des = "ylqq]aycqyp{";
    string flag = "";
    for (int i = 0; i < Des.size(); i++) {
        for (int j = 32; j < 127; j++) {
            if ((j <= 96 || j > 98) && (j <= 64 || j > 66)) {
                if (j - 2 == Des[i]){
                    flag += j;break;
                }
            } else {
                if (j + 24 == Des[i]){
                    flag += j;break;
                }
            }
        }
    }
    cout << flag << endl;
    return 0;
}

得到anss_caesar},‘{’没得了,还真是多解,根据惯例,{}内是不会出现‘{’,所以我们把第一个‘a’改成‘{’,就可以了。

最后NSSCTF

标签:string,SWPUCTF,re2,Des,++,break,int,flag,2021
From: https://www.cnblogs.com/TFOREVERY/p/17384561.html

相关文章

  • [SWPUCTF 2021 新生赛]简简单单的解密
    拿到一个.py的文件,查个壳:进入看看是怎么个解密:挺长,感觉还有点像RC4的加密方式(这个不讨论),往下看逻辑:首根据输出,我们能知道,加密后的文档应该是enc,enc又是由crypt而来,crypt又是由cipher而来,而cipher又是由res而来:看看res怎么来的:res可以知道是由flag跟k异或而来的,接着往下看......
  • [SWPUCTF 2021 新生赛]re1
    得到.exe,先查壳:么得壳,64位:运行一下看看:是个字符串的比较:进IDA:简单的一个加密(不多解释了)上个脚本就行:Des='{34sy_r3v3rs3}'flag=''foriinDes:iford(i)==51:flag+=chr(101)eliford(i)==52:flag+=chr(97)else:fla......
  • [SWPUCTF 2021 新生赛]简简单单的逻辑
    得到一个.py文件,一般是没壳的,不过还是要养成习惯,查个壳:意料之中,啥也没有,打开文件:给了我们一个加密逻辑,然后最后一行给了一个结果:那么就是根据上述的逻辑,反解密出flag就好了分析一下上述逻辑:首先对list进行变化得到key的值(怎么变化不用理,因为用不到,为啥因为是异或昂,异或的特......
  • 2021/5/8每日随笔
        今天,用下载了matlab软件,并用matlab编写了0.618直接法编写程序,完成了实验,下午上了不一样的软件工程,玩了两节课,我第一次理解了软件工程的课,这门课好像不是要教编程,而是要教会我们怎么编程注意什么,以后工作注意什么,是在我们进入社会前的新手指导,晚上一如往常的背单词,很迷......
  • 当前主机存在Sudo CVE-2021-3156漏洞:Sudo1.8.23升级1.9.5p2
    Sudo权限绕过漏洞(CVE-2019-14287)Sudo缓冲区溢出漏洞(CVE-2021-3156)根据安全漏洞CVE-2021-3156,受影响的Sudo版本:Sudo版本1.7.7到1.7.10p9、1.8.2到1.8.31p2和1.9.0到1.9.5p1受到影响。sudo官网:https://www.sudo.ws/sudo下载地址:https://www.sudo.ws/getting/do......
  • 2021-2022年度国际大学生程序设计竞赛第10届陕西省程序设计竞赛(正式赛)H-Cute Rabbit
    官方题解:https://blog.csdn.net/qq_62464995/article/details/127493921题目大意给出数组a[i],将a分成两个数组x和y,使得\(\forallx[i]\%y[j]\)都相等(\(|x|,|y|>0\))构造一组\(|y|\)最大的方案n<=1e5,1<=ai<=1e6题解神必结论题先假设a不是全部相等结论1:最小值一定只能全在x......
  • WPS2021 无法加载此加载项程序 解决办法
    我们多次安装WPS后容易导致WPS的默认加载项位置错误,打开word时提示如下错误1.此时可以通过如下步骤解决:开发工具——加载项——禁用——确定即可以正常使用 2.如果需要加载mathtype加载项,则通过加入正确的路径即可解决:添加——mathtype正确的路径——确定3.重新打开word......
  • 2021-2022年度国际大学生程序设计竞赛第10届陕西省程序设计竞赛(正式赛)A-Tree
    官方题解:https://blog.csdn.net/qq_62464995/article/details/127493921题目大意给出一棵边权为1的树,构造排列p,使得①p[1]=1②dis(p[i],p[i+1])<=k题解神必防ak题当k=1时,显然只能是从1开始的一条链当k>=3时,一定有解,考虑构造:把树上的点按层黑白黑白染色,dfs遍历整棵树,在第......
  • Java反射--2021面试题系列教程(附答案解析)--大白话解读--JavaPub版本
    >Java反射--2021面试题系列教程(附答案解析)--大白话解读--JavaPub版本前言序言再高大上的框架,也需要扎实的基础才能玩转,高频面试问题更是基础中的高频实战要点。适合阅读人群Java学习者和爱好者,有一定工作经验的技术人,准面试官等。阅读建议本教程是系列教程,包含Java基础,JVM,容器,......
  • 爬虫 202107【JavaPub版】
    写于2021071117:10北京朝阳区@[toc]方法:首先下载mitproxy,pip安装方法:>pipinstallmitmproxy基本使用方法:给本机设置代理ip127.0.0.1端口8001(为了让所有流量走mitmproxy)具体方法请百度。启动mitmproxy。windows:>mitmdump-p8001Linux:>mitmproxy-p80012.修改chromedriver......