运行环境

  • 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

 wpscan发现了一系列潜在的漏洞,但我喜欢简单地开始。

默认用户名正在使用,所以默认密码也可能被使用。

唯一的博客帖子是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综合靶机渗透(四)的更多相关文章

  1. 21. CTF综合靶机渗透(十四)

    靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...

  2. 22. CTF综合靶机渗透(十五)

    靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...

  3. 18. CTF综合靶机渗透(十一)

    靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...

  4. 17. CTF综合靶机渗透(十)

    靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...

  5. 20. CTF综合靶机渗透(十三)

    靶机说明: Wellcome to "PwnLab: init", my first Boot2Root virtual machine. Meant to be easy, I ...

  6. 14. CTF综合靶机渗透(七)

    靶机说明 NinevehV0.3.7z是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.0.150) 目标 Boot to root:获得root权 ...

  7. 13. CTF综合靶机渗透(六)

    靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.110.140),需要将虚拟机网卡设置为host-only方式组网,并 ...

  8. 9. CTF综合靶机渗透(二)

    靶机说明 Welcome to the world of Acid. Fairy tails uses secret keys to open the magical doors. 欢迎来到酸的世界. ...

  9. 25. CTF综合靶机渗透(17)

    靶机链接 https://www.vulnhub.com/entry/the-ether-evilscience,212 运行环境 本靶机提供了VMware的镜像,从Vulnhub下载之后解压,运行v ...

随机推荐

  1. Hive split分割后获取最后一段

    ----------------------------------------- 如果只看解决方法,直接看最后... ---------------------------------------- ...

  2. MySQL中NOT IN语句对NULL值的处理

    与使用in时不同: 在使用in 时: SELECT COUNT(name) FROM CVE WHERE name NOT IN ('CVE-1999-0001', 'CVE-1999-0002'); ...

  3. 分享知识-快乐自己:Spring切入点的表达式和通知类型

    1.切入点的表达式 表达式格式: execution([修饰符] 返回值类型 包名.类名.方法名(参数)) 其他的代替: <!-- 完全指定一个方法 --> <!-- <aop ...

  4. WCF的宿主

    接下来继续WCF(网上的方法)(实例) 1.无废话WCF入门教程一与无废话WCF入门教程二(http://www.cnblogs.com/iamlilinfeng/archive/2012/09/25 ...

  5. codeforces 612D The Union of k-Segments (线段排序)

    D. The Union of k-Segments time limit per test 4 seconds memory limit per test 256 megabytes input s ...

  6. linux命令学习笔记(59):rcp命令

    rcp代表“remote file copy”(远程文件拷贝).该命令用于在计算机之间拷贝文件.rcp命令有两种格式.第一种格式用于文件到文件的拷贝:第二种格式用于把文件或目录拷贝到另一个目录中. . ...

  7. [BZOJ2780][SPOJ8093]Sevenk Love Oimaster

    bzoj luogu 题面 给定n个模板串,以及m个查询串. 依次查询每一个查询串是多少个模板串的子串. sol 广义后缀自动机裸题? 先建出\(SAM\),然后记录一下每个节点分别在多少个模板串里出 ...

  8. 使用 Anthem.NET 的经验小结

    1. 不依靠 Panel 来做省事的区域性 Ajax. 2. 控件不要图偷懒设置 AutoUpdateAfterCallBack = true. 而是每次需要更新的时候指定 UpdateAfterCa ...

  9. 向vivi中加入命令

    在vivi的lib/command.c中添加自己的命令 核心数据结构user_command. typedef struct user_command { const char *name;      ...

  10. [转]Google开源Leak Finder—用于检测内存泄漏的JavaScript工具-----可惜,暂时打不开google的网站,下载不了

    近日,Google开源了Leak Finder,这款工具可以查看JavaScript应用的堆,进而发现内存泄漏. 作为一门垃圾收集语言,JavaScript并不会出现常见的内存泄露情况,特别是像C++ ...