ssh blukat@pwnable.kr -p2222 (pw: guest)

连接上去看看c的源码

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <fcntl.h>
char flag[];
char password[];
char* key = "3\rG[S/%\x1c\x1d#0?\rIS\x0f\x1c\x1d\x18;,4\x1b\x00\x1bp;5\x0b\x1b\x08\x45+";
void calc_flag(char* s){
int i;
for(i=; i<strlen(s); i++){
flag[i] = s[i] ^ key[i];
}
printf("%s\n", flag);
}
int main(){
FILE* fp = fopen("/home/blukat/password", "r");
fgets(password, , fp);
char buf[];
printf("guess the password!\n");
fgets(buf, , stdin);
if(!strcmp(password, buf)){
printf("congrats! here is your flag: ");
calc_flag(password);
}
else{
printf("wrong guess!\n");
exit();
}
return ;
}

比较password和buf,是的话跳出flag,反之则不是

貌似没有什么突破点,看了别人writeup,发现我们可以把password下载到本地,但是没有读取的权限,是不可能下载到本地,于是看看权限

能拥有读权限的只有root和blukat_pwn  于是推测我们可能在所属组里面

果不其然,确实是在所属组里面,那么就可以读取password的内容

表面上说是没有权限,实际上这就是password的内容,有点掩人耳目,当然你如果已经下载到本地,可以直接vi或者cat里面的内容了

Pl3as_DonT_Miss_youR_GrouP_Perm!!

最新文章

  1. windows 7(32/64位)GHO安装指南(系统安装篇)~重点哦!!~~~~
  2. java--面向对象---访问属性
  3. PHP笔记(PHP中级篇)
  4. JavaScript -- 小试牛刀
  5. iOS之UI--辉光动画
  6. javascript集合的交,并,补,子集的操作实现
  7. 同步灵无线锂电鼠G11-580HX独特“五灵键”
  8. java第三课:分支结构、循环结构
  9. js正则验证两位小数 验证数字最简单正则表达式大全
  10. Nginx阅读笔记(二)之location的用法
  11. 开源企业IM-免费企业即时通讯-ENTBOOST V2014.183 Windows版本号正式宣布
  12. 【消息中间件之RabbitMQ学习】-开篇-001
  13. 【翻译】go memory model
  14. debian安装nodejs
  15. LOJ 2743(洛谷 4365) 「九省联考 2018」秘密袭击——整体DP+插值思想
  16. 021-centos6.5上二进制安装mysql5.7.22
  17. 什么是SQL游标?
  18. 使用着色器在WebGL3D场景中呈现行星表面地形
  19. 洛谷 P3307: bzoj 3202: [SDOI2013] 项链
  20. [Vue]组件——通过$emit为组件自定义事件

热门文章

  1. python3 邮件方式发送测试报告
  2. Druid-代码段-1-5
  3. React 中this.setStat是批量执行的, 它发现做三次是多余的,所以只执行一次
  4. python包matplotlib绘制图像
  5. 关闭Chrome浏览器的广告
  6. CF1253F Cheap Robot(神奇思路,图论,最短路,最小生成树/Kruskal 重构树/并查集)
  7. 一道常被人轻视的web前端常见面试题(JS)
  8. Springmvc配置定时任务注解开发
  9. three.js实现世界3d地图
  10. Jenkins 有关 Maven 的内容