[FireshellCTF2020]Caas 题解


打开题目,看起来似乎是一个在线运行代码的页面。

尝试python、PHP、NodeJS等,最后发现是C @_@

话说学web到现在还是第一次碰到跟C有关的题目,有点小激动,毕竟从高中就开始写的老熟人了。

运行下正常代码

#include<stdio.h>
int main()
{
    printf("1");
    return 0;
}

得到一个无后缀名文件,在win下改.exe后缀名无法运行,在linux下也无法正常运行

查看下文件编码,因为不是学misc的也没看出来什么端倪。

既然正确代码不行,那么改变思路,考虑编译出错的代码。C语言有个很有意思的特性:若include包含的头文件中存在错误,错误部分会在编译的Error中回显出来。我们尝试利用这个特性,读取flag

#include“/flag”
int main()
{
    printf("1");
    return 0;
}

秒了

声明:大K|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - [FireshellCTF2020]Caas 题解


I'm scared this is all i will ever be...I feel trapped in my own life...I think i've figured it out but in reality i'm as lost as ever...I wish i could choose the memories that stay...please,stay.