[内网安全]四.内网信息收集--BloodHound工具与PowerShell工具的使用

作为网络安全爱好者,对内网的渗透学习必不可少。因此从今天开始从零开始记录自己的内网学习过程,一方面是督促自己不断前行且学习新知识;另一方面是分享与读者,希望大家一起进步。这系列文章入门部分将参考徐焱老师的《内网安全攻防》这本书,并结合作者在安全牛课堂分享的学习讲解视频,且看且珍惜吧!督促自己完成每一个实验,把每一个细节搞懂,加油~

文章目录

  • 域渗透分析工具BloodHound
    • 安装BloodHound所需环境
      • 1、下载安装JDK
      • 2、下载安装Neo4j
      • 3、启动Neo4j数据库服务端
      • 下载BloodHound
  • PowerShell信息收集
        • PowerView脚本
  • 定位域管理员
  • 查找域管理进程
            • 本机检查
            • 查询域控制器的域用户会话
            • 查询远程系统中运行的任务
            • 扫描远程系统的NetBIOS信息
  • 模拟域管理员登录



提示:以下是本篇文章正文内容,欢迎阅读!

域渗透分析工具BloodHound

下载地址:https://github.com/BloodHoundAD/BloodHound

安装BloodHound所需环境

1、下载安装JDK

JDK8下载地址:https://www.oracle.com/java/technologies/javase-jdk8-downloads.html

2、下载安装Neo4j

下载地址:https://neo4j.com/download-center/#releases

3、启动Neo4j数据库服务端

下载好后,进入对应的目录在命令行运行如下命令启动(必须安装JDK环境才可以)

cd C:\neo4j-community-3.5.3\bin\
neo4j.bat console

通过浏览器打开:http://localhost:7474/

打开后设置一下密码:原密码neo4j,修改为:123456(任意)

下载BloodHound

打开,输入账号密码:eno4j、123456

再下载:https://github.com/BloodHoundAD/BloodHound/blob/master/Ingestors/SharpHound.exe

放到C盘下

然后运行:

SharpHound.exe -c all

运行完后会在当前路径下生成一个文件:20200323210837_BloodHound.zip

然后我们拖进去上传,然后就有数据了。

PowerShell信息收集

打开方式:win+R 输入powershell

如果想执行脚本,需要修改权限,默认权限不允许执行任何脚本

Retricted 不允许执行任何脚本

Allsigned 只允许经过证书验证的脚本

Unstricted 允许执行任何脚本

RemoteSigned 对本地脚本不限制,对来自网络的要验证签名。

Get-ExecutionPolicy 查看权限

Set-ExecutionPolicy Unrestricted 修改权限为Unrestricted

[内网安全]四.内网信息收集--BloodHound工具与PowerShell工具的使用_第1张图片

PowerView脚本

下载地址:https://github.com/PowerShellMafia/PowerSploit

导入脚本:

import-module .\powerview.ps1

[内网安全]四.内网信息收集--BloodHound工具与PowerShell工具的使用_第2张图片

PowerView脚本常用命令:

Get-NetDomain:获取当前用户所在的域名称。
Get-NetUser:返回所有用户的详细信息。
Get-NetDomainController:获取所有域控制器。
Get-NetComputer:获取所有域内机器的详细信息。
Get-NetOU:获取域中的 OU 信息。
Get-NetGroup:获取所有域内组和组成员信息。
Get-NetFileServer:根据 SPN 获取当前域使用的文件服务器。
Get-NetShare:获取当前域内所有网络共享。
Get-NetSession:获取在指定服务器存在的会话信息。
Get-NetRDPSession:获取在指定服务器存在的远程连接信息。
Get-NetProcess:获取远程主机的进程信息。
Get-UserEvent:获取指定用户的日志信息。
Get-ADObject:获取活动目录的对象信息。
Get-NetGPO:获取域所有组策略对象。
Get-DomainPolicy:获取域默认或域控制器策略。
Invoke-UserHunter:用于获取域用户登录计算机及该用户是否有本地管理权限。
Invoke-ProcessHunter:查找域内所有机器进程用于找到某特定用户。
Invoke-UserEventHunter:根据用户日志获取某域用户登录过哪些域机器。

加载绕过,当系统权限为Restricted,不支持执行脚本时,此时无法加载任何脚本

powershell -exec bypass "Import-Module c:/PowerView.ps1;get-netuser"

[内网安全]四.内网信息收集--BloodHound工具与PowerShell工具的使用_第3张图片

定位域管理员

前面的信息收集,主要是为了快速定位域管理员,拿到域管理员权限。

[内网安全]四.内网信息收集--BloodHound工具与PowerShell工具的使用_第4张图片

查找域管理进程

本机检查

获取域管理列表

net group “Domain Admins” /domain

列出本机进程,看有无域管理员的进程

tasklist /v

查询域控制器的域用户会话

netsess.exe

查询远程系统中运行的任务
扫描远程系统的NetBIOS信息

使用nbtscan

模拟域管理员登录

1.本地窃取令牌

list_tokens -u

2.Rotten potato

3.添加域管理员

4.PS脚本Empire

你可能感兴趣的:(内网安全,安全,python,linux)