11. CTF综合靶机渗透(四)
运行环境
Virtualbox (二选一)
Vnware Workstation player
通关提示
Enumeration is key
Try Harder
Look in front of you
Tweet @togiemcdogie if you need more hints
ip探测
本次实验攻击机为kali

由于我们的目标与我们的物理机位于同一网段,所以我们要做的就是先获取目标机器的地址。在内网主机探测中,可以使用netdiscover来进行。

同样我们也可以用nmap神器来探测

综上我们可以获得本次的试验机ip为 : 192.168.1.110
端口扫描
我们需要知道目标机器上运行了哪些服务,利用某些服务的漏洞或配置不当来进行攻击,所以我们先进行端口扫描。
使用masscan扫描
masscan 192.168.0.110 -p 1-10000 --rate=1000

或者使用nmap扫描
nmap -T4 -A -v 192.168.1.110 -p 0-10000

对比可发现masscan扫描端口的速度比nmap快很多,但是想要知道端口所运行服务的具体信息,就要用到nmap了。
根据扫描结果可知目标机开启了22、80、139、445、3306、6667这几个端口。
我们先从web入手。我们先使用 dirb 或者 御剑 来爆破目标存在的目录
御剑:

dirb:

扫出来很多有用的目录,比如/phpmyadmin , /apache , /wp , /test , robots.txt 等
我们趁机做一波信息搜集,使用curl获取目标web的banner信息,发现使用的中间件是apache2.4.7,目标系统为Ubuntu。

我们尝试访问 robots.txt ,看一下网站目录

经过访问,发现只有最后一个有价值

发现用处不大.....
经过御剑二级域名扫描


然后经过一波访问,发现了wordpress登陆页面,不过尝试弱口令,万能密码均失败
同样phpmyadmin也是这样,不过我们发现靶机是用wordpress+apache+php+mysql搭建的
,网上的利用方法很多,也可以用kali自带的wordpress检测工具
wpscan详细用法:https://blog.csdn.net/feier7501/article/details/9750919
我这里用:
wpscan -u 192.168.1.114/wordpress/ -e u,v,p


默认用户名正在使用,所以默认密码也可能被使用。
唯一的博客帖子是togie

尝试admin:admin, admin:togie, admin:mynameistogie, admin:password
发现都不行,我想现在是时候看看其他服务,看看那里是否有什么。
SMB可能有一些有趣的信息,我知道它正在运行Linux
所以我使用了enum4linux
enum4linux
描述:Windows平台上曾经出现过一个第三方的信息枚举工具 enum.exe,其利用SMB协议枚举Windows系统和SAMBA服务,以此来获得目标系统大量的重要信息,其枚举结果可能包含目标系统的用户帐号、组帐号、共享目录、密码策略等机密重要信息。enum4linux作为其Linux平台的复刻作品,全面兼容了enum.exe的所有功能。对于安全防护不足的SMB/SAMBA服务,enum4linux可直接枚举重要信息,甚至帮助我们发现潜在漏洞的存在。为充分利用其功能,使用者需要对NetBIOS和SMB协议有所了解。
enum4linux是Kali Linux自带的一款信息收集工具。它可以收集Windows系统的大量信息,如用户名列表、主机列表、共享列表、密码策略信息、工作组和成员信息、主机信息、打印机信息等等。该工具主要是针对Windows NT/2000/XP/2003,在Windows 7/10系统,部分功能受限。总的来说,一个工具可以获取这么多的信息,也算非常强大了。

发现了这一句:

开放windows的smb协议讲解:https://blog.csdn.net/ZiXuanFY/article/details/52513512
我们可以用简单的方法尝试连接SMB服务器:
smbclient //192.168.1.114/share$

然后我们就需要找到数据库账号密码



顺利得到数据库账号密码
思路二:
windows下获取共享资源
net use k:\\192.168.1.110\share$
linux下获取共享资源
mount -t cifs -o username=' ', password=' ' //192.168.1.110/share$ /mnt

我们查看/mnt

下面就需要找到数据库账号密码:


所以我们尝试用上面获取的mysql账号密码去登录phpmyadmin,但是发现没一个表项可以查看。

不过不要紧,上面还有一个密码是12345,而且之前我们登录WordPress页面的时候,页面显示My name is togie.,
所以我们可以用账号:togie 密码:12345尝试登录ssh,发现可以成功登录。

由于我们知道密码是12345,所以可以直接提权

有了root权限,我们就有权限查看目标文件/root/proof.txt

这样就算完成了整个游戏了。这里刚好togie有root权限,所以我直接用sudo su切换到root权限,但是如果togie没有root权限,那么我们就需要通过其他方式来提权了。
思路二:
通过账号:Admin 密码:TogieMYSQL12345^^登录WordPress控制面板,向404.php页面模板插入PHP反弹shell的代码。

.....虚拟机突然蹦了,但是操作继续(借用别人的图):

出现no tty present and no askpass program specified,刚好目标机有python环境,所以我们导入Python的pty模块。
python -c 'import pty; pty.spawn("/bin/sh")'
但是我们不知道www-data的密码,所以接下来就要进行提权,先来看一下目标机的详细信息

所以用CVE-2017-1000112提权即可,但是目标机上没有gcc,这时候,我们可以本地搭建和目标机一样的环境,在本地编译好提权exp后,在目标机器上运行即可。
dirb安装方法(kali已自带)

参考链接:
VulnHub Walk-through – LazySysAdmin: 1
LazySysAdmin Vulnerable Machine Walk-through
11. CTF综合靶机渗透(四)的更多相关文章
- 21. CTF综合靶机渗透(十四)
靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...
- 22. CTF综合靶机渗透(十五)
靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...
- 18. CTF综合靶机渗透(十一)
靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...
- 17. CTF综合靶机渗透(十)
靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...
- 20. CTF综合靶机渗透(十三)
靶机说明: Wellcome to "PwnLab: init", my first Boot2Root virtual machine. Meant to be easy, I ...
- 14. CTF综合靶机渗透(七)
靶机说明 NinevehV0.3.7z是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.0.150) 目标 Boot to root:获得root权 ...
- 13. CTF综合靶机渗透(六)
靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.110.140),需要将虚拟机网卡设置为host-only方式组网,并 ...
- 9. CTF综合靶机渗透(二)
靶机说明 Welcome to the world of Acid. Fairy tails uses secret keys to open the magical doors. 欢迎来到酸的世界. ...
- 25. CTF综合靶机渗透(17)
靶机链接 https://www.vulnhub.com/entry/the-ether-evilscience,212 运行环境 本靶机提供了VMware的镜像,从Vulnhub下载之后解压,运行v ...
随机推荐
- sql优化,索引学习
- Java -- Swing 组件使用
1. 示例1 public class Main { JFrame f = new JFrame(); Icon okIcon = new ImageIcon("/home/test/sta ...
- Python的进度条的制作
import sys,time #导入模块 for i in range(50): #进度条的长度 sys.stdout.write("#") #进度条的内容,这里要注意了,pyc ...
- jQuery应用之eraser.js使用,实现擦除、刮刮卡效果
jquery.eraser是一款使用鼠标或触摸的动作来擦除画布显示真正图片的插件.jquery.eraser插件的原理是用一个画布遮住图片,然后根据触摸或鼠标输入来擦除画布显示图片,您可以在参数中指定 ...
- Centos7部署NFS
server1:192.168.1.189 ###客户端 server2:192.168.1.190 ##服务端 1.首先创建共享目录. mkdir -p /data/share 安装nfs ...
- python习题-注册用户程序
把上周的注册程序改一下,用字典保存# 字典格式如下:# {# "niuhanyang":{"passwd":"123456","r ...
- codeforces 650D D. Image Preview (暴力+二分+dp)
题目链接: http://codeforces.com/contest/651/problem/D D. Image Preview time limit per test 1 second memo ...
- linux命令学习笔记(50):crontab命令
前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个 ...
- Hibernate - 设置隔离级别
JDBC 数据库连接使用数据库系统默认的隔离级别. 在 Hibernate 的配置文件中可以显式的设置隔离级别. 每一个隔离级别都对应一个整数: 1. READ UNCOMMITED2. READ C ...
- Java 网络通信(TCP/UDP)
1.InetAdress类 与 Socket类 >InetAdress >Socket 2.TCP/IP协议簇 客户端: 创建 Socket:根据指定服务端的 IP 地址或端口号构 ...