[BUUCTF]PWN——[BJDCTF 2nd]test

[BJDCTF 2nd]test

步骤
在这里插入图片描述

  1. 根据题目,ssh连接一下靶机
    在这里插入图片描述
  2. 登录成功后,ls看一下当前目录下的文件,根据提示可知,我们没法直接获取flag字符串,但是我们可以读取test的源码,
    在这里插入图片描述
    test.c 代码
    在这里插入图片描述
    可以看到这个程序在执行系统调用system的时候设置了过滤,过滤了“n、e、p、b、u、s、h、i、f、l、a、g、|、/、$、`、-、<、>、.”这些字符
    我们去查看一下/usr/bin(存放命令的目录)这个目录里过滤了这些字符后还有那些命令是允许我们使用的

因为一般命令里是不带g之后的这些字符的,所以就筛选一下不包含过滤字符的命令
在这里插入图片描述
过滤出来了这些命令,去运行test程序,输入这些命令查看情况,由于x86_64看起来比较正常,其他命令看起来很奇怪,我就先去试了一下x86_64,成功读出了flag
在这里插入图片描述

原文地址:https://www.cnblogs.com/xlrp/p/14273695.html