日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

内网渗透学习-Windows信息收集

發布時間:2024/1/8 windows 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 内网渗透学习-Windows信息收集 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

內網滲透學習-Windows信息收集

本章內容主要介紹在獲取網站服務器webshell后,怎樣對Windows主機進行信息收集,對其網絡環境進行分析和利用,主要是一個思路整理,在后續的章節中會整理更詳細的實踐過程。

后滲透中最重要的環節就是信息收集。

收集思路

權限:

  • 看哪些地方是有權限可以利用的?  ?
  • 看有哪些進程
  • 看有幾個用戶
  • 查看敏感的配置文件
  • 網絡:

  • 看路由
  • 看arp
  • 進程通信
  • 是否是k8s集群?虛擬集群(vcenter)?有的話找主控端 docker&k8s技術掃盲(在此之前先理清虛擬機,容器,docker,Kubernetes集群,虛擬機的概念)
  • 是否站庫分離?站庫分離就要想辦法滲透相應的數據庫 站庫分離滲透思路
  • 是否有堡壘機?
  • 殺軟:

  • 當前所控服務器有無殺軟,殺軟是什么類型,有針對性的做免殺處理
  • 分析當前網絡架構:

  • Windows系統:是工作組環境還是域環境
  • Linux系統:判斷是集群,私有云還是阿里云aws(可以利用vpc搭建私網)
  • MAC系統:判斷是工作站還是集群環境
  • 另外關注機器有沒有多網卡,后續可以跨網段滲透(OxidScan)

    針對上述收集到的信息做針對性總結,搞清楚這臺機子究竟是干什么的。

    本文重點是針對Windows系統的信息收集,接下來作對兩種不一樣的網絡架構環境下信息收集的總結

    如何分析是域環境還是工作組環境?要做哪些信息收集?

    1.分析方法

    systeminfo或者net config workstation(如果存在域那么就會顯示工作站域和工作站域DNS等信息)

    上述兩條指令執行之后如果看到WORKGROUP

    就可以判斷是工作組環境了,反之出現xxx.com等就是域環境

    2.信息收集方法

    首先判斷當前機器有什么用戶,用戶的擁有什么程度的權限,查看當前用戶SID

    whoami whoami /user whoami /user && whoami /priv && whoami /all    #查看主機權限(whoami /priv)

    當前操作系統

    wmic OS get Caption,CSDVersion,OSArchitecture,Version 英文版系統用這條命令: systeminfo | findstr /B /C:"OS Nmae" /C:"OS Version" 中文版用: systeminfo | findstr /B /C:“OS 名稱” /C:“OS 版本”查看系統體系結構 echo %PROCESSOR_ARCHITECTURE%

    查看主機用戶,制作用戶字典

    net user
    net user xxx #查看詳細信息

    查看登錄情況

    qwinsta
    qwinsta /SERVER:IP ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#查看遠程登錄情況

    然后開始判斷是否有域環境,看主機DNS后綴

    ipconfig /all #查看網關IP地址、DNS的ip地址、域名、本機是否和DNS服務器處于同一網段等信息。

    上圖就是一個域環境

    當然判斷域環境并不只有這一種方法,后續會提到

    查看系統詳細信息,同時關注打了什么補丁(方便后續提權,這里附上一個提權輔助的工具https://i.hacking8.com/tiquan,可以根據補丁名字看打了哪些補丁),網絡連接狀態

    systeminfo   #是否加入域,加入了會顯示域的名字,未加入顯示WORKGROUP wmic qfe get caption,description,hotfixid,installedon      #查看補丁

    查詢補丁信息

    wmic qfe get Caption,Description,HotFixID,InstalledOn

    包括查看當前任務進程,看用的什么殺軟(一樣可以用剛剛的鏈接來判斷殺軟的類型)

    tasklist tasklist /v    #輸出任務的詳細信息,這條指令也可以用來排查后門木馬一類的東西 碰到java.exe,也可以猜測是什么進程,例如weblogic,tomcat tasklist /svc    #導出系統的進程信息,顯示每個任務相關的服務,可以放到在線殺軟比對中可以看到目標系統安裝了哪些殺毒軟件 wmic process list brief

    查看當前機器在線的用戶,看管理員在不在線

    query user | quser

    查看當前主機名字,可以從中判斷這臺主機的用處

    hostname

    查看本地密碼策略

    net accounts

    遠程桌面連接歷史記錄,rdp連接,如果有rdp連接記錄,可以想辦法導出憑證記錄,在本地解密

    cmdkey /list
    利用憑據:runas /savecred /user:contoso/administrator cmd.exe

    查看遠程機器開啟的共享

    netview \\ip netview \\192.168.31.138/All    #查看某個IP的機器的所有共享

    看開放什么端口,對外進行什么連接

    netstat -ano

    路由表(追蹤路由,對內網網段進行測繪)

    route print    #打印本機路由信息,可以看到本機所有的網卡接口 netstat -r     #打印本機路由信息,可以看到本機所有的網卡接口,和route print功能 arp -a      #查找有價值的內網arp通信記錄 netsh int ip delete arpcache  #刪除當前機器的arp緩存 tracert 8.8.8.8  #跟蹤本機的出口ip

    一條指令查殺軟

    WMIC /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct Get displayName /Format:list

    查看當前安裝的程序,軟件安裝的版本及路徑

    wmic product get name,version

    查看當前主機的共享,如果文件共享對內網其他主機開放,可以采取上傳木馬的方式對其他主機進行感染,進一步橫向滲透

    net share
    wmic share get name,path,status

    查看當前會話

    net session

    查看主機開機時間

    net statistics workstation

    查看機器自啟動程序信息

    wmic startup get command,caption,user wmic startup get command,caption wmic startup list full 查詢防火墻相關配置

    關閉防火墻

    win 2003及之前的版本用這條命令: netsh firewall set opmode disablewin 2003之后的版本用這條命令: netsh advfirewall set allprofiles state off

    查看防火墻配置

    netsh firewall show config

    修改防火墻配置

    win 2003之后的版本用這條: netsh advfirewall firewall add rule name=“pass nc” dir=in action=allow program=“C:\nc.exe”允許指定程序連出,命令如下 netsh advfirewall firewall add rule name=“Allow nc” dir=out action=allow program=“C: \nc.exe”允許 3389 端口放行,命令如下 netsh advfirewall firewall add rule name=“Remote Desktop” protocol=TCP dir=in localport=3389 action=allow自定義防火墻日志儲存位置 netsh advfirewall set currentprofile logging filename “C:\windows\temp\fw.log"

    查看代理配置情況

    reg query “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings"

    探測內網存活主機

    for /l %i in (1,1,255) do @ping -w 2 -n 1 10.10.10.%i | findstr “TTL=”

    或者采用上傳工具的方式,例如fscan或者nbtscan(命令格式:nbtscan.exe 10.10.10.0/20)

    工作組環境信息收集

    查看機器中的所有組名,了解不同組的職能

    net localgroup

    查看指定組中的成員列表

    net localgroup "Administrator" 其他信息的收集都可以參照上面的內容

    域環境信息收集

    域環境信息收集,主要針對域用戶,域管理員,域控,域機器,服務,exchange郵件服務器

    確定當前內網所架設的域,并且所控制的主機賬戶在域里面,就可以進行域內相關信息的收集了。

    因為這些查詢命令本質上都是通過 LDAP 協議去域控制器上查詢的,查詢時候需要經過權限認證,只有域用戶才有這個權限,所以本地用戶是無法運行以下命令的(system 權限用戶除外。在域里面,除了普通用戶,所有機器都有一個機器用戶,用戶名為機器名加“$”。system 用戶對應的就是域里面的機器用戶,所以 system 權限用戶是可以運行以下查詢命令的)。(參考https://blog.csdn.net/qq_45290991/article/details/120028595)

    在實際情況中,一個域內一般有兩臺或者兩臺以上的域控制器,因為一點主域控制器發生故障,備用域控制器就可以保證域內服務和驗證工作正常運行。

    在一個域中,當計算機加入域后,會默認給域管理員組賦予本地系統管理員的權限。也就是說,在計算機添加到域中,成為域的成員主機后,系統會自動將域管理員組添加到本地系統管理員組中。因此,域管理員組的成員均可訪問本地計算機,而且具備完全控制權限。

    滲透測試人員通常會通過搜集域內信息,追蹤域內特權用戶、域管理組用戶的歷史登錄位置、當前登錄位置等。定位域內管理員的常規渠道,一是日志,二是會話。日志是指本地機器的管理員日志,可以使用powershell腳本或 wevtutil 導出查看。會話是指域內每個機器的登錄會話,可以匿名查詢,無須權限,可以使用 netsess.exe 或 PowerView 等工具查詢。

    net user /domain         #查看域環境用戶,當前域中的所有用戶名,根據用戶名總數大概判斷域的規模 net user域用戶/domain      #獲取某個域用戶的詳細信息 net localgroup administrators #本機管理員[通常含有域用戶] net localgroup administrators /domain #登錄本機的域管理員 net localgroup administrators dcluseroo1 /add #域用戶添加到本機 net user /domain xxX 12345678 #修改域用戶密碼,需要域管理員權限 net config workstation     #查看當前登錄域及域用戶 net time /domain         #判斷主域 net view /domain       #查看內網存在多少個域,所有的域名稱,有時候查詢出錯6118錯誤,是因為 Computer Brower 服務的問題,把它手動啟動。 Net view /domain:xYz     #查看xYz域中的機器列表 net view /domain: 1abtest  #查看指定域中在線的計算機列表 net time /domain       #查看時間服務器,一般域控會做時間服務器 net accounts /domain     #查看當前域的域內賬戶密碼設置策略 net config workstation    #看看當前的登錄域---以下命令在高版本系統(2012及以后)中會提示只能域控中執行--- net group /domain #查看當前域中的所有組名 net group域組名/domain #查詢域組所包含的用戶 net group "domain admins”/domain #查看當前域中的域管賬戶 net group "domain computers" /domain #查看當前域中的所有的計算機名(登錄過該域的計算機)net group "domain controllers”/domain查看域控 net group"enterprise admins”/domain #查看企業管理組net group "domain guest" /domain net user admin 123456/add /domain #添加域用戶admin,密碼為123456 net group "domain admins" admin /add /domain #將域用戶admin添加到域管理員組domain admins中nltest /DCLIST:主機名[Hacker] #查看域控制器的機器名 Nslookup -type=SRV _ldap._tcp #查看域控制器主機名 net group “Domain Controllers” /domain #查看域控制器##添加域管理員 net user shuteer xy@china110 /ad /domain   #添加域用戶 net group "domain admins" shuteer /ad /domain #添加域用戶到域管理員組 net group "domain admins"/domain  #查看域管理員組  ##域信任關系(很少,基本上只有在域樹和域林中才會出現)和查找域控 DC上運行的命令 nltest /domain_trusts #查看域內信任關系 dnscmd /zoneexport lab.com dns.txt導出域內DNs信息,文件在c: \windows\system32\dns\dns.txt nslookup -q=mx labtest.com #查看域內郵件服務器 nslookup -q=ns labtest.com #查看域內DNS服務器 netdom query pdc #查看域內的主域控,僅限win2008及之后的系統 nltest /domain_trusts /all_trusts /v /server:192.168.52.2 返回所有信任192.168.52.2的域內主機 nltest /dsgetdc:hack /server:192.168.52.2 返回域控和其相應的IP地址##搜集spn(掃盲:SPN(Service Principal name) 是服務在使用 Kerberos 身份驗證的網絡上的唯一標識符,它由服務類、主機名和端口組成。) SPN掃描 不同于常規的tcp/udp端口掃描,由于spn本質就是正常的Kerberos請求,所以掃描是非常隱蔽,日前針對此類掃描的檢測暫時也比較少。 大部分win系統默認已自帶spn探測工具即:setspn.exe下列操作無需管理權限,需要域內機器執行setspn -T hack -0*/* setspn -T target.com -Q*/* 導出后針對性定位域控##定位域控nslookup -type=all __ldap._tcp.dc._msdcs.rootkit.orgNslookup -type=SRV _ldap._tcp 方法一:net group "domain controllers" /domain #這里查詢結果后面會多一個$ 方法二:nltest /DCLIST:test.com 方法三:net time /domain 方法五:查看DNS服務器的地址,一般DNS服務器的IP就是域控的地址方法六:netdom query pdc #該命令只能在域控上執行 方法七:dsquery server #該命令只能在域控上執行##定位郵件服務器 nslookup -qt-MX Yahoo.com##域內信息收集dsquery 有些機器無法執行,需要自行上傳工具 dsquery user #查找域目錄中的用戶 dsquery computer #查找目錄中的計算機 dsquery contact #查找目錄中的聯系人 dsquery subnet #查找目錄中的子網 dsquery group #查找目錄中的組 dsquery ou #查找目錄中的組織單位 dsquery site #查找目錄中的站點 dsquery server #查找目錄中的AD DC/LDS實例 dsquery user #查找目錄中的用戶 dsquery quota #查找目錄中的配額規定 dsquery partition #查找目錄中的分區 dsquery * - #用通用的LDAP查詢來查找目錄中的任何對象 #以下命令只能在域控上查詢 dsquery user #查詢目錄中的用戶 dsquery computer #查詢目錄中的主機 dsquery group #查詢目錄中的組, dsquery ou #查詢目錄中的組織單元, dsquery site #查詢目錄中的站點 dsquery server #查詢域控 dsquery contact #查詢目錄中的聯系人 dsquery subnet #查詢目錄中的子網 dsquery quota #查詢目錄中的配額規定, dsquery partition #查詢目錄中的分區。 dsquery *     #用通用的LDAP查詢來查找目錄中的任何對 dsquery server -domain test.comI dsget server-dnsname -site #搜索域內域控制器的DNS主機名和站點名 dsquery computer domainroot -name -xp -limit 10 #搜索域內以- xp結尾的機器10臺 dsquery user domainroot -name admin -limit #搜索域內以admin開頭的用戶10個

    翻找本地文件

    在連上目標主機做好權限維持后,針對主機的各類文件進行翻查

    1.看是否在本地留存有密碼本一類的東西(txt文件或者excel表格)

    2.瀏覽器密碼,瀏覽器訪問記錄

    3.看有無社交軟件(微信,qq),有就找存儲的文件

    4.各類配置文件:數據庫密碼,access token,access key,api接口,部分api接口的session? key密鑰

    java網站:找war包,有配置信息

    asp網站:web.config

    5.若存在文件共享服務器,配置文件可能可以找到寫死的密碼

    6.網站源碼(很大概率代碼審計一下就可以翻到新漏洞,這樣的話后續即便對方封鎖了原先的入口刪掉webshell,后續一樣可以找機會進來)

    7.日志文件(主機日志,網站日志等各類日志,不僅僅是為了信息收集,同時也可以做一些消除痕跡的工作,增大后續管理人員排查入侵的難度)

    需要梳理的信息

    例如拿下的主機上對外映射的web服務是一個oa管理系統,那么可以對一下信息進行梳理,做進一步滲透,例如指定人員進行釣魚

    找到域控后做什么

    密碼噴灑:即利用已經獲得密碼對所有的域內用戶進行探測

    ?(后續的學習中會詳細整理和實踐)

    文章推薦

    本文中在總結的同時,也參考了大量博客文章,這里附上一篇很有參考價值的文章(這篇可能也是轉載過來的)

    https://blog.csdn.net/qq_45290991/article/details/120028595

    在這篇文章中涉及了許多域環境信息收集的內容,同時介紹了很多域信息收集的工具,值得學習。

    ?ps;在本文中認識到了powershell和普通cmd的區別,填補一些我之前護網面試里的知識空白:

    PowerShell可以理解為增強版的”cmd.exe”,打開方式就是:運行->輸入powershell:

    如果想執行一個Powershell腳本,需要修改Powershell的默認權限為執行權限。PowerShell常用的執行權限有四種:

    Restricted:默認設置,不允許執行任何腳本。
    Allsigned:只能運行經過證書驗證的腳本。
    Unrestricted:權限最高,可以執行任意腳本。
    RemoteSigned:本地腳本無限制,但是對來自網絡的腳本必須經過簽名。

    在PowerShell中輸入Get-ExecutionPolicy,可以查看權限:

    如果想要修改權限就可以執行這條命令,然后選擇Y:

    Set-ExecutionPolicy 權限名

    總結

    以上是生活随笔為你收集整理的内网渗透学习-Windows信息收集的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。