老规矩,先上nmap.....
nmap -sV 10.10.10.142结果如下:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.8 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.7 ((Ubuntu))
139/tcp open netbios-ssn Samba smbd 3.X (workgroup: LAZYSYSADMIN)
445/tcp open netbios-ssn Samba smbd 3.X (workgroup: LAZYSYSADMIN)
3306/tcp open mysql MySQL (unauthorized)
6667/tcp open irc InspIRCd
MAC Address: 08:00:27:3D:15:51 (Oracle VirtualBox virtual NIC)
Service Info: Host: Admin.local; OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 14.84 seconds
一般而言最好上-p-全端口扫描,但是太久了就先放一边。
从扫描结果来看这次开放的端口比较多,基本上比较重要的都有,22端口的openssh应该能找到拒绝服务还有其他用户名枚举等漏洞,80端口apache的版本已经知道了,samba可能存在重大漏洞,mysql试了一下telnet发现不给连,估计是开放在127.0.0.1了吧,6667开放的InspIRCd是一种IRC(Internet relay chat)服务器,用于聊天用,6667是不用TSL的端口号,6697使用加密传输。
接着收集版本信息,可以看看主机漏洞一波。
openssh的可以直接上cve搜,一堆漏洞,不过大多危害都不大,要么利用方式比较苛刻,要么就是拒绝服务攻击这种类型的,在实际中有点鸡肋。
Apache cve搜了一下,也没发现有啥好用的洞而言。
Samba找了一下,发现有一些远程代码执行,但是普遍比较难以利用,版本号不对或者没有exp等等。
InspIRCd找不到exp.
然后整理一下那个目录扫描的情况
这次目录扫描的结果出来很多,具体可以按照返回的响应状态码的不同而进行分类。
对应200状态码的有:
1.Backnode_files,对应后台的一些图片png,css,js文件等等。每张图片可以上binwalk分析一波。
2.wordpress,对应博主的博客页面,wordpress看看有没有应用一些第三方插件,这些插件可能存在一些缺陷漏洞等等,找得到exp就可以进行利用。
3.phpmyadmin登录页面,可能可以进行爆破?
4.info.php,对应了系统以及apache,php版本,路径等多方面的信息。
对应403状态码的主要是phpmyadmin下面对应的文件,一概没权限访问,所以这个没啥作用。
接着web端漏洞进行挖掘,主界面如下:
点击discover以及anticare之后都没反应,因此直接上F12看源代码,没啥收获。
接着上Backnode_files看看图片,每张图片下下来Binwalk一波。
然而并未发现啥玩意,一般而言用binwalk先分析,有东西就用foremost提取,或者不行就直接把后缀该成分析出来的格式再提取有时候还需要用gedit看看有没有隐藏一些东西只是纯粹的文本等等。
wordpress界面尝试了一波xss,发现<script>标签全被过滤地连砸砸都不剩,基本没用啥插件,要打xss比较难
这里顺手介绍学习一个工具,叫做wpscan(wordpress scan),用来扫描wordpress 的版本以及相应的插件,根据不断更新维护的数据库来扫描wordpress的漏洞插件以及缺陷主题,但是这里我并未扫描出啥问题。
扫描结果如下所示:
扫描发现并未发现啥插件,主题也是比较新的。
web端暂时就没啥可以搞的了,接下来拓展一下新思路,从前面扫描到开放的端口来入手。
前面扫描到机器开放了445以及139端口,对应了samba服务,因此直接使用一个叫enum4linux的工具来枚举数据。他在枚举samba信息的时候很有用。
结果如下所示:
可以看到枚举到samba用户名以及密码皆为空。
接下来使用samba服务获取文件,命令如下:
windows下获取共享资源
net use k: \10.10.10.142\share$
linux下获取共享资源
mount -t cifs -o username=' ',password=' ' //10.10.10.142/share$ /mnt
输入命令以后直接上/mnt文件夹查看共享目录,如下:
接下来看看共享文件夹里面有啥东西,下面两个txt并未有啥内容,几个文件夹是打不开的,然后剩下有用的分别是一个deets.txt,内容如下:
然后还有一个就是wordpress文件夹里面有一个wp-config.php里面有mysql的账户密码,如下所示:
利用这个账号密码尝试了一波phpmyadmin的登录界面,发现直接上去了。
进来以后想通过sql执行日志写shell,但是发现并没有权限,想使用select ... into outfile 也不行,同无权限。
那这条路就行不通了。
联想到之前那个wordpress里面提到管理员的名字是togie
以及前面的密码12345再拿到openssh尝试一波。如下:
来到这一步很正常了吧,上py
两个密码都是12345,这样获取到整个root权限。
下面再说一个方法getshell
前面在数据库那里获取的账号密码Admin/TogieMYSQL12345^^去登陆wordpress界面,是可以成功登录的,如下:
来到wordpress的管理页面了,就直接找apperance里面的themes,有一个处理404的php文件,直接编辑该404.php,然后插入php getshell代码上去,接着直接在终端netcat连接,后面就是python pty模块伪终端,然后就是利用内核版本找漏洞提权(CVE-2017-1000112)
这里再推荐一个提权资源:
https://github.com/SecWiki/linux-kernel-exploits
总结:
1.先进行端口扫描,获取端口信息,争取每一个端口服务都能注意到。
2.进行目录爆破,分个查看目录页面,多看看有没有额外信息。
3.利用enum4linux进行samba用户名或者密码的枚举,从这个突破点获取到敏感登录的账号信息。
4.利用获取的账号信息尝试openssh,wordpress,phpmyadmin的登录界面,发现phpmyadmin并未有权限,于是从wordpress直接写shell或者直接从ssh提升到root权限接可以了,这里wordpress写php shell的方法要记住,以后估计还会用到。
参考链接:https://xz.aliyun.com/t/2282
下载链接:https://www.vulnhub.com/entry/lazysysadmin-1,205/#vm