题目信息
解题步骤
nc 连接后,可以直接执行命令,在此我们执行ls后看到了flag文件
cat flag 即可获得flag
文章作者: 末心
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 末心的小博客!
相关推荐

2025-10-26
【BUUCTF】PWN-刷题记录-ciscn_2019_n_1
题目信息 解题步骤 1234567[*] '/home/kali/Desktop/buuctf/ciscn_2019_n_1' Arch: amd64-64-little → 64位小端程序 RELRO: Partial RELRO → GOT表可写(可被劫持) Stack: No canary found → 无栈保护,可溢出 NX: NX enabled → 栈不可执行(不能直接执行shellcode) PIE: No PIE (0x400000) → 地址固定,无ASLR Stripped: No → 符号表未剥离,函数名可见 用 IDA 打开二进制文件,main 函数非常简单: 关键逻辑在 func(): v1[44]:输入缓冲区,位于 [rbp-0x30] v2:float 类型,位于 [rbp-0x4],初始值 0.0 使用 gets(v1) → ...

2025-10-26
【BUUCTF】PWN-刷题记录-rip
题目信息 解题步骤 程序是amd64、小端程序,GOT表在运行时仍然可写,存在GOT覆盖风险,没有栈保护,栈可执行、程序基地址固定 使用ida进行分析: 上述代码中,我们注意: 12char s[15]; // [rsp+1h] [rbp-Fh]gets(s, argv); s 数组大小为 15 字节,位于栈上。 使用了 危险函数 gets():它会无限读取输入直到换行,完全不检查缓冲区边界。 gets(s) 会把你输入的所有字节写到栈上:先写入 s(15字节),接着覆盖 saved rbp(8字节),再覆盖 return address(8字节),后面跟着你继续写的字节都会保存在 return address 之后的栈上(函数返回时 ret 从栈上弹出的就是我们写入的返回地址)。 s 距离 rbp 仅 0xF = 15 字节,而 rbp 上方 8 字节是 返回地址(return address)。 因此,输入超过 15 + 8 = 23 字节 即可覆盖返回地址。 程序还有一个fun函数,调用了system函数,地址为0x401186 程序的system函数,地址为0...

2025-10-26
【BUUCTF】PWN-刷题记录-warmup_csaw_2016
题目信息 解题步骤 和上一题基本一样 123456789101112int __fastcall main(int a1, char **a2, char **a3){ char s[64]; // [rsp+0h] [rbp-80h] BYREF _BYTE v5[64]; // [rsp+40h] [rbp-40h] BYREF write(1, "-Warm Up-\n", 0xAu); write(1, "WOW:", 4u); sprintf(s, "%p\n", sub_40060D); // sub_40060D中,调用system cat了flag write(1, s, 9u); write(1, ">", 1u); return gets(v5);} 1234int sub_40060D(){ return system("cat flag.txt");} v5 是输入缓冲区:gets(v5),...

2025-10-26
【BUUCTF】CRYPTO-刷题记录-Alice与Bob
题目信息 解题步骤 密码学历史中,有两位知名的杰出人物,Alice和Bob。他们的爱情经过置换和轮加密也难以混淆,即使是没有身份认证也可以知根知底。就像在数学王国中的素数一样,孤傲又热情。下面是一个大整数:98554799767,请分解为两个素数,分解后,小的放前面,大的放后面,合成一个新的数字,进行md5的32位小写哈希,提交答案。 注意:得到的 flag 请包上 flag{} 提交 寻找那对“命中注定”的素数给定的数字是: 198554799767 它看起来很大,但在现代计算面前,不过是小菜一碟。 如果这是 RSA 的模数 $n = p \times q$,那么 $p$ 和 $q$ 都是素数,且通常接近 $\sqrt{N}$。 于是我打开 Python,轻声说道:12345import mathN = 98554799767sqrt_N = int(math.isqrt(N))print(f"√N ≈ {sqrt_N}") 所以,我只需要从 313934 附近开始,向下寻找能整除 N 的素数。1234567p = sqrt_Nwhi...

2025-10-27
【BUUCTF】CRYPTO-刷题记录-MD5
题目信息 解题记录根据附件,拿到了一串MD5:e00cf25ad42683b3df678c61f42c6bda flag:flag{admin1}

2025-10-28
【BUUCTF】CRYPTO-刷题记录-Quoted-printable
题目描述 解题步骤下载附件,得到:1=E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6 科普Quoted-Printable(简称 QP 编码)是一种 电子邮件和互联网协议中常用的编码方式,主要用于在 7-bit 安全的传输环境中(如 SMTP 邮件)安全地传输 8-bit 数据(比如非 ASCII 字符、中文、特殊符号等)。 Python 中的编码与解码使用 quopri 模块(标准库) 12345678910111213import quopri# 原始文本(bytes 类型)text = "Hello, 世界!".encode('utf-8')# 编码encoded = quopri.encodestring(text)print("编码结果:", encoded.decode()) # 输出:Hello, =E4=B8=96=E7=95=8C!# 解码decoded_bytes = quopri.decodestring(encoded)decoded_...
公告
学而不思则罔,思而不学则殆







