SCTF2021 pwn Christmas Song 出题思路+预期解

SCTF2021 pwn Christmas Song 出题思路+预期解

sctf2021 pwn出题思路

文章目录

  • SCTF2021 pwn Christmas Song 出题思路+预期解
    • 题目描述
    • Slang-christmas设计思路 1
      • 设计
      • 目录结构
      • 语法
      • 运行
    • docker
    • 思路

题目描述

一个真正的黑客可以在短时间内学习一个新语言的简单用法, 你可以在一天内学会圣诞歌么?注意播放圣诞歌不能说话!(flag范围dic = string.ascii_letters + string.digits + "}")(slang 圣诞特别版 请检查源码包 https://drive.google.com/file/d/1uKjp2MGWdLWcwx4wfnpsMNEzXacb0ZbO/view?usp=sharing )
A real hacker can learn the simple usage of a new language in a short time, can you learn Christmas songs in a day? Note that you can’t talk when playing Christmas songs! (flag range dic = string.ascii_letters + string.digits + "
}) (slang Christmas Special Edition Please check the source code package https://drive.google.com/file/d/1uKjp2MGWdLWcwx4wfnpsMNEzXacb0ZbO/view?usp=sharing )

题目分值:625

解题人数:13

题目源码:slang -christmas,

题目文件

Slang-christmas设计思路 1

设计

语言源码为*.slang文件,编译后的opcode文件为*.scom文件,

提供编译,运行, 反汇编三种操作。

void help(){
   
    puts("Slang v0.01");
    puts("compile file:\t\t-c [filename.slang]");
    puts("decompile file:\t\t-d [filename.scom]");
    puts("run file\t\t-r [filename.scom/filename.slang]");
}

int main(int argc, char * argv[]){
   
    if (argc == 1){
   
        help();
    }

    for(int i=1; i<argc; i+=2){
   
        char * sig = argv[i];
        if (sig == NULL){
   
            return 1;
        }
        if (!strcmp(sig, "-c")){
   
            FLAG = COMPILE;
        } else if (!strcmp(sig, "-g")){
   
            FLAG = DEBUG;
        } else if (!

你可能感兴趣的:(pwn,题目的整理,安全)