零基礎學黑客,搜公眾號:白帽子左一
進入內網之后,是一種由點到線再到面的測驗,先弄清楚當前機器的情況,如在域中角色,提供的服務等資訊;再以此為跳板收集其它機器的資訊,當收集的資訊足夠多,拿下域控的可能型也就越高,
本機資訊收集
為了后續的提權等操作,首先要盡可能拿下當前機器的權限,所以對當前機器的資訊收集也是必要的,
查看系統配置資訊
ssysteminfo 查看系統資訊,但是內容太多在某些時刻無法通過菜刀等工具看到回傳的結果,可以將內容輸出到某個檔案,也可以結合findstr 查詢指定內容,如查詢作業系統即軟體的資訊 systeminfo | findstr /B /C:"OS"
該指令輸入的內容是比較多的,除了使用finder選擇輸出外,部分資訊可以使用其它指令單獨顯示,比如echo %processor_architecture%查看系統架構,net statistics workstation查看系統啟動時間
其中的補丁資訊可以使用wmic qfe get caption,description,hotfixid,installedon獲取
WMIC擴展WMI(Windows Management Instrumentation,Windows管理工具) ,提供了從命令列介面和批命令腳本執行系統管理的支持,在cmd中有些時候查到的資料不全,如某些行程的pid,這時可以使用wmic進行操作,WMIC提供了大量的全域開關、別名、動詞、命令和豐富的命令列幫助增強用戶介面,wmic product get name,version,查看系統安裝的軟體版本等內容,
wmic /node:localhost /namespace:\\root\securitycenter2 path antivirusproduct get displayname /format:list查殺軟
初次之外,還可以使用netsh firewall show config和netsh advfirewall firewall show config查看防火墻配置資訊
查看系統服務資訊
wmic startup get command,caption,查看啟動程式資訊
wmic service list brief,查詢本機服務資訊

還可以使用tasklist 查詢行程資訊schtasks /query /fo LIST /V,查看計劃任務

netstat -ano查看埠串列

注意,一般查看行程埠,先查行程pid,在根據pid查埠
查看系統登錄資訊
query user,登錄到系統的用戶資訊

net session,列出連接會話資訊,但是一般需要高權限才能執行
自動資訊收集
很多后滲透模塊都可以進行資訊收集,這里不談,分享個嫖到的腳本
for /f "delims=" %%A in ('dir /s /b %WINDIR%\system32\*htable.xsl') do set "var=%%A"
wmic process get CSName,Description,ExecutablePath,ProcessId /format:"%var%" >> out.html
wmic service get Caption,Name,PathName,ServiceType,Started,StartMode,StartName /format:"%var%" >> out.html
wmic USERACCOUNT list full /format:"%var%" >> out.html
wmic group list full /format:"%var%" >> out.html
wmic nicconfig where IPEnabled='true' get Caption,DefaultIPGateway,Description,DHCPEnabled,DHCPServer,IPAddress,IPSubnet,MACAddress /format:"%var%" >> out.html
wmic volume get Label,DeviceID,DriveLetter,FileSystem,Capacity,FreeSpace /format:"%var%" >> out.html
wmic netuse list full /format:"%var%" >> out.html
wmic qfe get Caption,Description,HotFixID,InstalledOn /format:"%var%" >> out.html
wmic startup get Caption,Command,Location,User /format:"%var%" >> out.html
wmic PRODUCT get Description,InstallDate,InstallLocation,PackageCache,Vendor,Version /format:"%var%" >> out.html
wmic os get name,version,InstallDate,LastBootUpTime,LocalDateTime,Manufacturer,RegisteredUser,ServicePackMajorVersion,SystemDirectory /format:"%var%" >> out.html
wmic Timezone get DaylightName,Description,StandardName /format:"%var%" >> out.html
復制為bat檔案,結果為out.html保存在c盤根目錄,名稱路徑可自行修改,
域內資訊收集
判斷是否存在域
whoami,如果當前賬戶為域用戶,則回傳結果通常為域名\用戶名

ipconfig,如果是雙網卡,一般存在內網

systeminfo,如果在域中,則如圖,否則為workgroup


net config workstation,在域中,通常計算機全名為計算機名.域名

不在域中如下圖

net time /domain,查看時間服務器,域中機器的dns服務器和時間服務器通常為域控機,如下圖則是存在域且當前登錄用戶為域用戶

如下圖則表示不在域中

如下圖則表示在域中,但當前用戶非域用戶

除此之外,收集其它內容的時候都能看到,比如系統資訊,用戶資訊等
探測域記憶體主機&埠
探測存活主機和埠平時最容易想到的工具是nmap,但這個工具太大,直接安裝存在風險,埠轉發受限于網路環境,這里聊聊其它方法
powershell
powershell可以在滲透中提供強大的助力,下面這些腳本使用的時候記得修改 ip地址
掃描存活ip,最前面的1..255是ip地址的d段,最后范圍是192.168.0.1-255,判斷和修改方式下同
1..255 | % {echo "192.168.0.$_"; ping -n 1 -w 100 192.168.0.$_} | Select-String ttl
判斷主機型別,根據ttl值判斷,范圍192.168.0.1-255
1..255 | % {echo "192.168.0.$_"; ping -n 1 -w 100 192.168.0.$_} | Select-String ttl |% { if ($_ -match "ms") { $ttl = $_.line.split('=')[2] -as [int]; if ($ttl -lt 65) { $os = "linux"} elseif ($ttl -gt 64 -And $ttl -lt 129) { $os = "windows"} else {$os = "cisco"}; write-host "192.168.0.$_ OS:$os" ; echo "192.168.0.$_" >> scan_results.txt }}
掃描埠
24..25 | % {echo ((new-object Net.Sockets.TcpClient).Connect("192.168.1.119",$_)) "Port $_ is open!"} 2>$null
24..25 |% {echo "$_ is "; Test-NetConnection -Port $_ -InformationLevel "Quiet" 192.168.1.119}2>null
掃描指定埠的ip
foreach ($ip in 1..20) {Test-NetConnection -Port 80 -InformationLevel "Detailed" 192.168.0.$ip}
arp掃描
在內網里通常使用mac地址進行機器尋找,其可以通過arp協議實作

小工具
由很多免安裝的小工具也可以進行掃描,比如nbtscan,直接傳到目標服務器上運行即可,工具下載地址:http://www.unixwiz.net/tools/nbtscan.html ,用法:nbtscan.exe 網段 ,更多用法參考:nbgtscam.exe /?

含義如下:
|Token|含義|
|——|——|
SHARING|機器正在運行的檔案和列印共享服務,但這并不一定有內容共享
DC|機器可能是Windows NT域控制器,無論是主域還是輔助域,
U=user |機器可能有一個具有指定名稱的登錄用戶
IIS |機器可能安裝了Microsoft的Internet資訊服務器(IIS)
EXCHANGE |機器可能安裝Microsoft Exchange
NOTES |單機器可能安裝Lotus Notes電子郵件客戶端
? |沒有識別出NETBIOS資源
telnet
telnet常規使用是和服務器建立連接,也開業用來探測埠是否開放
用法:telnet 主機 埠,如:telnet dc 3389,注意:不是所有機器都安裝了此服務,
查看用戶&機器&會話相關資訊
查看機器相關資訊
net view /domain,查詢域資訊,判斷當前機器加入的域

net view /domain:域名,查詢域內所有主機

在域中,有一類至關重要的機器叫域控制器,簡稱域控,機器名通常為DC,在實際環境中,域控為一主一備用兩臺,netdom query pdc,查看域控名稱

查看用戶相關資訊
net user查詢當前機器所有用戶,net user /domain查看域用戶

net user 用戶名查看當前機器內的用戶資訊

net user 用戶名 /domain查看當前機器內的域用戶資訊

注意對比上述結果的區別,此外net user localgroup,net user localgroup /domain和net group /domain也是有區別的wmic useraccount get /all,獲取域內用戶的詳細資訊

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/445312.html
標籤:其他
上一篇:JqueryAutocomplete-專注于整個表格,而不僅僅是<li>
下一篇:Java基礎——多型
