前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用KnowsMore对Microsoft活动目录执行安全渗透测试

如何使用KnowsMore对Microsoft活动目录执行安全渗透测试

作者头像
FB客服
发布2024-02-26 15:34:11
1060
发布2024-02-26 15:34:11
举报
文章被收录于专栏:FreeBufFreeBuf

关于KnowsMore

KnowsMore是一款针对Microsoft活动目录安全的多功能工具,该工具使用纯Python开发,旨在帮助广大研究人员轻松执行针对Microsoft活动目录的渗透测试任务。

功能介绍

1、支持从.ntds输出文本文件(由CrackMapExec或secretsdump.py生成)导入NTLM哈希; 2、支持从NTDS.dit和SYSTEM导入NTLM哈希; 3、支持从hashcat输出文件导入破解的NTLM哈希; 4、支持导入BloodHound ZIP或JSON文件; 5、BloodHound导入工具(在不需要BloodHound UI的情况下将JSON导入至Neo4J); 6、分析密码质量(包括长度、大小写字母、数字、特殊字符等); 7、分析密码相似度; 8、支持搜索用户、密码和哈希; 9、支持直接将所有已破解的凭证导出到BloodHound Neo4J数据库; 10、其他功能;

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3.8+环境。

源码安装

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

代码语言:javascript
复制
https://github.com/helviojunior/knowsmore.git

(向右滑动,查看更多)

然后切换到项目目录中,使用pip工具和项目提供的requirements.txt文件安装该工具所需的其他依赖组件:

代码语言:javascript
复制
cd knowsmore
pip install -r requirements.txt

依赖组件安装完成之后,执行工具安装脚本即可完成TrafficWatch的安装:

代码语言:javascript
复制
$ python3 setup.py install

pip安装

代码语言:javascript
复制
pip3 install --upgrade knowsmore

工具执行流

1、创建数据库文件; 2、导入BloodHound文件(域名->GPO->OU->组->计算机->用户); 3、导入NTDS文件; 4、导入已破解的哈希;

创建数据库文件

代码语言:javascript
复制
knowsmore --create-db

导入BloodHund文件

代码语言:javascript
复制
# Bloodhound ZIP文件

knowsmore --bloodhound --import-data ~/Desktop/client.zip

# Bloodhound JSON文件

knowsmore --bloodhound --import-data ~/Desktop/20220912105336_users.json

(向右滑动,查看更多)

将数据同步至Neo4J BloodHound数据库

代码语言:javascript
复制
# Bloodhound ZIP文件
knowsmore --bloodhound --sync 10.10.10.10:7687 -d neo4j -u neo4j -p 12345678
(向右滑动,查看更多)

导入NTDS文件

选项1:

代码语言:javascript
复制
knowsmore --secrets-dump -target LOCAL -ntds ~/Desktop/ntds.dit -system ~/Desktop/SYSTEM
(向右滑动,查看更多)

选项2:

代码语言:javascript
复制
secretsdump.py -ntds ntds.dit -system system.reg -hashes lmhash:ntlmhash LOCAL -outputfile ~/Desktop/client_name
(向右滑动,查看更多)

生成一个自定义字典

代码语言:javascript
复制
knowsmore --word-list -o "~/Desktop/Wordlist/my_custom_wordlist.txt" --batch --name company_name
(向右滑动,查看更多)

导入已破解的哈希

提取所有哈希至一个文本文件:

代码语言:javascript
复制
# 提取NTLM哈希至文件

nowsmore --ntlm-hash --export-hashes "~/Desktop/ntlm_hash.txt"

# 或从NTDS文件提取NTLM哈希

cat ~/Desktop/client_name.ntds | cut -d ':' -f4 > ntlm_hashes.txt
(向右滑动,查看更多)

使用hashcat破解哈希:

代码语言:javascript
复制
# 字典攻击

hashcat -m 1000 -a 0 -O -o "~/Desktop/cracked.txt" --remove "~/Desktop/ntlm_hash.txt" "~/Desktop/Wordlist/*"

# 掩码攻击

hashcat -m 1000 -a 3 -O --increment --increment-min 4 -o "~/Desktop/cracked.txt" --remove "~/Desktop/ntlm_hash.txt" ?a?a?a?a?a?a?a?a
代码语言:javascript
复制
(向右滑动,查看更多)

删除敏感数据

代码语言:javascript
复制
knowsmore --wipe

将发现的密码存储到Knowsmore数据库

代码语言:javascript
复制
knowsmore --user-pass --username administrator --password Sec4US@2023
knowsmore --user-pass --username administrator --password Sec4US@2023 --company sec4us
代码语言:javascript
复制
(向右滑动,查看更多)

将所有凭证存储到Neo4j Bloodhound数据库

代码语言:javascript
复制
knowsmore --bloodhound --mark-owned 10.10.10.10 -d neo4j -u neo4j -p 123456
(向右滑动,查看更多)

工具使用

下列命令将生成跟目标密码相关的多种统计数据:

代码语言:javascript
复制
knowsmore --stats

输出结果如下:

代码语言:javascript
复制
KnowsMore v0.1.4 by Helvio Junior

Active Directory, BloodHound, NTDS hashes and Password Cracks correlation tool

https://github.com/helviojunior/knowsmore

    

 [+] Startup parameters

     command line: knowsmore --stats

     module: stats

     database file: knowsmore.db

  

 [+] start time 2023-01-11 03:59:20

[?] General Statistics

+-------+----------------+-------+

|   top | description    |   qty |

|-------+----------------+-------|

|     1 | Total Users    | 95369 |

|     2 | Unique Hashes  | 74299 |

|     3 | Cracked Hashes | 23177 |

|     4 | Cracked Users  | 35078 |

+-------+----------------+-------+

 

 [?] General Top 10 passwords

+-------+-------------+-------+

|   top | password    |   qty |

|-------+-------------+-------|

|     1 | password    |  1111 |

|     2 | 123456      |   824 |

|     3 | 123456789   |   815 |

|     4 | guest       |   553 |

|     5 | qwerty      |   329 |

|     6 | 12345678    |   277 |

|     7 | 111111      |   268 |

|     8 | 12345       |   202 |

|     9 | secret      |   170 |

|    10 | sec4us      |   165 |

+-------+-------------+-------+

 

 [?] Top 10 weak passwords by company name similarity

+-------+--------------+---------+----------------------+-------+

|   top | password     |   score |   company_similarity |   qty |

|-------+--------------+---------+----------------------+-------|

|     1 | company123   |    7024 |                   80 |  1111 |

|     2 | Company123   |    5209 |                   80 |   824 |

|     3 | company      |    3674 |                  100 |   553 |

|     4 | Company@10   |    2080 |                   80 |   329 |

|     5 | company10    |    1722 |                   86 |   268 |

|     6 | Company@2022 |    1242 |                   71 |   202 |

|     7 | Company@2024 |    1015 |                   71 |   165 |

|     8 | Company2022  |     978 |                   75 |   157 |

|     9 | Company10    |     745 |                   86 |   116 |

|    10 | Company21    |     707 |                   86 |   110 |

+-------+--------------+---------+----------------------+-------+
(向右滑动,查看更多)

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

项目地址

KnowsMore:https://github.com/helviojunior/knowsmore

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-02-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于KnowsMore
  • 功能介绍
  • 工具安装
    • 源码安装
      • pip安装
      • 工具执行流
        • 创建数据库文件
          • 导入BloodHund文件
            • (向右滑动,查看更多)
              • 将数据同步至Neo4J BloodHound数据库
                • 导入NTDS文件
                  • 生成一个自定义字典
                    • 导入已破解的哈希
                      • 删除敏感数据
                        • 将发现的密码存储到Knowsmore数据库
                          • 将所有凭证存储到Neo4j Bloodhound数据库
                          • 工具使用
                          • 许可证协议
                          • 项目地址
                          相关产品与服务
                          数据库
                          云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档