windows提权之前的信息收集
0x00 基本信息
-获取主机名:hostname或者echo %COMPUTERNAME%
-获取所属域信息:systeminfo
获取环境变量:set
0x01 获取系统安装的软件信息
-导出注册表信息:reg export HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall reg.txt
-匹配出注册表信息中的软件:find "DisplayName" reg.txt |find /V "ParentDisplayName" > tmplist.txt
-获得最终结果:for /f "tokens=2 delims==" %%a in (tmplist.txt) do echo %%a >> software.txt
0x02 获取系统补丁情况
-获取完整的补丁信息:wmic qfe list
0x03 获取系统注册的服务信息
-从服务信息中可以看出本系统提供哪些服务,针对不同的服务器有不同的利用方式: sc query state= all
0x04 获取在线主机信息
通常我们获取在线主机的方式是扫描IP段,在域的内网中我们可以通过一条命令获取主机在同一网段或者有联系的主机列表,命令如下:net view
0x05 收集本地用户和组信息
-获取本地用户组:net localgroup
获取本地用户:net user
获取本地管理员信息:net localgroup administrators
0x06 获取本地共享信息
-本地共享目录也是我们需要关注的目录,这里面可能会有很多对我们提升权限有帮助的重要文件。命令如下:
net view /a \%COMPUTERNAME%
0x07 获取IP信息
-这个命令结果中可以大概看出内网的网络环境、dns服务器IP、域名信息等,命令如下:ipconfig /all
0x08 获取本地端口开放与连接信息
这里可以看出本地系统开放了哪些端口,大概看出提供哪些服务以及有哪些内网主机与本机进行数据交流,这里也可以看出一些内网中存活的主机列表。命令如下:netstat -ano
这两条命令必须在系统权限下才可以执行,否则会提示拒绝访问。
0x09 查看本地的计划任务
从计划任务中我们可以了解,这台主机每天做哪些任务,或者当前用户经常做哪些操作,甚至可以通过计划任务信息,可以获取到用户另外的帐号密码信息。命令如下:at或schtask
0x10 列出iis的站点
-在安装了iis服务的系统上,我们可以执行以下命令来获取站点信息:%windir%\system32\inetsrv\AppCmd.exe list site
0x11 保存系统上所有注册表信息
这几个命令比较暴力,有时候我们需要多次查询注册表信息,这样就需要执行很多条命令,我们可以把系统的所有注册表信息dump下来,本地分析,可以尽量减少执行命令的次数,减少日志量,减少被发现的几率:
reg export HKLM hklm.reg
reg export HKCU hkcu.reg
reg export HKCU hkcr.reg
reg export HKCU hku.reg
reg export HKCU hkcc.reg
0x12 获取系统日志信息
日志信息不管在任何系统上都是非常重要的,所以在Windows信息收集方面,收集日志信息是必不可少的操作,获取日志的方式有两种,一种是可以将系统的日志复制回本地分析,一种是使用Windows官方的工具将日志导出然后保存到本地。
复制日志文件:
copy C:\Windows\System32\winevt\Logs\System.evtx
copy C:\Windows\System32\winevt\Logs\security.evtx
copy C:\Windows\System32\winevt\Logs\application.evtx使用工具导出:
..\psloglist -x system > system.log
..\psloglist -x security > security.log
..\psloglist -x application > application.log
windows提权之前的信息收集的更多相关文章
- 小白日记26:kali渗透测试之提权(六)--收集敏感信息,隐藏痕迹
提权后操作 提权之后,要收集目标系统的重要信息LINUX /etc/resolv.conf #查看DNS配置,是否可以进行DNS篡改或劫持 /etc/passwd #存放账 ...
- 「白帽黑客成长记」Windows提权基本原理(下)
上一篇文章我们介绍了信息收集方法和WMIC,今天我们将跟随作者深入学习Windows提权基本原理的内容,希望通过这两篇文章的讲解,大家能够真正掌握这个技能. 推荐阅读:「白帽黑客成长记」Windows ...
- 「白帽黑客成长记」Windows提权基本原理(上)
我们通常认为配置得当的Windows是安全的,事实真的是这样吗?今天让我们跟随本文作者一起深入了解Windows操作系统的黑暗角落,看看是否能得到SYSTEM权限. 作者将使用不同版本的Windows ...
- [转帖]「白帽黑客成长记」Windows提权基本原理(下)
「白帽黑客成长记」Windows提权基本原理(下) https://www.cnblogs.com/ichunqiu/p/10968674.html 提权.. 之前还在想 为什么 我的 sqlserv ...
- [转帖]「白帽黑客成长记」Windows提权基本原理(上)
「白帽黑客成长记」Windows提权基本原理(上) https://www.cnblogs.com/ichunqiu/p/10949592.html 我们通常认为配置得当的Windows是安全的,事实 ...
- Windows提权小结
摸鱼的时候,想想内网这部分还有什么地方适合水一下,翻翻往期,开始填坑 总结一下Windows提权的部分,以后有时间再补一下Linux提权 这仍然是一篇思路总结类的随笔,具体细节内容不展开,也展开不了. ...
- 2017-2018-2 20155315《网络对抗技术》免考五:Windows提权
原理 使用metasploit使目标机成功回连之后,要进一步攻击就需要提升操作权限.对于版本较低的Windows系统,在回连的时候使用getsystem提权是可以成功的,但是对于更高的系统操作就会被拒 ...
- 35.windows提权总结
本文参考自冷逸大佬的博客,源地址在这里:https://lengjibo.github.io/windows%E6%8F%90%E6%9D%83%E6%80%BB%E7%BB%93/ windows提 ...
- Windows提权总结
当以低权用户进去一个陌生的windows机器后,无论是提权还是后续做什么,第一步肯定要尽可能的搜集信息.知己知彼,才百战不殆. 常规信息搜集 systeminfo 查询系统信息 hostname 主机 ...
随机推荐
- 沉淀再出发:ElasticSearch的中文分词器ik
沉淀再出发:ElasticSearch的中文分词器ik 一.前言 为什么要在elasticsearch中要使用ik这样的中文分词呢,那是因为es提供的分词是英文分词,对于中文的分词就做的非常不好了 ...
- 省事之通用Makefile模版
现在编译方案都偏爱使用cmake解决问题,这两条做unity插件,还是用Makefile,居然忘得光光,好记性不如烂笔头. 后面,翻箱倒柜找到以前为炼金术写的Makefiel,发现还真是挺好用,贴出来 ...
- UML实践
UML图一览 1.分工泳道图 使工作内容更加清晰 2.类图 更加细化了一些函数,对于之后的接口文档细节问题进行了约束 3.用例图 实现了一个玩家的整体可操作的概况 4.活动图 1)注册活动图 用于登录 ...
- php截取后台登陆密码的代码
php截取后台登陆密码的代码,很多时候黑客留了这样的代码,大家一定要注意下if($_POST[loginsubmit]!=){ //判断是否点了登陆按钮 $sb=user:.$_POST[userna ...
- Id vs Instancetype
我写了一篇 Id vs Instancetype的文章,欢迎访问!
- python:定时任务模块schedule
1.安装 pip install schedule 2.文档 https://schedule.readthedocs.io/en/stable/faq.html#how-to-execute-job ...
- 文件断点上传,html5实现前端,java实现服务器
断点上传能够防止意外情况导致上传一半的文件下次上传时还要从头下载,网上有很多关于断点的实现,这篇文章只是从前到后完整的记录下一个可用的实例,由于生产环境要求不高,而且就是提供给一两个人用,所以我简化了 ...
- 关于selenium获取token sessionid
# 获取sessionid def get_sessionid(self): # 是要从localStorage中获取还是要从sessionStorage中获取,具体看目标系统存到哪个中 # wind ...
- PAT——1026. 程序运行时间
要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间.这个时间单位是clock tick,即“时 ...
- C++11之std::future和std::promise
为什么C++11引入std::future和std::promise?C++11创建了线程以后,我们不能直接从thread.join()得到结果,必须定义一个变量,在线程执行时,对这个变量赋值,然后执 ...