39

0x00 PowerShell

PowerShell版本信息:

  • 2.0 windows2008,windows7

  • 3.0 windows2012,windows8

  • 4.0 windows2012R2,windows8.1

  • 5.0 windows2016,windows10

PowerShell权限

  • Restricted

    • 默认的设置, 不允许任何script运行
  • Allsigned

    • 只能运行经过数字证书签名的script
  • Unrestricted

    • 运行本地的script不需要数字签名,但是运行从网络上下载的script就必须要有数字签名
  • RemoteSigned

    • 允许所有的script运行

PowerShell基本命令

  • Get-ExecutionPolicy

    • 查看当前策略

    image-20200217162808642

  • Set-ExecutionPolicy 参数(例:Unrestricted)

    • 修改执行策略权限

    image-20200217163122772

  • -exec bypass

    • 绕过禁止执行脚本策略

    image-20200217163648923

  • Import-Module .\PowerView.ps1

    • 导入脚本

image-20200217163257583

0x01 PowerShell收集信息

PowerView常用命令

Get-NetDomain:获取当前用户所在的域名称

image-20200217163900114

Get-NetUser:返回所有用户的详细信息

image-20200217163942936

Get-NetDomainController:获取所有域控制器

image-20200217164034756

Get-NetComputer:获取所有域内机器的详细信息

image-20200217164133046

Get-NetOU:获取域中的 OU 信息

image-20200217164222548

Get-NetGroup:获取所有域内组和组成员信息

image-20200217164242191

Get-NetFileServer:根据 SPN 获取当前域使用的文件服务器

Get-NetShare:获取当前域内所有网络共享

image-20200217164306539

Get-NetSession:获取在指定服务器存在的会话信息

image-20200217164324626

Get-NetRDPSession:获取在指定服务器存在的远程连接信息

image-20200217164400230

Get-NetProcess:获取远程主机的进程信息

image-20200217164434944

Get-UserEvent:获取指定用户的日志信息

Get-ADObject:获取活动目录的对象信息

image-20200217164654526

Get-NetGPO:获取域所有组策略对象

image-20200217164717550

Get-DomainPolicy:获取域默认或域控制器策略

image-20200217164733846

Invoke-UserHunter:用于获取域用户登录计算机及该用户是否有本地管理权限

image-20200217164904418

Invoke-ProcessHunter:查找域内所有机器进程用于找到某特定用户

image-20200217164937196

Invoke-UserEventHunter:根据用户日志获取某域用户登录过哪些域机器