KnockOutlook:一款針對(duì)Outlook的紅隊(duì)安全研究工具
關(guān)于KnockOutlook
KnockOutlook是一款基于C#開(kāi)發(fā)的工具,該工具可以跟Outlook的COM對(duì)象進(jìn)行交互,并且能夠幫助紅隊(duì)安全研究人員執(zhí)行各種安全操作。
工具下載
廣大研究人員可以使用下列命令將該項(xiàng)目源碼克隆至本地:
- git clone https://github.com/eksperience/KnockOutlook.git
命令行使用
- __ __ __ ____ __ __ __
- / //_/____ ____ _____/ /__/ __ \__ __/ /_/ /___ ____ / /__
- / ,< / __ \/ __ \/ ___/ //_/ / / / / / / __/ / __ \/ __ \/ //_/
- / /| |/ / / / /_/ / /__/ ,< / /_/ / /_/ / /_/ / /_/ / /_/ / ,<
- /_/ |_/_/ /_/\____/\___/_/\_\\____/\__,_/\__/_/\____/\____/_/\_\
- Parameters:
- --operation : 指定需要執(zhí)行的操作
- --keyword : 指定搜索操作的關(guān)鍵詞
- --id : 指定保存操作的目標(biāo)
- --bypass : 繞過(guò)編程訪問(wèn)安全設(shè)置(需要管理員權(quán)限)
- Operations:
- check : 執(zhí)行各種檢測(cè)以確保操作安全
- contacts : 提取每一個(gè)賬號(hào)的所有聯(lián)系人
- mails : 提取每一個(gè)賬號(hào)的郵箱元數(shù)據(jù)
- search : 根據(jù)關(guān)鍵詞搜索每一個(gè)郵箱
- save : 保存指定EntryID的郵件
- Examples:
- KnockOutlook.exe --operation check
- KnockOutlook.exe --operation contacts
- KnockOutlook.exe --operation mails --bypass
- KnockOutlook.exe --operation search --keyword password
- KnockOutlook.exe --operation save --id {EntryID} --bypass
功能操作
(1) 安全檢測(cè)(check)
枚舉Outlook安裝詳細(xì)信息,以便構(gòu)造正確的注冊(cè)表項(xiàng)并檢索編程訪問(wèn)安全設(shè)置。
如果此值設(shè)置為“Warn when antivirus is inactive or out-of-date”,它將會(huì)查詢(xún)WMI以查找任何已安裝的防病毒產(chǎn)品并分析其當(dāng)前狀態(tài)。
(2) 聯(lián)系人信息枚舉(contacts)
枚舉每個(gè)已配置帳戶(hù)的聯(lián)系人并提取以下信息:
- 完整名稱(chēng)(全名)
- 電子郵件地址
(3) 電子郵件枚舉(mails)
枚舉每個(gè)已配置帳戶(hù)的郵件并提取以下元數(shù)據(jù):
- ID
- 時(shí)間戳
- 主題
- 郵件發(fā)送者
- 郵件接收者
- 附件
(4) 搜索查詢(xún)(search)
使用Outlook的內(nèi)置搜索引擎在每個(gè)已配置帳戶(hù)的郵箱中搜索,并返回郵件正文中包含所提供關(guān)鍵字的EntryID。
(5) 數(shù)據(jù)保存(save)
使用Outlook內(nèi)置的另存為機(jī)制導(dǎo)出由其EntryID引用的郵件。
對(duì)象模型保護(hù)繞過(guò)
由于當(dāng)前進(jìn)程是以高級(jí)完整權(quán)限運(yùn)行的,因此該工具所提供的“--bypass”選項(xiàng)可以與聯(lián)系人信息枚舉(contacts)、電子郵件枚舉(mails)、搜索查詢(xún)(search)以及數(shù)據(jù)保存(save)這幾個(gè)功能結(jié)合使用。
KnockOutlook將嘗試獲取當(dāng)前Outlook安全策略的快照,并以自動(dòng)允許編程訪問(wèn)安全提示的方式對(duì)其進(jìn)行篡改操作,在操作完成后還會(huì)將其恢復(fù)為初始狀態(tài)。
數(shù)據(jù)輸出
KnockOutlook的所有操作都會(huì)將基礎(chǔ)數(shù)據(jù)直接輸出在屏幕上。
聯(lián)系人信息枚舉(contacts)和電子郵件枚舉(mails)操作將會(huì)把輸出數(shù)據(jù)以JSON格式保存至gzip壓縮文件中。
數(shù)據(jù)保存(save)操作將會(huì)把輸出數(shù)據(jù)以.msg格式導(dǎo)出。
所有的文件名都會(huì)在運(yùn)行時(shí)隨機(jī)生成。
默認(rèn)配置下,Outlook的安全臨時(shí)目錄會(huì)用來(lái)存儲(chǔ)所有的導(dǎo)出文件。
項(xiàng)目地址
KnockOutlook:【GitHub傳送門(mén)】