渗透测试实用指南

2018-12-17-Vulnhub渗透测试实战writeup(

2018-12-19  本文已影响23人  最初的美好_kai

这次先截图首页


picture

老规矩...nmap+dirbuster

# Nmap 7.01 scan initiated Mon Dec 17 15:03:22 2018 as: nmap -A -sV -oN test.xml 192.168.110.136
Nmap scan report for 192.168.110.136
Host is up (0.0032s latency).
Not shown: 997 closed ports
PORT    STATE SERVICE VERSION
22/tcp  open  ssh     OpenSSH 5.9p1 Debian 5ubuntu1.10 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   1024 68:60:de:c2:2b:c6:16:d8:5b:88:be:e3:cc:a1:25:75 (DSA)
|   2048 50:db:75:ba:11:2f:43:c9:ab:14:40:6d:7f:a1:ee:e3 (RSA)
|_  256 11:5d:55:29:8a:77:d8:08:b4:00:9b:a3:61:93:fe:e5 (ECDSA)
80/tcp  open  http    Apache httpd 2.2.22 ((Ubuntu))
|_http-server-header: Apache/2.2.22 (Ubuntu)
|_http-title: Zico's Shop
111/tcp open  rpcbind 2-4 (RPC #100000)
| rpcinfo: 
|   program version   port/proto  service
|   100000  2,3,4        111/tcp  rpcbind
|   100000  2,3,4        111/udp  rpcbind
|   100024  1          48009/udp  status
|_  100024  1          59320/tcp  status
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Mon Dec 17 15:03:32 2018 -- 1 IP address (1 host up) scanned in 9.90 seconds

可以看到开放22端口,80,111应该是远程进程调用.
然后是dirbuster,但是都是发现一些图片什么的,没发现有啥有价值的信息
只能用dirb试一下喽


p

dbadmin是一个数据库登录界面,tools是一些图片.
然后看下那个页面,发现一个LFI漏洞.


tu
从passwd文件中可以看到有两值得注意的用户zico和ROOT
回到dirb爆破出来的后台数据库管理界面,进行一波爆破
p
弱口令是admin,直接就进去了.

是个数据库管理界面来着,进去以后以为需要执行sql语句反弹shell,但是不知道为啥老是执行失败,最后看一下,其实没必要啊,应该先看看有什么信息再说..



somd5查了一波那个root的MD5,解密出来是'34kroot34'
正常应该是openssh登录密码了吧.然后试了一下全都失败了,什么鬼....
然后这里可以有几个思路,一个是利用SQL语句写日志反弹shell,但是需要有root权限,一个是直接select ...into outfile,但是也执行不成功,所以只能看看怎样去利用这个平台了.
直接searchsploit phpLiteAdmin 1.9.3试试.

发现一个远程php代码注入的漏洞,直接上exploit-db.com看看这个玩意

poc跟我们说要先创建一个数据库,然后在新表的默认值里面注入要执行的php代码,所以试试反弹shell喽
p
我在一台机器上开放了apache服务,放了一个php反弹shell代码,然后让他数据库下载下来,直接运行.
p
然后利用LFI的漏洞包含运行一下,就反弹回来了.
p

这里隐藏了一个深坑,操作都是这样的,但是就是反弹不回来,经过测试网卡没问题,反复抓包后发现其实远策代码注入是成功的,但是就是无法建立连接,往往都是一个syn ack过来就直接被rst了,折折腾腾了一天,最后试出是我监听的使用过程有问题,啥问题呢,就是netcat不能单纯只是-l直接监听,而是需要加个-p很明确的制定端口才能顺利建立连接(以后最后随时养成这种习惯来着.....),然后就顺利建立连接了....
进来以后自然地想看看配置文件,切换到mysql所在目录以后发现很多都是没权限看的,但是由于前台有wordpress,所以会有想看看wp-config的想法.
直接find / -name wordpress接切换到wordpress目录,查看一波配置文件就可以发现zico的账户名和密码,猜测应该是openssh的登录?测试一波果然成功了.


zico
登上以后一波闲逛,发现啥屁都没有,于是只能看看walkthrough了,发现大佬们都是用dirtycow,科普一下dirtycow是有版本要求的.
p
需要内核版本小于3.9(看了一下我的ubuntu都4.15了....)
所以就选了个40839.c看了下,walkthrough说是可以修改里面的作者,后面生成的username就是你修改成的.
然后放在apache下下载到目标机器,直接gcc编译,编译要按照要求来
p
这是开头的说明来着...
p
这样就生成一个新的root级别用户了.
p
自此结束....
人生第一次用dirtycow,京藏.....

总结一下整条思路:
先nmap以及dirb发现后台数据库登录目录...
接着弱口令...
然后对后台管理软件本身php remote code injection漏洞进行利用...
然后直接getshell以后常规操作,查看配置文件获取密码,以zico登录
后面第一次dirtycow,提权了一波.....
踩到的大坑,以后netcat一定要nc -lp 7777.....
END

上一篇下一篇

猜你喜欢

热点阅读